bf4cf9de83
So far, cryptopp only had a host variant, but some use-cases require this library on the target, so this adjusts the cryptopp package accordingly. One patch (submitted upstream) is needed to have the proper symlink corresponding to the SONAME of the shared library. Signed-off-by: Kamel Bouhara <kamel.bouhara@bootlin.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
71 lines
2.0 KiB
Makefile
71 lines
2.0 KiB
Makefile
################################################################################
|
|
#
|
|
# cryptopp
|
|
#
|
|
################################################################################
|
|
|
|
CRYPTOPP_VERSION = 8.6.0
|
|
CRYPTOPP_SOURCE = cryptopp$(subst .,,$(CRYPTOPP_VERSION)).zip
|
|
CRYPTOPP_SITE = https://cryptopp.com
|
|
CRYPTOPP_LICENSE = BSL-1.0, BSD-3-Clause (CRYPTOGAMS), Public domain (ChaCha SSE2 and AVX)
|
|
CRYPTOPP_LICENSE_FILES = License.txt
|
|
CRYPTOPP_CPE_ID_VENDOR = cryptopp
|
|
CRYPTOPP_CPE_ID_PRODUCT = crypto\+\+
|
|
CRYPTOPP_INSTALL_STAGING = YES
|
|
|
|
define HOST_CRYPTOPP_EXTRACT_CMDS
|
|
$(UNZIP) $(HOST_CRYPTOPP_DL_DIR)/$(CRYPTOPP_SOURCE) -d $(@D)
|
|
endef
|
|
|
|
HOST_CRYPTOPP_CXXFLAGS = $(HOST_CFLAGS) -fPIC
|
|
|
|
# _mm256_broadcastsi128_si256 has been added only in gcc 4.9
|
|
ifneq ($(BR2_HOST_GCC_AT_LEAST_4_9),y)
|
|
HOST_CRYPTOPP_CXXFLAGS += -DCRYPTOPP_DISABLE_AVX2
|
|
endif
|
|
|
|
HOST_CRYPTOPP_MAKE_OPTS = \
|
|
$(HOST_CONFIGURE_OPTS) \
|
|
CXXFLAGS="$(HOST_CRYPTOPP_CXXFLAGS)"
|
|
|
|
define HOST_CRYPTOPP_BUILD_CMDS
|
|
$(HOST_MAKE_ENV) $(MAKE) -C $(@D) $(HOST_CRYPTOPP_MAKE_OPTS) shared
|
|
endef
|
|
|
|
define HOST_CRYPTOPP_INSTALL_CMDS
|
|
$(HOST_MAKE_ENV) $(MAKE) -C $(@D) PREFIX=$(HOST_DIR) install-lib
|
|
endef
|
|
|
|
define CRYPTOPP_EXTRACT_CMDS
|
|
$(UNZIP) $(CRYPTOPP_DL_DIR)/$(CRYPTOPP_SOURCE) -d $(@D)
|
|
endef
|
|
|
|
CRYPTOPP_CXXFLAGS = $(TARGET_CXXFLAGS) -fPIC
|
|
|
|
# _mm256_broadcastsi128_si256 has been added only in gcc 4.9
|
|
ifneq ($(BR2_TOOLCHAIN_GCC_AT_LEAST_4_9),y)
|
|
CRYPTOPP_CXXFLAGS += -DCRYPTOPP_DISABLE_AVX2
|
|
endif
|
|
|
|
CRYPTOPP_MAKE_OPTS = \
|
|
$(TARGET_CONFIGURE_OPTS) \
|
|
CXXFLAGS="$(CRYPTOPP_CXXFLAGS)"
|
|
|
|
define CRYPTOPP_BUILD_CMDS
|
|
$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) $(CRYPTOPP_MAKE_OPTS) \
|
|
PREFIX=/usr shared libcryptopp.pc
|
|
endef
|
|
|
|
define CRYPTOPP_INSTALL_TARGET_CMDS
|
|
$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) PREFIX=/usr DESTDIR=$(TARGET_DIR) \
|
|
LDCONFIG=/bin/true install-lib
|
|
endef
|
|
|
|
define CRYPTOPP_INSTALL_STAGING_CMDS
|
|
$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) PREFIX=/usr DESTDIR=$(STAGING_DIR) \
|
|
LDCONFIG=/bin/true install-lib
|
|
endef
|
|
|
|
$(eval $(generic-package))
|
|
$(eval $(host-generic-package))
|