[gentoo-commits] repo/gentoo:master commit in: dev-libs/crypto++/, dev-libs/crypto++/files/
commit: e397d01f0c8c1bd71d3587f3b9348458861dcec7 Author: Sam James gentoo org> AuthorDate: Sat Nov 25 05:22:54 2023 + Commit: Sam James gentoo org> CommitDate: Sat Nov 25 05:27:10 2023 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e397d01f dev-libs/crypto++: drop 8.6.0-r1, 8.8.0 Signed-off-by: Sam James gentoo.org> dev-libs/crypto++/Manifest | 4 -- dev-libs/crypto++/crypto++-8.6.0-r1.ebuild | 74 -- dev-libs/crypto++/crypto++-8.8.0.ebuild| 73 - .../files/crypto++-8.2.0-musl-ldconfig.patch | 24 --- 4 files changed, 175 deletions(-) diff --git a/dev-libs/crypto++/Manifest b/dev-libs/crypto++/Manifest index c17239b8f80d..efe260be1d24 100644 --- a/dev-libs/crypto++/Manifest +++ b/dev-libs/crypto++/Manifest @@ -1,6 +1,2 @@ -DIST cryptopp860.zip 9274149 BLAKE2B c93998e2deb93abf12b801877404f0f82547bfbbbc5aae727e68daffc2407877dda76d7bcd06239d40a48baf21b6f2e29f74e9a97ecbc1b5d4b5bcc50ada71da SHA512 e7773f5e4a7dc7e8e735b1702524bee56ba38e5211544c9c9778bc51ed8dc7b376c17f2e406410043b636312336f26f76dc963f298872f8c13933e88c232fc03 -DIST cryptopp860.zip.sig 659 BLAKE2B 591a535092c61964c0fbb1ba31e44e70fc5f15757b9b56476ff64de0c28d47a13fe99d7f5819cfeb52e514ade1454622451b267bcc751868defcb080ddf79e8c SHA512 6231816b1ccec75cbcdd09daa8895830c5f4c595a4a0aa24dacc3e377832d8db5efa1aeadf815e53db32fc5263b09dd1b249668f34da4bfad5d5cba6f031ce21 -DIST cryptopp880.zip 9279806 BLAKE2B bdce352af83ff148cedbe0233efd3352d5052e6b4ea04484de11e35a8cb5d51cf6bd5aa641ada1bc4535454c1a1afdbfb96f4ae2ef5131d79a7985247810f423 SHA512 3fb1c591735f28dbd1329a6de6de9c495388c88bd5c4f077894c41668398ed313f14121a4553e0d4aa71e552ee8c3b744b770711748528ade71043ecc6159c80 -DIST cryptopp880.zip.sig 659 BLAKE2B a7d46e43cbe671714c5320b99824a91708058528be46e1a770bc214696b936aa5ba062279475966ce6108af6cacb3a22256df91ad5b9bbb54c81a69b9dcfca7b SHA512 8f3987841ff08f65a28fafed1ba3b0111e2c790d247ad739c28e6edb02a77e076b961007c4ba8684bc9e6c880730244b144ccc5f3416fb5fe57566b8021ee92e DIST cryptopp890.zip 9288053 BLAKE2B 95fe0585cff826587a301dd3df863c39cba889d407bb70ae7b35a4f9a0f7f5fef83b1c65cb95923a05f8ae91f18ed20e88738e8bb081a3f9c8c49c2d67d44ecc SHA512 903970c4c0312272e93bae0cc3477be66b273dd38c9329fda9f7157ec44e247a3bc16b9d2b4ad625f258af0eaf2dc2c4210d4d14829b455f180983859a5c4b41 DIST cryptopp890.zip.sig 659 BLAKE2B 741ec10a01a444573fbcf749258e26461ff131935fede8f47b3f2dd8c51f3b43a9af894e0e31f9ad925baf451bdd747b7e22cc8b178992e4190bba503f9bf648 SHA512 4891cf446a47000453884f36f4f8db2da254e11b573c02690fd5e1de604f01498a479847a732abaf0f75b1cdf3cd5bc104f6be240d0de6c7184a3651c674ac95 diff --git a/dev-libs/crypto++/crypto++-8.6.0-r1.ebuild b/dev-libs/crypto++/crypto++-8.6.0-r1.ebuild deleted file mode 100644 index 2074fd8b8c31.. --- a/dev-libs/crypto++/crypto++-8.6.0-r1.ebuild +++ /dev/null @@ -1,74 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/crypto++.asc -inherit flag-o-matic toolchain-funcs verify-sig - -DESCRIPTION="C++ class library of cryptographic schemes" -HOMEPAGE="https://cryptopp.com"; -SRC_URI="https://www.cryptopp.com/cryptopp${PV//.}.zip"; -SRC_URI+=" verify-sig? ( https://cryptopp.com/cryptopp${PV//.}.zip.sig )" -S="${WORKDIR}" - -LICENSE="Boost-1.0" -# ABI notes: -# - Bumped to 8.5 in 8.5.0 out of caution -# subslot is so version (was broken in 8.3.0, check on bumps!) -# Seems to be broken in 8.6 again too -# -# - See https://cryptopp.com/#news, but releases usually say -# "recompile of programs required". Even if it doesn't, -# verify with abidiff! -SLOT="0/${PV}" -KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~loong ppc ppc64 ~riscv sparc x86 ~x64-macos" -IUSE="+asm static-libs" - -BDEPEND=" - app-arch/unzip - verify-sig? ( sec-keys/openpgp-keys-crypto++ ) -" - -PATCHES=( - "${FILESDIR}/${PN}-8.2.0-musl-ldconfig.patch" -) - -config_uncomment() { - sed -i -e "s://\s*\(#define\s*$1\):\1:" config.h || die -} - -src_prepare() { - default - - use asm || config_uncomment CRYPTOPP_DISABLE_ASM - - # ASM isn't Darwin/Mach-O ready, #479554, buildsys doesn't grok CPPFLAGS - [[ ${CHOST} == *-darwin* ]] && config_uncomment CRYPTOPP_DISABLE_ASM -} - -src_configure() { - export CXX="$(tc-getCXX)" - export LIBDIR="${EPREFIX}/usr/$(get_libdir)" - export PREFIX="${EPREFIX}/usr" - tc-export AR RANLIB - - # Long history of correctness bugs: - # https://github.com/weidai11/cryptopp/issues/1134 - # https://github.com/weidai11/cryptopp/issues/1141 - # https://github.com/weidai11/cryptopp/pull/1147 - append-flags -fno-strict-aliasing - filter-lto - - default -} - -src_compile() { - emake -f GNUmakefile all shared libcryptopp.pc -} - -src_install() { - default - -
[gentoo-commits] repo/gentoo:master commit in: dev-libs/crypto++/, dev-libs/crypto++/files/
commit: d1542c922ef3e2f1588a1bf3ab6cb8716dbacef0 Author: Sam James gentoo org> AuthorDate: Mon Feb 8 13:50:07 2021 + Commit: Sam James gentoo org> CommitDate: Mon Feb 8 14:53:58 2021 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d1542c92 dev-libs/crypto++: fix musl build Closes: https://bugs.gentoo.org/762997 Package-Manager: Portage-3.0.14, Repoman-3.0.2 Signed-off-by: Sam James gentoo.org> dev-libs/crypto++/crypto++-8.2.0-r2.ebuild | 3 ++- dev-libs/crypto++/crypto++-8.4.0.ebuild| 4 .../files/crypto++-8.2.0-musl-ldconfig.patch | 24 ++ 3 files changed, 30 insertions(+), 1 deletion(-) diff --git a/dev-libs/crypto++/crypto++-8.2.0-r2.ebuild b/dev-libs/crypto++/crypto++-8.2.0-r2.ebuild index 1ffe175e83b..a52ee90857e 100644 --- a/dev-libs/crypto++/crypto++-8.2.0-r2.ebuild +++ b/dev-libs/crypto++/crypto++-8.2.0-r2.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -20,6 +20,7 @@ S="${WORKDIR}" PATCHES=( "${FILESDIR}/${P}-build.patch" + "${FILESDIR}/${PN}-8.2.0-musl-ldconfig.patch" ) config_add() { diff --git a/dev-libs/crypto++/crypto++-8.4.0.ebuild b/dev-libs/crypto++/crypto++-8.4.0.ebuild index c28c2e43f1c..ed056d9020c 100644 --- a/dev-libs/crypto++/crypto++-8.4.0.ebuild +++ b/dev-libs/crypto++/crypto++-8.4.0.ebuild @@ -17,6 +17,10 @@ IUSE="+asm static-libs" BDEPEND="app-arch/unzip" +PATCHES=( + "${FILESDIR}/${PN}-8.2.0-musl-ldconfig.patch" +) + config_uncomment() { sed -i -e "s://\s*\(#define\s*$1\):\1:" config.h || die } diff --git a/dev-libs/crypto++/files/crypto++-8.2.0-musl-ldconfig.patch b/dev-libs/crypto++/files/crypto++-8.2.0-musl-ldconfig.patch new file mode 100644 index 000..2ae8d287e12 --- /dev/null +++ b/dev-libs/crypto++/files/crypto++-8.2.0-musl-ldconfig.patch @@ -0,0 +1,24 @@ +https://github.com/void-ppc/void-packages/blob/master/srcpkgs/crypto++/patches/musl-soname-links.patch +https://bugs.gentoo.org/762997 +--- a/GNUmakefile b/GNUmakefile +@@ -1256,7 +1256,7 @@ + $(CHMOD) 0755 $(DESTDIR)$(LIBDIR)/libcryptopp.so$(SOLIB_VERSION_SUFFIX) + ifeq ($(HAS_SOLIB_VERSION),1) + -$(LN) libcryptopp.so$(SOLIB_VERSION_SUFFIX) $(DESTDIR)$(LIBDIR)/libcryptopp.so +- $(LDCONF) $(DESTDIR)$(LIBDIR) ++ -$(LN) libcryptopp.so$(SOLIB_VERSION_SUFFIX) $(DESTDIR)$(LIBDIR)/libcryptopp.so$(SOLIB_COMPAT_SUFFIX) + endif + endif + ifneq ($(wildcard libcryptopp.pc),) +--- a/GNUmakefile-cross b/GNUmakefile-cross +@@ -732,7 +732,7 @@ + $(CHMOD) 0755 $(DESTDIR)$(LIBDIR)/libcryptopp.so$(SOLIB_VERSION_SUFFIX) + ifeq ($(HAS_SOLIB_VERSION),1) + -$(LN) libcryptopp.so$(SOLIB_VERSION_SUFFIX) $(DESTDIR)$(LIBDIR)/libcryptopp.so +- $(LDCONF) $(DESTDIR)$(LIBDIR) ++ -$(LN) -sf libcryptopp.so$(SOLIB_VERSION_SUFFIX) $(DESTDIR)$(LIBDIR)/libcryptopp.so$(SOLIB_COMPAT_SUFFIX) + endif + endif + ifneq ($(wildcard libcryptopp.pc),)
[gentoo-commits] repo/gentoo:master commit in: dev-libs/crypto++/, dev-libs/crypto++/files/
commit: b660e18863d717f74dd968bc4895221055b1e42f Author: Sam James gentoo org> AuthorDate: Tue Dec 29 07:25:46 2020 + Commit: Sam James gentoo org> CommitDate: Tue Dec 29 07:26:52 2020 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b660e188 dev-libs/crypto++: cleanup old Package-Manager: Portage-3.0.12-prefix, Repoman-3.0.2 Signed-off-by: Sam James gentoo.org> dev-libs/crypto++/Manifest | 2 - dev-libs/crypto++/crypto++-5.6.5-r1.ebuild | 60 -- dev-libs/crypto++/crypto++-7.0.0-r3.ebuild | 48 - dev-libs/crypto++/crypto++-8.2.0.ebuild| 52 --- .../crypto++/files/crypto++-5.6.4-nonative.patch | 28 -- .../files/crypto++-5.6.5-CVE-2017-9434.patch | 45 6 files changed, 235 deletions(-) diff --git a/dev-libs/crypto++/Manifest b/dev-libs/crypto++/Manifest index 579f5052492..3b3e1db5c63 100644 --- a/dev-libs/crypto++/Manifest +++ b/dev-libs/crypto++/Manifest @@ -1,4 +1,2 @@ -DIST cryptopp565.zip 4220843 BLAKE2B 0c42da3564cdd175c2f2c5c4272caf826f21e47d2271c7f54acab86f5f79dcdad8d6cb946bc88f55fde6189bb2d24ad8fb03dda6b3b8c6f105434b55b8b217d0 SHA512 f13718d02ca69b0129aaf9e767c9d2e0333aa7538355f9c63d9eaf1ff369062084a18dc01489439ebf37797b3ea81b01beb072057d47ec962bfb824ddc72abc7 -DIST cryptopp700.zip 7296665 BLAKE2B 1b1a60e240a9d94b4edfea16beef0ec48ec26c61f7f9a3d89d29bd2e77b13a83ce942f81467bb90d3086253560a3c4acd6b89178dcb416ed4328340ad5222dfd SHA512 8fd8d680e5ceaf10b3c32cb1504bda4b32abc9fcaa2c6e61e3b5e67aca805c792579884bc6a749c29a99105304c421d03d7fe7909fc58f750b3155c7c5cec8ec DIST cryptopp820.zip 8859815 BLAKE2B 67aa850b887ae7aa869c9485bb18784492f6eec6cb12bf7c7cf84c776731eabf3c31965b47a60287e4e5a79dd3e9f0928dcfb185a0010a76f7cb96d2c3e8c6ae SHA512 753513a4ec8dd0fff2f551853ce6bd265d82219c28b033565b565b5e567fbee17adb419f4cde58a97e62b7d6533f4099aa4996cd0ba4775c6a2e7ae63a879da5 DIST cryptopp830.zip 9120687 BLAKE2B 777ae6a0716793dbbf40594e5f910783852df15e1d6444ddb9505e9f00e6ead0c17fcf6eb5d0b4d58881595fefa79d285bd2db1f1789716ffb59624c50823c3d SHA512 ad5219a66c5924d330d3646d0ff996dd235006f6812074bc4eb9e8c662a4f000ba20449d377f24b133d19ce682f7b2a3b2eb4c08857ce0f5bb39743d1d425147 diff --git a/dev-libs/crypto++/crypto++-5.6.5-r1.ebuild b/dev-libs/crypto++/crypto++-5.6.5-r1.ebuild deleted file mode 100644 index 0d60a1066e5..000 --- a/dev-libs/crypto++/crypto++-5.6.5-r1.ebuild +++ /dev/null @@ -1,60 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit flag-o-matic toolchain-funcs - -DESCRIPTION="C++ class library of cryptographic schemes" -HOMEPAGE="https://cryptopp.com"; -SRC_URI="https://www.cryptopp.com/cryptopp${PV//.}.zip"; - -LICENSE="Boost-1.0" -SLOT="0/5.6" # subslot is so version -KEYWORDS="~alpha amd64 ~arm arm64 hppa ppc ppc64 sparc x86 ~x64-macos" -IUSE="static-libs" - -BDEPEND="app-arch/unzip" - -S="${WORKDIR}" - -PATCHES=( - "${FILESDIR}/${PN}-5.6.4-nonative.patch" - "${FILESDIR}/${P}-CVE-2017-9434.patch" -) - -pkg_setup() { - export CXX="$(tc-getCXX)" - export LIBDIR="${EPREFIX}/usr/$(get_libdir)" - export PREFIX="${EPREFIX}/usr" -} - -src_compile() { - # higher optimizations cause problems - replace-flags -O3 -O2 - # ASM isn't Darwin/Mach-O ready, #479554, buildsys doesn't grok CPPFLAGS - [[ ${CHOST} == *-darwin* ]] && append-cxxflags -DCRYPTOPP_DISABLE_ASM - - emake -f GNUmakefile all shared -} - -src_install() { - default - - # remove leftovers as build system sucks - rm -fr "${ED}"/usr/bin "${ED}"/usr/share/cryptopp - use static-libs || rm -f "${ED}"/usr/$(get_libdir)/*.a - - # compatibility - dosym cryptopp "${EPREFIX}"/usr/include/crypto++ - for f in "${ED}"/usr/$(get_libdir)/*; do - ln -s "$(basename "${f}")" "$(echo "${f}" | sed 's/cryptopp/crypto++/')" || die - done -} - -pkg_preinst() { - # we switched directory to symlink - # make sure portage digests that - rm -fr "${EROOT}/usr/include/crypto++" - rm -fr "${EROOT}/usr/include/cryptopp" -} diff --git a/dev-libs/crypto++/crypto++-7.0.0-r3.ebuild b/dev-libs/crypto++/crypto++-7.0.0-r3.ebuild deleted file mode 100644 index f1d8bcbf44c..000 --- a/dev-libs/crypto++/crypto++-7.0.0-r3.ebuild +++ /dev/null @@ -1,48 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit toolchain-funcs - -DESCRIPTION="C++ class library of cryptographic schemes" -HOMEPAGE="https://cryptopp.com"; -SRC_URI="https://www.cryptopp.com/cryptopp${PV//.}.zip"; - -LICENSE="Boost-1.0" -SLOT="0/7" # subslot is so version -KEYWORDS="~alpha amd64 ~arm arm64 hppa ppc ppc64 sparc x86 ~x64-macos" -IUSE="+asm static-libs" - -BDEPEND="app-arch/unzip" - -S="${WORKDIR}" - -config_uncom
[gentoo-commits] repo/gentoo:master commit in: dev-libs/crypto++/, dev-libs/crypto++/files/
commit: ac1362559f5f84d43e121b0899927e8b9a15b741 Author: Alon Bar-Lev gentoo org> AuthorDate: Wed Jul 3 18:58:19 2019 + Commit: Alon Bar-Lev gentoo org> CommitDate: Wed Jul 3 18:58:58 2019 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ac136255 dev-libs/crypto++: fix amd64 asm Closes: https://bugs.gentoo.org/show_bug.cgi?id=689162 Signed-off-by: Alon Bar-Lev gentoo.org> Package-Manager: Portage-2.3.66, Repoman-2.3.11 ...++-8.2.0-r1.ebuild => crypto++-8.2.0-r2.ebuild} | 0 dev-libs/crypto++/crypto++-8.2.0.ebuild| 4 + dev-libs/crypto++/files/crypto++-8.2.0-build.patch | 260 + 3 files changed, 264 insertions(+) diff --git a/dev-libs/crypto++/crypto++-8.2.0-r1.ebuild b/dev-libs/crypto++/crypto++-8.2.0-r2.ebuild similarity index 100% rename from dev-libs/crypto++/crypto++-8.2.0-r1.ebuild rename to dev-libs/crypto++/crypto++-8.2.0-r2.ebuild diff --git a/dev-libs/crypto++/crypto++-8.2.0.ebuild b/dev-libs/crypto++/crypto++-8.2.0.ebuild index bc8c3cb23df..25541d774a7 100644 --- a/dev-libs/crypto++/crypto++-8.2.0.ebuild +++ b/dev-libs/crypto++/crypto++-8.2.0.ebuild @@ -18,6 +18,10 @@ BDEPEND="app-arch/unzip" S="${WORKDIR}" +PATCHES=( + "${FILESDIR}/${P}-build.patch" +) + config_uncomment() { sed -i -e "s://\s*\(#define\s*$1\):\1:" config.h || die } diff --git a/dev-libs/crypto++/files/crypto++-8.2.0-build.patch b/dev-libs/crypto++/files/crypto++-8.2.0-build.patch index 903c6817e86..7c7e8a9c1b6 100644 --- a/dev-libs/crypto++/files/crypto++-8.2.0-build.patch +++ b/dev-libs/crypto++/files/crypto++-8.2.0-build.patch @@ -9,3 +9,263 @@ #define CRYPTOPP_SSE2_INTRIN_AVAILABLE 1 #endif +From fbbf0a08e8cf4faca661b0f75f806ea652abea70 Mon Sep 17 00:00:00 2001 +From: Jeffrey Walton +Date: Tue, 2 Jul 2019 16:55:00 -0400 +Subject: [PATCH] Add missing XOP header for blake2b_simd.cpp (GH #859) The + Gentoo folks caught a bug at https://bugs.gentoo.org/689162. The 689162 bug + uses -march=bdver1 -msse4.1 on a AMD Bulldozer machine. + +Investigating the issue we are missing the XOP header blake2b_simd.cpp. However, adding the XOP header is not enough for this particular config. Four source files fail to compile with the expected headers. We are waiting on the GCC folks to get back to us with a fix. +--- + blake2b_simd.cpp | 5 + + keccak_simd.cpp | 5 + + simon128_simd.cpp | 1 + + speck128_simd.cpp | 1 + + 4 files changed, 12 insertions(+) + +diff --git a/blake2b_simd.cpp b/blake2b_simd.cpp +index ff138321..b246824c 100644 +--- a/blake2b_simd.cpp b/blake2b_simd.cpp +@@ -32,6 +32,11 @@ + # undef CRYPTOPP_ALTIVEC_AVAILABLE + #endif + ++#if defined(__XOP__) ++# include ++# include ++#endif ++ + #if (CRYPTOPP_SSE41_AVAILABLE) + # include + # include +diff --git a/keccak_simd.cpp b/keccak_simd.cpp +index 45674ac2..ae2f2095 100644 +--- a/keccak_simd.cpp b/keccak_simd.cpp +@@ -26,6 +26,11 @@ + # include + #endif + ++#if defined(__XOP__) ++# include ++# include ++#endif ++ + // Squash MS LNK4221 and libtool warnings + extern const char KECCAK_SIMD_FNAME[] = __FILE__; + +diff --git a/simon128_simd.cpp b/simon128_simd.cpp +index 5331c351..4b551f8f 100644 +--- a/simon128_simd.cpp b/simon128_simd.cpp +@@ -23,6 +23,7 @@ + #endif + + #if defined(__XOP__) ++# include + # include + #endif + +diff --git a/speck128_simd.cpp b/speck128_simd.cpp +index 2c356346..fb3eb1e6 100644 +--- a/speck128_simd.cpp b/speck128_simd.cpp +@@ -23,6 +23,7 @@ + #endif + + #if defined(__XOP__) ++# include + # include + #endif + +-- +2.21.0 + +From eeb7dadc76572b7061922ca6ac5f247bdfd985ad Mon Sep 17 00:00:00 2001 +From: Jeffrey Walton +Date: Tue, 2 Jul 2019 19:10:11 -0400 +Subject: [PATCH] Fix missing _mm_roti_epi32 and _mm_roti_epi64 under GCC (GH + #859) + +--- + blake2b_simd.cpp | 4 +++- + blake2s_simd.cpp | 7 +++ + chacha_simd.cpp | 3 +++ + cham_simd.cpp | 3 +++ + keccak_simd.cpp | 4 +++- + lea_simd.cpp | 3 +++ + simeck_simd.cpp | 3 +++ + simon128_simd.cpp | 4 +++- + simon64_simd.cpp | 3 +++ + speck128_simd.cpp | 4 +++- + speck64_simd.cpp | 3 +++ + 11 files changed, 37 insertions(+), 4 deletions(-) + +diff --git a/blake2b_simd.cpp b/blake2b_simd.cpp +index b246824c..6803d0ae 100644 +--- a/blake2b_simd.cpp b/blake2b_simd.cpp +@@ -33,8 +33,10 @@ + #endif + + #if defined(__XOP__) +-# include + # include ++# if defined(__GNUC__) ++# include ++# endif + #endif + + #if (CRYPTOPP_SSE41_AVAILABLE) +diff --git a/blake2s_simd.cpp b/blake2s_simd.cpp +index f02b9771..4b6d1bd6 100644 +--- a/blake2s_simd.cpp b/blake2s_simd.cpp +@@ -42,6 +42,13 @@ + # undef CRYPTOPP_ALTIVEC_AVAILABLE + #endif + ++#if defined(__XOP__) ++# include ++# if defined(__GNUC__) ++# include ++# endif ++#endif ++ + #if (CRYPTOPP_SSE41_AVAILABLE) + # include + # include +diff --git a/chacha_simd.cpp b/chacha_simd.cpp +index a983ab69..5a63ecee 100644 +--- a/chacha_simd.cpp b/chacha_simd
[gentoo-commits] repo/gentoo:master commit in: dev-libs/crypto++/, dev-libs/crypto++/files/
commit: d116b2a7d690b9a9717b7b97b8c67eda503756e3 Author: Alon Bar-Lev gentoo org> AuthorDate: Tue Jul 2 16:48:35 2019 + Commit: Alon Bar-Lev gentoo org> CommitDate: Tue Jul 2 16:49:59 2019 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d116b2a7 dev-libs/crypto++: add explicit cpu_flags_x86 flag Closes: https://bugs.gentoo.org/show_bug.cgi?id=689162 Signed-off-by: Alon Bar-Lev gentoo.org> Package-Manager: Portage-2.3.66, Repoman-2.3.11 dev-libs/crypto++/crypto++-8.2.0-r1.ebuild | 60 ++ dev-libs/crypto++/files/crypto++-8.2.0-build.patch | 11 dev-libs/crypto++/metadata.xml | 1 + 3 files changed, 72 insertions(+) diff --git a/dev-libs/crypto++/crypto++-8.2.0-r1.ebuild b/dev-libs/crypto++/crypto++-8.2.0-r1.ebuild new file mode 100644 index 000..41b85ded021 --- /dev/null +++ b/dev-libs/crypto++/crypto++-8.2.0-r1.ebuild @@ -0,0 +1,60 @@ +# Copyright 1999-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit flag-o-matic toolchain-funcs + +DESCRIPTION="C++ class library of cryptographic schemes" +HOMEPAGE="https://cryptopp.com"; +SRC_URI="https://www.cryptopp.com/cryptopp${PV//.}.zip"; + +LICENSE="Boost-1.0" +SLOT="0/8" # subslot is so version +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86 ~x64-macos" +IUSE="+asm cpu_flags_x86_aes cpu_flags_x86_avx cpu_flags_x86_avx2 cpu_flags_x86_pclmul cpu_flags_x86_sha cpu_flags_x86_sse2 cpu_flags_x86_sse4_2 cpu_flags_x86_ssse3 static-libs" + +BDEPEND="app-arch/unzip" + +S="${WORKDIR}" + +PATCHES=( + "${FILESDIR}/${P}-build.patch" +) + +config_add() { + sed -i -e "/Important Settings/a#define $1 1" config.h || die +} + +pkg_setup() { + export CXX="$(tc-getCXX)" + export LIBDIR="${EPREFIX}/usr/$(get_libdir)" + export PREFIX="${EPREFIX}/usr" +} + +src_prepare() { + default + + use asm || config_add CRYPTOPP_DISABLE_ASM + use cpu_flags_x86_aes || config_add CRYPTOPP_DISABLE_AESNI + use cpu_flags_x86_avx || config_add CRYPTOPP_DISABLE_AVX + use cpu_flags_x86_avx2 || config_add CRYPTOPP_DISABLE_AVX2 + use cpu_flags_x86_pclmul || config_add CRYPTOPP_DISABLE_CLMUL + use cpu_flags_x86_sha || config_add CRYPTOPP_DISABLE_SHANI + use cpu_flags_x86_sse2 || config_add CRYPTOPP_DISABLE_SSE2 + use cpu_flags_x86_sse4_2 || config_add CRYPTOPP_DISABLE_SSE4 + use cpu_flags_x86_ssse3 || config_add CRYPTOPP_DISABLE_SSSE3 + + # ASM isn't Darwin/Mach-O ready, #479554, buildsys doesn't grok CPPFLAGS + [[ ${CHOST} == *-darwin* ]] && config_add CRYPTOPP_DISABLE_ASM +} + +src_compile() { + emake -f GNUmakefile all shared libcryptopp.pc +} + +src_install() { + default + + use static-libs || rm -f "${ED}${EPREFIX}"/usr/$(get_libdir)/*.a +} diff --git a/dev-libs/crypto++/files/crypto++-8.2.0-build.patch b/dev-libs/crypto++/files/crypto++-8.2.0-build.patch new file mode 100644 index 000..903c6817e86 --- /dev/null +++ b/dev-libs/crypto++/files/crypto++-8.2.0-build.patch @@ -0,0 +1,11 @@ +--- a/config.h 2019-07-02 19:25:10.448720035 +0300 a/config.h 2019-07-02 19:25:25.785455586 +0300 +@@ -514,7 +514,7 @@ NAMESPACE_END + #endif + + // 32-bit SunCC does not enable SSE2 by default. +-#if !defined(CRYPTOPP_DISABLE_ASM) && (defined(_MSC_VER) || CRYPTOPP_GCC_VERSION >= 30300 || defined(__SSE2__) || (__SUNPRO_CC >= 0x5100)) ++#if !defined(CRYPTOPP_DISABLE_ASM) && !defined(CRYPTOPP_DISABLE_SSE2) && (defined(_MSC_VER) || CRYPTOPP_GCC_VERSION >= 30300 || defined(__SSE2__) || (__SUNPRO_CC >= 0x5100)) + #define CRYPTOPP_SSE2_INTRIN_AVAILABLE 1 + #endif + diff --git a/dev-libs/crypto++/metadata.xml b/dev-libs/crypto++/metadata.xml index 3227b3be7c7..4ceb05b8abe 100644 --- a/dev-libs/crypto++/metadata.xml +++ b/dev-libs/crypto++/metadata.xml @@ -11,6 +11,7 @@ Support assembly hand optimized crypto functions (i.e. faster run time) + Enable support for Intel's SHA instruction set (SHA-NI) weidai11/cryptopp
[gentoo-commits] repo/gentoo:master commit in: dev-libs/crypto++/, dev-libs/crypto++/files/
commit: 756f4a7c8eaf896507c32131037492bd1e26e2e5 Author: Alon Bar-Lev gentoo org> AuthorDate: Tue Apr 30 05:25:56 2019 + Commit: Alon Bar-Lev gentoo org> CommitDate: Tue Apr 30 05:25:56 2019 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=756f4a7c dev-libs/crypto++: cleanup old Signed-off-by: Alon Bar-Lev gentoo.org> Package-Manager: Portage-2.3.62, Repoman-2.3.11 dev-libs/crypto++/Manifest | 1 - dev-libs/crypto++/crypto++-5.6.5-r1.ebuild | 60 -- .../crypto++/files/crypto++-5.6.4-nonative.patch | 28 -- .../files/crypto++-5.6.5-CVE-2017-9434.patch | 45 4 files changed, 134 deletions(-) diff --git a/dev-libs/crypto++/Manifest b/dev-libs/crypto++/Manifest index ddba9587a28..afb0e40685e 100644 --- a/dev-libs/crypto++/Manifest +++ b/dev-libs/crypto++/Manifest @@ -1,2 +1 @@ -DIST cryptopp565.zip 4220843 BLAKE2B 0c42da3564cdd175c2f2c5c4272caf826f21e47d2271c7f54acab86f5f79dcdad8d6cb946bc88f55fde6189bb2d24ad8fb03dda6b3b8c6f105434b55b8b217d0 SHA512 f13718d02ca69b0129aaf9e767c9d2e0333aa7538355f9c63d9eaf1ff369062084a18dc01489439ebf37797b3ea81b01beb072057d47ec962bfb824ddc72abc7 DIST cryptopp700.zip 7296665 BLAKE2B 1b1a60e240a9d94b4edfea16beef0ec48ec26c61f7f9a3d89d29bd2e77b13a83ce942f81467bb90d3086253560a3c4acd6b89178dcb416ed4328340ad5222dfd SHA512 8fd8d680e5ceaf10b3c32cb1504bda4b32abc9fcaa2c6e61e3b5e67aca805c792579884bc6a749c29a99105304c421d03d7fe7909fc58f750b3155c7c5cec8ec diff --git a/dev-libs/crypto++/crypto++-5.6.5-r1.ebuild b/dev-libs/crypto++/crypto++-5.6.5-r1.ebuild deleted file mode 100644 index 03281fc6285..000 --- a/dev-libs/crypto++/crypto++-5.6.5-r1.ebuild +++ /dev/null @@ -1,60 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit flag-o-matic toolchain-funcs - -DESCRIPTION="C++ class library of cryptographic schemes" -HOMEPAGE="https://cryptopp.com"; -SRC_URI="https://www.cryptopp.com/cryptopp${PV//.}.zip"; - -LICENSE="Boost-1.0" -SLOT="0/5.6" # subslot is so version -KEYWORDS="alpha amd64 ~arm arm64 hppa ppc ppc64 sparc x86 ~x64-macos" -IUSE="static-libs" - -BDEPEND="app-arch/unzip" - -S="${WORKDIR}" - -PATCHES=( - "${FILESDIR}/${PN}-5.6.4-nonative.patch" - "${FILESDIR}/${P}-CVE-2017-9434.patch" -) - -pkg_setup() { - export CXX="$(tc-getCXX)" - export LIBDIR="${EPREFIX}/usr/$(get_libdir)" - export PREFIX="${EPREFIX}/usr" -} - -src_compile() { - # higher optimizations cause problems - replace-flags -O3 -O2 - # ASM isn't Darwin/Mach-O ready, #479554, buildsys doesn't grok CPPFLAGS - [[ ${CHOST} == *-darwin* ]] && append-cxxflags -DCRYPTOPP_DISABLE_ASM - - emake -f GNUmakefile all shared -} - -src_install() { - default - - # remove leftovers as build system sucks - rm -fr "${ED}"/usr/bin "${ED}"/usr/share/cryptopp - use static-libs || rm -f "${ED}${EPREFIX}"/usr/$(get_libdir)/*.a - - # compatibility - dosym cryptopp "${EPREFIX}"/usr/include/crypto++ - for f in "${ED}${EPREFIX}"/usr/$(get_libdir)/*; do - ln -s "$(basename "${f}")" "$(echo "${f}" | sed 's/cryptopp/crypto++/')" || die - done -} - -pkg_preinst() { - # we switched directory to symlink - # make sure portage digests that - rm -fr "${EROOT}/usr/include/crypto++" - rm -fr "${EROOT}/usr/include/cryptopp" -} diff --git a/dev-libs/crypto++/files/crypto++-5.6.4-nonative.patch b/dev-libs/crypto++/files/crypto++-5.6.4-nonative.patch deleted file mode 100644 index 77d74ee729e..000 --- a/dev-libs/crypto++/files/crypto++-5.6.4-nonative.patch +++ /dev/null @@ -1,28 +0,0 @@ -Index: work/GNUmakefile -=== work.orig/GNUmakefile -+++ work/GNUmakefile -@@ -125,23 +125,6 @@ ifeq ($(IS_X86)$(IS_X32)$(IS_CYGWIN)$(IS - endif - endif - --# Guard use of -march=native --ifeq ($(GCC42_OR_LATER)$(IS_NETBSD),10) -- CXXFLAGS += -march=native --else ifneq ($(CLANG_COMPILER)$(INTEL_COMPILER),00) -- CXXFLAGS += -march=native --else -- # GCC 3.3 and "unknown option -march=" -- # Ubuntu GCC 4.1 compiler crash with -march=native -- # NetBSD GCC 4.8 compiler and "bad value (native) for -march= switch" -- # Sun compiler is handled below -- ifeq ($(SUN_COMPILER)$(IS_X64),01) --CXXFLAGS += -m64 -- else ifeq ($(SUN_COMPILER)$(IS_X86),01) --CXXFLAGS += -m32 -- endif # X86/X32/X64 --endif -- - # Aligned access required for -O3 and above due to vectorization - UNALIGNED_ACCESS := $(shell $(EGREP) -c "^[[:space:]]*//[[:space:]]*\#[[:space:]]*define[[:space:]]*CRYPTOPP_NO_UNALIGNED_DATA_ACCESS" config.h) - ifneq ($(UNALIGNED_ACCESS),0) diff --git a/dev-libs/crypto++/files/crypto++-5.6.5-CVE-2017-9434.patch b/dev-libs/crypto++/files/crypto++-5.6.5-CVE-2017-9434.patch deleted file mode 100644 index 428f48901a3..
[gentoo-commits] repo/gentoo:master commit in: dev-libs/crypto++/, dev-libs/crypto++/files/
commit: edc966cf52bcb20f6141cc4ca3a20e98d4440069 Author: Alon Bar-Lev gentoo org> AuthorDate: Mon Jun 5 17:14:51 2017 + Commit: Alon Bar-Lev gentoo org> CommitDate: Mon Jun 5 17:29:16 2017 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=edc966cf dev-libs/crypto++: fix CVE-2017-9434 Bug: 620926 Package-Manager: Portage-2.3.5, Repoman-2.3.1 dev-libs/crypto++/crypto++-5.6.5-r1.ebuild | 60 ++ .../files/crypto++-5.6.5-CVE-2017-9434.patch | 45 2 files changed, 105 insertions(+) diff --git a/dev-libs/crypto++/crypto++-5.6.5-r1.ebuild b/dev-libs/crypto++/crypto++-5.6.5-r1.ebuild new file mode 100644 index 000..47aa6d36e78 --- /dev/null +++ b/dev-libs/crypto++/crypto++-5.6.5-r1.ebuild @@ -0,0 +1,60 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit flag-o-matic toolchain-funcs + +DESCRIPTION="C++ class library of cryptographic schemes" +HOMEPAGE="http://cryptopp.com"; +SRC_URI="https://www.cryptopp.com/cryptopp${PV//.}.zip"; + +LICENSE="Boost-1.0" +SLOT="0/5.6" # subslot is so version +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86 ~x64-macos" +IUSE="static-libs" + +DEPEND="app-arch/unzip" + +S="${WORKDIR}" + +PATCHES=( + "${FILESDIR}/${PN}-5.6.4-nonative.patch" + "${FILESDIR}/${P}-CVE-2017-9434.patch" +) + +pkg_setup() { + export CXX="$(tc-getCXX)" + export LIBDIR="${EPREFIX}/usr/$(get_libdir)" + export PREFIX="${EPREFIX}/usr" +} + +src_compile() { + # higher optimizations cause problems + replace-flags -O3 -O2 + # ASM isn't Darwin/Mach-O ready, #479554, buildsys doesn't grok CPPFLAGS + [[ ${CHOST} == *-darwin* ]] && append-cxxflags -DCRYPTOPP_DISABLE_ASM + + emake -f GNUmakefile all shared +} + +src_install() { + default + + # remove leftovers as build system sucks + rm -fr "${ED}"/usr/bin "${ED}"/usr/share/cryptopp + use static-libs || rm -f "${ED}${EPREFIX}"/usr/$(get_libdir)/*.a + + # compatibility + dosym cryptopp "${EPREFIX}"/usr/include/crypto++ + for f in "${ED}${EPREFIX}"/usr/$(get_libdir)/*; do + ln -s "$(basename "${f}")" "$(echo "${f}" | sed 's/cryptopp/crypto++/')" || die + done +} + +pkg_preinst() { + # we switched directory to symlink + # make sure portage digests that + rm -fr "${EROOT}/usr/include/crypto++" + rm -fr "${EROOT}/usr/include/cryptopp" +} diff --git a/dev-libs/crypto++/files/crypto++-5.6.5-CVE-2017-9434.patch b/dev-libs/crypto++/files/crypto++-5.6.5-CVE-2017-9434.patch new file mode 100644 index 000..428f48901a3 --- /dev/null +++ b/dev-libs/crypto++/files/crypto++-5.6.5-CVE-2017-9434.patch @@ -0,0 +1,45 @@ +From 07dbcc3d9644b18e05c1776db2a57fe04d780965 Mon Sep 17 00:00:00 2001 +From: Jeffrey Walton +Date: Wed, 10 May 2017 18:17:12 -0400 +Subject: [PATCH] Add Inflator::BadDistanceErr exception (Issue 414) The + improved validation and excpetion clears the Address Sanitizer and Undefined + Behavior Sanitizer findings + +--- + zinflate.cpp | 8 +++- + zinflate.h | 4 + 3 files changed, 14 insertions(+), 4 deletions(-) + +diff --git a/zinflate.cpp b/zinflate.cpp +index 664efe6..fbd7505 100644 +--- a/zinflate.cpp b/zinflate.cpp +@@ -550,12 +550,16 @@ bool Inflator::DecodeBody() + break; + } + case DISTANCE_BITS: ++ if (m_distance >= COUNTOF(distanceExtraBits)) ++ throw BadDistanceErr(); + bits = distanceExtraBits[m_distance]; + if (!m_reader.FillBuffer(bits)) + { + m_nextDecode = DISTANCE_BITS; + break; + } ++ if (m_distance >= COUNTOF(distanceStarts)) ++ throw BadDistanceErr(); + m_distance = m_reader.GetBits(bits) + distanceStarts[m_distance]; + OutputPast(m_literal, m_distance); + } +diff --git a/zinflate.h b/zinflate.h +index e2fd237..c47d2f6 100644 +--- a/zinflate.h b/zinflate.h +@@ -96,6 +96,7 @@ public: + }; + class UnexpectedEndErr : public Err {public: UnexpectedEndErr() : Err(INVALID_DATA_FORMAT, "Inflator: unexpected end of compressed block") {}}; + class BadBlockErr : public Err {public: BadBlockErr() : Err(INVALID_DATA_FORMAT, "Inflator: error in compressed block") {}}; ++ class BadDistanceErr : public Err {public: BadDistanceErr() : Err(INVALID_DATA_FORMAT, "Inflat
[gentoo-commits] repo/gentoo:master commit in: dev-libs/crypto++/, dev-libs/crypto++/files/
commit: c85538388f2e1ed476edd2917618fead3578b5d5 Author: Alexis Ballier gentoo org> AuthorDate: Tue Oct 4 15:40:31 2016 + Commit: Alexis Ballier gentoo org> CommitDate: Tue Oct 4 15:40:43 2016 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c8553838 dev-libs/crypto++: Drop forced usage of march=native. This completely breaks for my usecases where I build binary packages for older CPUs. Package-Manager: portage-2.3.1 ...pto++-5.6.4.ebuild => crypto++-5.6.4-r1.ebuild} | 4 .../crypto++/files/crypto++-5.6.4-nonative.patch | 28 ++ 2 files changed, 32 insertions(+) diff --git a/dev-libs/crypto++/crypto++-5.6.4.ebuild b/dev-libs/crypto++/crypto++-5.6.4-r1.ebuild similarity index 93% rename from dev-libs/crypto++/crypto++-5.6.4.ebuild rename to dev-libs/crypto++/crypto++-5.6.4-r1.ebuild index c632e00..6444560 100644 --- a/dev-libs/crypto++/crypto++-5.6.4.ebuild +++ b/dev-libs/crypto++/crypto++-5.6.4-r1.ebuild @@ -18,6 +18,10 @@ IUSE="static-libs" DEPEND="app-arch/unzip" S="${WORKDIR}" +PATCHES=( + # Building with -march=native breaks when one wants to build for older CPUs. + "${FILESDIR}/${P}-nonative.patch" +) src_configure() { cp config.recommend config.h || die diff --git a/dev-libs/crypto++/files/crypto++-5.6.4-nonative.patch b/dev-libs/crypto++/files/crypto++-5.6.4-nonative.patch new file mode 100644 index ..77d74ee --- /dev/null +++ b/dev-libs/crypto++/files/crypto++-5.6.4-nonative.patch @@ -0,0 +1,28 @@ +Index: work/GNUmakefile +=== +--- work.orig/GNUmakefile work/GNUmakefile +@@ -125,23 +125,6 @@ ifeq ($(IS_X86)$(IS_X32)$(IS_CYGWIN)$(IS + endif + endif + +-# Guard use of -march=native +-ifeq ($(GCC42_OR_LATER)$(IS_NETBSD),10) +- CXXFLAGS += -march=native +-else ifneq ($(CLANG_COMPILER)$(INTEL_COMPILER),00) +- CXXFLAGS += -march=native +-else +- # GCC 3.3 and "unknown option -march=" +- # Ubuntu GCC 4.1 compiler crash with -march=native +- # NetBSD GCC 4.8 compiler and "bad value (native) for -march= switch" +- # Sun compiler is handled below +- ifeq ($(SUN_COMPILER)$(IS_X64),01) +-CXXFLAGS += -m64 +- else ifeq ($(SUN_COMPILER)$(IS_X86),01) +-CXXFLAGS += -m32 +- endif # X86/X32/X64 +-endif +- + # Aligned access required for -O3 and above due to vectorization + UNALIGNED_ACCESS := $(shell $(EGREP) -c "^[[:space:]]*//[[:space:]]*\#[[:space:]]*define[[:space:]]*CRYPTOPP_NO_UNALIGNED_DATA_ACCESS" config.h) + ifneq ($(UNALIGNED_ACCESS),0)
[gentoo-commits] repo/gentoo:master commit in: dev-libs/crypto++/, dev-libs/crypto++/files/
commit: 5e708f89285f5d55f5b5dd26618df439e2943591 Author: Alon Bar-Lev gentoo org> AuthorDate: Thu Sep 22 22:17:48 2016 + Commit: Alon Bar-Lev gentoo org> CommitDate: Fri Sep 23 06:52:56 2016 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5e708f89 dev-libs/crypto++ - fix minor c++11 issue Thanks: Peter Levine Bug: 593860 Package-Manager: portage-2.2.28 dev-libs/crypto++/crypto++-5.6.2-r3.ebuild | 3 ++- dev-libs/crypto++/files/crypto++-5.6.2-c++11.patch | 22 ++ 2 files changed, 24 insertions(+), 1 deletion(-) diff --git a/dev-libs/crypto++/crypto++-5.6.2-r3.ebuild b/dev-libs/crypto++/crypto++-5.6.2-r3.ebuild index 57b4f46..1932f1a 100644 --- a/dev-libs/crypto++/crypto++-5.6.2-r3.ebuild +++ b/dev-libs/crypto++/crypto++-5.6.2-r3.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2015 Gentoo Foundation +# Copyright 1999-2016 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Id$ @@ -23,6 +23,7 @@ S="${WORKDIR}" src_prepare() { epatch "${FILESDIR}"/${P}-r1-make.patch epatch "${FILESDIR}"/${P}-cve-2015-2141.patch + epatch "${FILESDIR}"/${P}-c++11.patch # Generate our own libtool script for building. cat <<-EOF > configure.ac diff --git a/dev-libs/crypto++/files/crypto++-5.6.2-c++11.patch b/dev-libs/crypto++/files/crypto++-5.6.2-c++11.patch new file mode 100644 index ..4075036 --- /dev/null +++ b/dev-libs/crypto++/files/crypto++-5.6.2-c++11.patch @@ -0,0 +1,22 @@ +From 44015c26ba215f955b1e653f9c8f3c894a532707 Mon Sep 17 00:00:00 2001 +From: Jeffrey Walton +Date: Tue, 9 Jun 2015 09:49:02 -0400 +Subject: [PATCH] Cleared ill-formed conversion in C++11 + +--- + wake.cpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/wake.cpp b/wake.cpp +index c34165b..e0f194e 100644 +--- a/wake.cpp b/wake.cpp +@@ -23,7 +23,7 @@ void WAKE_Base::GenKey(word32 k0, word32 k1, word32 k2, word32 k3) + signed int x, z, p; + // x and z were declared as "long" in Wheeler's paper, which is a signed type. I don't know if that was intentional, but it's too late to change it now. -- Wei 7/4/2010 + CRYPTOPP_COMPILE_ASSERT(sizeof(x) == 4); +- static int tt[10]= { ++ static unsigned int tt[10]= { + 0x726a8f3b, // table + 0xe69a3b5c, + 0xd3c71fe5,
[gentoo-commits] repo/gentoo:master commit in: dev-libs/crypto++/, dev-libs/crypto++/files/
commit: 9960132bfacc2d44138d832c66835bfa27aa99e9 Author: Jason A. Donenfeld gentoo org> AuthorDate: Sun Apr 17 04:29:34 2016 + Commit: Jason Donenfeld gentoo org> CommitDate: Sun Apr 17 04:29:44 2016 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9960132b dev-libs/crypto++: add pkgconfig file for clementine Read this bug report: https://github.com/clementine-player/Clementine/issues/5279 Package-Manager: portage-2.2.28 dev-libs/crypto++/crypto++-5.6.2-r4.ebuild | 75 ++ dev-libs/crypto++/files/cryptopp.pc| 12 + 2 files changed, 87 insertions(+) diff --git a/dev-libs/crypto++/crypto++-5.6.2-r4.ebuild b/dev-libs/crypto++/crypto++-5.6.2-r4.ebuild new file mode 100644 index 000..1796b2d --- /dev/null +++ b/dev-libs/crypto++/crypto++-5.6.2-r4.ebuild @@ -0,0 +1,75 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +inherit eutils flag-o-matic multilib toolchain-funcs autotools + +DESCRIPTION="C++ class library of cryptographic schemes" +HOMEPAGE="http://cryptopp.com"; +SRC_URI="mirror://sourceforge/cryptopp/cryptopp${PV//.}.zip" + +LICENSE="Boost-1.0" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ppc ~ppc64 ~sparc ~x86 ~x64-macos" +IUSE="static-libs" + +DEPEND="app-arch/unzip + sys-devel/libtool" + +S="${WORKDIR}" + +src_prepare() { + epatch "${FILESDIR}"/${P}-r1-make.patch + epatch "${FILESDIR}"/${P}-cve-2015-2141.patch + + # Generate our own libtool script for building. + cat <<-EOF > configure.ac + AC_INIT(lt, 0) + AM_INIT_AUTOMAKE + AC_PROG_CXX + LT_INIT + AC_CONFIG_FILES(Makefile) + AC_OUTPUT + EOF + touch NEWS README AUTHORS ChangeLog Makefile.am + eautoreconf +} + +src_configure() { + econf $(use_enable static-libs static) +} + +src_compile() { + # higher optimizations cause problems + replace-flags -O? -O1 + filter-flags -fomit-frame-pointer + # ASM isn't Darwin/Mach-O ready, #479554, buildsys doesn't grok CPPFLAGS + [[ ${CHOST} == *-darwin* ]] && append-flags -DCRYPTOPP_DISABLE_X86ASM + + emake -f GNUmakefile CXX="$(tc-getCXX)" CXXFLAGS="${CXXFLAGS}" LIBDIR="$(get_libdir)" PREFIX="${EPREFIX}/usr" LIBTOOL="./libtool" +} + +src_test() { + # ensure that all test vectors have Unix line endings + local file + for file in TestVectors/* ; do + edos2unix ${file} + done + + if ! emake CXX="$(tc-getCXX)" CXXFLAGS="${CXXFLAGS}" test ; then + eerror "Crypto++ self-tests failed." + eerror "Try to remove some optimization flags and reemerge Crypto++." + die "emake test failed" + fi +} + +src_install() { + emake DESTDIR="${D}" LIBDIR="$(get_libdir)" PREFIX="${EPREFIX}/usr" LIBTOOL="./libtool" install + use static-libs || rm -f "${ED}"/usr/$(get_libdir)/*.la + cp "${FILESDIR}/cryptopp.pc" "${WORKDIR}" || die "Could not find pkg-config file" + sed -i -e "s:^prefix= :prefix= ${EPREFIX}:" -e "s:/,lib,:/$(get_libdir):g" "${WORKDIR}/cryptopp.pc" + insinto "/usr/$(get_libdir)/pkgconfig" + doins "${WORKDIR}/cryptopp.pc" +} diff --git a/dev-libs/crypto++/files/cryptopp.pc b/dev-libs/crypto++/files/cryptopp.pc new file mode 100644 index 000..ed60972 --- /dev/null +++ b/dev-libs/crypto++/files/cryptopp.pc @@ -0,0 +1,12 @@ +prefix= /usr +exec_prefix=${prefix} +libdir=${exec_prefix}/,lib, +includedir=${prefix}/include + +Name: libcrypto++ +Description: General purpose cryptographic shared library +URL: http://www.cryptopp.com +Version: %version +Requires: +Libs: -lcryptopp +Cflags: