diff options
Diffstat (limited to 'dev-libs')
23 files changed, 661 insertions, 939 deletions
diff --git a/dev-libs/Manifest.gz b/dev-libs/Manifest.gz Binary files differindex ff03f2fd090e..c9166f4abb5a 100644 --- a/dev-libs/Manifest.gz +++ b/dev-libs/Manifest.gz diff --git a/dev-libs/cyberjack/Manifest b/dev-libs/cyberjack/Manifest index 6035d59eac09..b989375e6b86 100644 --- a/dev-libs/cyberjack/Manifest +++ b/dev-libs/cyberjack/Manifest @@ -1,7 +1,5 @@ AUX cyberjack-3.99.5_p14-gcc10.patch 344 BLAKE2B c535dd6c5d034b0ad81dd6ce6364d2c8807e1adfb2391d5b801cf285260c6f55c2bdf9f56e3bf4c0fc06cc8f87128855f34f6e3519a6ebc67a7b6eba10aa8008 SHA512 7ee096fbca22ffccff1ae941c7e16578ee10ab3b7704902dee4643bdf1a3d1592ae5cd19625414245fd4c1ee6f10d8a869e273e47d71c47a3300356a0709995d AUX libifd-cyberjack6.udev-r1 1435 BLAKE2B 3606ea979cf8bc068eb7ab447af70f5f9c409369554868ba36a43eaa7202813587b2193b0ef16b42a68bb665f4eaee5ac976774ec0f77dbaa93b447a6e6021bd SHA512 bfefad4cd2b509a41d3e8f638364a3f604e80dd5302456ca9d27d592175e30a2c348353d35fda242f2f80651efcd111c7294ecde7a8d80f1c7e1a655240483d2 DIST pcsc-cyberjack-3.99.5final.SP16.tar.bz2 1787299 BLAKE2B 79345a5c51be99eedb9154737e5d8014c2f6034031ca8acfb419d9fe4ecfda1739a84f1b56e275ee0aabf500b87a789255980ef05f4441f10250c6adceebe86a SHA512 ece83377b935b6f4de065c10b340aea91d69c54ff38f73e058f5e31fd75afe1e2d3fe9be2e1423a5e3a0da17d9afa5db7684e85805af34e751d07188f894b2d7 -DIST pcsc-cyberjack_3.99.5final.SP15.tar.bz2 1681827 BLAKE2B e6b8325e4822f24e31b7986d5a7bc0ee2c99bd29568c19ac1fe8d308f561b0bcecfcc3e0ac2633b13986b2422bb014d28c7953e622021476ac3188de4dd0ed15 SHA512 d1a5454aea96866581f48a240b96013bd0c313965a8ef7a384ac41a929f3e805ad13590c383dab7638134c730e6f26e6cd1492d533f4910aad7c515016452258 -EBUILD cyberjack-3.99.5_p15.ebuild 1969 BLAKE2B f9d21cf0aec05542221aa45c75af8a147cdf30eaff468faec1d36f853b147d500ecfb1ebe046b50a4595e0f4e4d65a3b7418a09a748d57feed2852ef1f8ce73f SHA512 4d3966772377f40efb840db78ba3e617766127f102320f96cdccb1934768bdb33e18de453bf902bdd14345a230b0632b0d967ba751cddc9b3eea969fa81c7219 -EBUILD cyberjack-3.99.5_p16.ebuild 1923 BLAKE2B 313145e9a7602d46f93e62e99b5f5ae0a7efe0415960207b372a81ebde18d6269ed0366db2472a9e46a623aa7264088374eeadefcb762fcc1e2a70f9774e28c8 SHA512 b9de0e198ce6e764db135abec8215dad65782cab9a11d640d4b562eef1d66f251f5c21dea1803f48dabee8b63baedf0c2f543b139eb004d8d6ab452d9157e89b +EBUILD cyberjack-3.99.5_p16.ebuild 1921 BLAKE2B f7d15449b7d6fb972c8837ed4fd43d036d2be89d996fe64f017138b5ffaef1fcacba97c6f54261a1621ba2d1ca913d1666bdb14d43016e8571e8a86b2a38b2ab SHA512 2d496b66c24fd3d1af64183a50ed24d056da7ee02098c554d1fa0b46416172faf47f51c3d26495f88bb7ab0a96524c429475606e50f79e8d8d711f58a8f5b48b MISC metadata.xml 551 BLAKE2B b6c0ee4b76f7f7e58c0cf3a09d581143fe24dc863beda59337e51605463e58c93801848f115ab710937f3e17fec8c62fcdd98da27fa7b108466ca75491b28ac2 SHA512 d43d9224b8508447ca3410792bed8e88b791c1029d2412e4be251ea41be564fce12ecf0ae1172c47c6be10371278ad35f22eafc17490a5a96f4e6c081adbcd05 diff --git a/dev-libs/cyberjack/cyberjack-3.99.5_p15.ebuild b/dev-libs/cyberjack/cyberjack-3.99.5_p15.ebuild deleted file mode 100644 index cb0b39612d81..000000000000 --- a/dev-libs/cyberjack/cyberjack-3.99.5_p15.ebuild +++ /dev/null @@ -1,98 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -MY_PN="pcsc-${PN}" -MY_PV="${PV/_p/final.SP}" -MY_P="${MY_PN}_${MY_PV}" - -inherit autotools toolchain-funcs udev - -DESCRIPTION="REINER SCT cyberJack USB chipcard reader user space driver" -HOMEPAGE="https://www.reiner-sct.de/" -SRC_URI="https://support.reiner-sct.de/downloads/LINUX/V${PV/_p/_SP}/${MY_P}.tar.bz2" -S="${WORKDIR}/${MY_P/_/-}" - -KEYWORDS="amd64 x86" -LICENSE="GPL-2+ LGPL-2.1+" -SLOT="0" -IUSE="static-libs threads tools +udev xml" - -RDEPEND=" - sys-apps/pcsc-lite - virtual/libusb:1= - udev? ( virtual/udev ) - xml? ( dev-libs/libxml2:2= ) -" - -DEPEND="${RDEPEND}" - -BDEPEND="virtual/pkgconfig" - -PATCHES="${FILESDIR}/${PN}-3.99.5_p14-gcc10.patch" - -src_prepare() { - default - - eautoreconf -} - -src_configure() { - local myeconfargs=( - --disable-debug - --disable-error-on-warning - --disable-hal - --disable-mac-universal - --disable-mac-arches-i386 - --disable-mac-arches-x86_64 - --disable-visibility - --enable-nonserial - --enable-pcsc - --enable-release - --enable-warnings - --sysconfdir="/etc/cyberjack" - $(use_enable static-libs static) - $(use_enable threads) - $(use_enable udev) - $(use_enable xml xml2) - --with-usbdropdir="$($(tc-getPKG_CONFIG) libpcsclite --variable=usbdropdir)" - ) - - econf "${myeconfargs[@]}" -} - -src_compile() { - default - - if use tools; then - # cjBingo can't be compiled, as it's defines stuff, which got dropped - cd "${S}"/tools/cjflash && emake - cd "${S}"/tools/cjgeldkarte && emake - fi -} - -src_install() { - default - - use tools && dobin tools/cjflash/cjflash tools/cjgeldkarte/cjgeldkarte - use udev && udev_newrules "${FILESDIR}"/libifd-cyberjack6.udev-r1 99-cyberjack.rules - - dodoc debian/changelog doc/{LIESMICH,README}.{pdf,txt,xml} - - docinto html - dodoc doc/{LIESMICH,README}.html - - docinto source - dodoc doc/*.c* - - find "${D}" -name '*.la' -delete || die -} - -pkg_postinst() { - udev_reload -} - -pkg_postrm() { - udev_reload -} diff --git a/dev-libs/cyberjack/cyberjack-3.99.5_p16.ebuild b/dev-libs/cyberjack/cyberjack-3.99.5_p16.ebuild index fa0076517c6f..a6b469318959 100644 --- a/dev-libs/cyberjack/cyberjack-3.99.5_p16.ebuild +++ b/dev-libs/cyberjack/cyberjack-3.99.5_p16.ebuild @@ -16,7 +16,7 @@ S="${WORKDIR}/${MY_P/_/-}" LICENSE="GPL-2+ LGPL-2.1+" SLOT="0" -KEYWORDS="~amd64 ~x86" +KEYWORDS="amd64 x86" IUSE="threads tools +udev xml" RDEPEND=" diff --git a/dev-libs/libgcrypt/Manifest b/dev-libs/libgcrypt/Manifest index d67bed556f76..eb3e29293508 100644 --- a/dev-libs/libgcrypt/Manifest +++ b/dev-libs/libgcrypt/Manifest @@ -1,23 +1,16 @@ -AUX libgcrypt-1.10-build-Allow-build-with-Oz.patch 1548 BLAKE2B 251e530bf2256492d95a91f2f4236344d0fced1e33ca419bd5c9ed2a7ad9f066f536f1a83c7fcaffa8c2a451611b28e2006218f091da67297bc2061bbdeea18c SHA512 124d5e3c74fd00af97219838233c3088f8d37a72ed2e086252696ab1a80e7a009414902aab49026dfd464347ef5ee979670ce65d2ea12b173328b1af83ac7a3b -AUX libgcrypt-1.10.1-configure-clang16.patch 5972 BLAKE2B d0b45199e11cdfea1b26e8efd85b978e2d903712e10f4d5f8e9edcad91f3adc6314f4afe7ece897cb190bbfe59e8713ead45b857b8fdeb485428e3a41f73520e SHA512 b7e4565a58356859f4cb37b51cbdd859280c55c8797af893e622b75c4748b0509d2ea33c946a4c9bc3c9a1479b9edaa6e8884d2f221f7410f7bb8639aefc9cc7 AUX libgcrypt-1.10.1-fix-no-asm-hppa.patch 1166 BLAKE2B 17b27fd88b0e9ccf97c3f46780f16495d6df84e3d58ed9073af6f200908422273a6cbaa18a7285b87db2203c12a9f45f6d2853caf05d667be94a95979b5a0c47 SHA512 02e0c174844fd56da7212518f41b582894e72714e9cbc013448a5eea748cedc7d6ee5719af4049ee6695b83b5f44eb63e6c95972096ba0fc180c2cfe2482ad6e AUX libgcrypt-1.10.2-darwin.patch 566 BLAKE2B 26819835249672cb95500a7edf018642446e9f42d4fc11e7807a606cf9fe59790be6bc5d5355bee671a42d79f6f6d9b9d07cdd5eede7f872c68a4d90c74a21da SHA512 a1a4cb426b355f75ba22a09dcd6ab0dde29e2e8be3ef0ad7fb80c126820f490c381691c05812ecc0703490e55fca68f551002fb3bc0b33a7d987357b3bf59a0f -AUX libgcrypt-1.9.4-arm-neon-compile-fix.patch 1389 BLAKE2B 548fc764050f322786f3c0ec8f806a6a897987115db0cfd8a2a4f1ffc134a31e9069dca4e334a7a5288f5176ce8e2e8450dc2003c56915d5fdd4dc3c11012c0a SHA512 0b83ab2585502d65d1ccf36440f4a73aa9a9d3a8cb40375ca6a4e81fcc962040fb233df9a345c823281605c061b8ea0e509e0e16a5c3a32581a279e5904bbfd0 +AUX libgcrypt-1.10.3-hppa.patch 4077 BLAKE2B 70636355c6218261db91171b8c579ad0f4a1515cdd945ddea223a88a9dcdf32b19bff181d48b858d5fe32a50fa8fcadd0517a6e6eeefac1162f1990ddb036939 SHA512 4e84284766f673d9adb848056ae14e29ed14a727be5a152d61a350a5a83f5166b9a33484d46e53210478d0d9c1381ce07c11bbc7d0af9d3a730ac745a0abe454 +AUX libgcrypt-1.10.3-x86-refactor.patch 15984 BLAKE2B 3de41f263b512060b5f0e4aea9392666746241226b9a5b52a3229cb50f014504fbfb94b5eb1b4c1e69632f5546f37e34e04ebfc63beb8eba87bfb30bccfe72c8 SHA512 36cca10afcf1c2e4cd2f1f180601aea4a38688927ec142d93a1d4342640d69fea7ce1c43b26d8aae9c010274cb6733f475695e5fff4e513a8b276f77d9babda8 +AUX libgcrypt-1.10.3-x86.patch 3600 BLAKE2B 6daea43af8019bba84e1015c5a0e82c557e2c7098fa6fb14d3f6a46bfcb6df4dcb32d9c9b6653098c06c2cd139ce696b2a21f791934925ec35175d1cfe147fc4 SHA512 71e03f8a59388be48077723716b8c5b1ea7d4206a20fddd318b9e2d4ffebfc99ef799ac1709e3e4eeadd007357c63d3c9f337a930716fdc24c82c05e4edd4a81 AUX libgcrypt-1.9.4-no-fgrep-libgcrypt-config.patch 646 BLAKE2B a6a4b46dfa9a113446fb10e3c66ab64c08ea2cb768acfe0f5057e102c827ca6e3d676e1970f9234db5bec86ea6745b765a412c1b5cdc263bd7154b169960b136 SHA512 a49af765a1175dd8041a500d3c7213df27c00699bf8a5202b080539bf2909084214d008509039c81d6a28a0f4a3b9fe1f45f89aaa87742bce9a5dd8c8c469fbf AUX libgcrypt-multilib-syspath.patch 588 BLAKE2B 6a8d30246263339571455df3c1cccfc9f38e50117cef34bc92ce37a296c3e31017c0190923ea992f51706c55a63c6f75b1d9fc7d8d40930707486f419e1795c4 SHA512 913c1a474aba50ec3589fb5a991f65204ba2cc28203b92353fdef8fb092350c3be814a57f29a26a2176627509a4f573f6db02ebdbcde3f04a2f1d632879293dc AUX libgcrypt-powerpc-darwin.patch 444 BLAKE2B 37b95d21f0df07c5c06cd7e1e1efe73d02b9ac59dfe2a31d43b7a535bed356ff24095d528662d58a0cdc9c3eb25de50b5b5a4d9feb0ddb917a42f9332b33982e SHA512 2a2e7e84222f4672a70df827955bb8592e714580fecf6b5238e131038460169f9d80fd04d63d6e232f6fc448c04e0acf214993537ef22e297ea98a4d12c6ade5 -DIST libgcrypt-1.10.1.tar.bz2 3778457 BLAKE2B 46f30459891183b6d9ec18f1c7907fee0ad156c7dd75044f3db2b4d1c19dc6f30b2dfa6f85bc82adc9243aaba913e40fb6faf77d2226ca5a33897220d032437a SHA512 e5ca7966624fff16c3013795836a2c4377f0193dbb4ac5ad2b79654b1fa8992e17d83816569a402212dc8367a7980d4141f5d6ac282bae6b9f02186365b61f13 -DIST libgcrypt-1.10.1.tar.bz2.sig 119 BLAKE2B 5261d7dbfd5d82b2d3fa2ebf864a9ef0c7c978dd66a71c078df7bbb3b63f5d85180e5f909f43a49712fc16c45f7aabaa6bc30ed82a39ffc9a5d483ea6a94d162 SHA512 b156ae05079776698bc95ba5a9e48e95de8f716aa1760ef4b2e7cb8518ccec660337fc7823f865bde870461800d472fd8e458d03a7095b6bb614f6dd96f796d8 DIST libgcrypt-1.10.2.tar.bz2 3795164 BLAKE2B c86b29648664aae3fb694b20ad258828d2cecbb09db2b83df00fbdebd5d74228c92015c50f659c250cb0768ccaef7949294d9b7cdcd47e1387b7dce81d35da19 SHA512 3a850baddfe8ffe8b3e96dc54af3fbb9e1dab204db1f06b9b90b8fbbfb7fb7276260cd1e61ba4dde5a662a2385385007478834e62e95f785d2e3d32652adb29e DIST libgcrypt-1.10.2.tar.bz2.sig 119 BLAKE2B 3753134a1ed1fd2bfd2c64f175c3745db02791359646b3f0229c80ce4ccedbb147ee889a6b8c4fe4bf7e9067d804ee18a8411cd347026cd1656ad1d4d5686bec SHA512 9350444a0bcfa49217815a831f2286ccea470311673257bd809eb5dedbe97d2a5543b0bc7fb752312df69adeb7ac5f064e433f2545a8bf3e494027986cd8020c DIST libgcrypt-1.10.3.tar.bz2 3783827 BLAKE2B 1a228e02820e886016eb55dee75936c4422a15fb4f95a2f9bcd1e4faac4015d4321c7c8d23f164eb08ece5d62935ab3b3d3104eabfdd22db997ab3e5689dfa6f SHA512 8a8d4c61a6622d8481ceb9edc88ec43f58da32e316f79f8d4775325a48f8936aaa9eb355923b39e2c267b784e9c390600daeb62e0c94f00e30bbadb0d8c0865d DIST libgcrypt-1.10.3.tar.bz2.sig 238 BLAKE2B 216baebca91b2e940f60d70a4260b6b6b8221ef88cfb42b020bc7b3743a465ef2cf105316648ed1e689cbbf7d79da421aa9f08b5af21c5b862734cf01f377214 SHA512 73795781a458c334ec6daade1b86ae8b788dd5da0b7198b46b8e54a103c5ec4c65a5dd7e6a9d173d136889f24e7f5721992f59117334f39bd1c8a94e3b55a048 -DIST libgcrypt-1.9.4.tar.bz2 3239704 BLAKE2B b8244bc12a68955797b0c2b474ac5c95df1014231f7180a2ffa113e3aacedc98eed60ee1e4b30b032a5fcd6a04855ae07142c223906d5db9c28328a71e014f33 SHA512 d0e117ac73c94d70e9521ee1e6328691498cc8328f8c4e21338096908f5c04c7b838966eb63d59494565f4e19f506c07dab4f4d922150d75610d9f7b57abbf60 -DIST libgcrypt-1.9.4.tar.bz2.sig 119 BLAKE2B 4012c22259a9fd56f9da6c87d60077cea0dbfef85d4d4ad1ff6a2375ddefafc4cd03ee9083d18e080c14c95887b495062af886732a9593bcf1b8f187d21073fe SHA512 4aee16449b4b50dac62bd80217e769f32f43fb7cd994402b7d9cffbb1934b2771041c8c0c41a63ced9c8d9408025f9c5608ffc7f00e5e9a9b92a07cb5118a98a -EBUILD libgcrypt-1.10.1-r2.ebuild 6263 BLAKE2B 8394866e100a4bfae4ab863ff55aaa1ee2edd15d56aad09b72581294e5e9d0671c4341e4eb80f8f1cdeae9d48843b446390e1aee1d7d5b05daed54a22360ad27 SHA512 e01f37132f43c17a94eaa0c285a2ea4c284b35fefb790dd26d480e6d67d2bcc6684ef1439805bf929f3f221c122e43e4d812a39eb96e317f58b35757f3eecd40 -EBUILD libgcrypt-1.10.1-r3.ebuild 6381 BLAKE2B 0dc28d654f42ae1ce9ecc3937a7600b49219c78964eb4a9b75275bb90c126a9f8f89ad06e0523e373ef3ada4cbe5e37c9062288bfa7a5f965b7f7832564e74d7 SHA512 ef9ee712852675984774ac50d3e98a40cf8c015ecf637e4ea8f220faee4a896ecb8d4d861fbb70ae58c3b0dbe604525c2c0e881d3538b2d00a243b5e555ebefc EBUILD libgcrypt-1.10.2.ebuild 6279 BLAKE2B fd28a7d7f44d24dd9e8e773eeb11142fe88392ad875d6f44a539b128c25522593979e0b76fc2342d5f477a9e62bef50cc4bfcf2c7f6efddf5a24c46f35661935 SHA512 32d24c6936468a549950899444bbfa2a09a380ff16051de263cea5deb289d0e4f49b45f4fd077e381b3d09db1f7f6e916a801b455e18f828d8bd8ae75553c1ef EBUILD libgcrypt-1.10.3-r1.ebuild 6034 BLAKE2B a71c451082e294098fe4ad4ed6c82f925adfc662ea5cc9c3e934eaca22c3f0e960f8007222624b17f98138e187d46febae179cf02cd8807ae43ad83a871b951b SHA512 3a89c7f21462b51aa5c8398233932492f74d1a98513260bf5f62bb281eadd776c903b850391b0af657226aaea575b919590fb0d2c6449366e079cbca13ce6950 -EBUILD libgcrypt-1.10.3.ebuild 6242 BLAKE2B 4ca6ef49aa2204700bf74bdf3670a432f8f490535d09a55e8ff9aa3e4febd0780630d245cc869841d6169352a47b42beadb6e80075a0480d80aff4f2eddb28e2 SHA512 d3f245570bfb18505ff9951ada0026932fcb91ec1760a493a3b7c41d905a42101951377d189ea15a89b57ffef01ca86b1fac260b33a3442d81460340a9a2c141 -EBUILD libgcrypt-1.9.4-r2.ebuild 5321 BLAKE2B 20417e22e45ffffdb29c9fadbd58ab1eec7f25d6c312c9df73606ea3f6afccf92dc5ef707f494b2072109792521f243b1e7ffdf409cfb974df7ae2bc21529a38 SHA512 36a2b1fbe98449a815b6dc38fbaa562135e2fbd626f64bc827ad02604501c41320123742ab580f327fd400791a8f90ce3b0e95e26a06ad9251095b8ad1fd9ae0 +EBUILD libgcrypt-1.10.3-r2.ebuild 6165 BLAKE2B 046bac95216e09ae5263bff48ac6f9750aee6893622e3845784f7271e2c1d73e55eda19b5c663caa38798a7c67eba96c95660fac1f21d797309223ba9a04d3fc SHA512 b84875c3ed7f0814b002e82e618ca10d18a6af831bd1cc71e0f61138bd3030d99b8b109648ce5098ef6f7c2606ee1d0c6c15c3b14761b1ccc88e4794f2218077 MISC metadata.xml 451 BLAKE2B 3be914b8449db0938d868c7cf2df7fbcf29d7f2e9b91320dfb97f0c1bf6c22326f3a1c3f3b695eaacbe4d74bb3a0b733a7afc1f88e04a37d06a9d9ed25358efb SHA512 add260d64091e3aa1de6fb802f4cfd076c1520622ebe93ddf7a0312f8d46232bd330d9bd380e2bdef6aec15563b6d27f2733b5ebe624ad9d0965ed9c6456939d diff --git a/dev-libs/libgcrypt/files/libgcrypt-1.10-build-Allow-build-with-Oz.patch b/dev-libs/libgcrypt/files/libgcrypt-1.10-build-Allow-build-with-Oz.patch deleted file mode 100644 index c54499e15dba..000000000000 --- a/dev-libs/libgcrypt/files/libgcrypt-1.10-build-Allow-build-with-Oz.patch +++ /dev/null @@ -1,50 +0,0 @@ -https://bugs.gentoo.org/902765 -https://dev.gnupg.org/T6432 -https://dev.gnupg.org/rC7edf1abb9a0d892a80cbf7ab42f64b2720671ee9 - -From 7edf1abb9a0d892a80cbf7ab42f64b2720671ee9 Mon Sep 17 00:00:00 2001 -From: NIIBE Yutaka <gniibe@fsij.org> -Date: Mon, 3 Apr 2023 14:00:15 +0900 -Subject: [PATCH] build: Allow build with -Oz. - -* cipher/Makefile.am [ENABLE_O_FLAG_MUNGING]: Support -Oz. -* random/Makefile.am [ENABLE_O_FLAG_MUNGING]: Support -Oz. - --- - -GnuPG-bug-id: 6432 -Signed-off-by: NIIBE Yutaka <gniibe@fsij.org> ---- - cipher/Makefile.am | 2 +- - random/Makefile.am | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/cipher/Makefile.am b/cipher/Makefile.am -index cf1fbe85..e67b1ee2 100644 ---- a/cipher/Makefile.am -+++ b/cipher/Makefile.am -@@ -165,7 +165,7 @@ gost-s-box$(EXEEXT_FOR_BUILD): gost-s-box.c - - - if ENABLE_O_FLAG_MUNGING --o_flag_munging = sed -e 's/-O\([2-9sg][2-9sg]*\)/-O1/' -e 's/-Ofast/-O1/g' -+o_flag_munging = sed -e 's/-O\([2-9sgz][2-9sgz]*\)/-O1/' -e 's/-Ofast/-O1/g' - else - o_flag_munging = cat - endif -diff --git a/random/Makefile.am b/random/Makefile.am -index af978570..0c935a05 100644 ---- a/random/Makefile.am -+++ b/random/Makefile.am -@@ -56,7 +56,7 @@ jitterentropy-base.c jitterentropy.h jitterentropy-base-user.h - - # The rndjent module needs to be compiled without optimization. */ - if ENABLE_O_FLAG_MUNGING --o_flag_munging = sed -e 's/-O\([1-9sg][1-9sg]*\)/-O0/g' -e 's/-Ofast/-O0/g' -+o_flag_munging = sed -e 's/-O\([1-9sgz][1-9sgz]*\)/-O0/g' -e 's/-Ofast/-O0/g' - else - o_flag_munging = cat - endif --- -2.40.0 - diff --git a/dev-libs/libgcrypt/files/libgcrypt-1.10.1-configure-clang16.patch b/dev-libs/libgcrypt/files/libgcrypt-1.10.1-configure-clang16.patch deleted file mode 100644 index fa80c999a3aa..000000000000 --- a/dev-libs/libgcrypt/files/libgcrypt-1.10.1-configure-clang16.patch +++ /dev/null @@ -1,134 +0,0 @@ -https://lists.gnupg.org/pipermail/gcrypt-devel/2022-December/005410.html - ---- a/configure.ac -+++ b/configure.ac -@@ -1211,7 +1211,8 @@ AC_CACHE_CHECK([whether GCC assembler is compatible for ARM assembly implementat - /* Test if '.type' and '.size' are supported. */ - ".size asmfunc,.-asmfunc;\n\t" - ".type asmfunc,%function;\n\t" -- );]], [ asmfunc(); ] )], -+ ); -+ void asmfunc(void);]], [ asmfunc(); ] )], - [gcry_cv_gcc_arm_platform_as_ok=yes]) - fi]) - if test "$gcry_cv_gcc_arm_platform_as_ok" = "yes" ; then -@@ -1238,7 +1239,8 @@ AC_CACHE_CHECK([whether GCC assembler is compatible for ARMv8/Aarch64 assembly i - "eor x0, x0, x30, ror #12;\n\t" - "add x0, x0, x30, asr #12;\n\t" - "eor v0.16b, v0.16b, v31.16b;\n\t" -- );]], [ asmfunc(); ] )], -+ ); -+ void asmfunc(void);]], [ asmfunc(); ] )], - [gcry_cv_gcc_aarch64_platform_as_ok=yes]) - fi]) - if test "$gcry_cv_gcc_aarch64_platform_as_ok" = "yes" ; then -@@ -1267,7 +1269,8 @@ AC_CACHE_CHECK([whether GCC assembler supports for CFI directives], - ".cfi_restore_state\n\t" - ".long 0\n\t" - ".cfi_endproc\n\t" -- );]])], -+ ); -+ void asmfunc(void)]])], - [gcry_cv_gcc_asm_cfi_directives=yes])]) - if test "$gcry_cv_gcc_asm_cfi_directives" = "yes" ; then - AC_DEFINE(HAVE_GCC_ASM_CFI_DIRECTIVES,1, -@@ -1666,7 +1669,8 @@ if test $amd64_as_feature_detection = yes; then - [gcry_cv_gcc_as_const_division_ok], - [gcry_cv_gcc_as_const_division_ok=no - AC_LINK_IFELSE([AC_LANG_PROGRAM( -- [[__asm__(".text\n\tfn:\n\t xorl \$(123456789/12345678), %ebp;\n\t");]], -+ [[__asm__(".text\n\tfn:\n\t xorl \$(123456789/12345678), %ebp;\n\t"); -+ void fn(void);]], - [fn();])], - [gcry_cv_gcc_as_const_division_ok=yes])]) - if test "$gcry_cv_gcc_as_const_division_ok" = "no" ; then -@@ -1679,7 +1683,8 @@ if test $amd64_as_feature_detection = yes; then - [gcry_cv_gcc_as_const_division_with_wadivide_ok], - [gcry_cv_gcc_as_const_division_with_wadivide_ok=no - AC_LINK_IFELSE([AC_LANG_PROGRAM( -- [[__asm__(".text\n\tfn:\n\t xorl \$(123456789/12345678), %ebp;\n\t");]], -+ [[__asm__(".text\n\tfn:\n\t xorl \$(123456789/12345678), %ebp;\n\t"); -+ void fn(void);]], - [fn();])], - [gcry_cv_gcc_as_const_division_with_wadivide_ok=yes])]) - if test "$gcry_cv_gcc_as_const_division_with_wadivide_ok" = "no" ; then -@@ -1715,7 +1720,8 @@ if test $amd64_as_feature_detection = yes; then - * and "-Wa,--divide" workaround failed, this causes assembly - * to be disable on this machine. */ - "xorl \$(123456789/12345678), %ebp;\n\t" -- );]], [ asmfunc(); ])], -+ ); -+ void asmfunc(void);]], [ asmfunc(); ])], - [gcry_cv_gcc_amd64_platform_as_ok=yes]) - fi]) - if test "$gcry_cv_gcc_amd64_platform_as_ok" = "yes" ; then -@@ -1734,7 +1740,8 @@ if test $amd64_as_feature_detection = yes; then - ".globl asmfunc\n\t" - "asmfunc:\n\t" - "xorq \$(1234), %rbp;\n\t" -- );]], [ asmfunc(); ])], -+ ); -+ void asmfunc(void);]], [ asmfunc(); ])], - [gcry_cv_gcc_win64_platform_as_ok=yes])]) - if test "$gcry_cv_gcc_win64_platform_as_ok" = "yes" ; then - AC_DEFINE(HAVE_COMPATIBLE_GCC_WIN64_PLATFORM_AS,1, -@@ -1767,7 +1774,8 @@ AC_CACHE_CHECK([whether GCC assembler is compatible for Intel syntax assembly im - "sub eax, [esp + 4];\n\t" - "add dword ptr [esp + eax], 0b10101;\n\t" - ".att_syntax prefix\n\t" -- );]], [ actest(); ])], -+ ); -+ void actest(void);]], [ actest(); ])], - [gcry_cv_gcc_platform_as_ok_for_intel_syntax=yes]) - fi]) - if test "$gcry_cv_gcc_platform_as_ok_for_intel_syntax" = "yes" ; then -@@ -1832,6 +1840,7 @@ AC_CACHE_CHECK([whether GCC inline assembler supports NEON instructions], - "vadd.u64 %q0, %q1;\n\t" - "vadd.s64 %d3, %d2, %d3;\n\t" - ); -+ void testfn(void); - ]], [ testfn(); ])], - [gcry_cv_gcc_inline_asm_neon=yes]) - fi]) -@@ -1879,6 +1888,7 @@ AC_CACHE_CHECK([whether GCC inline assembler supports AArch32 Crypto Extension i - - "vmull.p64 q0, d0, d0;\n\t" - ); -+ void testfn(void); - ]], [ testfn(); ])], - [gcry_cv_gcc_inline_asm_aarch32_crypto=yes]) - fi]) -@@ -1907,6 +1917,7 @@ AC_CACHE_CHECK([whether GCC inline assembler supports AArch64 NEON instructions] - "dup v0.8b, w0;\n\t" - "ld4 {v0.8b,v1.8b,v2.8b,v3.8b},[x0],\#32;\n\t" - ); -+ void testfn(void); - ]], [ testfn(); ])], - [gcry_cv_gcc_inline_asm_aarch64_neon=yes]) - fi]) -@@ -1955,6 +1966,7 @@ AC_CACHE_CHECK([whether GCC inline assembler supports AArch64 Crypto Extension i - "pmull v0.1q, v0.1d, v31.1d;\n\t" - "pmull2 v0.1q, v0.2d, v31.2d;\n\t" - ); -+ void testfn(void); - ]], [ testfn(); ])], - [gcry_cv_gcc_inline_asm_aarch64_crypto=yes]) - fi]) -@@ -2050,6 +2062,7 @@ AC_CACHE_CHECK([whether GCC inline assembler supports PowerPC AltiVec/VSX/crypto - "vshasigmad %v0, %v1, 0, 15;\n" - "vpmsumd %v11, %v11, %v11;\n" - ); -+ void testfn(void); - ]], [ testfn(); ] )], - [gcry_cv_gcc_inline_asm_ppc_altivec=yes]) - fi]) -@@ -2075,6 +2088,7 @@ AC_CACHE_CHECK([whether GCC inline assembler supports PowerISA 3.00 instructions - "testfn:\n" - "stxvb16x %r1,%v12,%v30;\n" - ); -+ void testfn(void); - ]], [ testfn(); ])], - [gcry_cv_gcc_inline_asm_ppc_arch_3_00=yes]) - fi]) - - diff --git a/dev-libs/libgcrypt/files/libgcrypt-1.10.3-hppa.patch b/dev-libs/libgcrypt/files/libgcrypt-1.10.3-hppa.patch new file mode 100644 index 000000000000..daa1bba9f439 --- /dev/null +++ b/dev-libs/libgcrypt/files/libgcrypt-1.10.3-hppa.patch @@ -0,0 +1,110 @@ +https://bugs.gentoo.org/925284 +https://git.gnupg.org/cgi-bin/gitweb.cgi?p=libgcrypt.git;a=commit;h=75e9bcccb69a9dea67d90840bd295bbd1749cea3 + +From 75e9bcccb69a9dea67d90840bd295bbd1749cea3 Mon Sep 17 00:00:00 2001 +From: NIIBE Yutaka <gniibe@fsij.org> +Date: Mon, 4 Mar 2024 09:00:59 +0900 +Subject: [PATCH] mpi: Fix ECC computation on hppa. + +* mpi/ec-inline.h [__hppa] (ADD4_LIMB32, SUB4_LIMB32): New. +* mpi/longlong.h [__hppa] (add_ssaaaa, sub_ddmmss): Add __CLOBBER_CC. + +-- + +Cherry-pick master commit of: + b757f4130af987bdfc769b754b6e9e27882c349c + +GnuPG-bug-id: 7022 +Signed-off-by: NIIBE Yutaka <gniibe@fsij.org> +--- + mpi/ec-inline.h | 40 ++++++++++++++++++++++++++++++++++++++++ + mpi/longlong.h | 12 ++++++------ + 2 files changed, 46 insertions(+), 6 deletions(-) + +diff --git a/mpi/ec-inline.h b/mpi/ec-inline.h +index 0ffdf8eb..c24d5352 100644 +--- a/mpi/ec-inline.h ++++ b/mpi/ec-inline.h +@@ -921,6 +921,46 @@ LIMB64_HILO(mpi_limb_t hi, mpi_limb_t lo) + + #endif /* HAVE_COMPATIBLE_GCC_ARM_PLATFORM_AS */ + ++#if defined (__hppa) && __GNUC__ >= 4 ++#define ADD4_LIMB32(A3, A2, A1, A0, B3, B2, B1, B0, C3, C2, C1, C0) \ ++ __asm__ ("add %7,%11,%3\n\t" \ ++ "addc %6,%10,%2\n\t" \ ++ "addc %5,%9,%1\n\t" \ ++ "addc %4,%8,%0" \ ++ : "=r" (A3), \ ++ "=&r" (A2), \ ++ "=&r" (A1), \ ++ "=&r" (A0) \ ++ : "rM" ((mpi_limb_t)(B3)), \ ++ "rM" ((mpi_limb_t)(B2)), \ ++ "rM" ((mpi_limb_t)(B1)), \ ++ "rM" ((mpi_limb_t)(B0)), \ ++ "rM" ((mpi_limb_t)(C3)), \ ++ "rM" ((mpi_limb_t)(C2)), \ ++ "rM" ((mpi_limb_t)(C1)), \ ++ "rM" ((mpi_limb_t)(C0)) \ ++ : "cc") ++ ++#define SUB4_LIMB32(A3, A2, A1, A0, B3, B2, B1, B0, C3, C2, C1, C0) \ ++ __asm__ ("sub %7,%11,%3\n\t" \ ++ "subb %6,%10,%2\n\t" \ ++ "subb %5,%9,%1\n\t" \ ++ "subb %4,%8,%0\n\t" \ ++ : "=r" (A3), \ ++ "=&r" (A2), \ ++ "=&r" (A1), \ ++ "=&r" (A0) \ ++ : "rM" ((mpi_limb_t)(B3)), \ ++ "rM" ((mpi_limb_t)(B2)), \ ++ "rM" ((mpi_limb_t)(B1)), \ ++ "rM" ((mpi_limb_t)(B0)), \ ++ "rM" ((mpi_limb_t)(C3)), \ ++ "rM" ((mpi_limb_t)(C2)), \ ++ "rM" ((mpi_limb_t)(C1)), \ ++ "rM" ((mpi_limb_t)(C0)) \ ++ : "cc") ++ ++#endif /* __hppa */ + + /* Common 32-bit arch addition/subtraction macros. */ + +diff --git a/mpi/longlong.h b/mpi/longlong.h +index c299534c..1ab70e7e 100644 +--- a/mpi/longlong.h ++++ b/mpi/longlong.h +@@ -394,23 +394,23 @@ extern UDItype __udiv_qrnnd (); + ***************************************/ + #if defined (__hppa) && W_TYPE_SIZE == 32 + # define add_ssaaaa(sh, sl, ah, al, bh, bl) \ +- __asm__ (" add %4,%5,%1\n" \ +- " addc %2,%3,%0" \ ++ __asm__ ("add %4,%5,%1\n\t" \ ++ "addc %2,%3,%0" \ + : "=r" ((USItype)(sh)), \ + "=&r" ((USItype)(sl)) \ + : "%rM" ((USItype)(ah)), \ + "rM" ((USItype)(bh)), \ + "%rM" ((USItype)(al)), \ +- "rM" ((USItype)(bl))) ++ "rM" ((USItype)(bl)) __CLOBBER_CC) + # define sub_ddmmss(sh, sl, ah, al, bh, bl) \ +- __asm__ (" sub %4,%5,%1\n" \ +- " subb %2,%3,%0" \ ++ __asm__ ("sub %4,%5,%1\n\t" \ ++ "subb %2,%3,%0" \ + : "=r" ((USItype)(sh)), \ + "=&r" ((USItype)(sl)) \ + : "rM" ((USItype)(ah)), \ + "rM" ((USItype)(bh)), \ + "rM" ((USItype)(al)), \ +- "rM" ((USItype)(bl))) ++ "rM" ((USItype)(bl)) __CLOBBER_CC) + # if defined (_PA_RISC1_1) + # define umul_ppmm(wh, wl, u, v) \ + do { \ +-- +2.30.2 diff --git a/dev-libs/libgcrypt/files/libgcrypt-1.10.3-x86-refactor.patch b/dev-libs/libgcrypt/files/libgcrypt-1.10.3-x86-refactor.patch new file mode 100644 index 000000000000..527150671097 --- /dev/null +++ b/dev-libs/libgcrypt/files/libgcrypt-1.10.3-x86-refactor.patch @@ -0,0 +1,428 @@ +https://bugs.gentoo.org/915060 +https://git.gnupg.org/cgi-bin/gitweb.cgi?p=libgcrypt.git;a=commit;h=07f0563d325c6589ca1560525d3b22291feec227 + +From 07f0563d325c6589ca1560525d3b22291feec227 Mon Sep 17 00:00:00 2001 +From: Jussi Kivilinna <jussi.kivilinna@iki.fi> +Date: Tue, 19 Dec 2023 20:23:47 +0200 +Subject: [PATCH] mpi/ec-inline: refactor i386 assembly to reduce register + usage + +* mpi/ec-inline.h [__i386__] (ADD2_LIMB32_CARRY_OUT) +(ADD2_LIMB32_CARRY_IN_OUT, ADD2_LIB32_CARRY_IN, SUB2_LIMB32_CARRY_OUT) +(SUB2_LIMB32_CARRY_IN_OUT, SUB2_LIB32_CARRY_IN, ADD8_LIMB32) +(ADD10_LIMB32, ADD14_LIMB32, SUB8_LIMB32, SUB10_LIMB32) +(SUB14_LIMB32): New. +[__i386__] (ADD4_LIMB32, ADD6_LIMB32, SUB4_LIMB32, SUB6_LIMB32): Rewrite +to use new *_CARRY_* macros. +[BYTES_PER_MPI_LIMB == 4] (ADD4_LIMB64): Use ADD8_LIMB32 if available. +[BYTES_PER_MPI_LIMB == 4] (ADD5_LIMB64): Use ADD10_LIMB32 if available. +[BYTES_PER_MPI_LIMB == 4] (ADD7_LIMB64): Use ADD14_LIMB32 if available. +[BYTES_PER_MPI_LIMB == 4] (SUB4_LIMB64): Use SUB8_LIMB32 if available. +[BYTES_PER_MPI_LIMB == 4] (SUB5_LIMB64): Use SUB10_LIMB32 if available. +[BYTES_PER_MPI_LIMB == 4] (SUB7_LIMB64): Use SUB14_LIMB32 if available. +-- + +Cherry pick of master commit: + 956f1ed4ec6ead59dc56f574f943f1fe25dac723 + +This commit reduces number register operands and register pressure +at i386 assembly used in `ec-nist.c` NIST-P192, P224, P256, and P384. +Performance stays relatively same, with P192 being ~2% slower +than before and P384 being ~5% faster. + +GnuPG-bug-id: T6892 +Signed-off-by: Jussi Kivilinna <jussi.kivilinna@iki.fi> +--- + mpi/ec-inline.h | 327 +++++++++++++++++++++++++++++++++--------------- + 1 file changed, 229 insertions(+), 98 deletions(-) + +diff --git a/mpi/ec-inline.h b/mpi/ec-inline.h +index a07826e3..0ffdf8eb 100644 +--- a/mpi/ec-inline.h ++++ b/mpi/ec-inline.h +@@ -641,116 +641,192 @@ LIMB64_HILO(mpi_limb_t hi, mpi_limb_t lo) + /* i386 addition/subtraction helpers. */ + #if defined (__i386__) && defined(HAVE_CPU_ARCH_X86) && __GNUC__ >= 4 + +-#define ADD4_LIMB32(a3, a2, a1, a0, b3, b2, b1, b0, c3, c2, c1, c0) \ +- __asm__ ("addl %11, %3\n" \ +- "adcl %10, %2\n" \ +- "adcl %9, %1\n" \ +- "adcl %8, %0\n" \ +- : "=r" (a3), \ +- "=&r" (a2), \ ++#define ADD2_LIMB32_CARRY_OUT(carry, a1, a0, b1, b0, c1, c0) \ ++ __asm__ ("addl %7, %2\n" \ ++ "adcl %6, %1\n" \ ++ "sbbl %0, %0\n" \ ++ : "=r" (carry), \ + "=&r" (a1), \ + "=&r" (a0) \ +- : "0" ((mpi_limb_t)(b3)), \ +- "1" ((mpi_limb_t)(b2)), \ +- "2" ((mpi_limb_t)(b1)), \ +- "3" ((mpi_limb_t)(b0)), \ +- "g" ((mpi_limb_t)(c3)), \ +- "g" ((mpi_limb_t)(c2)), \ +- "g" ((mpi_limb_t)(c1)), \ +- "g" ((mpi_limb_t)(c0)) \ ++ : "0" ((mpi_limb_t)(0)), \ ++ "1" ((mpi_limb_t)(b1)), \ ++ "2" ((mpi_limb_t)(b0)), \ ++ "re" ((mpi_limb_t)(c1)), \ ++ "re" ((mpi_limb_t)(c0)) \ + : "cc") + ++#define ADD2_LIMB32_CARRY_IN_OUT(a1, a0, b1, b0, c1, c0, carry) \ ++ __asm__ ("addl $1, %0\n" \ ++ "adcl %7, %2\n" \ ++ "adcl %6, %1\n" \ ++ "sbbl %0, %0\n" \ ++ : "=r" (carry), \ ++ "=&r" (a1), \ ++ "=&r" (a0) \ ++ : "0" ((mpi_limb_t)(carry)), \ ++ "1" ((mpi_limb_t)(b1)), \ ++ "2" ((mpi_limb_t)(b0)), \ ++ "re" ((mpi_limb_t)(c1)), \ ++ "re" ((mpi_limb_t)(c0)) \ ++ : "cc") ++ ++#define ADD2_LIMB32_CARRY_IN(a1, a0, b1, b0, c1, c0, carry) \ ++ __asm__ ("addl $1, %2\n" \ ++ "adcl %7, %1\n" \ ++ "adcl %6, %0\n" \ ++ : "=r" (a1), \ ++ "=&r" (a0), \ ++ "=&g" (carry) \ ++ : "0" ((mpi_limb_t)(b1)), \ ++ "1" ((mpi_limb_t)(b0)), \ ++ "2" ((mpi_limb_t)(carry)), \ ++ "re" ((mpi_limb_t)(c1)), \ ++ "re" ((mpi_limb_t)(c0)) \ ++ : "cc") ++ ++#define ADD4_LIMB32(a3, a2, a1, a0, b3, b2, b1, b0, c3, c2, c1, c0) do { \ ++ mpi_limb_t __carry4_32; \ ++ ADD2_LIMB32_CARRY_OUT(__carry4_32, a1, a0, b1, b0, c1, c0); \ ++ ADD2_LIMB32_CARRY_IN(a3, a2, b3, b2, c3, c2, __carry4_32); \ ++ } while (0) ++ + #define ADD6_LIMB32(a5, a4, a3, a2, a1, a0, b5, b4, b3, b2, b1, b0, \ + c5, c4, c3, c2, c1, c0) do { \ + mpi_limb_t __carry6_32; \ +- __asm__ ("addl %10, %3\n" \ +- "adcl %9, %2\n" \ +- "adcl %8, %1\n" \ +- "sbbl %0, %0\n" \ +- : "=r" (__carry6_32), \ +- "=&r" (a2), \ +- "=&r" (a1), \ +- "=&r" (a0) \ +- : "0" ((mpi_limb_t)(0)), \ +- "1" ((mpi_limb_t)(b2)), \ +- "2" ((mpi_limb_t)(b1)), \ +- "3" ((mpi_limb_t)(b0)), \ +- "g" ((mpi_limb_t)(c2)), \ +- "g" ((mpi_limb_t)(c1)), \ +- "g" ((mpi_limb_t)(c0)) \ +- : "cc"); \ +- __asm__ ("addl $1, %3\n" \ +- "adcl %10, %2\n" \ +- "adcl %9, %1\n" \ +- "adcl %8, %0\n" \ +- : "=r" (a5), \ +- "=&r" (a4), \ +- "=&r" (a3), \ +- "=&r" (__carry6_32) \ +- : "0" ((mpi_limb_t)(b5)), \ +- "1" ((mpi_limb_t)(b4)), \ +- "2" ((mpi_limb_t)(b3)), \ +- "3" ((mpi_limb_t)(__carry6_32)), \ +- "g" ((mpi_limb_t)(c5)), \ +- "g" ((mpi_limb_t)(c4)), \ +- "g" ((mpi_limb_t)(c3)) \ +- : "cc"); \ ++ ADD2_LIMB32_CARRY_OUT(__carry6_32, a1, a0, b1, b0, c1, c0); \ ++ ADD2_LIMB32_CARRY_IN_OUT(a3, a2, b3, b2, c3, c2, __carry6_32); \ ++ ADD2_LIMB32_CARRY_IN(a5, a4, b5, b4, c5, c4, __carry6_32); \ ++ } while (0) ++ ++#define ADD8_LIMB32(a7, a6, a5, a4, a3, a2, a1, a0, \ ++ b7, b6, b5, b4, b3, b2, b1, b0, \ ++ c7, c6, c5, c4, c3, c2, c1, c0) do { \ ++ mpi_limb_t __carry8_32; \ ++ ADD2_LIMB32_CARRY_OUT(__carry8_32, a1, a0, b1, b0, c1, c0); \ ++ ADD2_LIMB32_CARRY_IN_OUT(a3, a2, b3, b2, c3, c2, __carry8_32); \ ++ ADD2_LIMB32_CARRY_IN_OUT(a5, a4, b5, b4, c5, c4, __carry8_32); \ ++ ADD2_LIMB32_CARRY_IN(a7, a6, b7, b6, c7, c6, __carry8_32); \ + } while (0) + +-#define SUB4_LIMB32(a3, a2, a1, a0, b3, b2, b1, b0, c3, c2, c1, c0) \ +- __asm__ ("subl %11, %3\n" \ +- "sbbl %10, %2\n" \ +- "sbbl %9, %1\n" \ +- "sbbl %8, %0\n" \ +- : "=r" (a3), \ +- "=&r" (a2), \ ++#define ADD10_LIMB32(a9, a8, a7, a6, a5, a4, a3, a2, a1, a0, \ ++ b9, b8, b7, b6, b5, b4, b3, b2, b1, b0, \ ++ c9, c8, c7, c6, c5, c4, c3, c2, c1, c0) do { \ ++ mpi_limb_t __carry10_32; \ ++ ADD2_LIMB32_CARRY_OUT(__carry10_32, a1, a0, b1, b0, c1, c0); \ ++ ADD2_LIMB32_CARRY_IN_OUT(a3, a2, b3, b2, c3, c2, __carry10_32); \ ++ ADD2_LIMB32_CARRY_IN_OUT(a5, a4, b5, b4, c5, c4, __carry10_32); \ ++ ADD2_LIMB32_CARRY_IN_OUT(a7, a6, b7, b6, c7, c6, __carry10_32); \ ++ ADD2_LIMB32_CARRY_IN(a9, a8, b9, b8, c9, c8, __carry10_32); \ ++ } while (0) ++ ++#define ADD14_LIMB32(a13, a12, a11, a10, a9, a8, a7, \ ++ a6, a5, a4, a3, a2, a1, a0, \ ++ b13, b12, b11, b10, b9, b8, b7, \ ++ b6, b5, b4, b3, b2, b1, b0, \ ++ c13, c12, c11, c10, c9, c8, c7, \ ++ c6, c5, c4, c3, c2, c1, c0) do { \ ++ mpi_limb_t __carry14_32; \ ++ ADD2_LIMB32_CARRY_OUT(__carry14_32, a1, a0, b1, b0, c1, c0); \ ++ ADD2_LIMB32_CARRY_IN_OUT(a3, a2, b3, b2, c3, c2, __carry14_32); \ ++ ADD2_LIMB32_CARRY_IN_OUT(a5, a4, b5, b4, c5, c4, __carry14_32); \ ++ ADD2_LIMB32_CARRY_IN_OUT(a7, a6, b7, b6, c7, c6, __carry14_32); \ ++ ADD2_LIMB32_CARRY_IN_OUT(a9, a8, b9, b8, c9, c8, __carry14_32); \ ++ ADD2_LIMB32_CARRY_IN_OUT(a11, a10, b11, b10, c11, c10, __carry14_32); \ ++ ADD2_LIMB32_CARRY_IN(a13, a12, b13, b12, c13, c12, __carry14_32); \ ++ } while (0) ++ ++#define SUB2_LIMB32_CARRY_OUT(carry, a1, a0, b1, b0, c1, c0) \ ++ __asm__ ("subl %7, %2\n" \ ++ "sbbl %6, %1\n" \ ++ "sbbl %0, %0\n" \ ++ : "=r" (carry), \ + "=&r" (a1), \ + "=&r" (a0) \ +- : "0" ((mpi_limb_t)(b3)), \ +- "1" ((mpi_limb_t)(b2)), \ +- "2" ((mpi_limb_t)(b1)), \ +- "3" ((mpi_limb_t)(b0)), \ +- "g" ((mpi_limb_t)(c3)), \ +- "g" ((mpi_limb_t)(c2)), \ +- "g" ((mpi_limb_t)(c1)), \ +- "g" ((mpi_limb_t)(c0)) \ ++ : "0" ((mpi_limb_t)(0)), \ ++ "1" ((mpi_limb_t)(b1)), \ ++ "2" ((mpi_limb_t)(b0)), \ ++ "re" ((mpi_limb_t)(c1)), \ ++ "re" ((mpi_limb_t)(c0)) \ ++ : "cc") ++ ++#define SUB2_LIMB32_CARRY_IN_OUT(a1, a0, b1, b0, c1, c0, carry) \ ++ __asm__ ("addl $1, %0\n" \ ++ "sbbl %7, %2\n" \ ++ "sbbl %6, %1\n" \ ++ "sbbl %0, %0\n" \ ++ : "=r" (carry), \ ++ "=&r" (a1), \ ++ "=&r" (a0) \ ++ : "0" ((mpi_limb_t)(carry)), \ ++ "1" ((mpi_limb_t)(b1)), \ ++ "2" ((mpi_limb_t)(b0)), \ ++ "re" ((mpi_limb_t)(c1)), \ ++ "re" ((mpi_limb_t)(c0)) \ ++ : "cc") ++ ++#define SUB2_LIMB32_CARRY_IN(a1, a0, b1, b0, c1, c0, carry) \ ++ __asm__ ("addl $1, %2\n" \ ++ "sbbl %7, %1\n" \ ++ "sbbl %6, %0\n" \ ++ : "=r" (a1), \ ++ "=&r" (a0), \ ++ "=&g" (carry) \ ++ : "0" ((mpi_limb_t)(b1)), \ ++ "1" ((mpi_limb_t)(b0)), \ ++ "2" ((mpi_limb_t)(carry)), \ ++ "re" ((mpi_limb_t)(c1)), \ ++ "re" ((mpi_limb_t)(c0)) \ + : "cc") + ++#define SUB4_LIMB32(a3, a2, a1, a0, b3, b2, b1, b0, c3, c2, c1, c0) do { \ ++ mpi_limb_t __carry4_32; \ ++ SUB2_LIMB32_CARRY_OUT(__carry4_32, a1, a0, b1, b0, c1, c0); \ ++ SUB2_LIMB32_CARRY_IN(a3, a2, b3, b2, c3, c2, __carry4_32); \ ++ } while (0) ++ + #define SUB6_LIMB32(a5, a4, a3, a2, a1, a0, b5, b4, b3, b2, b1, b0, \ + c5, c4, c3, c2, c1, c0) do { \ +- mpi_limb_t __borrow6_32; \ +- __asm__ ("subl %10, %3\n" \ +- "sbbl %9, %2\n" \ +- "sbbl %8, %1\n" \ +- "sbbl %0, %0\n" \ +- : "=r" (__borrow6_32), \ +- "=&r" (a2), \ +- "=&r" (a1), \ +- "=&r" (a0) \ +- : "0" ((mpi_limb_t)(0)), \ +- "1" ((mpi_limb_t)(b2)), \ +- "2" ((mpi_limb_t)(b1)), \ +- "3" ((mpi_limb_t)(b0)), \ +- "g" ((mpi_limb_t)(c2)), \ +- "g" ((mpi_limb_t)(c1)), \ +- "g" ((mpi_limb_t)(c0)) \ +- : "cc"); \ +- __asm__ ("addl $1, %3\n" \ +- "sbbl %10, %2\n" \ +- "sbbl %9, %1\n" \ +- "sbbl %8, %0\n" \ +- : "=r" (a5), \ +- "=&r" (a4), \ +- "=&r" (a3), \ +- "=&r" (__borrow6_32) \ +- : "0" ((mpi_limb_t)(b5)), \ +- "1" ((mpi_limb_t)(b4)), \ +- "2" ((mpi_limb_t)(b3)), \ +- "3" ((mpi_limb_t)(__borrow6_32)), \ +- "g" ((mpi_limb_t)(c5)), \ +- "g" ((mpi_limb_t)(c4)), \ +- "g" ((mpi_limb_t)(c3)) \ +- : "cc"); \ ++ mpi_limb_t __carry6_32; \ ++ SUB2_LIMB32_CARRY_OUT(__carry6_32, a1, a0, b1, b0, c1, c0); \ ++ SUB2_LIMB32_CARRY_IN_OUT(a3, a2, b3, b2, c3, c2, __carry6_32); \ ++ SUB2_LIMB32_CARRY_IN(a5, a4, b5, b4, c5, c4, __carry6_32); \ ++ } while (0) ++ ++#define SUB8_LIMB32(a7, a6, a5, a4, a3, a2, a1, a0, \ ++ b7, b6, b5, b4, b3, b2, b1, b0, \ ++ c7, c6, c5, c4, c3, c2, c1, c0) do { \ ++ mpi_limb_t __carry8_32; \ ++ SUB2_LIMB32_CARRY_OUT(__carry8_32, a1, a0, b1, b0, c1, c0); \ ++ SUB2_LIMB32_CARRY_IN_OUT(a3, a2, b3, b2, c3, c2, __carry8_32); \ ++ SUB2_LIMB32_CARRY_IN_OUT(a5, a4, b5, b4, c5, c4, __carry8_32); \ ++ SUB2_LIMB32_CARRY_IN(a7, a6, b7, b6, c7, c6, __carry8_32); \ ++ } while (0) ++ ++#define SUB10_LIMB32(a9, a8, a7, a6, a5, a4, a3, a2, a1, a0, \ ++ b9, b8, b7, b6, b5, b4, b3, b2, b1, b0, \ ++ c9, c8, c7, c6, c5, c4, c3, c2, c1, c0) do { \ ++ mpi_limb_t __carry10_32; \ ++ SUB2_LIMB32_CARRY_OUT(__carry10_32, a1, a0, b1, b0, c1, c0); \ ++ SUB2_LIMB32_CARRY_IN_OUT(a3, a2, b3, b2, c3, c2, __carry10_32); \ ++ SUB2_LIMB32_CARRY_IN_OUT(a5, a4, b5, b4, c5, c4, __carry10_32); \ ++ SUB2_LIMB32_CARRY_IN_OUT(a7, a6, b7, b6, c7, c6, __carry10_32); \ ++ SUB2_LIMB32_CARRY_IN(a9, a8, b9, b8, c9, c8, __carry10_32); \ ++ } while (0) ++ ++#define SUB14_LIMB32(a13, a12, a11, a10, a9, a8, a7, \ ++ a6, a5, a4, a3, a2, a1, a0, \ ++ b13, b12, b11, b10, b9, b8, b7, \ ++ b6, b5, b4, b3, b2, b1, b0, \ ++ c13, c12, c11, c10, c9, c8, c7, \ ++ c6, c5, c4, c3, c2, c1, c0) do { \ ++ mpi_limb_t __carry14_32; \ ++ SUB2_LIMB32_CARRY_OUT(__carry14_32, a1, a0, b1, b0, c1, c0); \ ++ SUB2_LIMB32_CARRY_IN_OUT(a3, a2, b3, b2, c3, c2, __carry14_32); \ ++ SUB2_LIMB32_CARRY_IN_OUT(a5, a4, b5, b4, c5, c4, __carry14_32); \ ++ SUB2_LIMB32_CARRY_IN_OUT(a7, a6, b7, b6, c7, c6, __carry14_32); \ ++ SUB2_LIMB32_CARRY_IN_OUT(a9, a8, b9, b8, c9, c8, __carry14_32); \ ++ SUB2_LIMB32_CARRY_IN_OUT(a11, a10, b11, b10, c11, c10, __carry14_32); \ ++ SUB2_LIMB32_CARRY_IN(a13, a12, b13, b12, c13, c12, __carry14_32); \ + } while (0) + + #endif /* __i386__ */ +@@ -820,7 +896,6 @@ LIMB64_HILO(mpi_limb_t hi, mpi_limb_t lo) + "Ir" ((mpi_limb_t)(C0)) \ + : "cc") + +- + #define SUB6_LIMB32(A5, A4, A3, A2, A1, A0, B5, B4, B3, B2, B1, B0, \ + C5, C4, C3, C2, C1, C0) do { \ + mpi_limb_t __borrow6_32; \ +@@ -875,7 +950,13 @@ LIMB64_HILO(mpi_limb_t hi, mpi_limb_t lo) + C2.hi, C2.lo, C1.hi, C1.lo, C0.hi, C0.lo) + #endif + +-#if defined(ADD6_LIMB32) ++#if defined(ADD8_LIMB32) ++/* A[0..3] = B[0..3] + C[0..3] */ ++#define ADD4_LIMB64(A3, A2, A1, A0, B3, B2, B1, B0, C3, C2, C1, C0) \ ++ ADD8_LIMB32(A3.hi, A3.lo, A2.hi, A2.lo, A1.hi, A1.lo, A0.hi, A0.lo, \ ++ B3.hi, B3.lo, B2.hi, B2.lo, B1.hi, B1.lo, B0.hi, B0.lo, \ ++ C3.hi, C3.lo, C2.hi, C2.lo, C1.hi, C1.lo, C0.hi, C0.lo) ++#elif defined(ADD6_LIMB32) + /* A[0..3] = B[0..3] + C[0..3] */ + #define ADD4_LIMB64(A3, A2, A1, A0, B3, B2, B1, B0, C3, C2, C1, C0) do { \ + mpi_limb_t __carry4; \ +@@ -888,6 +969,28 @@ LIMB64_HILO(mpi_limb_t hi, mpi_limb_t lo) + } while (0) + #endif + ++#if defined(ADD10_LIMB32) ++/* A[0..4] = B[0..4] + C[0..4] */ ++#define ADD5_LIMB64(A4, A3, A2, A1, A0, B4, B3, B2, B1, B0, \ ++ C4, C3, C2, C1, C0) \ ++ ADD10_LIMB32(A4.hi, A4.lo, A3.hi, A3.lo, A2.hi, A2.lo, A1.hi, A1.lo, \ ++ A0.hi, A0.lo, B4.hi, B4.lo, B3.hi, B3.lo, B2.hi, B2.lo, \ ++ B1.hi, B1.lo, B0.hi, B0.lo, C4.hi, C4.lo, C3.hi, C3.lo, \ ++ C2.hi, C2.lo, C1.hi, C1.lo, C0.hi, C0.lo) ++#endif ++ ++#if defined(ADD14_LIMB32) ++/* A[0..6] = B[0..6] + C[0..6] */ ++#define ADD7_LIMB64(A6, A5, A4, A3, A2, A1, A0, B6, B5, B4, B3, B2, B1, B0, \ ++ C6, C5, C4, C3, C2, C1, C0) \ ++ ADD14_LIMB32(A6.hi, A6.lo, A5.hi, A5.lo, A4.hi, A4.lo, A3.hi, A3.lo, \ ++ A2.hi, A2.lo, A1.hi, A1.lo, A0.hi, A0.lo, B6.hi, B6.lo, \ ++ B5.hi, B5.lo, B4.hi, B4.lo, B3.hi, B3.lo, B2.hi, B2.lo, \ ++ B1.hi, B1.lo, B0.hi, B0.lo, C6.hi, C6.lo, C5.hi, C5.lo, \ ++ C4.hi, C4.lo, C3.hi, C3.lo, C2.hi, C2.lo, C1.hi, C1.lo, \ ++ C0.hi, C0.lo) ++#endif ++ + #if defined(SUB4_LIMB32) + /* A[0..1] = B[0..1] - C[0..1] */ + #define SUB2_LIMB64(A1, A0, B1, B0, C1, C0) \ +@@ -914,7 +1017,13 @@ LIMB64_HILO(mpi_limb_t hi, mpi_limb_t lo) + C2.hi, C2.lo, C1.hi, C1.lo, C0.hi, C0.lo) + #endif + +-#if defined(SUB6_LIMB32) ++#if defined(SUB8_LIMB32) ++/* A[0..3] = B[0..3] - C[0..3] */ ++#define SUB4_LIMB64(A3, A2, A1, A0, B3, B2, B1, B0, C3, C2, C1, C0) \ ++ SUB8_LIMB32(A3.hi, A3.lo, A2.hi, A2.lo, A1.hi, A1.lo, A0.hi, A0.lo, \ ++ B3.hi, B3.lo, B2.hi, B2.lo, B1.hi, B1.lo, B0.hi, B0.lo, \ ++ C3.hi, C3.lo, C2.hi, C2.lo, C1.hi, C1.lo, C0.hi, C0.lo) ++#elif defined(SUB6_LIMB32) + /* A[0..3] = B[0..3] - C[0..3] */ + #define SUB4_LIMB64(A3, A2, A1, A0, B3, B2, B1, B0, C3, C2, C1, C0) do { \ + mpi_limb_t __borrow4; \ +@@ -927,6 +1036,28 @@ LIMB64_HILO(mpi_limb_t hi, mpi_limb_t lo) + } while (0) + #endif + ++#if defined(SUB10_LIMB32) ++/* A[0..4] = B[0..4] - C[0..4] */ ++#define SUB5_LIMB64(A4, A3, A2, A1, A0, B4, B3, B2, B1, B0, \ ++ C4, C3, C2, C1, C0) \ ++ SUB10_LIMB32(A4.hi, A4.lo, A3.hi, A3.lo, A2.hi, A2.lo, A1.hi, A1.lo, \ ++ A0.hi, A0.lo, B4.hi, B4.lo, B3.hi, B3.lo, B2.hi, B2.lo, \ ++ B1.hi, B1.lo, B0.hi, B0.lo, C4.hi, C4.lo, C3.hi, C3.lo, \ ++ C2.hi, C2.lo, C1.hi, C1.lo, C0.hi, C0.lo) ++#endif ++ ++#if defined(SUB14_LIMB32) ++/* A[0..6] = B[0..6] - C[0..6] */ ++#define SUB7_LIMB64(A6, A5, A4, A3, A2, A1, A0, B6, B5, B4, B3, B2, B1, B0, \ ++ C6, C5, C4, C3, C2, C1, C0) \ ++ SUB14_LIMB32(A6.hi, A6.lo, A5.hi, A5.lo, A4.hi, A4.lo, A3.hi, A3.lo, \ ++ A2.hi, A2.lo, A1.hi, A1.lo, A0.hi, A0.lo, B6.hi, B6.lo, \ ++ B5.hi, B5.lo, B4.hi, B4.lo, B3.hi, B3.lo, B2.hi, B2.lo, \ ++ B1.hi, B1.lo, B0.hi, B0.lo, C6.hi, C6.lo, C5.hi, C5.lo, \ ++ C4.hi, C4.lo, C3.hi, C3.lo, C2.hi, C2.lo, C1.hi, C1.lo, \ ++ C0.hi, C0.lo) ++#endif ++ + #endif /* BYTES_PER_MPI_LIMB == 4 */ + + +-- +2.30.2 diff --git a/dev-libs/libgcrypt/files/libgcrypt-1.10.3-x86.patch b/dev-libs/libgcrypt/files/libgcrypt-1.10.3-x86.patch new file mode 100644 index 000000000000..51ea0047c4e4 --- /dev/null +++ b/dev-libs/libgcrypt/files/libgcrypt-1.10.3-x86.patch @@ -0,0 +1,94 @@ +https://bugs.gentoo.org/915060 +https://git.gnupg.org/cgi-bin/gitweb.cgi?p=libgcrypt.git;a=commit;h=08b88b4012f7837736b8d29a3689ce3fff2a10c8 + +From 08b88b4012f7837736b8d29a3689ce3fff2a10c8 Mon Sep 17 00:00:00 2001 +From: Jussi Kivilinna <jussi.kivilinna@iki.fi> +Date: Sat, 16 Dec 2023 19:50:23 +0200 +Subject: [PATCH] mpi/ec-nist: fix for -Og build failure on i386 + +* mpi/ec-nist.c (_gcry_mpi_ec_nist256_mod) +(_gcry_mpi_ec_nist384_mod): Load p_mult constant with carry offset +to stack. +-- + +Cherry pick master commit of: + 90097bd2f41c217dc5c666570e5680f432cf92d3 + +Patch fixes compilation error on i386 with -Og optimization level. + +In file included from ../../mpi/ec-nist.c:34: +../../mpi/ec-nist.c: In function '_gcry_mpi_ec_nist256_mod': +../../mpi/ec-inline.h:701:3: error: 'asm' operand has impossible constraints + 701 | __asm__ ("subl %11, %3\n" \ + | ^~~~~~~ +../../mpi/ec-inline.h:894:9: note: in expansion of macro 'SUB4_LIMB32' + 894 | SUB4_LIMB32(A1.hi, A1.lo, A0.hi, A0.lo, \ + | ^~~~~~~~~~~ +../../mpi/ec-inline.h:1009:5: note: in expansion of macro 'SUB2_LIMB64' + 1009 | SUB2_LIMB64(A4, A3, B4, B3, C4, C3); \ + | ^~~~~~~~~~~ +../../mpi/ec-nist.c:474:3: note: in expansion of macro 'SUB5_LIMB64' + 474 | SUB5_LIMB64 (s[4], s[3], s[2], s[1], s[0], + | ^~~~~~~~~~~ + +Appears that in problematic function, too many registers end up being +allocated for addressing and there is not enough register left for +asm input/output (4 registers needed for this block). Problem can be +workaround by reducing needed addressing registers by pushing +`p_mult[carry + ...]` values to stack. On other compiler flag levels +and architectures, compiler should be able to optimize away this +extra copying and have not effect on performance. + +GnuPG-bug-id: T6892 +Signed-off-by: Jussi Kivilinna <jussi.kivilinna@iki.fi> +--- + mpi/ec-nist.c | 23 ++++++++++++++++------- + 1 file changed, 16 insertions(+), 7 deletions(-) + +diff --git a/mpi/ec-nist.c b/mpi/ec-nist.c +index f792405c..559d02d9 100644 +--- a/mpi/ec-nist.c ++++ b/mpi/ec-nist.c +@@ -471,11 +471,15 @@ _gcry_mpi_ec_nist256_mod (gcry_mpi_t w, mpi_ec_t ctx) + + carry = LO32_LIMB64(s[4]); + ++ /* Load values to stack to ease register pressure on i386. */ ++ e[0] = p_mult[carry + 4][0]; ++ e[1] = p_mult[carry + 4][1]; ++ e[2] = p_mult[carry + 4][2]; ++ e[3] = p_mult[carry + 4][3]; ++ e[4] = p_mult[carry + 4][4]; + SUB5_LIMB64 (s[4], s[3], s[2], s[1], s[0], + s[4], s[3], s[2], s[1], s[0], +- p_mult[carry + 4][4], p_mult[carry + 4][3], +- p_mult[carry + 4][2], p_mult[carry + 4][1], +- p_mult[carry + 4][0]); ++ e[4], e[3], e[2], e[1], e[0]); + + /* Add 1*P */ + ADD5_LIMB64 (d[4], d[3], d[2], d[1], d[0], +@@ -749,12 +753,17 @@ _gcry_mpi_ec_nist384_mod (gcry_mpi_t w, mpi_ec_t ctx) + + carry = LO32_LIMB64(s[6]); + ++ /* Load values to stack to ease register pressure on i386. */ ++ x[0] = p_mult[carry + 3][0]; ++ x[1] = p_mult[carry + 3][1]; ++ x[2] = p_mult[carry + 3][2]; ++ x[3] = p_mult[carry + 3][3]; ++ x[4] = p_mult[carry + 3][4]; ++ x[5] = p_mult[carry + 3][5]; ++ x[6] = p_mult[carry + 3][6]; + SUB7_LIMB64 (s[6], s[5], s[4], s[3], s[2], s[1], s[0], + s[6], s[5], s[4], s[3], s[2], s[1], s[0], +- p_mult[carry + 3][6], p_mult[carry + 3][5], +- p_mult[carry + 3][4], p_mult[carry + 3][3], +- p_mult[carry + 3][2], p_mult[carry + 3][1], +- p_mult[carry + 3][0]); ++ x[6], x[5], x[4], x[3], x[2], x[1], x[0]); + + ADD7_LIMB64 (d[6], d[5], d[4], d[3], d[2], d[1], d[0], + s[6], s[5], s[4], s[3], s[2], s[1], s[0], +-- +2.30.2 diff --git a/dev-libs/libgcrypt/files/libgcrypt-1.9.4-arm-neon-compile-fix.patch b/dev-libs/libgcrypt/files/libgcrypt-1.9.4-arm-neon-compile-fix.patch deleted file mode 100644 index a42b0e89008a..000000000000 --- a/dev-libs/libgcrypt/files/libgcrypt-1.9.4-arm-neon-compile-fix.patch +++ /dev/null @@ -1,44 +0,0 @@ -https://lists.gnupg.org/pipermail/gcrypt-devel/2022-January/005224.html - -From bc0b82ad8201a4d7bffa3cf0f5504b72c1011cb1 Mon Sep 17 00:00:00 2001 -From: Sam James <sam@gentoo.org> -Date: Tue, 18 Jan 2022 12:44:22 +0000 -Subject: [PATCH] cipher/cipher-gcm: fix build failure on ARM NEON - -'features' is only defined when relevant CPU features are found, but -one of the uses below its definition checked for GCM_USE_ARM_NEON which -wasn't in the guard above it. - -i.e. We used to only define 'features' when: -- GCM_USE_INTEL_PCLMUL -- GCM_USE_ARM_PMULL -- GCM_USE_S390X_CRYPTO -- GCM_USE_PPC_VPMSUM -- GCM_USE_S390X_CRYPTO -- GCM_USE_PPC_VPMSUM -is set. - -We were missing GCM_USE_ARM_NEON so when we check for GCM_USE_ARM_NEON -below, it'd fail as features wasn't defined. - -Bug: https://bugs.gentoo.org/831397 ---- - cipher/cipher-gcm.c | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/cipher/cipher-gcm.c b/cipher/cipher-gcm.c -index a039c5e9..22834f35 100644 ---- a/cipher/cipher-gcm.c -+++ b/cipher/cipher-gcm.c -@@ -583,7 +583,8 @@ static void - setupM (gcry_cipher_hd_t c) - { - #if defined(GCM_USE_INTEL_PCLMUL) || defined(GCM_USE_ARM_PMULL) || \ -- defined(GCM_USE_S390X_CRYPTO) || defined(GCM_USE_PPC_VPMSUM) -+ defined(GCM_USE_ARM_NEON) || defined(GCM_USE_S390X_CRYPTO) || \ -+ defined(GCM_USE_PPC_VPMSUM) - unsigned int features = _gcry_get_hw_features (); - #endif - --- -2.34.1 diff --git a/dev-libs/libgcrypt/libgcrypt-1.10.1-r2.ebuild b/dev-libs/libgcrypt/libgcrypt-1.10.1-r2.ebuild deleted file mode 100644 index 3a7388fc7e25..000000000000 --- a/dev-libs/libgcrypt/libgcrypt-1.10.1-r2.ebuild +++ /dev/null @@ -1,176 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/gnupg.asc -inherit autotools flag-o-matic linux-info multilib-minimal toolchain-funcs verify-sig - -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" -SRC_URI+=" verify-sig? ( mirror://gnupg/${PN}/${P}.tar.bz2.sig )" - -LICENSE="LGPL-2.1+ GPL-2+ MIT" -SLOT="0/20" # subslot = soname major version -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris" -IUSE="+asm cpu_flags_arm_neon cpu_flags_arm_aes cpu_flags_arm_sha1 cpu_flags_arm_sha2 cpu_flags_ppc_altivec cpu_flags_ppc_vsx2 cpu_flags_ppc_vsx3 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 +getentropy static-libs" - -# Build system only has --disable-arm-crypto-support right now -# If changing this, update src_configure logic too. -# ARM CPUs seem to, right now, support all-or-nothing for crypto extensions, -# but this looks like it might change in future. This is just a safety check -# in case people somehow do have a CPU which only supports some. They must -# for now disable them all if that's the case. -REQUIRED_USE=" - cpu_flags_arm_aes? ( cpu_flags_arm_sha1 cpu_flags_arm_sha2 ) - cpu_flags_arm_sha1? ( cpu_flags_arm_aes cpu_flags_arm_sha2 ) - cpu_flags_arm_sha2? ( cpu_flags_arm_aes cpu_flags_arm_sha1 ) - cpu_flags_ppc_vsx3? ( cpu_flags_ppc_altivec cpu_flags_ppc_vsx2 ) - cpu_flags_ppc_vsx2? ( cpu_flags_ppc_altivec ) -" - -RDEPEND=">=dev-libs/libgpg-error-1.25[${MULTILIB_USEDEP}] - getentropy? ( - kernel_linux? ( - elibc_glibc? ( >=sys-libs/glibc-2.25 ) - elibc_musl? ( >=sys-libs/musl-1.1.20 ) - ) - )" -DEPEND="${RDEPEND}" -BDEPEND="doc? ( virtual/texi2dvi ) - verify-sig? ( sec-keys/openpgp-keys-gnupg )" - -PATCHES=( - "${FILESDIR}"/${PN}-multilib-syspath.patch - "${FILESDIR}"/${PN}-powerpc-darwin.patch - "${FILESDIR}"/${PN}-1.10.1-fix-no-asm-hppa.patch - "${FILESDIR}"/${PN}-1.9.4-no-fgrep-libgcrypt-config.patch -) - -MULTILIB_CHOST_TOOLS=( - /usr/bin/libgcrypt-config -) - -pkg_pretend() { - if [[ ${MERGE_TYPE} == buildonly ]]; then - return - fi - if use kernel_linux && use getentropy; then - unset KV_FULL - get_running_version - if [[ -n ${KV_FULL} ]] && kernel_is -lt 3 17; then - eerror "The getentropy function requires the getrandom syscall." - eerror "This was introduced in Linux 3.17." - eerror "Your system is currently running Linux ${KV_FULL}." - eerror "Disable the 'getentropy' USE flag or upgrade your kernel." - die "Kernel is too old for getentropy" - fi - fi -} - -pkg_setup() { - : -} - -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 - - if [[ ${CHOST} == powerpc* ]] ; then - # ./configure does a lot of automagic, prevent that - # generic ppc32+ppc64 altivec - use cpu_flags_ppc_altivec || local -x gcry_cv_cc_ppc_altivec=no - use cpu_flags_ppc_altivec || local -x gcry_cv_cc_ppc_altivec_cflags=no - # power8 vector extension, aka arch 2.07 ISA, also checked below via ppc-crypto-support - use cpu_flags_ppc_vsx2 || local -x gcry_cv_gcc_inline_asm_ppc_altivec=no - # power9 vector extension, aka arch 3.00 ISA - use cpu_flags_ppc_vsx3 || local -x gcry_cv_gcc_inline_asm_ppc_arch_3_00=no - fi - - # Workaround for GCC < 11.3 bug - # https://git.gnupg.org/cgi-bin/gitweb.cgi?p=libgcrypt.git;a=commitdiff;h=0b399721ce9709ae25f9d2050360c5ab2115ae29 - # https://dev.gnupg.org/T5581 - # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102124 - if use arm64 && tc-is-gcc && (($(gcc-major-version) == 11)) && (($(gcc-minor-version) <= 2)) && (($(gcc-micro-version) == 0)) ; then - append-flags -fno-tree-loop-vectorize - fi - - # ideally we want !tc-ld-is-bfd for best future-proofing, but it needs - # https://github.com/gentoo/gentoo/pull/28355 - # mold needs this too but right now tc-ld-is-mold is also not available - if tc-ld-is-lld; then - append-ldflags -Wl,--undefined-version - fi - - local myeconfargs=( - CC_FOR_BUILD="$(tc-getBUILD_CC)" - - --enable-noexecstack - $(use_enable cpu_flags_arm_neon neon-support) - # See REQUIRED_USE comment above - $(use_enable cpu_flags_arm_aes arm-crypto-support) - $(use_enable cpu_flags_ppc_vsx2 ppc-crypto-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) - - # disabled due to various applications requiring privileges - # after libgcrypt drops them (bug #468616) - --without-capabilities - - # http://trac.videolan.org/vlc/ticket/620 - $([[ ${CHOST} == *86*-darwin* ]] && echo "--disable-asm") - - $(use asm || echo "--disable-asm") - - GPG_ERROR_CONFIG="${ESYSROOT}/usr/bin/${CHOST}-gpg-error-config" - ) - - if use kernel_linux; then - # --enable-random=getentropy requires getentropy/getrandom. - # --enable-random=linux enables legacy code that tries getrandom - # and falls back to reading /dev/random. - myeconfargs+=( --enable-random=$(usex getentropy getentropy linux) ) - fi - - 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_test() { - # t-secmem and t-sexp need mlock which requires extra privileges; nspawn - # at least disallows that by default. - local -x GCRYPT_IN_ASAN_TEST=1 - - default -} - -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/dev-libs/libgcrypt/libgcrypt-1.10.1-r3.ebuild b/dev-libs/libgcrypt/libgcrypt-1.10.1-r3.ebuild deleted file mode 100644 index f1b329ab792a..000000000000 --- a/dev-libs/libgcrypt/libgcrypt-1.10.1-r3.ebuild +++ /dev/null @@ -1,179 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/gnupg.asc -inherit autotools flag-o-matic linux-info multilib-minimal toolchain-funcs verify-sig - -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" -SRC_URI+=" verify-sig? ( mirror://gnupg/${PN}/${P}.tar.bz2.sig )" - -LICENSE="LGPL-2.1+ GPL-2+ MIT" -SLOT="0/20" # subslot = soname major version -KEYWORDS="~alpha amd64 ~arm ~arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris" -IUSE="+asm cpu_flags_arm_neon cpu_flags_arm_aes cpu_flags_arm_sha1 cpu_flags_arm_sha2 cpu_flags_ppc_altivec cpu_flags_ppc_vsx2 cpu_flags_ppc_vsx3 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 +getentropy static-libs" - -# Build system only has --disable-arm-crypto-support right now -# If changing this, update src_configure logic too. -# ARM CPUs seem to, right now, support all-or-nothing for crypto extensions, -# but this looks like it might change in future. This is just a safety check -# in case people somehow do have a CPU which only supports some. They must -# for now disable them all if that's the case. -REQUIRED_USE=" - cpu_flags_arm_aes? ( cpu_flags_arm_sha1 cpu_flags_arm_sha2 ) - cpu_flags_arm_sha1? ( cpu_flags_arm_aes cpu_flags_arm_sha2 ) - cpu_flags_arm_sha2? ( cpu_flags_arm_aes cpu_flags_arm_sha1 ) - cpu_flags_ppc_vsx3? ( cpu_flags_ppc_altivec cpu_flags_ppc_vsx2 ) - cpu_flags_ppc_vsx2? ( cpu_flags_ppc_altivec ) -" - -RDEPEND=">=dev-libs/libgpg-error-1.25[${MULTILIB_USEDEP}] - getentropy? ( - kernel_linux? ( - elibc_glibc? ( >=sys-libs/glibc-2.25 ) - elibc_musl? ( >=sys-libs/musl-1.1.20 ) - ) - )" -DEPEND="${RDEPEND}" -BDEPEND="doc? ( virtual/texi2dvi ) - verify-sig? ( sec-keys/openpgp-keys-gnupg )" - -PATCHES=( - "${FILESDIR}"/${PN}-multilib-syspath.patch - "${FILESDIR}"/${PN}-powerpc-darwin.patch - "${FILESDIR}"/${PN}-1.10.1-fix-no-asm-hppa.patch - "${FILESDIR}"/${PN}-1.9.4-no-fgrep-libgcrypt-config.patch - "${FILESDIR}"/${PN}-1.10.1-configure-clang16.patch - "${FILESDIR}"/libgcrypt-1.10-build-Allow-build-with-Oz.patch -) - -MULTILIB_CHOST_TOOLS=( - /usr/bin/libgcrypt-config -) - -pkg_pretend() { - if [[ ${MERGE_TYPE} == buildonly ]]; then - return - fi - if use kernel_linux && use getentropy; then - unset KV_FULL - get_running_version - if [[ -n ${KV_FULL} ]] && kernel_is -lt 3 17; then - eerror "The getentropy function requires the getrandom syscall." - eerror "This was introduced in Linux 3.17." - eerror "Your system is currently running Linux ${KV_FULL}." - eerror "Disable the 'getentropy' USE flag or upgrade your kernel." - die "Kernel is too old for getentropy" - fi - fi -} - -pkg_setup() { - : -} - -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 - - if [[ ${CHOST} == powerpc* ]] ; then - # ./configure does a lot of automagic, prevent that - # generic ppc32+ppc64 altivec - use cpu_flags_ppc_altivec || local -x gcry_cv_cc_ppc_altivec=no - use cpu_flags_ppc_altivec || local -x gcry_cv_cc_ppc_altivec_cflags=no - # power8 vector extension, aka arch 2.07 ISA, also checked below via ppc-crypto-support - use cpu_flags_ppc_vsx2 || local -x gcry_cv_gcc_inline_asm_ppc_altivec=no - # power9 vector extension, aka arch 3.00 ISA - use cpu_flags_ppc_vsx3 || local -x gcry_cv_gcc_inline_asm_ppc_arch_3_00=no - fi - - # Workaround for GCC < 11.3 bug - # https://git.gnupg.org/cgi-bin/gitweb.cgi?p=libgcrypt.git;a=commitdiff;h=0b399721ce9709ae25f9d2050360c5ab2115ae29 - # https://dev.gnupg.org/T5581 - # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102124 - if use arm64 && tc-is-gcc && (($(gcc-major-version) == 11)) && - (($(gcc-minor-version) <= 2)) && (($(gcc-micro-version) == 0)) ; then - append-flags -fno-tree-loop-vectorize - fi - - # ideally we want !tc-ld-is-bfd for best future-proofing, but it needs - # https://github.com/gentoo/gentoo/pull/28355 - # mold needs this too but right now tc-ld-is-mold is also not available - if tc-ld-is-lld; then - append-ldflags -Wl,--undefined-version - fi - - local myeconfargs=( - CC_FOR_BUILD="$(tc-getBUILD_CC)" - - --enable-noexecstack - $(use_enable cpu_flags_arm_neon neon-support) - # See REQUIRED_USE comment above - $(use_enable cpu_flags_arm_aes arm-crypto-support) - $(use_enable cpu_flags_ppc_vsx2 ppc-crypto-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) - - # disabled due to various applications requiring privileges - # after libgcrypt drops them (bug #468616) - --without-capabilities - - # http://trac.videolan.org/vlc/ticket/620 - $([[ ${CHOST} == *86*-darwin* ]] && echo "--disable-asm") - - $(use asm || echo "--disable-asm") - - GPG_ERROR_CONFIG="${ESYSROOT}/usr/bin/${CHOST}-gpg-error-config" - ) - - if use kernel_linux; then - # --enable-random=getentropy requires getentropy/getrandom. - # --enable-random=linux enables legacy code that tries getrandom - # and falls back to reading /dev/random. - myeconfargs+=( --enable-random=$(usex getentropy getentropy linux) ) - fi - - 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_test() { - # t-secmem and t-sexp need mlock which requires extra privileges; nspawn - # at least disallows that by default. - local -x GCRYPT_IN_ASAN_TEST=1 - - default -} - -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/dev-libs/libgcrypt/libgcrypt-1.10.3.ebuild b/dev-libs/libgcrypt/libgcrypt-1.10.3-r2.ebuild index 38219a2d1a3b..bbb0d0fd009b 100644 --- a/dev-libs/libgcrypt/libgcrypt-1.10.3.ebuild +++ b/dev-libs/libgcrypt/libgcrypt-1.10.3-r2.ebuild @@ -49,6 +49,9 @@ PATCHES=( "${FILESDIR}"/${PN}-multilib-syspath.patch "${FILESDIR}"/${PN}-powerpc-darwin.patch "${FILESDIR}"/${PN}-1.9.4-no-fgrep-libgcrypt-config.patch + "${FILESDIR}"/${PN}-1.10.3-x86.patch + "${FILESDIR}"/${PN}-1.10.3-x86-refactor.patch + "${FILESDIR}"/${PN}-1.10.3-hppa.patch ) MULTILIB_CHOST_TOOLS=( @@ -109,12 +112,7 @@ multilib_src_configure() { append-flags -fno-tree-loop-vectorize fi - # ideally we want !tc-ld-is-bfd for best future-proofing, but it needs - # https://github.com/gentoo/gentoo/pull/28355 - # mold needs this too but right now tc-ld-is-mold is also not available - if tc-ld-is-lld; then - append-ldflags -Wl,--undefined-version - fi + append-ldflags $(test-flags-CCLD -Wl,--undefined-version) local myeconfargs=( CC_FOR_BUILD="$(tc-getBUILD_CC)" diff --git a/dev-libs/libgcrypt/libgcrypt-1.9.4-r2.ebuild b/dev-libs/libgcrypt/libgcrypt-1.9.4-r2.ebuild deleted file mode 100644 index 18c1f9495d87..000000000000 --- a/dev-libs/libgcrypt/libgcrypt-1.9.4-r2.ebuild +++ /dev/null @@ -1,142 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/gnupg.asc -inherit autotools flag-o-matic multilib-minimal toolchain-funcs verify-sig - -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" -SRC_URI+=" verify-sig? ( mirror://gnupg/${PN}/${P}.tar.bz2.sig )" - -LICENSE="LGPL-2.1+ GPL-2+ 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 ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" -IUSE="+asm cpu_flags_arm_neon cpu_flags_arm_aes cpu_flags_arm_sha1 cpu_flags_arm_sha2 cpu_flags_ppc_altivec cpu_flags_ppc_vsx2 cpu_flags_ppc_vsx3 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 static-libs" - -# Build system only has --disable-arm-crypto-support right now -# If changing this, update src_configure logic too. -# ARM CPUs seem to, right now, support all-or-nothing for crypto extensions, -# but this looks like it might change in future. This is just a safety check -# in case people somehow do have a CPU which only supports some. They must -# for now disable them all if that's the case. -REQUIRED_USE=" - cpu_flags_arm_aes? ( cpu_flags_arm_sha1 cpu_flags_arm_sha2 ) - cpu_flags_arm_sha1? ( cpu_flags_arm_aes cpu_flags_arm_sha2 ) - cpu_flags_arm_sha2? ( cpu_flags_arm_aes cpu_flags_arm_sha1 ) - cpu_flags_ppc_vsx3? ( cpu_flags_ppc_altivec cpu_flags_ppc_vsx2 ) - cpu_flags_ppc_vsx2? ( cpu_flags_ppc_altivec ) -" - -RDEPEND=">=dev-libs/libgpg-error-1.25[${MULTILIB_USEDEP}]" -DEPEND="${RDEPEND}" -BDEPEND="doc? ( virtual/texi2dvi ) - verify-sig? ( sec-keys/openpgp-keys-gnupg )" - -PATCHES=( - "${FILESDIR}"/${PN}-multilib-syspath.patch - "${FILESDIR}"/${PN}-powerpc-darwin.patch - "${FILESDIR}"/${PN}-1.9.4-arm-neon-compile-fix.patch - "${FILESDIR}"/${PN}-1.9.4-no-fgrep-libgcrypt-config.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 - - if [[ ${CHOST} == powerpc* ]] ; then - # ./configure does a lot of automagic, prevent that - # generic ppc32+ppc64 altivec - use cpu_flags_ppc_altivec || local -x gcry_cv_cc_ppc_altivec=no - use cpu_flags_ppc_altivec || local -x gcry_cv_cc_ppc_altivec_cflags=no - # power8 vector extension, aka arch 2.07 ISA, also checked below via ppc-crypto-support - use cpu_flags_ppc_vsx2 || local -x gcry_cv_gcc_inline_asm_ppc_altivec=no - # power9 vector extension, aka arch 3.00 ISA - use cpu_flags_ppc_vsx3 || local -x gcry_cv_gcc_inline_asm_ppc_arch_3_00=no - fi - - # Workaround for GCC < 11.3 bug - # https://git.gnupg.org/cgi-bin/gitweb.cgi?p=libgcrypt.git;a=commitdiff;h=0b399721ce9709ae25f9d2050360c5ab2115ae29 - # https://dev.gnupg.org/T5581 - # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102124 - if use arm64 && tc-is-gcc && (($(gcc-major-version) == 11)) && (($(gcc-minor-version) <= 2)) && (($(gcc-micro-version) == 0)) ; then - append-flags -fno-tree-loop-vectorize - fi - - # ideally we want !tc-ld-is-bfd for best future-proofing, but it needs - # https://github.com/gentoo/gentoo/pull/28355 - # mold needs this too but right now tc-ld-is-mold is also not available - if tc-ld-is-lld; then - append-ldflags -Wl,--undefined-version - fi - - local myeconfargs=( - CC_FOR_BUILD="$(tc-getBUILD_CC)" - - --enable-noexecstack - $(use_enable cpu_flags_arm_neon neon-support) - # See REQUIRED_USE comment above - $(use_enable cpu_flags_arm_aes arm-crypto-support) - $(use_enable cpu_flags_ppc_vsx2 ppc-crypto-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) - - # disabled due to various applications requiring privileges - # after libgcrypt drops them (bug #468616) - --without-capabilities - - # http://trac.videolan.org/vlc/ticket/620 - $([[ ${CHOST} == *86*-darwin* ]] && 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_test() { - # t-secmem and t-sexp need mlock which requires extra privileges; nspawn - # at least disallows that by default. - local -x GCRYPT_IN_ASAN_TEST=1 - - default -} - -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/dev-libs/libgnt/Manifest b/dev-libs/libgnt/Manifest index c2a612da9002..bc0bf4ca21d5 100644 --- a/dev-libs/libgnt/Manifest +++ b/dev-libs/libgnt/Manifest @@ -3,5 +3,5 @@ AUX libgnt-2.14.0-tinfo.patch 567 BLAKE2B 7d9b1c0b520a3f2c3d74d6659a503f554c5b78 DIST libgnt-2.14.2.tar.xz 106128 BLAKE2B d3db0ba3a297c14f32cc49b4e5b3392f47031e9406d862520a2f014f4d4e93c13e2ba5a2d61df81637f9dd7961d64ba69b393ee5b3cfebd7eb2768e3f16f29d0 SHA512 17b39e132b44b23486d7d39fa02761997a28abf53f67bf71bbad86d35124e5deb0363d670b2fb5ac99d47256282b0ef6ad1886e12984c868bb0d13ea7ba7d860 DIST libgnt-2.14.3.tar.xz 106388 BLAKE2B bba785c998e53c75ed9c3b0b4ad1d96d63628a6e2b0ac7abec76a671ddfc0284fd787cd6793433aef83e6b31c6efecce0c656e131ca9b8bf548486de1010e1f9 SHA512 7131834cfe585177865bebf26167de08a04fced3da4e9a072d9b09b3becd1194914757b1a1fc8f129ae6c8fefe3ec1ce0d80d6c50cb624a5698b66ee2e06c6c8 EBUILD libgnt-2.14.2.ebuild 779 BLAKE2B 4276e180412105d5a1efb42d90e63f53005314233b3eff2d080c9055d057377a0e8a151b536e4b9ca76c53e0cfdfbba79dd6372f5eaa8d35bd115a1fa86926b7 SHA512 9607b64bc4070f2817a9dab608af514bdd0bdb6fc9d338178aaf5d482b0b4c61835e8e9c71f9c60ba089c3576860d0a4cde8f12b537c7d0f020a1dcc721b52fe -EBUILD libgnt-2.14.3.ebuild 756 BLAKE2B a8ea75488288c0b80cc4ed845e0702f24280ad86a9cc5f035883464b10d2f4c7bf33cd4819683babf4c51f8fc31b59108c5dae0bbb788b42a4c5b87550606792 SHA512 cb964796b12504cbef842585523245b66f739fccaa5639760fac5f471d711db486e1aa55b9f83cb2d944e6d21d6f9dd00b12a656b53692c94929650657eddf28 +EBUILD libgnt-2.14.3.ebuild 914 BLAKE2B 3c69bd25a697d3fdae3c863ce873f9b83b177d1d285a03c0f945e4ab9a13be8d225d03ae6ede9bf7e6d1803cadc9bc50ec65cebbb861109ee4c580afb47b7efe SHA512 f1bc04f80374e8bb4d97e76f28d267c4f028d26d26fd4d0752e780f7c7e35735582d1976c423b63058ce331276360fdcc31ef46865a69b61c32e1b2d9c26245e MISC metadata.xml 244 BLAKE2B 712aad52336f293671d3f59fd0a8f82b2e1490ece1c499fe2eb163895ba6fd9af4268c23d396de8ee4420139e3b33af18702a1ecaba5ce89e177e2f4bbb0c156 SHA512 63917f78ba2986f9ad72fbd373903d41876d6399e68f4142561dd39f41b82be610937c005579a76ac25e19ec10fb6a4c297e796bfb4ab839e073f68bdf2bfda2 diff --git a/dev-libs/libgnt/libgnt-2.14.3.ebuild b/dev-libs/libgnt/libgnt-2.14.3.ebuild index e69ee9d06634..04d2ce3f3f6b 100644 --- a/dev-libs/libgnt/libgnt-2.14.3.ebuild +++ b/dev-libs/libgnt/libgnt-2.14.3.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -inherit meson +inherit flag-o-matic meson DESCRIPTION="Pidgin's GLib Ncurses Toolkit" HOMEPAGE="https://keep.imfreedom.org/libgnt/libgnt" @@ -32,6 +32,11 @@ PATCHES=( ) src_configure() { + # -Werror=lto-type-mismatch + # https://bugs.gentoo.org/855872 + # https://issues.imfreedom.org/issue/LIBGNT-19/Build-fails-with-LTO + filter-lto + local emesonargs=( -Dpython2=false $(meson_use doc) diff --git a/dev-libs/libgpg-error/Manifest b/dev-libs/libgpg-error/Manifest index 3ee694a5d8d2..85c3c27d211d 100644 --- a/dev-libs/libgpg-error/Manifest +++ b/dev-libs/libgpg-error/Manifest @@ -5,6 +5,5 @@ DIST libgpg-error-1.47.tar.bz2.sig 119 BLAKE2B d23ea6c38621407c8f9f0c6bde71abd0e DIST libgpg-error-1.48.tar.bz2 1080417 BLAKE2B 4ced63058586558f4d001bcc468f4bd419b8ec29fbd7dbcaa1a21f959d847c9e12c10c548a0038fd4eac0bdfc9907b61e9f6be71c95fc61c964c649e2415dfd7 SHA512 3e9ea99cfb7d706791eb3349a9356b6bc44a53ef8bfa9a4e89afb5203dad5af3f466a039a1764361c0c7f697a6fa668a21d05ceaeb8e44ec5a11d6468998adf2 DIST libgpg-error-1.48.tar.bz2.sig 119 BLAKE2B 36e74c520df1740d48630584cb7093413c7974157038dd0e732cb821d6e3b3386a331be9e94a7f19ea10256bd2902d778d52fe1eeab68065ef9dc2625ac2902c SHA512 302091beddab877acf4355f913fae4bd0a795f0a032f47e0e17c58fe1049833116a743d3470669cff59eab2f6d184b143689763cbb4d0f2f9bcab598e09dc12c EBUILD libgpg-error-1.47-r1.ebuild 2597 BLAKE2B d3bc8c927d3ddd8d4723f92602364e970a1ab6eb033b0640a2363ba367ba60a07ba559c57c8a298a03d6dcad05ba58dd8ea8d4d73a3108010623af1f2468c155 SHA512 70d59e48d08fe6ec6ce74ea59d64cd796fbac232f1b0f7bc6317bfd7828587c4970e0b33cb47e883287682d3885b2703334d9a7efff75de73d6e5e72a6cfba64 -EBUILD libgpg-error-1.47.ebuild 2576 BLAKE2B d933d3ea2d40318edaa34b64b28d41a1987a460d1427350cf4935e3707b0d38d0e32af11bea79aa05aabc3431b9e36ef293326f5ba0dbc06916cf21cd8648d0a SHA512 d0b11c90329c6806651ffc8b2b16001b6f344e7caaa4996bebcccb6b85aee68bb9a8a6e99fb0d2867da71f2e965126c572e0a54e9419b855a883d4633424df2c EBUILD libgpg-error-1.48.ebuild 2598 BLAKE2B 3aae6c8355d0f32c1c917c0e10f1acfd0d813658613a0eaef1f71199f7189983eb862e21a90ef97e89a938b5b6b6f9677fcc8db828d558656c4f112fcc1bef46 SHA512 76bbe714caf1eb69d2a134a986d394cde75eadf874857a0f6a8b280607cf86d32767a24c0127df315317f23b0efdc449dfb58d487a7aa0252e2965182c1c3dc6 MISC metadata.xml 420 BLAKE2B 0b469c533336497584faf0c8a5531c54dd242817d46fb78f1369997b77ec3ea49da3a0ae869488c17639fdee26bc4dee94fb20605db6fa8f6f3dbaeab77d3072 SHA512 22259311b2c83f7b63e859a7196a3fd586c85afbd777327d9a6172a359500160807866b74051836717c42145ed0e289152fb0a374a05bcc7e982d4df3e94b305 diff --git a/dev-libs/libgpg-error/libgpg-error-1.47.ebuild b/dev-libs/libgpg-error/libgpg-error-1.47.ebuild deleted file mode 100644 index 16e9fc190261..000000000000 --- a/dev-libs/libgpg-error/libgpg-error-1.47.ebuild +++ /dev/null @@ -1,86 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# Maintainers should: -# 1. Join the "Gentoo" project at https://dev.gnupg.org/project/view/27/ -# 2. Subscribe to release tasks like https://dev.gnupg.org/T6159 -# (find the one for the current release then subscribe to it + -# any subsequent ones linked within so you're covered for a while.) - -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/gnupg.asc -inherit autotools multilib-minimal toolchain-funcs prefix verify-sig - -DESCRIPTION="Contains error handling functions used by GnuPG software" -HOMEPAGE="https://www.gnupg.org/related_software/libgpg-error" -SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2" -SRC_URI+=" verify-sig? ( mirror://gnupg/${PN}/${P}.tar.bz2.sig )" - -LICENSE="GPL-2 LGPL-2.1" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" -IUSE="common-lisp nls static-libs test" -RESTRICT="!test? ( test )" - -RDEPEND="nls? ( >=virtual/libintl-0-r1[${MULTILIB_USEDEP}] )" -DEPEND="${RDEPEND}" -BDEPEND=" - nls? ( sys-devel/gettext ) - verify-sig? ( sec-keys/openpgp-keys-gnupg ) -" - -MULTILIB_WRAPPED_HEADERS=( - /usr/include/gpg-error.h - /usr/include/gpgrt.h -) - -MULTILIB_CHOST_TOOLS=( - /usr/bin/gpg-error-config - /usr/bin/gpgrt-config -) - -PATCHES=( - "${FILESDIR}/${PN}-1.44-remove_broken_check.patch" -) - -src_prepare() { - default - - if use prefix ; then - # don't hardcode /usr/xpg4/bin/sh as shell on Solaris - sed -i -e 's/solaris\*/disabled/' configure.ac || die - fi - - # only necessary for as long as we run eautoreconf, configure.ac - # uses ./autogen.sh to generate PACKAGE_VERSION, but autogen.sh is - # not a pure /bin/sh script, so it fails on some hosts - hprefixify -w 1 autogen.sh - eautoreconf -} - -multilib_src_configure() { - local myeconfargs=( - $(multilib_is_native_abi || echo --disable-languages) - $(use_enable common-lisp languages) - $(use_enable nls) - # required for sys-power/suspend[crypt], bug 751568 - $(use_enable static-libs static) - $(use_enable test tests) - - # See bug #699206 and its duplicates wrt gpgme-config - # Upstream no longer install this by default and we should - # seek to disable it at some point. - --enable-install-gpg-error-config - - --enable-threads - CC_FOR_BUILD="$(tc-getBUILD_CC)" - $("${S}/configure" --help | grep -o -- '--without-.*-prefix') - ) - ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" -} - -multilib_src_install_all() { - einstalldocs - find "${ED}" -type f -name '*.la' -delete || die -} diff --git a/dev-libs/libksba/Manifest b/dev-libs/libksba/Manifest index 08e5f01739e7..5bc0c2e18cc3 100644 --- a/dev-libs/libksba/Manifest +++ b/dev-libs/libksba/Manifest @@ -4,5 +4,5 @@ DIST libksba-1.6.5.tar.bz2.sig 119 BLAKE2B 70f290ed44160af2882b5f2543965e3003dd0 DIST libksba-1.6.6.tar.bz2 708510 BLAKE2B 9985b16e946d6b407b5acbf005610cfb2f01d2a733ddff110e329dec8d95bd248cce6e9936d441676a4b06f031cc9122e26146a0f6d36cb343fb9ec16aef3627 SHA512 3b30bef9452ae0c52b4a52e9145fbd6dc57cf7a2b59302e3af063db6b45384e8ed7af62604efd7939b9e0cb5931e946b15609888e9699fafe4acbb0cbf138087 DIST libksba-1.6.6.tar.bz2.sig 119 BLAKE2B ec4b72d612bb20c280316de7a66ffe697c65caf52e451621b42965d7d5b3e53577fc5b9c41ad5f5c09e42d90654d82afad8462f0baaf757e122fffedcd35d4ce SHA512 5ab4f890819ee3638660fa2ce529223e1798da53508d0cc2db5a9f0b21a242863037f5e81cdf2805e6cafb56e22412005f01cbe7b6344f3eb1a38f7cff98520d EBUILD libksba-1.6.5.ebuild 1791 BLAKE2B 659dfdcfcecec6995d35a6c58bc533a9bb09d861af4229ec79a55dac105bbac2d6b014c9606d504a0b19088b874a23e806a9e5947cb970b46eeb0cf357daa7e6 SHA512 7e73050f51512559b044a3953aa0f35064b107d8acc14a6f9ffc7e3addd3f71103b1ba1f6f1fd75edb46415a14b6640cbf4c9ba60db317be5a0ffbb820443a95 -EBUILD libksba-1.6.6.ebuild 1799 BLAKE2B bf9b1c5fcf779ce86824063cb950ba0d33ec231bafbe14655b2b30e1e6eca7586d97b4bfdabc12dfd4cf74da469d1fd82933aca5376cf2ffe285090891312e6d SHA512 3e4f4527569e861e9028782106760b49feea43b1b478e1fa5d76e45ebc4badf08cd89175d28fdb7c0f3b03bfdb3cd6de324a054ceb7fbc865d61c0c73cc6536f +EBUILD libksba-1.6.6.ebuild 1792 BLAKE2B 68e4169eed5c4810a67f779fc28e205cbd8e3883013a763b6ce2999e78ba3589b07079d80ff46be1fedaa284acb17dbd7549791062a04132cbb1b065ed6fdc9d SHA512 13017155c851b703b9a422640421665a07fe953d1de8f6134a7a592b045c044defd88a1ec06b5ad52f7e7777a178699d928475d55bcbf7998ae40866596c0b07 MISC metadata.xml 258 BLAKE2B b3ebb9691cf2c860b26172c2fc7ead843959a83806b7c06f4eec2ea349a6d2f39afe2f4b08c09bc7f65d18bece520b8b6306c8c7c2075d653f04b09af43db8fd SHA512 02ab38ca1547c68e87cbcad1dd4bb121e90d1fcca941cbfd29583ea803ed50617aa6a29df11915af5e95d63fc817df2250c7b8189157d705ef86e477d6a1685e diff --git a/dev-libs/libksba/libksba-1.6.6.ebuild b/dev-libs/libksba/libksba-1.6.6.ebuild index 6e94bee34900..b02777ead934 100644 --- a/dev-libs/libksba/libksba-1.6.6.ebuild +++ b/dev-libs/libksba/libksba-1.6.6.ebuild @@ -20,7 +20,7 @@ SRC_URI+=" verify-sig? ( mirror://gnupg/${PN}/${P}.tar.bz2.sig )" LICENSE="LGPL-3+ GPL-2+ GPL-3" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" IUSE="static-libs" RDEPEND=">=dev-libs/libgpg-error-1.33" diff --git a/dev-libs/libmix/Manifest b/dev-libs/libmix/Manifest index 9f5226dad248..4946f2f268fd 100644 --- a/dev-libs/libmix/Manifest +++ b/dev-libs/libmix/Manifest @@ -2,5 +2,5 @@ AUX libmix-2.05-fix-pattern.patch 415 BLAKE2B 7a203b13fb8718ceccc8f173c08306bef0 AUX libmix-2.05-gentoo-r1.patch 8328 BLAKE2B 56c32ae2f6d8c69a461c360bc8a2f73d642b9031ab216e296b99a89074883a057ec82cd9470dd145ee97a4d6e20d80ec4aebfead90c6cb4f53418aee9dbf48db SHA512 24043efc6a7ebdee97425e63e97bcd298d0e920604277bdcd176c22e20119cacd6ef33a296df815cd98ae327bd149003e3e34c33f939d96bee71be3bac79bf75 AUX libmix-2.05-libnet.patch 509 BLAKE2B ab9f57a1f49750d32f77095824637a9588dd8234b90cc5fc906c29105c1df0547552488a38d54ffe48755b0a27e8a46b30fc4553ebead19ce2f806ca5006398e SHA512 3c5204728db7fdecadbd3149a4edb544dafadedffa7d8f1afe2e3290a378865f68ac1189eeab7a6e73176bb4af045f4049dfc75417c143a5aad705906c96b498 DIST libmix-205.tgz 79860 BLAKE2B 35f2480c609ed62bb0f277cba38e325cb387acf250d78d6db81dcf83cdc8002be9482d834d14f3e026452b493f4794b0a9ffff42b5ba3cf15b1263fb5ebe59da SHA512 412a1506d15b5ff3fff7f32caf50dca9283c9d667e4bce40a20be45465fcfe72e177159f546d4b8059de94c107faf641d116621ea395bc0ddb91c2a1d77257ec -EBUILD libmix-2.05-r7.ebuild 850 BLAKE2B 014e98420d34bc1eba432cf9be9f81bb9ff0ac198e5cfa9795b182c1c1ee9295461cc2c3e764d4f5aa690af42acc5e6a7853c6097b661689325b14fa399b331a SHA512 bbe23b629500dc68d9f45dba2f1e428bceb00098e582ea1a2f7919d63bc013aa60532f98511edce246477974ce69ba660b807e2e15dc9e6589cb40827644d818 +EBUILD libmix-2.05-r7.ebuild 1033 BLAKE2B b5c8cbfe7489ed4862631444aa2fe4dcccdd78f11dd9ac69ce159023fbf47cfd4e30d334101a4e30f0c8ce461ec573ab8594ff4aa983a8ef308211787eb00e1e SHA512 ce2459d682029faebfb77ea1232f96cef1243921aaf7e6d47cc191693863e3e180a7c1f037cc59d7cbb99aad5b1d2b7a1c2ff65b427e8ca53d0ea91d4fddfb03 MISC metadata.xml 240 BLAKE2B 20c22d2d446cfcd6f2f430f2c444cd6d854d840e5161f595e4f738096d38db01c8cd305870b26623e98d8bbba239260975a53802caf4b678d1fe61a146aa660f SHA512 1af3286c63a60e89c2f87bd060eebb279858f4b21f9daedf4edcacd5906f35ddd6271397806771d6de1853cae1f3ecdd00ee6e05718fd7083ebc039e5cfa4832 diff --git a/dev-libs/libmix/libmix-2.05-r7.ebuild b/dev-libs/libmix/libmix-2.05-r7.ebuild index 5e01c439716b..9e7e51c26590 100644 --- a/dev-libs/libmix/libmix-2.05-r7.ebuild +++ b/dev-libs/libmix/libmix-2.05-r7.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2021 Gentoo Authors +# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 -inherit autotools toolchain-funcs +inherit autotools flag-o-matic toolchain-funcs DESCRIPTION="Programs Crypto/Network/Multipurpose Library" HOMEPAGE="http://mixter.void.ru/" @@ -35,6 +35,12 @@ src_prepare() { } src_configure() { + # -Werror=lto-type-mismatch + # https://bugs.gentoo.org/855875 + # No upstream bug report -- upstream website doesn't resolve and no + # other contact method. + filter-lto + tc-export CC CXX econf \ |