1PORTNAME= cryptopp 2PORTVERSION= 8.9.0 3CATEGORIES= security 4MASTER_SITES= https://github.com/weidai11/${PORTNAME}/releases/download/CRYPTOPP_${PORTVERSION:S/./_/g}/ 5DISTNAME= cryptopp${PORTVERSION:S/.//g} 6 7MAINTAINER= ports@MidnightBSD.org 8COMMENT= Free C++ class library of Cryptographic Primitives 9WWW= https://github.com/weidai11/cryptopp 10 11LICENSE= BSL-1.0 12LICENSE_FILE= ${WRKSRC}/License.txt 13 14USES= cpe compiler:c++11-lang gmake zip 15USE_LDCONFIG= yes 16CPE_PRODUCT= crypto++ 17CPE_VENDOR= cryptopp 18 19EXTRACT_BEFORE_ARGS= -aq 20NO_WRKSUBDIR= yes 21 22CXXFLAGS+= -fPIC 23MAKEFILE= GNUmakefile 24ALL_TARGET= static shared libcryptopp.pc 25 26SOVERSION= ${PORTVERSION:R:R} 27PLIST_SUB+= SOVERSION=${SOVERSION} \ 28 PORTVERSION=${PORTVERSION} 29 30OPTIONS_DEFINE= DEBUG DOCS FULL_DEBUG TOOLS 31OPTIONS_DEFINE_amd64= SIMD 32OPTIONS_DEFINE_i386= SIMD 33OPTIONS_DEFINE_powerpc= SIMD 34OPTIONS_DEFINE_powerpc64= SIMD 35OPTIONS_DEFINE_powerpc64le= SIMD 36OPTIONS_DEFAULT= TOOLS 37OPTIONS_DEFAULT_powerpc= SIMD 38OPTIONS_DEFAULT_powerpc64= SIMD 39OPTIONS_DEFAULT_powerpc64le= SIMD 40OPTIONS_SUB= yes 41 42# Always compile with -DNDEBUG for release. Otherwise, sensitive 43# information could be accessed if an assert triggers. 44# See ${WRKSRC}/Readme.txt for more details. 45FULL_DEBUG_DESC= Build with full debugging support (SECURITY RISK!!!) 46FULL_DEBUG_CXXFLAGS= -DCRYPTOPP_DEBUG 47FULL_DEBUG_CXXFLAGS_OFF=-DNDEBUG 48FULL_DEBUG_IMPLIES= DEBUG 49 50# Disable this option to run the regression tests. 51TOOLS_DESC= Install encryption/decryption tools 52TOOLS_MAKE_ENV= CRYPTOPP_DATA_DIR=${DATADIR}/ 53TOOLS_ALL_TARGET= cryptest.exe 54TOOLS_TEST_TARGET_OFF= test 55 56.include <bsd.mport.options.mk> 57 58.if !${PORT_OPTIONS:MSIMD} 59CXXFLAGS+= -DCRYPTOPP_DISABLE_ASM 60.endif 61 62pre-configure-FULL_DEBUG-on: 63 @${ECHO_CMD} 64 @${ECHO_CMD} "----------------------------- WARNING!!! ----------------------------" 65 @${ECHO_CMD} "You have chosen to compile with full debugging support. If an assert" 66 @${ECHO_CMD} "triggers, sensitive information could possibly be egressed to the" 67 @${ECHO_CMD} "filesystem via a core dump. If this is not your intention, hit CTRL-C" 68 @${ECHO_CMD} "now and run 'make config clean' and disable the FULL_DEBUG option." 69 @${ECHO_CMD} "---------------------------------------------------------------------" 70 @${ECHO_CMD} 71. if !(defined(PACKAGE_BUILDING) || defined(BATCH)) 72 @sleep 10 73. endif 74 75do-install: 76 ${INSTALL_DATA} ${WRKSRC}/libcryptopp.a ${PREFIX}/lib 77 ${INSTALL_LIB} ${WRKSRC}/libcryptopp.so ${PREFIX}/lib/libcryptopp.so.${PORTVERSION} 78 ${LN} -fs libcryptopp.so.${PORTVERSION} ${PREFIX}/lib/libcryptopp.so.${SOVERSION} 79 ${LN} -fs libcryptopp.so.${PORTVERSION} ${PREFIX}/lib/libcryptopp.so 80 ${INSTALL_DATA} ${WRKSRC}/libcryptopp.pc ${PREFIX}/libdata/pkgconfig 81 @${MKDIR} ${PREFIX}/include/cryptopp 82 (for i in `${FIND} ${WRKSRC}/ -name '*.h' \ 83 -and -not -name 'dll.h' \ 84 -and -not -name 'resource.h'`; do \ 85 ${INSTALL_DATA} $$i ${PREFIX}/include/cryptopp; \ 86 done) 87 88do-install-DOCS-on: 89 @${MKDIR} ${FAKE_DESTDIR}${DOCSDIR} 90 ${INSTALL_DATA} ${WRKSRC}/Readme.txt ${FAKE_DESTDIR}${DOCSDIR}/README 91 92do-install-TOOLS-on: 93 @${MKDIR} ${FAKE_DESTDIR}${DATADIR}/TestData 94 ${INSTALL_PROGRAM} ${WRKSRC}/cryptest.exe ${FAKE_DESTDIR}${PREFIX}/bin/cryptest 95 ${INSTALL_DATA} ${WRKSRC}/TestData/usage.dat ${FAKE_DESTDIR}${DATADIR}/TestData 96 97.include <bsd.port.mk> 98