From 6ab3fa34b3098b8347f8484b63b34546ecd397bd Mon Sep 17 00:00:00 2001 From: Mathieu Tortuyaux Date: Tue, 6 Jul 2021 14:01:03 +0200 Subject: [PATCH] dev-libs/libgcrypt: sync with ::gentoo 1.9.3 is not stable yet - accepted keywords has been updated in ::coreos-overlay. Ref: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5ebb8899e39bc7a7773fe930e68697cc48aab8d3 Signed-off-by: Mathieu Tortuyaux --- .../dev-libs/libgcrypt/Manifest | 9 +- ...gcrypt-1.9.1-fix-no-asm-on-amd64-x86.patch | 141 ++++++++++++++++++ ...pt-1.8.5.ebuild => libgcrypt-1.8.6.ebuild} | 16 +- ...1.8.3-r1.ebuild => libgcrypt-1.8.7.ebuild} | 16 +- ...pt-1.8.4.ebuild => libgcrypt-1.8.8.ebuild} | 31 ++-- ...1.8.3.ebuild => libgcrypt-1.9.1-r1.ebuild} | 36 +++-- .../dev-libs/libgcrypt/libgcrypt-1.9.2.ebuild | 86 +++++++++++ .../dev-libs/libgcrypt/libgcrypt-1.9.3.ebuild | 86 +++++++++++ .../dev-libs/libgcrypt/metadata.xml | 17 ++- 9 files changed, 391 insertions(+), 47 deletions(-) create mode 100644 sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/files/libgcrypt-1.9.1-fix-no-asm-on-amd64-x86.patch rename sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/{libgcrypt-1.8.5.ebuild => libgcrypt-1.8.6.ebuild} (79%) rename sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/{libgcrypt-1.8.3-r1.ebuild => libgcrypt-1.8.7.ebuild} (76%) rename sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/{libgcrypt-1.8.4.ebuild => libgcrypt-1.8.8.ebuild} (76%) rename sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/{libgcrypt-1.8.3.ebuild => libgcrypt-1.9.1-r1.ebuild} (56%) create mode 100644 sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.9.2.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.9.3.ebuild diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/Manifest b/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/Manifest index c2bcae372d..41d2164ca2 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/Manifest @@ -1,3 +1,6 @@ -DIST libgcrypt-1.8.3.tar.bz2 2989166 BLAKE2B 3443883c3e8d005be6cbdc91589b8b287226f26eb59536e1a32512004af739a64a3817ac38fa1132fdfc3424c21ca49c81db93535a23d590a5dc4f4518f3cce1 SHA512 8c873204303f173dd3f49817a81035c1d504b2fc885965c9bc074a6e3fb108ceb6dca366d85e840a40712a6890fc325018ea9b8c1b7b8804c51c44b296cb96a0 -DIST libgcrypt-1.8.4.tar.bz2 2990108 BLAKE2B 97a1f9382adf23cd4ac491a392882f2e712fddd4f0d95a4fafb9cc70aa41ffa7b7b6a371b8368e9c99e3e1849b9d38078abc55703d4d8b25289f3c662e6ba8a1 SHA512 b831fc337eb14806897e224b0d1e78d1f8e9db91dffa818a015a4aa104144e2d971e5a855904907ee2bb9990a9d526de32d6787e1cae98e28a65c3258b2b1ea1 -DIST libgcrypt-1.8.5.tar.bz2 2991291 BLAKE2B 93276b4536f71c07bb103e10607592e02add413f633d96cc95513daa6e6b0e098fe803bb6a0e405a241fddc5ce0cfad61658d57c27bd724eecd32fd862af4c99 SHA512 b55e16e838d1b1208e7673366971ae7c0f9c1c79e042f41c03d14ed74c5e387fa69ea81d5414ffda3d2b4f82ea5467fe13b00115727e257db22808cf351bde89 +DIST libgcrypt-1.8.6.tar.bz2 2997781 BLAKE2B 90ecacae75633dfff248b9c07a72126aaa4a5c285141f89c42237326ae3bfb99c937eef05d87b466c3d8f5cf022725ccee5c0dbc74d4eb57523a8a2892864b65 SHA512 28a26f665b7e327b79815849ee6e84ab384ee9105d81d4d06e4feeea07d986f940cbbb9faaae8712068cace45b4110a62965a93201da0e1ad008b65808b2b29b +DIST libgcrypt-1.8.7.tar.bz2 2985660 BLAKE2B cb2132b826f3f3af240e6c9ac5fd992808aa17ce64144d17452591a5b1e402564af82c021b58f5fd620ebeb5894ac9654835f6d8376ec05ee41fc02189dd6825 SHA512 6309d17624d8029848990d225d5924886c951cef691266c8e010fbbb7f678972cee70cbb91d370ad0bcdc8c8761402a090c2c853c9427ec79293624a59da5060 +DIST libgcrypt-1.8.8.tar.bz2 2987685 BLAKE2B 7b590c06d91403f1bbfa108379b3747271e9c83acc5547a4d43ef9ada9b0b7c78654cdc24f6cd0db012d50628ae4ec9320dcb63a901ec2dadde6a7ed56dbed7e SHA512 9861f3b5da3cb013eb79efbf2859864f8c2c11b41484b051c981c45cc0bf1569202838226da10ebddeb7a7b7f39ebd3a95f107b9bf6f908074ccc9a51ea94db8 +DIST libgcrypt-1.9.1.tar.bz2 3202683 BLAKE2B 102a61c855fb4a9e5c9433f52988ea87db7672de6586ed47f888526369d0ef8ad640752ca1ef144c2db73ce90464d6624cc3b12dbdeaf568d706222af3955672 SHA512 e8a028724cf5476fff0ca82c5c279a64b3bc5d1fd1472b784df4084b185266825baffc49e27b90db7453c8faef68cd0b8264f379abacee629bbdf6b11f2a28d6 +DIST libgcrypt-1.9.2.tar.bz2 3206187 BLAKE2B e0ceb02b0c26a7246c4146640a9dcea01429a365bd484532b9d85fdb0c8f4ac1308862e70899a1593f4665e4b2d16ceaa10029702f67720897975258a25d8ab0 SHA512 d2e3dc89788763229f554382b3cf0c3a2680f774258abc4c1fd9ef1ad44920d57d14422af9b6b405e42742e691d19ab2ee458fddf057e778964519eee090f016 +DIST libgcrypt-1.9.3.tar.bz2 3219061 BLAKE2B 51a6273ba28829c016d9a93fffa181aec24170d0e4d3a363c788f336219e1531274344adeea289f3cc09161fdb2e56846551367a8ac880b14e03a52ab0dd551a SHA512 977e766887c14f19aa1b9fcc0214303036a649e41cd4278de76da7d734cf36888e2e1b6275590dac523dcb4ba8ab07993e6ee8209fd5f1a3383d738b09a060d6 diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/files/libgcrypt-1.9.1-fix-no-asm-on-amd64-x86.patch b/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/files/libgcrypt-1.9.1-fix-no-asm-on-amd64-x86.patch new file mode 100644 index 0000000000..875c223700 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/files/libgcrypt-1.9.1-fix-no-asm-on-amd64-x86.patch @@ -0,0 +1,141 @@ +Broken in https://git.gnupg.org/cgi-bin/gitweb.cgi?p=libgcrypt.git;a=commitdiff;h=8d404a629167d67ed56e45de3e65d1e0b7cdeb24;hp=3b34bd6e178614d6021ee7d1140646f7c8ed7519 +https://dev.gnupg.org/T5277 +https://bugs.gentoo.org/767859 + +This is a revert of that commit, as suggested by upstream in the linked bug. +diff --git a/random/rand-internal.h b/random/rand-internal.h +index 34221569..d99c6671 100644 +--- a/random/rand-internal.h ++++ b/random/rand-internal.h +@@ -141,7 +141,7 @@ void _gcry_rndhw_poll_fast (void (*add)(const void*, size_t, + enum random_origins origin); + size_t _gcry_rndhw_poll_slow (void (*add)(const void*, size_t, + enum random_origins), +- enum random_origins origin, size_t req_length); ++ enum random_origins origin); + + + +diff --git a/random/rndhw.c b/random/rndhw.c +index 3cf9acc3..2829382c 100644 +--- a/random/rndhw.c ++++ b/random/rndhw.c +@@ -198,33 +198,24 @@ _gcry_rndhw_poll_fast (void (*add)(const void*, size_t, enum random_origins), + + + /* Read 64 bytes from a hardware RNG and return the number of bytes +- actually read. However hardware source is let account only +- for up to 50% (or 25% for RDRAND) of the requested bytes. */ ++ actually read. */ + size_t + _gcry_rndhw_poll_slow (void (*add)(const void*, size_t, enum random_origins), +- enum random_origins origin, size_t req_length) ++ enum random_origins origin) + { + size_t nbytes = 0; + + (void)add; + (void)origin; + +- req_length /= 2; /* Up to 50%. */ +- + #ifdef USE_DRNG + if ((_gcry_get_hw_features () & HWF_INTEL_RDRAND)) +- { +- req_length /= 2; /* Up to 25%. */ +- nbytes += poll_drng (add, origin, 0); +- } ++ nbytes += poll_drng (add, origin, 0); + #endif + #ifdef USE_PADLOCK + if ((_gcry_get_hw_features () & HWF_PADLOCK_RNG)) + nbytes += poll_padlock (add, origin, 0); + #endif + +- if (nbytes > req_length) +- nbytes = req_length; +- + return nbytes; + } +diff --git a/random/rndlinux.c b/random/rndlinux.c +index a22db177..f378a549 100644 +--- a/random/rndlinux.c ++++ b/random/rndlinux.c +@@ -190,10 +190,19 @@ _gcry_rndlinux_gather_random (void (*add)(const void*, size_t, + } + + +- /* First read from a hardware source. Note that _gcry_rndhw_poll_slow lets +- it account only for up to 50% (or 25% for RDRAND) of the requested +- bytes. */ +- n_hw = _gcry_rndhw_poll_slow (add, origin, length); ++ /* First read from a hardware source. However let it account only ++ for up to 50% (or 25% for RDRAND) of the requested bytes. */ ++ n_hw = _gcry_rndhw_poll_slow (add, origin); ++ if ((_gcry_get_hw_features () & HWF_INTEL_RDRAND)) ++ { ++ if (n_hw > length/4) ++ n_hw = length/4; ++ } ++ else ++ { ++ if (n_hw > length/2) ++ n_hw = length/2; ++ } + if (length > 1) + length -= n_hw; + +diff --git a/src/g10lib.h b/src/g10lib.h +index 243997eb..cba2e237 100644 +--- a/src/g10lib.h ++++ b/src/g10lib.h +@@ -217,8 +217,6 @@ char **_gcry_strtokenize (const char *string, const char *delim); + + + /*-- src/hwfeatures.c --*/ +-#if defined(HAVE_CPU_ARCH_X86) +- + #define HWF_PADLOCK_RNG (1 << 0) + #define HWF_PADLOCK_AES (1 << 1) + #define HWF_PADLOCK_SHA (1 << 2) +@@ -238,28 +236,20 @@ char **_gcry_strtokenize (const char *string, const char *delim); + #define HWF_INTEL_RDTSC (1 << 15) + #define HWF_INTEL_SHAEXT (1 << 16) + +-#elif defined(HAVE_CPU_ARCH_ARM) +- +-#define HWF_ARM_NEON (1 << 0) +-#define HWF_ARM_AES (1 << 1) +-#define HWF_ARM_SHA1 (1 << 2) +-#define HWF_ARM_SHA2 (1 << 3) +-#define HWF_ARM_PMULL (1 << 4) +- +-#elif defined(HAVE_CPU_ARCH_PPC) ++#define HWF_ARM_NEON (1 << 17) ++#define HWF_ARM_AES (1 << 18) ++#define HWF_ARM_SHA1 (1 << 19) ++#define HWF_ARM_SHA2 (1 << 20) ++#define HWF_ARM_PMULL (1 << 21) + +-#define HWF_PPC_VCRYPTO (1 << 0) +-#define HWF_PPC_ARCH_3_00 (1 << 1) +-#define HWF_PPC_ARCH_2_07 (1 << 2) ++#define HWF_PPC_VCRYPTO (1 << 22) ++#define HWF_PPC_ARCH_3_00 (1 << 23) ++#define HWF_PPC_ARCH_2_07 (1 << 24) + +-#elif defined(HAVE_CPU_ARCH_S390X) +- +-#define HWF_S390X_MSA (1 << 0) +-#define HWF_S390X_MSA_4 (1 << 1) +-#define HWF_S390X_MSA_8 (1 << 2) +-#define HWF_S390X_VX (1 << 3) +- +-#endif ++#define HWF_S390X_MSA (1 << 25) ++#define HWF_S390X_MSA_4 (1 << 26) ++#define HWF_S390X_MSA_8 (1 << 27) ++#define HWF_S390X_VX (1 << 28) + + gpg_err_code_t _gcry_disable_hw_feature (const char *name); + void _gcry_detect_hw_features (void); diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.8.5.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.8.6.ebuild similarity index 79% rename from sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.8.5.ebuild rename to sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.8.6.ebuild index 025edcfa6b..104cd442af 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.8.5.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.8.6.ebuild @@ -1,17 +1,17 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 -inherit autotools flag-o-matic multilib-minimal +inherit autotools flag-o-matic multilib-minimal toolchain-funcs DESCRIPTION="General purpose crypto library based on the code used in GnuPG" -HOMEPAGE="http://www.gnupg.org/" +HOMEPAGE="https://www.gnupg.org/" SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2" LICENSE="LGPL-2.1 MIT" SLOT="0/20" # subslot = soname major version -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" IUSE="doc o-flag-munging static-libs" RDEPEND=">=dev-libs/libgpg-error-1.25[${MULTILIB_USEDEP}]" @@ -40,9 +40,11 @@ multilib_src_configure() { append-cflags -Wa,--divide fi local myeconfargs=( + CC_FOR_BUILD="$(tc-getBUILD_CC)" --enable-noexecstack - $(use_enable o-flag-munging O-flag-munging) + # required for sys-power/suspend[crypt], bug 751568 $(use_enable static-libs static) + $(use_enable o-flag-munging O-flag-munging) # disabled due to various applications requiring privileges # after libgcrypt drops them (bug #468616) @@ -56,7 +58,7 @@ multilib_src_configure() { GPG_ERROR_CONFIG="${EROOT}/usr/bin/${CHOST}-gpg-error-config" ) ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" \ - $("${S}/configure" --help | grep -- '--without-.*-prefix' | sed -e 's/^ *\([^ ]*\) .*/\1/g') + $("${S}/configure" --help | grep -o -- '--without-.*-prefix') } multilib_src_compile() { @@ -71,5 +73,5 @@ multilib_src_install() { multilib_src_install_all() { default - find "${D}" -name '*.la' -delete || die + find "${D}" -type f -name '*.la' -delete || die } diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.8.3-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.8.7.ebuild similarity index 76% rename from sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.8.3-r1.ebuild rename to sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.8.7.ebuild index 6960c8192b..104cd442af 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.8.3-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.8.7.ebuild @@ -1,17 +1,17 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 -inherit autotools flag-o-matic multilib-minimal +inherit autotools flag-o-matic multilib-minimal toolchain-funcs DESCRIPTION="General purpose crypto library based on the code used in GnuPG" -HOMEPAGE="http://www.gnupg.org/" +HOMEPAGE="https://www.gnupg.org/" SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2" LICENSE="LGPL-2.1 MIT" SLOT="0/20" # subslot = soname major version -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" IUSE="doc o-flag-munging static-libs" RDEPEND=">=dev-libs/libgpg-error-1.25[${MULTILIB_USEDEP}]" @@ -40,9 +40,11 @@ multilib_src_configure() { append-cflags -Wa,--divide fi local myeconfargs=( + CC_FOR_BUILD="$(tc-getBUILD_CC)" --enable-noexecstack - $(use_enable o-flag-munging O-flag-munging) + # required for sys-power/suspend[crypt], bug 751568 $(use_enable static-libs static) + $(use_enable o-flag-munging O-flag-munging) # disabled due to various applications requiring privileges # after libgcrypt drops them (bug #468616) @@ -56,7 +58,7 @@ multilib_src_configure() { GPG_ERROR_CONFIG="${EROOT}/usr/bin/${CHOST}-gpg-error-config" ) ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" \ - $("${S}/configure" --help | grep -- '--without-.*-prefix' | sed -e 's/^ *\([^ ]*\) .*/\1/g') + $("${S}/configure" --help | grep -o -- '--without-.*-prefix') } multilib_src_compile() { @@ -71,5 +73,5 @@ multilib_src_install() { multilib_src_install_all() { default - find "${D}" -name '*.la' -delete || die + find "${D}" -type f -name '*.la' -delete || die } diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.8.4.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.8.8.ebuild similarity index 76% rename from sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.8.4.ebuild rename to sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.8.8.ebuild index 9344031d1c..76cbe5b9aa 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.8.4.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.8.8.ebuild @@ -1,17 +1,17 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 -inherit autotools flag-o-matic multilib-minimal +inherit autotools flag-o-matic multilib-minimal toolchain-funcs DESCRIPTION="General purpose crypto library based on the code used in GnuPG" -HOMEPAGE="http://www.gnupg.org/" +HOMEPAGE="https://www.gnupg.org/" SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2" LICENSE="LGPL-2.1 MIT" SLOT="0/20" # subslot = soname major version -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" IUSE="doc o-flag-munging static-libs" RDEPEND=">=dev-libs/libgpg-error-1.25[${MULTILIB_USEDEP}]" @@ -29,6 +29,7 @@ MULTILIB_CHOST_TOOLS=( src_prepare() { default + eautoreconf } @@ -39,37 +40,45 @@ multilib_src_configure() { # function for that, we'll have to abuse cflags for this append-cflags -Wa,--divide fi - local myeconfargs=( - --enable-noexecstack - $(use_enable o-flag-munging O-flag-munging) - $(use_enable static-libs static) + local myeconfargs=( + CC_FOR_BUILD="$(tc-getBUILD_CC)" + + --enable-noexecstack # disabled due to various applications requiring privileges # after libgcrypt drops them (bug #468616) --without-capabilities + # required for sys-power/suspend[crypt], bug 751568 + $(use_enable static-libs static) + $(use_enable o-flag-munging O-flag-munging) + # http://trac.videolan.org/vlc/ticket/620 # causes bus-errors on sparc64-solaris $([[ ${CHOST} == *86*-darwin* ]] && echo "--disable-asm") $([[ ${CHOST} == sparcv9-*-solaris* ]] && echo "--disable-asm") - GPG_ERROR_CONFIG="${EROOT}/usr/bin/${CHOST}-gpg-error-config" + GPG_ERROR_CONFIG="${ESYSROOT}/usr/bin/${CHOST}-gpg-error-config" ) + ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" \ - $("${S}/configure" --help | grep -- '--without-.*-prefix' | sed -e 's/^ *\([^ ]*\) .*/\1/g') + $("${S}/configure" --help | grep -o -- '--without-.*-prefix') } multilib_src_compile() { default + multilib_is_native_abi && use doc && VARTEXFONTS="${T}/fonts" emake -C doc gcrypt.pdf } multilib_src_install() { emake DESTDIR="${D}" install + multilib_is_native_abi && use doc && dodoc doc/gcrypt.pdf } multilib_src_install_all() { default - find "${D}" -name '*.la' -delete || die + + find "${ED}" -type f -name '*.la' -delete || die } diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.8.3.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.9.1-r1.ebuild similarity index 56% rename from sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.8.3.ebuild rename to sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.9.1-r1.ebuild index 74ef70bedd..8ba8d90c7b 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.8.3.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.9.1-r1.ebuild @@ -1,26 +1,27 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=6 +EAPI=7 -inherit autotools flag-o-matic ltprune multilib-minimal +inherit autotools flag-o-matic multilib-minimal toolchain-funcs DESCRIPTION="General purpose crypto library based on the code used in GnuPG" -HOMEPAGE="http://www.gnupg.org/" +HOMEPAGE="https://www.gnupg.org/" SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2" LICENSE="LGPL-2.1 MIT" SLOT="0/20" # subslot = soname major version -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 m68k ~mips ppc ppc64 s390 sparc x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" -IUSE="doc o-flag-munging static-libs" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +IUSE="+asm cpu_flags_arm_neon cpu_flags_x86_aes cpu_flags_x86_avx cpu_flags_x86_avx2 cpu_flags_x86_padlock cpu_flags_x86_sha cpu_flags_x86_sse4_1 doc o-flag-munging static-libs" RDEPEND=">=dev-libs/libgpg-error-1.25[${MULTILIB_USEDEP}]" -DEPEND="${RDEPEND} - doc? ( virtual/texi2dvi )" +DEPEND="${RDEPEND}" +BDEPEND="doc? ( virtual/texi2dvi )" PATCHES=( "${FILESDIR}"/${PN}-1.6.1-uscore.patch "${FILESDIR}"/${PN}-multilib-syspath.patch + "${FILESDIR}"/${PN}-1.9.1-fix-no-asm-on-amd64-x86.patch ) MULTILIB_CHOST_TOOLS=( @@ -40,9 +41,19 @@ multilib_src_configure() { append-cflags -Wa,--divide fi local myeconfargs=( + CC_FOR_BUILD="$(tc-getBUILD_CC)" + --enable-noexecstack - $(use_enable o-flag-munging O-flag-munging) + $(use_enable cpu_flags_arm_neon neon-support) + $(use_enable cpu_flags_x86_aes aesni-support) + $(use_enable cpu_flags_x86_avx avx-support) + $(use_enable cpu_flags_x86_avx2 avx2-support) + $(use_enable cpu_flags_x86_padlock padlock-support) + $(use_enable cpu_flags_x86_sha shaext-support) + $(use_enable cpu_flags_x86_sse4_1 sse41-support) + # required for sys-power/suspend[crypt], bug 751568 $(use_enable static-libs static) + $(use_enable o-flag-munging O-flag-munging) # disabled due to various applications requiring privileges # after libgcrypt drops them (bug #468616) @@ -53,9 +64,12 @@ multilib_src_configure() { $([[ ${CHOST} == *86*-darwin* ]] && echo "--disable-asm") $([[ ${CHOST} == sparcv9-*-solaris* ]] && echo "--disable-asm") + $(use asm || echo "--disable-asm") + GPG_ERROR_CONFIG="${EROOT}/usr/bin/${CHOST}-gpg-error-config" ) - ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" + ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" \ + $("${S}/configure" --help | grep -o -- '--without-.*-prefix') } multilib_src_compile() { @@ -70,5 +84,5 @@ multilib_src_install() { multilib_src_install_all() { default - prune_libtool_files + find "${ED}" -type f -name '*.la' -delete || die } diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.9.2.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.9.2.ebuild new file mode 100644 index 0000000000..584154b6ff --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.9.2.ebuild @@ -0,0 +1,86 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit autotools flag-o-matic multilib-minimal toolchain-funcs + +DESCRIPTION="General purpose crypto library based on the code used in GnuPG" +HOMEPAGE="https://www.gnupg.org/" +SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2" + +LICENSE="LGPL-2.1 MIT" +SLOT="0/20" # subslot = soname major version +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +IUSE="+asm cpu_flags_arm_neon cpu_flags_x86_aes cpu_flags_x86_avx cpu_flags_x86_avx2 cpu_flags_x86_padlock cpu_flags_x86_sha cpu_flags_x86_sse4_1 doc o-flag-munging static-libs" + +RDEPEND=">=dev-libs/libgpg-error-1.25[${MULTILIB_USEDEP}]" +DEPEND="${RDEPEND}" +BDEPEND="doc? ( virtual/texi2dvi )" + +PATCHES=( + "${FILESDIR}"/${PN}-multilib-syspath.patch +) + +MULTILIB_CHOST_TOOLS=( + /usr/bin/libgcrypt-config +) + +src_prepare() { + default + eautoreconf +} + +multilib_src_configure() { + if [[ ${CHOST} == *86*-solaris* ]] ; then + # ASM code uses GNU ELF syntax, divide in particular, we need to + # allow this via ASFLAGS, since we don't have a flag-o-matic + # function for that, we'll have to abuse cflags for this + append-cflags -Wa,--divide + fi + local myeconfargs=( + CC_FOR_BUILD="$(tc-getBUILD_CC)" + + --enable-noexecstack + $(use_enable cpu_flags_arm_neon neon-support) + $(use_enable cpu_flags_x86_aes aesni-support) + $(use_enable cpu_flags_x86_avx avx-support) + $(use_enable cpu_flags_x86_avx2 avx2-support) + $(use_enable cpu_flags_x86_padlock padlock-support) + $(use_enable cpu_flags_x86_sha shaext-support) + $(use_enable cpu_flags_x86_sse4_1 sse41-support) + # required for sys-power/suspend[crypt], bug 751568 + $(use_enable static-libs static) + $(use_enable o-flag-munging O-flag-munging) + + # disabled due to various applications requiring privileges + # after libgcrypt drops them (bug #468616) + --without-capabilities + + # http://trac.videolan.org/vlc/ticket/620 + # causes bus-errors on sparc64-solaris + $([[ ${CHOST} == *86*-darwin* ]] && echo "--disable-asm") + $([[ ${CHOST} == sparcv9-*-solaris* ]] && echo "--disable-asm") + + $(use asm || echo "--disable-asm") + + GPG_ERROR_CONFIG="${ESYSROOT}/usr/bin/${CHOST}-gpg-error-config" + ) + ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" \ + $("${S}/configure" --help | grep -o -- '--without-.*-prefix') +} + +multilib_src_compile() { + default + multilib_is_native_abi && use doc && VARTEXFONTS="${T}/fonts" emake -C doc gcrypt.pdf +} + +multilib_src_install() { + emake DESTDIR="${D}" install + multilib_is_native_abi && use doc && dodoc doc/gcrypt.pdf +} + +multilib_src_install_all() { + default + find "${ED}" -type f -name '*.la' -delete || die +} diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.9.3.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.9.3.ebuild new file mode 100644 index 0000000000..584154b6ff --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.9.3.ebuild @@ -0,0 +1,86 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit autotools flag-o-matic multilib-minimal toolchain-funcs + +DESCRIPTION="General purpose crypto library based on the code used in GnuPG" +HOMEPAGE="https://www.gnupg.org/" +SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2" + +LICENSE="LGPL-2.1 MIT" +SLOT="0/20" # subslot = soname major version +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +IUSE="+asm cpu_flags_arm_neon cpu_flags_x86_aes cpu_flags_x86_avx cpu_flags_x86_avx2 cpu_flags_x86_padlock cpu_flags_x86_sha cpu_flags_x86_sse4_1 doc o-flag-munging static-libs" + +RDEPEND=">=dev-libs/libgpg-error-1.25[${MULTILIB_USEDEP}]" +DEPEND="${RDEPEND}" +BDEPEND="doc? ( virtual/texi2dvi )" + +PATCHES=( + "${FILESDIR}"/${PN}-multilib-syspath.patch +) + +MULTILIB_CHOST_TOOLS=( + /usr/bin/libgcrypt-config +) + +src_prepare() { + default + eautoreconf +} + +multilib_src_configure() { + if [[ ${CHOST} == *86*-solaris* ]] ; then + # ASM code uses GNU ELF syntax, divide in particular, we need to + # allow this via ASFLAGS, since we don't have a flag-o-matic + # function for that, we'll have to abuse cflags for this + append-cflags -Wa,--divide + fi + local myeconfargs=( + CC_FOR_BUILD="$(tc-getBUILD_CC)" + + --enable-noexecstack + $(use_enable cpu_flags_arm_neon neon-support) + $(use_enable cpu_flags_x86_aes aesni-support) + $(use_enable cpu_flags_x86_avx avx-support) + $(use_enable cpu_flags_x86_avx2 avx2-support) + $(use_enable cpu_flags_x86_padlock padlock-support) + $(use_enable cpu_flags_x86_sha shaext-support) + $(use_enable cpu_flags_x86_sse4_1 sse41-support) + # required for sys-power/suspend[crypt], bug 751568 + $(use_enable static-libs static) + $(use_enable o-flag-munging O-flag-munging) + + # disabled due to various applications requiring privileges + # after libgcrypt drops them (bug #468616) + --without-capabilities + + # http://trac.videolan.org/vlc/ticket/620 + # causes bus-errors on sparc64-solaris + $([[ ${CHOST} == *86*-darwin* ]] && echo "--disable-asm") + $([[ ${CHOST} == sparcv9-*-solaris* ]] && echo "--disable-asm") + + $(use asm || echo "--disable-asm") + + GPG_ERROR_CONFIG="${ESYSROOT}/usr/bin/${CHOST}-gpg-error-config" + ) + ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" \ + $("${S}/configure" --help | grep -o -- '--without-.*-prefix') +} + +multilib_src_compile() { + default + multilib_is_native_abi && use doc && VARTEXFONTS="${T}/fonts" emake -C doc gcrypt.pdf +} + +multilib_src_install() { + emake DESTDIR="${D}" install + multilib_is_native_abi && use doc && dodoc doc/gcrypt.pdf +} + +multilib_src_install_all() { + default + find "${ED}" -type f -name '*.la' -delete || die +} diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/metadata.xml b/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/metadata.xml index f034cdf811..c9cc3b05f2 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/metadata.xml +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/metadata.xml @@ -1,14 +1,15 @@ - - k_f@gentoo.org - Kristian Fiskerstrand - - - cpe:/a:gnupg:libgcrypt - + + zlogene@gentoo.org + Mikle Kolyada + + + cpe:/a:gnupg:libgcrypt + -Enable O-flag mangling during build + Enable assembly for optimization + Enable O-flag mangling during build