1################################################################################ 2# 3# cryptopp 4# 5################################################################################ 6 7CRYPTOPP_VERSION = 8.9.0 8CRYPTOPP_SOURCE = cryptopp$(subst .,,$(CRYPTOPP_VERSION)).zip 9CRYPTOPP_SITE = https://cryptopp.com 10CRYPTOPP_LICENSE = BSL-1.0, BSD-3-Clause (CRYPTOGAMS), Public domain (ChaCha SSE2 and AVX) 11CRYPTOPP_LICENSE_FILES = License.txt 12CRYPTOPP_CPE_ID_VENDOR = cryptopp 13CRYPTOPP_CPE_ID_PRODUCT = crypto\+\+ 14CRYPTOPP_INSTALL_STAGING = YES 15 16define HOST_CRYPTOPP_EXTRACT_CMDS 17 $(UNZIP) $(HOST_CRYPTOPP_DL_DIR)/$(CRYPTOPP_SOURCE) -d $(@D) 18endef 19 20HOST_CRYPTOPP_CXXFLAGS = $(HOST_CFLAGS) -fPIC 21 22# _mm256_broadcastsi128_si256 has been added only in gcc 4.9 23ifneq ($(BR2_HOST_GCC_AT_LEAST_4_9),y) 24HOST_CRYPTOPP_CXXFLAGS += -DCRYPTOPP_DISABLE_AVX2 25endif 26 27HOST_CRYPTOPP_MAKE_OPTS = \ 28 $(HOST_CONFIGURE_OPTS) \ 29 CXXFLAGS="$(HOST_CRYPTOPP_CXXFLAGS)" 30 31define HOST_CRYPTOPP_BUILD_CMDS 32 $(HOST_MAKE_ENV) $(MAKE) -C $(@D) $(HOST_CRYPTOPP_MAKE_OPTS) shared 33endef 34 35define HOST_CRYPTOPP_INSTALL_CMDS 36 $(HOST_MAKE_ENV) $(MAKE) -C $(@D) PREFIX=$(HOST_DIR) install-lib 37endef 38 39define CRYPTOPP_EXTRACT_CMDS 40 $(UNZIP) $(CRYPTOPP_DL_DIR)/$(CRYPTOPP_SOURCE) -d $(@D) 41endef 42 43CRYPTOPP_CXXFLAGS = $(TARGET_CXXFLAGS) -fPIC 44 45# _mm256_broadcastsi128_si256 has been added only in gcc 4.9 46ifneq ($(BR2_TOOLCHAIN_GCC_AT_LEAST_4_9),y) 47CRYPTOPP_CXXFLAGS += -DCRYPTOPP_DISABLE_AVX2 48endif 49 50ifneq ($(BR2_POWERPC_CPU_HAS_ALTIVEC),y) 51CRYPTOPP_CXXFLAGS += -DCRYPTOPP_DISABLE_ALTIVEC 52endif 53 54ifneq ($(BR2_ARM_CPU_HAS_NEON),y) 55CRYPTOPP_CXXFLAGS += -DCRYPTOPP_DISABLE_ARM_NEON 56endif 57 58CRYPTOPP_MAKE_OPTS = \ 59 $(TARGET_CONFIGURE_OPTS) \ 60 CXXFLAGS="$(CRYPTOPP_CXXFLAGS)" 61 62define CRYPTOPP_BUILD_CMDS 63 $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) $(CRYPTOPP_MAKE_OPTS) \ 64 PREFIX=/usr shared libcryptopp.pc 65endef 66 67define CRYPTOPP_INSTALL_TARGET_CMDS 68 $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) PREFIX=/usr DESTDIR=$(TARGET_DIR) \ 69 LDCONFIG=/bin/true install-lib 70endef 71 72define CRYPTOPP_INSTALL_STAGING_CMDS 73 $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) PREFIX=/usr DESTDIR=$(STAGING_DIR) \ 74 LDCONFIG=/bin/true install-lib 75endef 76 77$(eval $(generic-package)) 78$(eval $(host-generic-package)) 79