squashfs.mk 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. ################################################################################
  2. #
  3. # squashfs
  4. #
  5. ################################################################################
  6. SQUASHFS_VERSION = 4.4
  7. SQUASHFS_SITE = $(call github,plougher,squashfs-tools,$(SQUASHFS_VERSION))
  8. SQUASHFS_LICENSE = GPL-2.0+
  9. SQUASHFS_LICENSE_FILES = COPYING
  10. SQUASHFS_MAKE_ARGS = XATTR_SUPPORT=1
  11. ifeq ($(BR2_PACKAGE_SQUASHFS_LZ4),y)
  12. SQUASHFS_DEPENDENCIES += lz4
  13. SQUASHFS_MAKE_ARGS += LZ4_SUPPORT=1 COMP_DEFAULT=lz4
  14. else
  15. SQUASHFS_MAKE_ARGS += LZ4_SUPPORT=0
  16. endif
  17. ifeq ($(BR2_PACKAGE_SQUASHFS_LZMA),y)
  18. SQUASHFS_DEPENDENCIES += xz
  19. SQUASHFS_MAKE_ARGS += LZMA_XZ_SUPPORT=1 COMP_DEFAULT=lzma
  20. else
  21. SQUASHFS_MAKE_ARGS += LZMA_XZ_SUPPORT=0
  22. endif
  23. ifeq ($(BR2_PACKAGE_SQUASHFS_XZ),y)
  24. SQUASHFS_DEPENDENCIES += xz
  25. SQUASHFS_MAKE_ARGS += XZ_SUPPORT=1 COMP_DEFAULT=xz
  26. else
  27. SQUASHFS_MAKE_ARGS += XZ_SUPPORT=0
  28. endif
  29. ifeq ($(BR2_PACKAGE_SQUASHFS_LZO),y)
  30. SQUASHFS_DEPENDENCIES += lzo
  31. SQUASHFS_MAKE_ARGS += LZO_SUPPORT=1 COMP_DEFAULT=lzo
  32. else
  33. SQUASHFS_MAKE_ARGS += LZO_SUPPORT=0
  34. endif
  35. ifeq ($(BR2_PACKAGE_SQUASHFS_ZSTD),y)
  36. SQUASHFS_DEPENDENCIES += zstd
  37. SQUASHFS_MAKE_ARGS += ZSTD_SUPPORT=1 COMP_DEFAULT=zstd
  38. else
  39. SQUASHFS_MAKE_ARGS += ZSTD_SUPPORT=0
  40. endif
  41. ifeq ($(BR2_PACKAGE_SQUASHFS_GZIP),y)
  42. SQUASHFS_DEPENDENCIES += zlib
  43. SQUASHFS_MAKE_ARGS += GZIP_SUPPORT=1 COMP_DEFAULT=gzip
  44. else
  45. SQUASHFS_MAKE_ARGS += GZIP_SUPPORT=0
  46. endif
  47. HOST_SQUASHFS_DEPENDENCIES = host-zlib host-lz4 host-lzo host-xz host-zstd
  48. HOST_SQUASHFS_MAKE_ARGS = \
  49. XATTR_SUPPORT=1 \
  50. XZ_SUPPORT=1 \
  51. GZIP_SUPPORT=1 \
  52. LZ4_SUPPORT=1 \
  53. LZO_SUPPORT=1 \
  54. LZMA_XZ_SUPPORT=1 \
  55. ZSTD_SUPPORT=1
  56. define SQUASHFS_BUILD_CMDS
  57. $(TARGET_MAKE_ENV) $(MAKE) \
  58. CC="$(TARGET_CC)" \
  59. EXTRA_CFLAGS="$(TARGET_CFLAGS) -fgnu89-inline" \
  60. EXTRA_LDFLAGS="$(TARGET_LDFLAGS)" \
  61. $(SQUASHFS_MAKE_ARGS) \
  62. -C $(@D)/squashfs-tools/
  63. endef
  64. define SQUASHFS_INSTALL_TARGET_CMDS
  65. $(TARGET_MAKE_ENV) $(MAKE) $(SQUASHFS_MAKE_ARGS) \
  66. -C $(@D)/squashfs-tools/ INSTALL_DIR=$(TARGET_DIR)/usr/bin install
  67. endef
  68. define HOST_SQUASHFS_BUILD_CMDS
  69. $(HOST_MAKE_ENV) $(MAKE) \
  70. CC="$(HOSTCC)" \
  71. EXTRA_CFLAGS="$(HOST_CFLAGS)" \
  72. EXTRA_LDFLAGS="$(HOST_LDFLAGS)" \
  73. $(HOST_SQUASHFS_MAKE_ARGS) \
  74. -C $(@D)/squashfs-tools/
  75. endef
  76. define HOST_SQUASHFS_INSTALL_CMDS
  77. $(HOST_MAKE_ENV) $(MAKE) $(HOST_SQUASHFS_MAKE_ARGS) \
  78. -C $(@D)/squashfs-tools/ INSTALL_DIR=$(HOST_DIR)/bin install
  79. endef
  80. $(eval $(generic-package))
  81. $(eval $(host-generic-package))