zstd.mk 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. ################################################################################
  2. #
  3. # zstd
  4. #
  5. ################################################################################
  6. ZSTD_VERSION = 1.4.5
  7. ZSTD_SITE = https://github.com/facebook/zstd/releases/download/v$(ZSTD_VERSION)
  8. ZSTD_INSTALL_STAGING = YES
  9. ZSTD_LICENSE = BSD-3-Clause or GPL-2.0
  10. ZSTD_LICENSE_FILES = LICENSE COPYING
  11. ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),y)
  12. ZSTD_OPTS += HAVE_THREAD=1
  13. else
  14. ZSTD_OPTS += HAVE_THREAD=0
  15. endif
  16. ifeq ($(BR2_PACKAGE_ZLIB),y)
  17. ZSTD_DEPENDENCIES += zlib
  18. ZSTD_OPTS += HAVE_ZLIB=1
  19. else
  20. ZSTD_OPTS += HAVE_ZLIB=0
  21. endif
  22. ifeq ($(BR2_PACKAGE_XZ),y)
  23. ZSTD_DEPENDENCIES += xz
  24. ZSTD_OPTS += HAVE_LZMA=1
  25. else
  26. ZSTD_OPTS += HAVE_LZMA=0
  27. endif
  28. ifeq ($(BR2_PACKAGE_LZ4),y)
  29. ZSTD_DEPENDENCIES += lz4
  30. ZSTD_OPTS += HAVE_LZ4=1
  31. else
  32. ZSTD_OPTS += HAVE_LZ4=0
  33. endif
  34. ifeq ($(BR2_STATIC_LIBS),y)
  35. ZSTD_BUILD_LIBS = libzstd.a
  36. ZSTD_INSTALL_LIBS = install-static
  37. else ifeq ($(BR2_SHARED_LIBS),y)
  38. ZSTD_BUILD_LIBS = libzstd
  39. ZSTD_INSTALL_LIBS = install-shared
  40. else
  41. ZSTD_BUILD_LIBS = libzstd.a libzstd
  42. ZSTD_INSTALL_LIBS = install-static install-shared
  43. endif
  44. define ZSTD_BUILD_CMDS
  45. $(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE) $(ZSTD_OPTS) \
  46. -C $(@D)/lib $(ZSTD_BUILD_LIBS)
  47. $(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE) $(ZSTD_OPTS) \
  48. -C $(@D) zstd
  49. endef
  50. define ZSTD_INSTALL_STAGING_CMDS
  51. $(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE) $(ZSTD_OPTS) \
  52. DESTDIR=$(STAGING_DIR) PREFIX=/usr -C $(@D)/lib \
  53. install-pc install-includes $(ZSTD_INSTALL_LIBS)
  54. endef
  55. define ZSTD_INSTALL_TARGET_CMDS
  56. $(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE) $(ZSTD_OPTS) \
  57. DESTDIR=$(TARGET_DIR) PREFIX=/usr -C $(@D)/programs install
  58. $(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE) $(ZSTD_OPTS) \
  59. DESTDIR=$(TARGET_DIR) PREFIX=/usr -C $(@D)/lib $(ZSTD_INSTALL_LIBS)
  60. endef
  61. # note: no 'HAVE_...' options for host library build only
  62. define HOST_ZSTD_BUILD_CMDS
  63. $(HOST_MAKE_ENV) $(HOST_CONFIGURE_OPTS) $(MAKE) \
  64. -C $(@D)/lib libzstd.a libzstd
  65. $(HOST_MAKE_ENV) $(HOST_CONFIGURE_OPTS) $(MAKE) \
  66. -C $(@D) zstd
  67. endef
  68. define HOST_ZSTD_INSTALL_CMDS
  69. $(HOST_MAKE_ENV) $(HOST_CONFIGURE_OPTS) $(MAKE) \
  70. DESTDIR=$(HOST_DIR) PREFIX=/usr -C $(@D)/lib install
  71. $(HOST_MAKE_ENV) $(HOST_CONFIGURE_OPTS) $(MAKE) \
  72. DESTDIR=$(HOST_DIR) PREFIX=/usr -C $(@D)/programs install
  73. endef
  74. $(eval $(generic-package))
  75. $(eval $(host-generic-package))