diff options
author | V3n3RiX <venerix@koprulu.sector> | 2022-05-12 16:42:50 +0300 |
---|---|---|
committer | V3n3RiX <venerix@koprulu.sector> | 2022-05-12 16:42:50 +0300 |
commit | 752d6256e5204b958b0ef7905675a940b5e9172f (patch) | |
tree | 330d16e6362a49cbed8875a777fe641a43376cd3 /sys-libs | |
parent | 0c100b7dd2b30e75b799d806df4ef899fd98e1ea (diff) |
gentoo resync : 12.05.2022
Diffstat (limited to 'sys-libs')
143 files changed, 5129 insertions, 4759 deletions
diff --git a/sys-libs/Manifest.gz b/sys-libs/Manifest.gz Binary files differindex b0e1675ff036..8444b17b18bf 100644 --- a/sys-libs/Manifest.gz +++ b/sys-libs/Manifest.gz diff --git a/sys-libs/binutils-libs/Manifest b/sys-libs/binutils-libs/Manifest index 7b52cf85a085..82bdebfb0d87 100644 --- a/sys-libs/binutils-libs/Manifest +++ b/sys-libs/binutils-libs/Manifest @@ -8,10 +8,12 @@ DIST binutils-2.36.1.tar.xz 22772248 BLAKE2B 03fbfbedd6dba2beaa836b1ed254eddd7a5 DIST binutils-2.37_p1-patches-2.tar.xz 31956 BLAKE2B 39c48628d0e2d7f3a8cf11be391b51dc64c7a534a3e64950fd992907c34fa36bebdf95cc5a184dd5b35e134e0c20376b5883abbf96ae57403c55377e615a6790 SHA512 c927aafa8c87e3b68ad28da5a17edf5647591ec26feeb56c743bc6637ffb10832b50ec6fd8442e80e40628b624e31b2f0f0b5f1193e77dc7e5442df0cb8cc8f1 DIST binutils-2.37_p1.tar.xz 22992196 BLAKE2B a8aa0f386d03a5b1466166ac7c40989c228351ccf0949a9b462b4d4615d70ab7e1a45351299140a42baf39c317b8007733c253eb547ee1dfadb612addde11621 SHA512 46c297ec2a7a5b81d1c6e3f16486a6dc2860a07520fe2dd8871d1eb5160065bbe2cc6b0415d5352bf12284133e5817a4e429e6077182d615e969bd1a8f52ed28 DIST binutils-2.38-patches-3.tar.xz 189068 BLAKE2B 5b14c90ab7dba253e92ad57b3a702fcbf48739dd0121ce8f739d88331da820ce44c35e16ac4bee394525c3a46bce980e9e1bbf4cbc9ce8a14fc324bc8fa059e7 SHA512 099266a8ef4272fd7f7552071e1892d114ed564a38b700df32e058ed691c6bfcd6f2454f649461f9c36594ea819a35d1e4cd2418609a2407be2a4f8885e500e3 +DIST binutils-2.38-patches-4.tar.xz 193852 BLAKE2B 5a83e20008e58464ed563a6817a367e50684c59d08c47345cc546054269c42463d1651441720f865851e4e182e917df1a095c68e64226e0351b64e975d524096 SHA512 6657e547bb02898632cc45a8f1894be098aa7472b6725b65f95393e621abb127e468b4e50310720bf03f7e8d0a68bc2c47af76fc43aaa8f32b2e4a149c0c6290 DIST binutils-2.38.tar.xz 23651408 BLAKE2B 19ede396ec97b88e632aded2f69f4684cc5053109e06c3c4a1934944e3f0ceaa9e4a2604528a440189771f778cb5d75edd510163970eeea31afba87fa256feba SHA512 8bf0b0d193c9c010e0518ee2b2e5a830898af206510992483b427477ed178396cd210235e85fd7bd99a96fc6d5eedbeccbd48317a10f752b7336ada8b2bb826d EBUILD binutils-libs-2.34-r2.ebuild 3678 BLAKE2B 2ecd619f2dd9968a11a3c8c2cf8f65d30d7191163bc6fd5ae1fc7d6dfad4bb30b061e5029fc7d2a23c1b7d0a4ca142532b8175b593d9d0ac408338c39cc02e60 SHA512 3ae489fa333ea206ce758f102a56ebbde7a59fa817720503eb1287c4d1d156598cbe7bc78beb2f0ab85f6f60c32f753d4c66cb0428dcbeb13d873407a4c86335 EBUILD binutils-libs-2.35.2.ebuild 4100 BLAKE2B 521acb4f160e171efd6500aba598825f50c19b62f77689b208dcca260396aa1a2c769937db49b147a51e7645baa1fd72f13559fa15e5fced7c8bd57088575027 SHA512 628c171049d6fae374538a96ad7cc76463d78e562d16fbd5877ab7b0800b026e9c72f3b346ec2e3e92a9c5836c483e0eec226c5ac2ecc8e71c2c66c6c8c5b844 EBUILD binutils-libs-2.36.1-r2.ebuild 4053 BLAKE2B 1d2c9609ce0fa3aff3222d89ee237ba73d31515bb0032ffd8d6b6a9a04060aec1df32cb727572a0a20b9ba64834dc43c2260f3401703cb711d0d5516e136a3d1 SHA512 e355a34921f4a260f2f61a222365703b1afc103fc993e255801a8c2deec42409ba1aec8a22d734c38a4440c385b29f81eac52c4584431ee54d0cf0cfe611ff6c EBUILD binutils-libs-2.37_p1-r2.ebuild 4126 BLAKE2B 63dcef180b378d47d48f714e095ff2ce98dcd027de0d176c64179fcfe1f48df5f451468fb974176ade21914f4ba731487b91b03223eba11662be17cb3b42c9c1 SHA512 c659774de8238e81669507dfd5b2a565b5deaa8c54fe12ee02f5b3b204a147b2aea5bb9a6707930d0ac3ca10225ce486f294e510402b37c99ee1f6c170c31ecc EBUILD binutils-libs-2.38-r1.ebuild 4530 BLAKE2B 6fbf59602ecd890921c795d31d67559da3e36790d1f2976f25a8cfd4a8c644236870cf03e843c82e6ffdd74ba2386d43ee722c7aa5a421058eabbafa3585bc7d SHA512 42253acb4cd37d34c44af701bdd3c7eeba54409601e55ef5267370ff2cd76574046d32ffbf04921b64104df73ccb0a312a282cc4cc7d1d58cfd8d6d89063b951 +EBUILD binutils-libs-2.38-r2.ebuild 4537 BLAKE2B d614a3575bbe8eb281eae46868e38475fd57e57349ca402a3853955683e86a196d24253d72efa819ed5c7b00b56f072f1cf602d654aeada2e67e047a5543da0d SHA512 b4f9362a4daa410c3141026c6e53b685965b62cf54accfb521d33f1deabb923a44a0d779dd673244cd6c9fe59b946868829af487119e53173d67d5cf7aa6f3bc MISC metadata.xml 612 BLAKE2B ceaafd9fd1421e9f3993e003d0029c92a78054c7a2b90bd78afc05370ad19c931c6a7c150545cfb7d57165168e0fdaf3a00dde1905b328826a91cbc70d9548a8 SHA512 c8d33bb8d1c62c7e95758624ed0febbc9d40e9f141bfd280837b3207bcd771412158d71c0cb5548d60be0b236f6fe103621daf7efa8875191982859b566ffa8d diff --git a/sys-libs/binutils-libs/binutils-libs-2.38-r2.ebuild b/sys-libs/binutils-libs/binutils-libs-2.38-r2.ebuild new file mode 100644 index 000000000000..a48951d19c89 --- /dev/null +++ b/sys-libs/binutils-libs/binutils-libs-2.38-r2.ebuild @@ -0,0 +1,144 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PATCH_VER=4 +PATCH_DEV=dilfridge + +inherit libtool toolchain-funcs multilib-minimal + +MY_PN="binutils" +MY_P="${MY_PN}-${PV}" +PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}} +PATCH_DEV=${PATCH_DEV:-dilfridge} + +DESCRIPTION="Core binutils libraries (libbfd, libopcodes, libiberty) for external packages" +HOMEPAGE="https://sourceware.org/binutils/" +SRC_URI="mirror://gnu/binutils/${MY_P}.tar.xz + https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${MY_P}.tar.xz + https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${MY_PN}-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz" + +LICENSE="|| ( GPL-3 LGPL-3 )" +SLOT="0/${PV%_p?}" +IUSE="64-bit-bfd cet multitarget nls static-libs" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" + +BDEPEND="nls? ( sys-devel/gettext )" +DEPEND="sys-libs/zlib[${MULTILIB_USEDEP}]" +# Need a newer binutils-config that'll reset include/lib symlinks for us. +RDEPEND="${DEPEND} + >=sys-devel/binutils-config-5 +" + +S="${WORKDIR}/${MY_P%_p?}" + +MULTILIB_WRAPPED_HEADERS=( + /usr/include/bfd.h +) + +src_prepare() { + if [[ -n ${PATCH_VER} ]] ; then + einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}" + eapply "${WORKDIR}/patch"/*.patch + fi + + # Fix cross-compile relinking issue, bug #626402 + elibtoolize + + if [[ ${CHOST} == *-darwin* ]] ; then + # somehow libtool/configure is messed up and (custom patch at + # upstream?) and misdetects (basically assumes) nm can be called + # with -B arg -- can't run eautoreconf (fails), so patch up + # manually, this would break any target that needs -B to nm + sed -i -e 's/lt_cv_path_NM="$tmp_nm -B"/lt_cv_path_NM="$tmp_nm"/' \ + libctf/configure || die + fi + + default +} + +pkgversion() { + printf "Gentoo ${PVR}" + [[ -n ${PATCHVER} ]] && printf " p${PATCHVER}" +} + +multilib_src_configure() { + local myconf=( + --enable-obsolete + --enable-shared + --enable-threads + # Newer versions (>=2.24) make this an explicit option. #497268 + --enable-install-libiberty + --disable-werror + --with-bugurl="https://bugs.gentoo.org/" + --with-pkgversion="$(pkgversion)" + $(use_enable static-libs static) + # The binutils eclass enables this flag for all bi-arch builds, + # but other tools often don't care about that support. Put it + # beyond a flag if people really want it, but otherwise leave + # it disabled as it can slow things down on 32bit arches. #438522 + $(use_enable 64-bit-bfd) + # This only disables building in the zlib subdir. + # For binutils itself, it'll use the system version. #591516 + --without-zlib + --with-system-zlib + # We only care about the libs, so disable programs. #528088 + --disable-{binutils,etc,ld,gas,gold,gprof} + # Disable modules that are in a combined binutils/gdb tree. #490566 + --disable-{gdb,libdecnumber,readline,sim} + # Strip out broken static link flags. + # https://gcc.gnu.org/PR56750 + --without-stage1-ldflags + # We pull in all USE-flags that change ABI in an incompatible + # way. #666100 + # USE=multitarget change size of global arrays + # USE=64-bit-bfd changes data structures of exported API + --with-extra-soversion-suffix=gentoo-${CATEGORY}-${PN}-$(usex multitarget mt st)-$(usex 64-bit-bfd 64 def) + + # avoid automagic dependency on (currently prefix) systems + # systems with debuginfod library, bug #754753 + --without-debuginfod + + # Allow user to opt into CET for host libraries. + # Ideally we would like automagic-or-disabled here. + # But the check does not quite work on i686: bug #760926. + $(use_enable cet) + ) + + # mips can't do hash-style=gnu ... + if [[ $(tc-arch) != mips ]] ; then + myconf+=( --enable-default-hash-style=gnu ) + fi + + use multitarget && myconf+=( --enable-targets=all --enable-64-bit-bfd ) + + use nls \ + && myconf+=( --without-included-gettext ) \ + || myconf+=( --disable-nls ) + + if [[ ${CHOST} == *-darwin* ]] && use nls ; then + # fix underlinking in opcodes + sed -i -e 's/@SHARED_LDFLAGS@/@SHARED_LDFLAGS@ -lintl/' \ + "${S}"/opcodes/Makefile.in || die + fi + + ECONF_SOURCE=${S} \ + econf "${myconf[@]}" + + # Prevent makeinfo from running as we don't build docs here. + # bug #622652 + sed -i \ + -e '/^MAKEINFO/s:=.*:= true:' \ + Makefile || die +} + +multilib_src_install() { + default + # Provide libiberty.h directly. + dosym libiberty/libiberty.h /usr/include/libiberty.h +} + +multilib_src_install_all() { + use static-libs || find "${ED}"/usr -name '*.la' -delete +} diff --git a/sys-libs/compiler-rt-sanitizers/Manifest b/sys-libs/compiler-rt-sanitizers/Manifest index 971bd4a8f422..3e92711dfcd9 100644 --- a/sys-libs/compiler-rt-sanitizers/Manifest +++ b/sys-libs/compiler-rt-sanitizers/Manifest @@ -1,22 +1,15 @@ -DIST llvm-gentoo-patchset-11.1.0-3.tar.xz 5984 BLAKE2B 89056fb8e82c7a29ae76c643ac631876d51391ffb579324aaf13c7f79e03f6fd8bbcb27d46e57e0f04a702602ebf51c116e82cb092452a1dbc97fb0eb7518f11 SHA512 08aabe8836b62ecfde4e264d567169ba495d5b5915b56aba35ae86992387e534bba6d512fde94056e641abe909b478e47edcbdaa3ee0b94182ecd68c98201441 DIST llvm-gentoo-patchset-12.0.1.tar.xz 5280 BLAKE2B 963d005bc7b636570be90eb841ac5bcaeb927538cc7de27683167111a17d6496677c7517de2ecfaf14b5d8ac22bad357be490b8a2ed9aba502fd5f447ecc99e9 SHA512 fc7c38e671555751650299c3a8bee44d5c7f26e11b68d5538c507fb7fe9ff2d349bdcd43bce90a448a747f082d523b3849d6bcda5e3ae2e998edcb926d6aa249 -DIST llvm-gentoo-patchset-13.0.0-r3.tar.xz 10176 BLAKE2B fc5825a4bd3b85bd9c970901e5e036cc4c928373495a8a6f63c7f4531c7f52575d06f80dfbd80671d9f0fcd32d5c48d96f5961602b024c7a936362aeba8a612a SHA512 2289eef3f6301ade2e1110ebc4b66ad3db91ed10868ca7296a29c55667007e06739b01f38c0783bb2c56deadfb8a04605c370df9c5a4c6bc9aea9382e6ed52a5 -DIST llvm-gentoo-patchset-13.0.0.tar.xz 5012 BLAKE2B 6760c78c086aaf6629143fd920b0a2c68cad9278628fbea8164dfeb59db95984a5b5d6b3505b510c697e8c95bf8d2be782c6b73c01622d52f2da9b07ecff39e0 SHA512 7764d49343b795b6bebae64f646ba27e3e6cc2a20b8a1aee645ce0d8474633c34acfbb73c08546fee415755dd4ea5a98c1d84db5e394cf5f4fc802eb61148ab6 DIST llvm-gentoo-patchset-13.0.1.tar.xz 6288 BLAKE2B 899222b962486e924e4f8a2b574d285531a3f87af9385ff68c81db92aa224a0cde6d4ee049b5405056bedb4b232b50e1d5840024071a4a215f6311853304c92d SHA512 b2805337f1deca626768a44c5e7ac9ed16e0c31bead1647d44a493a8123c1b8e8f1c8ceee3536bcc6fa87fdd3fcec408229f701adf30eff07e7ef9889b847b01 -DIST llvm-gentoo-patchset-14.0.0-r2.tar.xz 7872 BLAKE2B 529986a4be1c876d625b09b0cee7cc22cd0dd883770d7f0ef6aeec79fe2da822bf67a5121602af22722962d54a65352242c3ae643060c778c728ed67917b3470 SHA512 7a7bb329facfe60875d7e4df9da120aaa314ed08ed73f00f953c0e9b235bbe7f68a4d75241e6457407fa795ad1a0fde5ede4ce95dce3b046d44cab20e7be86ac +DIST llvm-gentoo-patchset-14.0.1.tar.xz 4724 BLAKE2B 2689298c687fa8b5fa2545afccc248c00ff6778f1a14e3e7999e5d52a1b0b9c3b2e66e8c008e27c62c6c3c08009dc7d9d083ca53698138258ac972e4ad03c042 SHA512 a9f071ad0a792f558105a64790f9e470d8aaed05bd1baabbe86539760c881f772602a03265e0962d8599f991f7fd44d14a49e2ef9d74bb5eb283f473f4084d32 +DIST llvm-gentoo-patchset-14.0.3.tar.xz 5492 BLAKE2B 48a46d50a81c5572d1573c6923bc404b198f74ee8587a928e0858553dac37f7fa39cc969d72b938ef3d2f04f6872f9e2e2478821ab90c657ecbbacb3f7d99d7a SHA512 b917b549de6d46cd7aab3e59b888b5e5ffb955435b33d6538be2f31dc30217a24740a673cb6bb661087c245121edb079052b179badaf70b86b985ca69b3652a6 DIST llvm-gentoo-patchset-9999-1.tar.xz 4032 BLAKE2B b9413484dafed8ae0c68c2c164b45fd07bb8d5d0898f03abe118fd2120ffcb1fb6c949de9649a97c2e8105f24b9d131a725c67c0a502ca4d4d192c1a0d65f49d SHA512 e64449eeaf756c5bd945109937b84ba4bd8a015222bd792d39cf3947871e87571a4ca57814790e51544cb05ad4c2d1f044e818e4caaac7c2e2a02cb1aa290fcc -DIST llvmorg-11.1.0.tar.gz 122776532 BLAKE2B ca842ff4afff8f44c82b5e7383962a9c45ca1c93b64fa4c6ebcd70a1d3849dbad2b8e4e24fba02d144c6266d7fab3607ebc6999b28c229cb35256cf40f26a985 SHA512 9a8ce022a935eed42fa71a224f2a207122aadcbef58ee855fdb4825f879e7d028e4dcff22c19b9d336db1c8bf63fb84372d44981acf84615f757e54306c92b81 DIST llvmorg-12.0.1.tar.gz 134259748 BLAKE2B f41de787bc73ff2edfda1b22cc8602be6f65f37dd9e4c8888533cfa8c3ccdcf4f108aaab9de23ab0ab987966eb160f2a553a0bdff99461e71ddd5bfcd086090d SHA512 6eb0dc18e2c25935fabfdfc48b0114be0939158dfdef7b85b395fe2e71042672446af0e68750aae003c9847d10d1f63316fe95d3df738d18f249174292b1b9e1 -DIST llvmorg-13.0.0.tar.gz 147270176 BLAKE2B 628f316b580e1edf3a58d4825b724df759e6ed2a4116802470c04562caefc392fa325c91f388036365a2e45a9595cca6d3557fab12984fc8bcfef29c9116d822 SHA512 8004c05d32b9720fb3391783621690c1df9bd1e97e72cbff9192ed88a84b0acd303b61432145fa917b5b5e548c8cee29b24ef8547dcc8677adf4816e7a8a0eb2 DIST llvmorg-13.0.1.tar.gz 147290251 BLAKE2B 2a44b012a672501761d0c27c6b3a315b69bfef0cd13b078a7e7d2fccc4a9c8c0f2bee0f164c4271c9106b0a99cb06e8b64986f66253b613336719fb86b82541b SHA512 9a8cb5d11964ba88b7624f19ec861fb28701f23956ea3c92f6ac644332d5f41fde97bd8933dd3ee70ed378058c252fa3a3887c8d1af90d219970c2b27691166f -DIST llvmorg-14.0.0.tar.gz 158057350 BLAKE2B 7052684c620a5eaf52beeee4591adf58cfec9e64a5ee0b24f3d5849fd4df5b006e2906a839cb806ac69c33fab6013c58589b1d74e4fb8558758edcb7d5065064 SHA512 eb5acf96b5e2c59bd07579f7ebe73018b0dd6e2f2d9a5a3c7986320e88febd837d1084b9e5313a2264310342193044629d228337cc76dd2b8527dc0a8bdda999 DIST llvmorg-14.0.1.tar.gz 158074615 BLAKE2B bf80366461580058494eb101646efcd1a8b55a66818a710c2eb8c649bf88c02fe4552cecf4c1c8637a64e7cee8d644bca31aafc804765ed18f2b5e2975dd6c92 SHA512 0a15aa9cfc978a7b03a1659a2affad65ede66d280f5c12bf0beaaf194cd7bdd57ff438b5f40e64c1e1b88f368de99be349e9d30b544d2bbe4a50f0ebed3307f2 -EBUILD compiler-rt-sanitizers-11.1.0-r1.ebuild 6042 BLAKE2B b2e497920258f581395f794ac977615e42e153ea966fead3a7ce5fbd9c93831ec807f4b711ffc41a1ecb84214e3bd386ffc038b549bc9ade691b7f843a5032a4 SHA512 05092de752ccb3a1832eb834315a63e161b52a7bd4a52ec77b24adeff9611368fe1166bf7bd12b2111e15364a44d2573527111641d97b9e989e593342a4fbc9a +DIST llvmorg-14.0.3.tar.gz 158092596 BLAKE2B ef901df510ec6bc1242595ec330e9c9ee76e696b077d67a8d62b53608c3d18b2f2d7ea3150864e13d9b37a8ce899ebca946ebe72cbc4538700176e20859ddec2 SHA512 511e93fd9b1c414c38fe9e2649679ac0b16cb04f7f7838569d187b04c542a185e364d6db73e96465026e3b2533649eb75ac95507d12514af32b28bdfb66f2646 EBUILD compiler-rt-sanitizers-12.0.1.ebuild 5959 BLAKE2B acfa1240b3ffa450fe5ede50a6d8bc9d32b06bea46da57f82c004fbde8e69693242037f9571bf885f56d16d3ead4711402f1c3a2bf65fb42741ea95b12a1baff SHA512 cf095eeaf547d431d60b11f147e5e8a03e3659a3b56ec98be4af3fdbd4cb3ed16891eb8066187bff27613f0c6a37d30d08725df95419b515f1038087c149ad82 -EBUILD compiler-rt-sanitizers-13.0.0-r1.ebuild 6162 BLAKE2B e9f41c36aa12ed0257e3fa3298a5504e13243c1f73a0c4e425a9660751011f05856d09f72eb6d6c5fe9c901b670173931899858420352bc63627df69feccb975 SHA512 b134ad7badbd4f6540f8d683c5a0b0b583702879465caa16a13ab0f528328d7db92ed214dae6698371671fec582429032b0d7dbcdcefa94721395f4d366de60a -EBUILD compiler-rt-sanitizers-13.0.0.ebuild 6154 BLAKE2B 97eaca6637d5f368d5f21e6640486734d1fb60fca89cc330ab19b7d129c425f8eefabfa225711a624018972b403329434e44e55fd1f69cf148d2b0d642ba08ae SHA512 31c7c45eec392795267f8ca2efa1f2894e183ef4fc5f575fbc531a60ebee3c90c4bb4a551f82a6723a3010ac5196a8c83cbd1b7e49704d9b9cfbe1cc68753cf9 -EBUILD compiler-rt-sanitizers-13.0.1.ebuild 6338 BLAKE2B 426d8ba85088ad30835f1499cb5abc26beb79da37fd3073c6d3f585a468a830545572a311edbeec0c0546572c83ef7881ad9cdc22dfc048892bc652060bca61b SHA512 820b956317798da42f7b43594fb3c1eae482bff3d67e498cea44a3e38b632c1edeb715d4e9057583ecc0416118334880b0c4bcced37290985e158b66404431d2 -EBUILD compiler-rt-sanitizers-14.0.0.ebuild 6351 BLAKE2B 8de9e08840a8322278be3733f6805cbba23f8ae7e8bc21eaaa87a1a30a07e89a5340cdc5114a958d30ff8131b9ae0858bd0de116616eee6093577fbf6ac7ab94 SHA512 447fa87861a95615165248d189c36b41b314087e8e2fcbbf2639bbb6b9979a6472e273be30494ff05ba9f6bef4ca5d78e799494aa1379a7569845005ec366c26 -EBUILD compiler-rt-sanitizers-14.0.1.ebuild 6345 BLAKE2B 67e5d67b909ff0521852023f5406032af9a147ca600a09c99e308471545c00afaca3b281ad12ec97b75ec98f71daab9ef82d63c3f01e2cb982bc854464e16980 SHA512 7bcda533453bffb06d4689f6e52695e6050a10929fba34593bd5c2d71ecc0a9deb56da9d96c0474489ffd7a2669e4a347c4f0d9e27f7f18f4119c530210140d7 -EBUILD compiler-rt-sanitizers-15.0.0.9999.ebuild 6273 BLAKE2B 74cecea17e26529cf75ada6ba68c169d587033de3320ed5ed5f31ae85935cff691e9b025011338b34ea50d1a747f8fe2f3fe25874072cfb328704906d0c298bb SHA512 701c5f5d70c20d7cd1276763d7198438dc53772c2b2713be82a96b05d5ef3797d2866eb94b65b16d2a0e3f842caffe4578c12dc3e775368ebc0d7afc8811be0e +EBUILD compiler-rt-sanitizers-13.0.1.ebuild 6337 BLAKE2B 67f5e39af19ab6e4dccb2989d044a1f148a7e3cafd7134ea7ccdc75481416158613137e3cc7204d32b3c868d00e5047c9d378f09814b8fc1e46ad876d5214423 SHA512 c49b998f5f990103e53253f22f19313e3b8e884818bdc5b651ee976957f8fa10d36ce6146b1db65336c60e4f22f67c435c5841e0f8cea48901724790d3c6738f +EBUILD compiler-rt-sanitizers-14.0.1.ebuild 6348 BLAKE2B b5af3a1463dbd380734be4ac8bfca915433b6211d2c4a4c1d72d78a9fed3ad6019af27acd3ae35ad2b5c08c1c79dc474fcd4ef61081486db7287ebebbb0aefd2 SHA512 2c20d2182c590f03eab7a59861da8ae324446df3d5a4a4d6b23f49ae9090645c494fc9673f43b2648b201ac330dab9fb104823435763713772e1bffd7e46f44b +EBUILD compiler-rt-sanitizers-14.0.3.ebuild 6351 BLAKE2B 635b4e58dcd3469c586bd54327640759fc33ea17e86974fc40cdde02a7df22626e4d9e1a7462076fd9d7511a66f0124daf000e3af3ae0206d8080fbe337e63a5 SHA512 8bc9ac8fa1d2eea753b9de57bd27c66903723f4fefeb35781820f80eb2166de6d336240836dca0557e7df8c934aba8f9275f470d1b8129a8bef7122a092db857 +EBUILD compiler-rt-sanitizers-15.0.0.9999.ebuild 6281 BLAKE2B 1535547da34623ff67d497136d5757a5ff788622e8077fa78c64a388637a27954e0aa39873abfb5f014029bf88d4f0349536a33194d11089137e843cb9fadc9e SHA512 9d79e661e825e3f4670efcbf6efe40c6051ab5100b0fdb2ae4bc761665b8dbcfb795e7147836044d0eb1d57cd9c2eec228004bcb13bc303d919e2d3912c58f7f MISC metadata.xml 1330 BLAKE2B 8381c36fb0ee37358cebacf512ee2a0ff6f2c0fc8e05544d9dc1bb1e11bc53f4196c2ecc6c8eb66c833f266c8d12da2c92a5f0b94cb3404397f925f9ebfc2a72 SHA512 6ea6159eb0929dc9f009ab326295549db329f7594dd5ff82e255238ed1fb17e3e8909079c915c6ae4829bb853666456772d17fa2078a332f6340807d6cd4f20e diff --git a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-11.1.0-r1.ebuild b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-11.1.0-r1.ebuild deleted file mode 100644 index c56dd239fbd5..000000000000 --- a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-11.1.0-r1.ebuild +++ /dev/null @@ -1,204 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python3_{7..9} ) -inherit check-reqs cmake flag-o-matic llvm llvm.org python-any-r1 - -DESCRIPTION="Compiler runtime libraries for clang (sanitizers & xray)" -HOMEPAGE="https://llvm.org/" - -LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" -SLOT="$(ver_cut 1-3)" -KEYWORDS="amd64 arm arm64 ppc64 ~riscv x86 ~amd64-linux ~ppc-macos ~x64-macos" -IUSE="+clang test" -# base targets -IUSE+=" +libfuzzer +profile +xray" -# sanitizer targets, keep in sync with config-ix.cmake -# NB: ubsan, scudo deliberately match two entries -SANITIZER_FLAGS=( - asan dfsan lsan msan hwasan tsan ubsan safestack cfi scudo - shadowcallstack gwp-asan -) -IUSE+=" ${SANITIZER_FLAGS[@]/#/+}" -REQUIRED_USE=" - || ( ${SANITIZER_FLAGS[*]} libfuzzer profile xray ) - test? ( - cfi? ( ubsan ) - gwp-asan? ( scudo ) - )" -RESTRICT="!test? ( test ) !clang? ( test )" - -CLANG_SLOT=${SLOT%%.*} -# llvm-6 for new lit options -DEPEND=" - >=sys-devel/llvm-6 - virtual/libcrypt" -BDEPEND=" - >=dev-util/cmake-3.16 - clang? ( sys-devel/clang ) - elibc_glibc? ( net-libs/libtirpc ) - test? ( - !<sys-apps/sandbox-2.13 - $(python_gen_any_dep ">=dev-python/lit-5[\${PYTHON_USEDEP}]") - =sys-devel/clang-${PV%_*}*:${CLANG_SLOT} - sys-libs/compiler-rt:${SLOT} - ) - ${PYTHON_DEPS}" - -LLVM_COMPONENTS=( compiler-rt ) -LLVM_TEST_COMPONENTS=( llvm/lib/Testing/Support llvm/utils/unittest ) -LLVM_PATCHSET=11.1.0-3 -llvm.org_set_globals - -python_check_deps() { - use test || return 0 - has_version "dev-python/lit[${PYTHON_USEDEP}]" -} - -check_space() { - if use test; then - local CHECKREQS_DISK_BUILD=11G - check-reqs_pkg_pretend - fi -} - -pkg_pretend() { - check_space -} - -pkg_setup() { - check_space - llvm_pkg_setup - python-any-r1_pkg_setup -} - -src_prepare() { - sed -i -e 's:-Werror::' lib/tsan/go/buildgo.sh || die - - local flag - for flag in "${SANITIZER_FLAGS[@]}"; do - if ! use "${flag}"; then - local cmake_flag=${flag/-/_} - sed -i -e "/COMPILER_RT_HAS_${cmake_flag^^}/s:TRUE:FALSE:" \ - cmake/config-ix.cmake || die - fi - done - - # TODO: fix these tests to be skipped upstream - if use asan && ! use profile; then - rm test/asan/TestCases/asan_and_llvm_coverage_test.cpp || die - fi - if use ubsan && ! use cfi; then - > test/cfi/CMakeLists.txt || die - fi - - # broken with new glibc - sed -i -e '/EXPECT_EQ.*ThreadDescriptorSize/d' \ - lib/sanitizer_common/tests/sanitizer_linux_test.cpp || die - - llvm.org_src_prepare -} - -src_configure() { - # pre-set since we need to pass it to cmake - BUILD_DIR=${WORKDIR}/compiler-rt_build - - if use clang; then - local -x CC=${CHOST}-clang - local -x CXX=${CHOST}-clang++ - strip-unsupported-flags - fi - - local flag want_sanitizer=OFF - for flag in "${SANITIZER_FLAGS[@]}"; do - if use "${flag}"; then - want_sanitizer=ON - break - fi - done - - local mycmakeargs=( - -DCOMPILER_RT_INSTALL_PATH="${EPREFIX}/usr/lib/clang/${SLOT}" - # use a build dir structure consistent with install - # this makes it possible to easily deploy test-friendly clang - -DCOMPILER_RT_OUTPUT_DIR="${BUILD_DIR}/lib/clang/${SLOT}" - - -DCOMPILER_RT_INCLUDE_TESTS=$(usex test) - # builtins & crt installed by sys-libs/compiler-rt - -DCOMPILER_RT_BUILD_BUILTINS=OFF - -DCOMPILER_RT_BUILD_CRT=OFF - -DCOMPILER_RT_BUILD_LIBFUZZER=$(usex libfuzzer) - -DCOMPILER_RT_BUILD_PROFILE=$(usex profile) - -DCOMPILER_RT_BUILD_SANITIZERS="${want_sanitizer}" - -DCOMPILER_RT_BUILD_XRAY=$(usex xray) - - -DPython3_EXECUTABLE="${PYTHON}" - ) - if use test; then - mycmakeargs+=( - -DLLVM_MAIN_SRC_DIR="${WORKDIR}/llvm" - -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit" - -DLLVM_LIT_ARGS="$(get_lit_flags)" - - # they are created during src_test() - -DCOMPILER_RT_TEST_COMPILER="${BUILD_DIR}/lib/llvm/${CLANG_SLOT}/bin/clang" - -DCOMPILER_RT_TEST_CXX_COMPILER="${BUILD_DIR}/lib/llvm/${CLANG_SLOT}/bin/clang++" - ) - - # same flags are passed for build & tests, so we need to strip - # them down to a subset supported by clang - CC=${EPREFIX}/usr/lib/llvm/${CLANG_SLOT}/bin/clang \ - CXX=${EPREFIX}/usr/lib/llvm/${CLANG_SLOT}/bin/clang++ \ - strip-unsupported-flags - fi - - if use prefix && [[ "${CHOST}" == *-darwin* ]] ; then - mycmakeargs+=( - # setting -isysroot is disabled with compiler-rt-prefix-paths.patch - # this allows adding arm64 support using SDK in EPREFIX - -DDARWIN_macosx_CACHED_SYSROOT="${EPREFIX}/MacOSX.sdk" - # Set version based on the SDK in EPREFIX - # This disables i386 for SDK >= 10.15 - # Will error if has_use tsan and SDK < 10.12 - -DDARWIN_macosx_OVERRIDE_SDK_VERSION="$(realpath ${EPREFIX}/MacOSX.sdk | sed -e 's/.*MacOSX\(.*\)\.sdk/\1/')" - # Use our libtool instead of looking it up with xcrun - -DCMAKE_LIBTOOL="${EPREFIX}/usr/bin/${CHOST}-libtool" - ) - fi - - cmake_src_configure - - if use test; then - local sys_dir=( "${EPREFIX}"/usr/lib/clang/${SLOT}/lib/* ) - [[ -e ${sys_dir} ]] || die "Unable to find ${sys_dir}" - [[ ${#sys_dir[@]} -eq 1 ]] || die "Non-deterministic compiler-rt install: ${sys_dir[*]}" - - # copy clang over since resource_dir is located relatively to binary - # therefore, we can put our new libraries in it - mkdir -p "${BUILD_DIR}"/lib/{llvm/${CLANG_SLOT}/{bin,$(get_libdir)},clang/${SLOT}/include} || die - cp "${EPREFIX}"/usr/lib/llvm/${CLANG_SLOT}/bin/clang{,++} \ - "${BUILD_DIR}"/lib/llvm/${CLANG_SLOT}/bin/ || die - cp "${EPREFIX}"/usr/lib/clang/${SLOT}/include/*.h \ - "${BUILD_DIR}"/lib/clang/${SLOT}/include/ || die - cp "${sys_dir}"/*builtins*.a \ - "${BUILD_DIR}/lib/clang/${SLOT}/lib/${sys_dir##*/}/" || die - # we also need LLVMgold.so for gold-based tests - if [[ -f ${EPREFIX}/usr/lib/llvm/${CLANG_SLOT}/$(get_libdir)/LLVMgold.so ]]; then - ln -s "${EPREFIX}"/usr/lib/llvm/${CLANG_SLOT}/$(get_libdir)/LLVMgold.so \ - "${BUILD_DIR}"/lib/llvm/${CLANG_SLOT}/$(get_libdir)/ || die - fi - fi -} - -src_test() { - # respect TMPDIR! - local -x LIT_PRESERVES_TMP=1 - # disable sandbox to have it stop clobbering LD_PRELOAD - local -x SANDBOX_ON=0 - # wipe LD_PRELOAD to make ASAN happy - local -x LD_PRELOAD= - - cmake_build check-all -} diff --git a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-13.0.0-r1.ebuild b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-13.0.0-r1.ebuild deleted file mode 100644 index 942810e86916..000000000000 --- a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-13.0.0-r1.ebuild +++ /dev/null @@ -1,207 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python3_{8..10} ) -inherit check-reqs cmake flag-o-matic llvm llvm.org python-any-r1 - -DESCRIPTION="Compiler runtime libraries for clang (sanitizers & xray)" -HOMEPAGE="https://llvm.org/" - -LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" -SLOT="$(ver_cut 1-3)" -KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86 ~amd64-linux ~ppc-macos ~x64-macos" -IUSE="+clang debug test" -# base targets -IUSE+=" +libfuzzer +memprof +orc +profile +xray" -# sanitizer targets, keep in sync with config-ix.cmake -# NB: ubsan, scudo deliberately match two entries -SANITIZER_FLAGS=( - asan dfsan lsan msan hwasan tsan ubsan safestack cfi scudo - shadowcallstack gwp-asan -) -IUSE+=" ${SANITIZER_FLAGS[@]/#/+}" -REQUIRED_USE=" - || ( ${SANITIZER_FLAGS[*]} libfuzzer orc profile xray ) - test? ( - cfi? ( ubsan ) - gwp-asan? ( scudo ) - )" -RESTRICT="!test? ( test ) !clang? ( test )" - -CLANG_SLOT=${SLOT%%.*} -# llvm-6 for new lit options -DEPEND=" - >=sys-devel/llvm-6 - virtual/libcrypt" -BDEPEND=" - >=dev-util/cmake-3.16 - clang? ( sys-devel/clang ) - elibc_glibc? ( net-libs/libtirpc ) - test? ( - !<sys-apps/sandbox-2.13 - $(python_gen_any_dep ">=dev-python/lit-5[\${PYTHON_USEDEP}]") - =sys-devel/clang-${PV%_*}*:${CLANG_SLOT} - sys-libs/compiler-rt:${SLOT} - ) - !test? ( - ${PYTHON_DEPS} - )" - -LLVM_COMPONENTS=( compiler-rt ) -LLVM_TEST_COMPONENTS=( llvm/lib/Testing/Support llvm/utils/unittest ) -LLVM_PATCHSET=${PV/_/-}-r3 -llvm.org_set_globals - -python_check_deps() { - use test || return 0 - has_version "dev-python/lit[${PYTHON_USEDEP}]" -} - -check_space() { - if use test; then - local CHECKREQS_DISK_BUILD=11G - check-reqs_pkg_pretend - fi -} - -pkg_pretend() { - check_space -} - -pkg_setup() { - check_space - llvm_pkg_setup - python-any-r1_pkg_setup -} - -src_prepare() { - sed -i -e 's:-Werror::' lib/tsan/go/buildgo.sh || die - - local flag - for flag in "${SANITIZER_FLAGS[@]}"; do - if ! use "${flag}"; then - local cmake_flag=${flag/-/_} - sed -i -e "/COMPILER_RT_HAS_${cmake_flag^^}/s:TRUE:FALSE:" \ - cmake/config-ix.cmake || die - fi - done - - # TODO: fix these tests to be skipped upstream - if use asan && ! use profile; then - rm test/asan/TestCases/asan_and_llvm_coverage_test.cpp || die - fi - if use ubsan && ! use cfi; then - > test/cfi/CMakeLists.txt || die - fi - - llvm.org_src_prepare -} - -src_configure() { - # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844 - use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG" - - # pre-set since we need to pass it to cmake - BUILD_DIR=${WORKDIR}/compiler-rt_build - - if use clang; then - local -x CC=${CHOST}-clang - local -x CXX=${CHOST}-clang++ - strip-unsupported-flags - fi - - local flag want_sanitizer=OFF - for flag in "${SANITIZER_FLAGS[@]}"; do - if use "${flag}"; then - want_sanitizer=ON - break - fi - done - - local mycmakeargs=( - -DCOMPILER_RT_INSTALL_PATH="${EPREFIX}/usr/lib/clang/${SLOT}" - # use a build dir structure consistent with install - # this makes it possible to easily deploy test-friendly clang - -DCOMPILER_RT_OUTPUT_DIR="${BUILD_DIR}/lib/clang/${SLOT}" - - -DCOMPILER_RT_INCLUDE_TESTS=$(usex test) - # builtins & crt installed by sys-libs/compiler-rt - -DCOMPILER_RT_BUILD_BUILTINS=OFF - -DCOMPILER_RT_BUILD_CRT=OFF - -DCOMPILER_RT_BUILD_LIBFUZZER=$(usex libfuzzer) - -DCOMPILER_RT_BUILD_MEMPROF=$(usex memprof) - -DCOMPILER_RT_BUILD_ORC=$(usex orc) - -DCOMPILER_RT_BUILD_PROFILE=$(usex profile) - -DCOMPILER_RT_BUILD_SANITIZERS="${want_sanitizer}" - -DCOMPILER_RT_BUILD_XRAY=$(usex xray) - - -DPython3_EXECUTABLE="${PYTHON}" - ) - if use test; then - mycmakeargs+=( - -DLLVM_MAIN_SRC_DIR="${WORKDIR}/llvm" - -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit" - -DLLVM_LIT_ARGS="$(get_lit_flags)" - - # they are created during src_test() - -DCOMPILER_RT_TEST_COMPILER="${BUILD_DIR}/lib/llvm/${CLANG_SLOT}/bin/clang" - -DCOMPILER_RT_TEST_CXX_COMPILER="${BUILD_DIR}/lib/llvm/${CLANG_SLOT}/bin/clang++" - ) - - # same flags are passed for build & tests, so we need to strip - # them down to a subset supported by clang - CC=${EPREFIX}/usr/lib/llvm/${CLANG_SLOT}/bin/clang \ - CXX=${EPREFIX}/usr/lib/llvm/${CLANG_SLOT}/bin/clang++ \ - strip-unsupported-flags - fi - - if use prefix && [[ "${CHOST}" == *-darwin* ]] ; then - mycmakeargs+=( - # setting -isysroot is disabled with compiler-rt-prefix-paths.patch - # this allows adding arm64 support using SDK in EPREFIX - -DDARWIN_macosx_CACHED_SYSROOT="${EPREFIX}/MacOSX.sdk" - # Set version based on the SDK in EPREFIX - # This disables i386 for SDK >= 10.15 - # Will error if has_use tsan and SDK < 10.12 - -DDARWIN_macosx_OVERRIDE_SDK_VERSION="$(realpath ${EPREFIX}/MacOSX.sdk | sed -e 's/.*MacOSX\(.*\)\.sdk/\1/')" - # Use our libtool instead of looking it up with xcrun - -DCMAKE_LIBTOOL="${EPREFIX}/usr/bin/${CHOST}-libtool" - ) - fi - - cmake_src_configure - - if use test; then - local sys_dir=( "${EPREFIX}"/usr/lib/clang/${SLOT}/lib/* ) - [[ -e ${sys_dir} ]] || die "Unable to find ${sys_dir}" - [[ ${#sys_dir[@]} -eq 1 ]] || die "Non-deterministic compiler-rt install: ${sys_dir[*]}" - - # copy clang over since resource_dir is located relatively to binary - # therefore, we can put our new libraries in it - mkdir -p "${BUILD_DIR}"/lib/{llvm/${CLANG_SLOT}/{bin,$(get_libdir)},clang/${SLOT}/include} || die - cp "${EPREFIX}"/usr/lib/llvm/${CLANG_SLOT}/bin/clang{,++} \ - "${BUILD_DIR}"/lib/llvm/${CLANG_SLOT}/bin/ || die - cp "${EPREFIX}"/usr/lib/clang/${SLOT}/include/*.h \ - "${BUILD_DIR}"/lib/clang/${SLOT}/include/ || die - cp "${sys_dir}"/*builtins*.a \ - "${BUILD_DIR}/lib/clang/${SLOT}/lib/${sys_dir##*/}/" || die - # we also need LLVMgold.so for gold-based tests - if [[ -f ${EPREFIX}/usr/lib/llvm/${CLANG_SLOT}/$(get_libdir)/LLVMgold.so ]]; then - ln -s "${EPREFIX}"/usr/lib/llvm/${CLANG_SLOT}/$(get_libdir)/LLVMgold.so \ - "${BUILD_DIR}"/lib/llvm/${CLANG_SLOT}/$(get_libdir)/ || die - fi - fi -} - -src_test() { - # respect TMPDIR! - local -x LIT_PRESERVES_TMP=1 - # disable sandbox to have it stop clobbering LD_PRELOAD - local -x SANDBOX_ON=0 - # wipe LD_PRELOAD to make ASAN happy - local -x LD_PRELOAD= - - cmake_build check-all -} diff --git a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-13.0.0.ebuild b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-13.0.0.ebuild deleted file mode 100644 index 0e4e81fde951..000000000000 --- a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-13.0.0.ebuild +++ /dev/null @@ -1,207 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python3_{8..10} ) -inherit check-reqs cmake flag-o-matic llvm llvm.org python-any-r1 - -DESCRIPTION="Compiler runtime libraries for clang (sanitizers & xray)" -HOMEPAGE="https://llvm.org/" - -LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" -SLOT="$(ver_cut 1-3)" -KEYWORDS="amd64 arm arm64 ppc64 ~riscv x86 ~amd64-linux ~ppc-macos ~x64-macos" -IUSE="+clang debug test" -# base targets -IUSE+=" +libfuzzer +memprof +orc +profile +xray" -# sanitizer targets, keep in sync with config-ix.cmake -# NB: ubsan, scudo deliberately match two entries -SANITIZER_FLAGS=( - asan dfsan lsan msan hwasan tsan ubsan safestack cfi scudo - shadowcallstack gwp-asan -) -IUSE+=" ${SANITIZER_FLAGS[@]/#/+}" -REQUIRED_USE=" - || ( ${SANITIZER_FLAGS[*]} libfuzzer orc profile xray ) - test? ( - cfi? ( ubsan ) - gwp-asan? ( scudo ) - )" -RESTRICT="!test? ( test ) !clang? ( test )" - -CLANG_SLOT=${SLOT%%.*} -# llvm-6 for new lit options -DEPEND=" - >=sys-devel/llvm-6 - virtual/libcrypt" -BDEPEND=" - >=dev-util/cmake-3.16 - clang? ( sys-devel/clang ) - elibc_glibc? ( net-libs/libtirpc ) - test? ( - !<sys-apps/sandbox-2.13 - $(python_gen_any_dep ">=dev-python/lit-5[\${PYTHON_USEDEP}]") - =sys-devel/clang-${PV%_*}*:${CLANG_SLOT} - sys-libs/compiler-rt:${SLOT} - ) - !test? ( - ${PYTHON_DEPS} - )" - -LLVM_COMPONENTS=( compiler-rt ) -LLVM_TEST_COMPONENTS=( llvm/lib/Testing/Support llvm/utils/unittest ) -LLVM_PATCHSET=${PV/_/-} -llvm.org_set_globals - -python_check_deps() { - use test || return 0 - has_version "dev-python/lit[${PYTHON_USEDEP}]" -} - -check_space() { - if use test; then - local CHECKREQS_DISK_BUILD=11G - check-reqs_pkg_pretend - fi -} - -pkg_pretend() { - check_space -} - -pkg_setup() { - check_space - llvm_pkg_setup - python-any-r1_pkg_setup -} - -src_prepare() { - sed -i -e 's:-Werror::' lib/tsan/go/buildgo.sh || die - - local flag - for flag in "${SANITIZER_FLAGS[@]}"; do - if ! use "${flag}"; then - local cmake_flag=${flag/-/_} - sed -i -e "/COMPILER_RT_HAS_${cmake_flag^^}/s:TRUE:FALSE:" \ - cmake/config-ix.cmake || die - fi - done - - # TODO: fix these tests to be skipped upstream - if use asan && ! use profile; then - rm test/asan/TestCases/asan_and_llvm_coverage_test.cpp || die - fi - if use ubsan && ! use cfi; then - > test/cfi/CMakeLists.txt || die - fi - - llvm.org_src_prepare -} - -src_configure() { - # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844 - use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG" - - # pre-set since we need to pass it to cmake - BUILD_DIR=${WORKDIR}/compiler-rt_build - - if use clang; then - local -x CC=${CHOST}-clang - local -x CXX=${CHOST}-clang++ - strip-unsupported-flags - fi - - local flag want_sanitizer=OFF - for flag in "${SANITIZER_FLAGS[@]}"; do - if use "${flag}"; then - want_sanitizer=ON - break - fi - done - - local mycmakeargs=( - -DCOMPILER_RT_INSTALL_PATH="${EPREFIX}/usr/lib/clang/${SLOT}" - # use a build dir structure consistent with install - # this makes it possible to easily deploy test-friendly clang - -DCOMPILER_RT_OUTPUT_DIR="${BUILD_DIR}/lib/clang/${SLOT}" - - -DCOMPILER_RT_INCLUDE_TESTS=$(usex test) - # builtins & crt installed by sys-libs/compiler-rt - -DCOMPILER_RT_BUILD_BUILTINS=OFF - -DCOMPILER_RT_BUILD_CRT=OFF - -DCOMPILER_RT_BUILD_LIBFUZZER=$(usex libfuzzer) - -DCOMPILER_RT_BUILD_MEMPROF=$(usex memprof) - -DCOMPILER_RT_BUILD_ORC=$(usex orc) - -DCOMPILER_RT_BUILD_PROFILE=$(usex profile) - -DCOMPILER_RT_BUILD_SANITIZERS="${want_sanitizer}" - -DCOMPILER_RT_BUILD_XRAY=$(usex xray) - - -DPython3_EXECUTABLE="${PYTHON}" - ) - if use test; then - mycmakeargs+=( - -DLLVM_MAIN_SRC_DIR="${WORKDIR}/llvm" - -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit" - -DLLVM_LIT_ARGS="$(get_lit_flags)" - - # they are created during src_test() - -DCOMPILER_RT_TEST_COMPILER="${BUILD_DIR}/lib/llvm/${CLANG_SLOT}/bin/clang" - -DCOMPILER_RT_TEST_CXX_COMPILER="${BUILD_DIR}/lib/llvm/${CLANG_SLOT}/bin/clang++" - ) - - # same flags are passed for build & tests, so we need to strip - # them down to a subset supported by clang - CC=${EPREFIX}/usr/lib/llvm/${CLANG_SLOT}/bin/clang \ - CXX=${EPREFIX}/usr/lib/llvm/${CLANG_SLOT}/bin/clang++ \ - strip-unsupported-flags - fi - - if use prefix && [[ "${CHOST}" == *-darwin* ]] ; then - mycmakeargs+=( - # setting -isysroot is disabled with compiler-rt-prefix-paths.patch - # this allows adding arm64 support using SDK in EPREFIX - -DDARWIN_macosx_CACHED_SYSROOT="${EPREFIX}/MacOSX.sdk" - # Set version based on the SDK in EPREFIX - # This disables i386 for SDK >= 10.15 - # Will error if has_use tsan and SDK < 10.12 - -DDARWIN_macosx_OVERRIDE_SDK_VERSION="$(realpath ${EPREFIX}/MacOSX.sdk | sed -e 's/.*MacOSX\(.*\)\.sdk/\1/')" - # Use our libtool instead of looking it up with xcrun - -DCMAKE_LIBTOOL="${EPREFIX}/usr/bin/${CHOST}-libtool" - ) - fi - - cmake_src_configure - - if use test; then - local sys_dir=( "${EPREFIX}"/usr/lib/clang/${SLOT}/lib/* ) - [[ -e ${sys_dir} ]] || die "Unable to find ${sys_dir}" - [[ ${#sys_dir[@]} -eq 1 ]] || die "Non-deterministic compiler-rt install: ${sys_dir[*]}" - - # copy clang over since resource_dir is located relatively to binary - # therefore, we can put our new libraries in it - mkdir -p "${BUILD_DIR}"/lib/{llvm/${CLANG_SLOT}/{bin,$(get_libdir)},clang/${SLOT}/include} || die - cp "${EPREFIX}"/usr/lib/llvm/${CLANG_SLOT}/bin/clang{,++} \ - "${BUILD_DIR}"/lib/llvm/${CLANG_SLOT}/bin/ || die - cp "${EPREFIX}"/usr/lib/clang/${SLOT}/include/*.h \ - "${BUILD_DIR}"/lib/clang/${SLOT}/include/ || die - cp "${sys_dir}"/*builtins*.a \ - "${BUILD_DIR}/lib/clang/${SLOT}/lib/${sys_dir##*/}/" || die - # we also need LLVMgold.so for gold-based tests - if [[ -f ${EPREFIX}/usr/lib/llvm/${CLANG_SLOT}/$(get_libdir)/LLVMgold.so ]]; then - ln -s "${EPREFIX}"/usr/lib/llvm/${CLANG_SLOT}/$(get_libdir)/LLVMgold.so \ - "${BUILD_DIR}"/lib/llvm/${CLANG_SLOT}/$(get_libdir)/ || die - fi - fi -} - -src_test() { - # respect TMPDIR! - local -x LIT_PRESERVES_TMP=1 - # disable sandbox to have it stop clobbering LD_PRELOAD - local -x SANDBOX_ON=0 - # wipe LD_PRELOAD to make ASAN happy - local -x LD_PRELOAD= - - cmake_build check-all -} diff --git a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-13.0.1.ebuild b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-13.0.1.ebuild index c7695d4eb7b6..9ea0f646dc82 100644 --- a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-13.0.1.ebuild +++ b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-13.0.1.ebuild @@ -11,7 +11,7 @@ HOMEPAGE="https://llvm.org/" LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" SLOT="$(ver_cut 1-3)" -KEYWORDS="amd64 arm arm64 ppc64 ~riscv ~x86 ~amd64-linux ~ppc-macos ~x64-macos" +KEYWORDS="amd64 arm arm64 ppc64 ~riscv x86 ~amd64-linux ~ppc-macos ~x64-macos" IUSE="+abi_x86_32 abi_x86_64 +clang debug test" # base targets IUSE+=" +libfuzzer +memprof +orc +profile +xray" diff --git a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-14.0.1.ebuild b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-14.0.1.ebuild index 49ba4a231b56..b0a36755b564 100644 --- a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-14.0.1.ebuild +++ b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-14.0.1.ebuild @@ -51,7 +51,7 @@ BDEPEND=" LLVM_COMPONENTS=( compiler-rt cmake ) LLVM_TEST_COMPONENTS=( llvm/lib/Testing/Support llvm/utils/unittest ) -LLVM_PATCHSET=9999-1 +LLVM_PATCHSET=${PV/_/-} llvm.org_set_globals python_check_deps() { diff --git a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-14.0.0.ebuild b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-14.0.3.ebuild index 4a0fae4b09bb..433da0366bd7 100644 --- a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-14.0.0.ebuild +++ b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-14.0.3.ebuild @@ -1,7 +1,7 @@ # Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=7 +EAPI=8 PYTHON_COMPAT=( python3_{8..10} ) inherit check-reqs cmake flag-o-matic llvm llvm.org python-any-r1 @@ -27,14 +27,19 @@ REQUIRED_USE=" test? ( cfi? ( ubsan ) gwp-asan? ( scudo ) - )" -RESTRICT="!test? ( test ) !clang? ( test )" + ) +" +RESTRICT=" + !clang? ( test ) + !test? ( test ) +" CLANG_SLOT=${SLOT%%.*} # llvm-6 for new lit options DEPEND=" >=sys-devel/llvm-6 - virtual/libcrypt[abi_x86_32(-)?,abi_x86_64(-)?]" + virtual/libcrypt[abi_x86_32(-)?,abi_x86_64(-)?] +" BDEPEND=" >=dev-util/cmake-3.16 clang? ( sys-devel/clang ) @@ -47,11 +52,12 @@ BDEPEND=" ) !test? ( ${PYTHON_DEPS} - )" + ) +" LLVM_COMPONENTS=( compiler-rt cmake ) LLVM_TEST_COMPONENTS=( llvm/lib/Testing/Support llvm/utils/unittest ) -LLVM_PATCHSET=${PV/_/-}-r2 +LLVM_PATCHSET=${PV} llvm.org_set_globals python_check_deps() { diff --git a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-15.0.0.9999.ebuild b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-15.0.0.9999.ebuild index 12e5eb2d01e7..5006d1d658ce 100644 --- a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-15.0.0.9999.ebuild +++ b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-15.0.0.9999.ebuild @@ -1,7 +1,7 @@ # Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=7 +EAPI=8 PYTHON_COMPAT=( python3_{8..10} ) inherit check-reqs cmake flag-o-matic llvm llvm.org python-any-r1 @@ -27,27 +27,33 @@ REQUIRED_USE=" test? ( cfi? ( ubsan ) gwp-asan? ( scudo ) - )" -RESTRICT="!test? ( test ) !clang? ( test )" + ) +" +RESTRICT=" + !clang? ( test ) + !test? ( test ) +" CLANG_SLOT=${SLOT%%.*} # llvm-6 for new lit options DEPEND=" >=sys-devel/llvm-6 - virtual/libcrypt[abi_x86_32(-)?,abi_x86_64(-)?]" + virtual/libcrypt[abi_x86_32(-)?,abi_x86_64(-)?] +" BDEPEND=" >=dev-util/cmake-3.16 clang? ( sys-devel/clang ) elibc_glibc? ( net-libs/libtirpc ) test? ( !<sys-apps/sandbox-2.13 - $(python_gen_any_dep ">=dev-python/lit-5[\${PYTHON_USEDEP}]") + $(python_gen_any_dep ">=dev-python/lit-15[\${PYTHON_USEDEP}]") =sys-devel/clang-${PV%_*}*:${CLANG_SLOT} sys-libs/compiler-rt:${SLOT} ) !test? ( ${PYTHON_DEPS} - )" + ) +" LLVM_COMPONENTS=( compiler-rt cmake ) LLVM_TEST_COMPONENTS=( llvm/lib/Testing/Support llvm/utils/unittest ) diff --git a/sys-libs/compiler-rt/Manifest b/sys-libs/compiler-rt/Manifest index b7aa51355bc2..e6e31f372bec 100644 --- a/sys-libs/compiler-rt/Manifest +++ b/sys-libs/compiler-rt/Manifest @@ -1,20 +1,15 @@ -DIST llvm-gentoo-patchset-11.1.0-1.tar.xz 4032 BLAKE2B e69138a422e315b31a3d9c11faa4ae1ddf1bf9092cee2db0de4d2adef81fd802973488293aab48b764402b51996893b17ca03249ef4620848a576d1f6cdb9698 SHA512 e1c5504dab6c5db9fdf4addfeb12316f22d0258717ba551a9b7b3ba37919491fb6011ac5cca1e793b7509d5c1c186bc6bc4213f7d6155d190612492b216f979b DIST llvm-gentoo-patchset-12.0.1.tar.xz 5280 BLAKE2B 963d005bc7b636570be90eb841ac5bcaeb927538cc7de27683167111a17d6496677c7517de2ecfaf14b5d8ac22bad357be490b8a2ed9aba502fd5f447ecc99e9 SHA512 fc7c38e671555751650299c3a8bee44d5c7f26e11b68d5538c507fb7fe9ff2d349bdcd43bce90a448a747f082d523b3849d6bcda5e3ae2e998edcb926d6aa249 -DIST llvm-gentoo-patchset-13.0.0.tar.xz 5012 BLAKE2B 6760c78c086aaf6629143fd920b0a2c68cad9278628fbea8164dfeb59db95984a5b5d6b3505b510c697e8c95bf8d2be782c6b73c01622d52f2da9b07ecff39e0 SHA512 7764d49343b795b6bebae64f646ba27e3e6cc2a20b8a1aee645ce0d8474633c34acfbb73c08546fee415755dd4ea5a98c1d84db5e394cf5f4fc802eb61148ab6 DIST llvm-gentoo-patchset-13.0.1.tar.xz 6288 BLAKE2B 899222b962486e924e4f8a2b574d285531a3f87af9385ff68c81db92aa224a0cde6d4ee049b5405056bedb4b232b50e1d5840024071a4a215f6311853304c92d SHA512 b2805337f1deca626768a44c5e7ac9ed16e0c31bead1647d44a493a8123c1b8e8f1c8ceee3536bcc6fa87fdd3fcec408229f701adf30eff07e7ef9889b847b01 -DIST llvm-gentoo-patchset-14.0.0.tar.xz 4076 BLAKE2B dc114e53fb878ca74489c420506b9dd9c417e2b97dff4d9441d78a0a256ca1e7243ea2ce38b8665d37b0f24436f9ea5771cd05d9b13887e7370a19ec5e05ba20 SHA512 7f7d08fc762d634692fb251a51c0d73a4a9098907f25451b9ca9453315b603331b65a454b2d631cfecbb3fbc11ab3a36f644c0d7b03e1bb8e96ce4aa08d60615 +DIST llvm-gentoo-patchset-14.0.1.tar.xz 4724 BLAKE2B 2689298c687fa8b5fa2545afccc248c00ff6778f1a14e3e7999e5d52a1b0b9c3b2e66e8c008e27c62c6c3c08009dc7d9d083ca53698138258ac972e4ad03c042 SHA512 a9f071ad0a792f558105a64790f9e470d8aaed05bd1baabbe86539760c881f772602a03265e0962d8599f991f7fd44d14a49e2ef9d74bb5eb283f473f4084d32 +DIST llvm-gentoo-patchset-14.0.3.tar.xz 5492 BLAKE2B 48a46d50a81c5572d1573c6923bc404b198f74ee8587a928e0858553dac37f7fa39cc969d72b938ef3d2f04f6872f9e2e2478821ab90c657ecbbacb3f7d99d7a SHA512 b917b549de6d46cd7aab3e59b888b5e5ffb955435b33d6538be2f31dc30217a24740a673cb6bb661087c245121edb079052b179badaf70b86b985ca69b3652a6 DIST llvm-gentoo-patchset-9999-1.tar.xz 4032 BLAKE2B b9413484dafed8ae0c68c2c164b45fd07bb8d5d0898f03abe118fd2120ffcb1fb6c949de9649a97c2e8105f24b9d131a725c67c0a502ca4d4d192c1a0d65f49d SHA512 e64449eeaf756c5bd945109937b84ba4bd8a015222bd792d39cf3947871e87571a4ca57814790e51544cb05ad4c2d1f044e818e4caaac7c2e2a02cb1aa290fcc -DIST llvmorg-11.1.0.tar.gz 122776532 BLAKE2B ca842ff4afff8f44c82b5e7383962a9c45ca1c93b64fa4c6ebcd70a1d3849dbad2b8e4e24fba02d144c6266d7fab3607ebc6999b28c229cb35256cf40f26a985 SHA512 9a8ce022a935eed42fa71a224f2a207122aadcbef58ee855fdb4825f879e7d028e4dcff22c19b9d336db1c8bf63fb84372d44981acf84615f757e54306c92b81 DIST llvmorg-12.0.1.tar.gz 134259748 BLAKE2B f41de787bc73ff2edfda1b22cc8602be6f65f37dd9e4c8888533cfa8c3ccdcf4f108aaab9de23ab0ab987966eb160f2a553a0bdff99461e71ddd5bfcd086090d SHA512 6eb0dc18e2c25935fabfdfc48b0114be0939158dfdef7b85b395fe2e71042672446af0e68750aae003c9847d10d1f63316fe95d3df738d18f249174292b1b9e1 -DIST llvmorg-13.0.0.tar.gz 147270176 BLAKE2B 628f316b580e1edf3a58d4825b724df759e6ed2a4116802470c04562caefc392fa325c91f388036365a2e45a9595cca6d3557fab12984fc8bcfef29c9116d822 SHA512 8004c05d32b9720fb3391783621690c1df9bd1e97e72cbff9192ed88a84b0acd303b61432145fa917b5b5e548c8cee29b24ef8547dcc8677adf4816e7a8a0eb2 DIST llvmorg-13.0.1.tar.gz 147290251 BLAKE2B 2a44b012a672501761d0c27c6b3a315b69bfef0cd13b078a7e7d2fccc4a9c8c0f2bee0f164c4271c9106b0a99cb06e8b64986f66253b613336719fb86b82541b SHA512 9a8cb5d11964ba88b7624f19ec861fb28701f23956ea3c92f6ac644332d5f41fde97bd8933dd3ee70ed378058c252fa3a3887c8d1af90d219970c2b27691166f -DIST llvmorg-14.0.0.tar.gz 158057350 BLAKE2B 7052684c620a5eaf52beeee4591adf58cfec9e64a5ee0b24f3d5849fd4df5b006e2906a839cb806ac69c33fab6013c58589b1d74e4fb8558758edcb7d5065064 SHA512 eb5acf96b5e2c59bd07579f7ebe73018b0dd6e2f2d9a5a3c7986320e88febd837d1084b9e5313a2264310342193044629d228337cc76dd2b8527dc0a8bdda999 DIST llvmorg-14.0.1.tar.gz 158074615 BLAKE2B bf80366461580058494eb101646efcd1a8b55a66818a710c2eb8c649bf88c02fe4552cecf4c1c8637a64e7cee8d644bca31aafc804765ed18f2b5e2975dd6c92 SHA512 0a15aa9cfc978a7b03a1659a2affad65ede66d280f5c12bf0beaaf194cd7bdd57ff438b5f40e64c1e1b88f368de99be349e9d30b544d2bbe4a50f0ebed3307f2 -EBUILD compiler-rt-11.1.0.ebuild 3506 BLAKE2B fea54ca4aabe9bf35afc64a579ae18eb4491eeecb58ede43369ba9c294f624851214525f399cfa3adadee70ca66cbe64821376272b9965304266bcfc07b9f220 SHA512 f50906ee9f3b044a251ddd56db6ce10d3d2b632ffa7d3fd608cc5d7320e8d4b47b1ada26965b5fc9bb746e77c1b01ec61b5f719bc6bb2805720df035fca993da +DIST llvmorg-14.0.3.tar.gz 158092596 BLAKE2B ef901df510ec6bc1242595ec330e9c9ee76e696b077d67a8d62b53608c3d18b2f2d7ea3150864e13d9b37a8ce899ebca946ebe72cbc4538700176e20859ddec2 SHA512 511e93fd9b1c414c38fe9e2649679ac0b16cb04f7f7838569d187b04c542a185e364d6db73e96465026e3b2533649eb75ac95507d12514af32b28bdfb66f2646 EBUILD compiler-rt-12.0.1.ebuild 3539 BLAKE2B 7d6bd0a7be4fec1b8427aa9d81eacf69d3338490c70f097910ad0bb4a67f0313ea8fd6bae15a5e05b8805cad6a789124d94ee91577a58beb96f471a1bf49c3b3 SHA512 bd671f1896182a00ade3b53252ba6b7cb8a6f65eec3d806bbfc7bd4e2b9253a8bc2bd497c018705f34fb30ad1897693af268c6e4cc39e044c788807042d7b55e -EBUILD compiler-rt-13.0.0.ebuild 3717 BLAKE2B bb6b7ccb4ee20e7da325bd111adefa0c212be6b6291d71e2553d31b56e0c95e7a50ea5ba2b2107bf3cbd052126491ae5811844a06a60b742069cb8ca268c8315 SHA512 03e3925de867fefa79ffc8bf6a1b53020452ccda98d79dedc09b4d2c5dddcef07890b2055c7774ea054241cb124f0629819aef9df1102cb70b6e7579ed52aa44 -EBUILD compiler-rt-13.0.1.ebuild 3869 BLAKE2B e94607722b892fed333b17ceeb35825d0bf83fce783f6a8f4cb1c70eb028a0e0397ed81e50850057f2d863576b5bb19c7b144a25cfb5778805aadacdf8e6c489 SHA512 648bb060f7fa67435859c9548d606fa489f8b6994befa2b10c9ffced1df67cfa9fbc8ca1a3bea7520298bc48b185dbba1a86f9b4283821d0d23a5327a0ea54b9 -EBUILD compiler-rt-14.0.0.ebuild 3879 BLAKE2B f67b9247bb931ef6fe9de922e98842a2df8271e17eba634a34bab201670a8e0ada3a252b378e4a5584ac8d40a32b254a2970a1294dfc75a9198757f4164f403e SHA512 2cd68cecd5e1207086f99d469234fb147e3b64fc65a111260e18b1668efcbe1caa2ce3852a528433bc8c27d0f3575e8089c4d8b118f0ed86ac8941c9a9f9b3c3 -EBUILD compiler-rt-14.0.1.ebuild 3876 BLAKE2B 77cbc5ec36cb3f5ae1f413f511d67073522911329a8fe466044043b5247df9615f9bda56baff64b89534a35508024e86d2a7743b18180301c4ab9bd7ab8729ba SHA512 9b0e71af5288415b2477403424173955e9d2a77b8d1896780ea401e3e6db8397375322612f0f23667b8d62266d95f69b3c41773445e0c3573df254f4ed49cf90 -EBUILD compiler-rt-15.0.0.9999.ebuild 3804 BLAKE2B 5e4c91ff5ed9ddd0c4567b540a2eb4607434000b26ad826c706c806aff443b2b33e86911f09b9c380ca6a052c0012ee2bcb7e464dae67c254793463fff605241 SHA512 1b23c0bec12a5b2450cd4d6e5b09248607f81b7a4c70b074340d3975172bf9a077da89f308af7ae32ee4bfa4d6a080b4cfa08fc1c8c7fcfc661868a0266bbc31 +EBUILD compiler-rt-13.0.1.ebuild 3868 BLAKE2B b2b643b850023513b69076bc791b22b74aa54445250cba334a2d3dfdc26a1ea11d30d1ce9df6cb2d1c813b66eaa59a130821470b3a3076237f9ef93d2919a124 SHA512 334a2609ae6882dbbb9caca5bb3bc7ba0a668f9a8f337570d54bde926d7ebfaa87fe4e53dddc73ea602b2d52e7537b9490f8936736480f1ddac6c9caf7b6832d +EBUILD compiler-rt-14.0.1.ebuild 3879 BLAKE2B f67b9247bb931ef6fe9de922e98842a2df8271e17eba634a34bab201670a8e0ada3a252b378e4a5584ac8d40a32b254a2970a1294dfc75a9198757f4164f403e SHA512 2cd68cecd5e1207086f99d469234fb147e3b64fc65a111260e18b1668efcbe1caa2ce3852a528433bc8c27d0f3575e8089c4d8b118f0ed86ac8941c9a9f9b3c3 +EBUILD compiler-rt-14.0.3.ebuild 3877 BLAKE2B f86d43aa88361017a82b659262e9d997c4a3520b446836fa4ab48510060d19e246443d1acc0f717f256ecf6dad6f8c93a7c55b9e8373f3d837515c12ea26f168 SHA512 ec4ebd8a3343d28b41bf991a0b00d4df058ef0b53204cbcd786e83f659eadea377822c7ad8043f0fda381255ebd7386c32ebd4a87d3c60bc774e682cbb069807 +EBUILD compiler-rt-15.0.0.9999.ebuild 3803 BLAKE2B 8b63b280b28c95627852a737b9a5838d57682dff031eda2f436c2c624eeab2a76f809a1687f24fddc81ff8d22c50877077f6aeec0e649951bf0338952582872b SHA512 889b8d1d835fb9717511b042399946f1afbc0beb7b1468a347d90ec185e98caf5eba7093b823e16f90939764cd2781fb0141135ccbd3ec73047cb9f38371323c MISC metadata.xml 334 BLAKE2B e52ad011edc624e8b4c6449a9c77d0972222c4e3ecad01ea24eb9f3175053b191df6267886a186bc3e169581b86b624b6c77f37fac763a12129a1dd8cd6ee285 SHA512 1bf0f62c12690e6596650e8872405fc53bc3c4bbddcf80e02b3bcce9b762f0aa02d462949b9b54c0c930ca6cce5518333e79951ae57378def8eb9719463a9297 diff --git a/sys-libs/compiler-rt/compiler-rt-11.1.0.ebuild b/sys-libs/compiler-rt/compiler-rt-11.1.0.ebuild deleted file mode 100644 index 46345babf318..000000000000 --- a/sys-libs/compiler-rt/compiler-rt-11.1.0.ebuild +++ /dev/null @@ -1,123 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python3_{7..9} ) -inherit cmake flag-o-matic llvm llvm.org python-any-r1 toolchain-funcs - -DESCRIPTION="Compiler runtime library for clang (built-in part)" -HOMEPAGE="https://llvm.org/" - -LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" -SLOT="$(ver_cut 1-3)" -KEYWORDS="amd64 arm arm64 ppc64 ~riscv x86 ~amd64-linux ~ppc-macos ~x64-macos" -IUSE="+clang test" -RESTRICT="!test? ( test ) !clang? ( test )" - -CLANG_SLOT=${SLOT%%.*} -# llvm-6 for new lit options -DEPEND=" - >=sys-devel/llvm-6" -BDEPEND=" - >=dev-util/cmake-3.16 - clang? ( sys-devel/clang ) - test? ( - $(python_gen_any_dep ">=dev-python/lit-9.0.1[\${PYTHON_USEDEP}]") - =sys-devel/clang-${PV%_*}*:${CLANG_SLOT} - ) - ${PYTHON_DEPS}" - -LLVM_COMPONENTS=( compiler-rt ) -LLVM_PATCHSET=11.1.0-1 -llvm.org_set_globals - -python_check_deps() { - use test || return 0 - has_version "dev-python/lit[${PYTHON_USEDEP}]" -} - -pkg_pretend() { - if ! use clang && ! tc-is-clang; then - ewarn "Building using a compiler other than clang may result in broken atomics" - ewarn "library. Enable USE=clang unless you have a very good reason not to." - fi -} - -pkg_setup() { - # Darwin Prefix builds do not have llvm installed yet, so rely on - # bootstrap-prefix to set the appropriate path vars to LLVM instead - # of using llvm_pkg_setup. - if [[ ${CHOST} != *-darwin* ]] || has_version dev-lang/llvm; then - llvm_pkg_setup - fi - python-any-r1_pkg_setup -} - -test_compiler() { - $(tc-getCC) ${CFLAGS} ${LDFLAGS} "${@}" -o /dev/null -x c - \ - <<<'int main() { return 0; }' &>/dev/null -} - -src_configure() { - # pre-set since we need to pass it to cmake - BUILD_DIR=${WORKDIR}/${P}_build - - local nolib_flags=( -nodefaultlibs -lc ) - if use clang; then - local -x CC=${CHOST}-clang - local -x CXX=${CHOST}-clang++ - strip-unsupported-flags - # ensure we can use clang before installing compiler-rt - local -x LDFLAGS="${LDFLAGS} ${nolib_flags[*]}" - elif ! test_compiler; then - if test_compiler "${nolib_flags[@]}"; then - local -x LDFLAGS="${LDFLAGS} ${nolib_flags[*]}" - ewarn "${CC} seems to lack runtime, trying with ${nolib_flags[*]}" - fi - fi - - local mycmakeargs=( - -DCOMPILER_RT_INSTALL_PATH="${EPREFIX}/usr/lib/clang/${SLOT}" - - -DCOMPILER_RT_INCLUDE_TESTS=$(usex test) - -DCOMPILER_RT_BUILD_LIBFUZZER=OFF - -DCOMPILER_RT_BUILD_PROFILE=OFF - -DCOMPILER_RT_BUILD_SANITIZERS=OFF - -DCOMPILER_RT_BUILD_XRAY=OFF - - -DPython3_EXECUTABLE="${PYTHON}" - ) - - if use prefix && [[ "${CHOST}" == *-darwin* ]] ; then - mycmakeargs+=( - # setting -isysroot is disabled with compiler-rt-prefix-paths.patch - # this allows adding arm64 support using SDK in EPREFIX - -DDARWIN_macosx_CACHED_SYSROOT="${EPREFIX}/MacOSX.sdk" - # Set version based on the SDK in EPREFIX. - # This disables i386 for SDK >= 10.15 - -DDARWIN_macosx_OVERRIDE_SDK_VERSION="$(realpath ${EPREFIX}/MacOSX.sdk | sed -e 's/.*MacOSX\(.*\)\.sdk/\1/')" - # Use our libtool instead of looking it up with xcrun - -DCMAKE_LIBTOOL="${EPREFIX}/usr/bin/${CHOST}-libtool" - ) - fi - - if use test; then - mycmakeargs+=( - -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit" - -DLLVM_LIT_ARGS="$(get_lit_flags)" - - -DCOMPILER_RT_TEST_COMPILER="${EPREFIX}/usr/lib/llvm/${CLANG_SLOT}/bin/clang" - -DCOMPILER_RT_TEST_CXX_COMPILER="${EPREFIX}/usr/lib/llvm/${CLANG_SLOT}/bin/clang++" - ) - fi - - cmake_src_configure -} - -src_test() { - # respect TMPDIR! - local -x LIT_PRESERVES_TMP=1 - - cmake_build check-builtins -} diff --git a/sys-libs/compiler-rt/compiler-rt-13.0.0.ebuild b/sys-libs/compiler-rt/compiler-rt-13.0.0.ebuild deleted file mode 100644 index a2d62590de11..000000000000 --- a/sys-libs/compiler-rt/compiler-rt-13.0.0.ebuild +++ /dev/null @@ -1,130 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python3_{8..10} ) -inherit cmake flag-o-matic llvm llvm.org python-any-r1 toolchain-funcs - -DESCRIPTION="Compiler runtime library for clang (built-in part)" -HOMEPAGE="https://llvm.org/" - -LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" -SLOT="$(ver_cut 1-3)" -KEYWORDS="amd64 arm arm64 ppc64 ~riscv x86 ~amd64-linux ~ppc-macos ~x64-macos" -IUSE="+clang debug test" -RESTRICT="!test? ( test ) !clang? ( test )" - -CLANG_SLOT=${SLOT%%.*} -# llvm-6 for new lit options -DEPEND=" - >=sys-devel/llvm-6" -BDEPEND=" - >=dev-util/cmake-3.16 - clang? ( sys-devel/clang ) - test? ( - $(python_gen_any_dep ">=dev-python/lit-9.0.1[\${PYTHON_USEDEP}]") - =sys-devel/clang-${PV%_*}*:${CLANG_SLOT} - ) - !test? ( - ${PYTHON_DEPS} - )" - -LLVM_COMPONENTS=( compiler-rt ) -LLVM_PATCHSET=${PV/_/-} -llvm.org_set_globals - -python_check_deps() { - use test || return 0 - has_version "dev-python/lit[${PYTHON_USEDEP}]" -} - -pkg_pretend() { - if ! use clang && ! tc-is-clang; then - ewarn "Building using a compiler other than clang may result in broken atomics" - ewarn "library. Enable USE=clang unless you have a very good reason not to." - fi -} - -pkg_setup() { - # Darwin Prefix builds do not have llvm installed yet, so rely on - # bootstrap-prefix to set the appropriate path vars to LLVM instead - # of using llvm_pkg_setup. - if [[ ${CHOST} != *-darwin* ]] || has_version dev-lang/llvm; then - llvm_pkg_setup - fi - python-any-r1_pkg_setup -} - -test_compiler() { - $(tc-getCC) ${CFLAGS} ${LDFLAGS} "${@}" -o /dev/null -x c - \ - <<<'int main() { return 0; }' &>/dev/null -} - -src_configure() { - # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844 - use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG" - - # pre-set since we need to pass it to cmake - BUILD_DIR=${WORKDIR}/${P}_build - - local nolib_flags=( -nodefaultlibs -lc ) - if use clang; then - local -x CC=${CHOST}-clang - local -x CXX=${CHOST}-clang++ - strip-unsupported-flags - # ensure we can use clang before installing compiler-rt - local -x LDFLAGS="${LDFLAGS} ${nolib_flags[*]}" - elif ! test_compiler; then - if test_compiler "${nolib_flags[@]}"; then - local -x LDFLAGS="${LDFLAGS} ${nolib_flags[*]}" - ewarn "${CC} seems to lack runtime, trying with ${nolib_flags[*]}" - fi - fi - - local mycmakeargs=( - -DCOMPILER_RT_INSTALL_PATH="${EPREFIX}/usr/lib/clang/${SLOT}" - - -DCOMPILER_RT_INCLUDE_TESTS=$(usex test) - -DCOMPILER_RT_BUILD_LIBFUZZER=OFF - -DCOMPILER_RT_BUILD_MEMPROF=OFF - -DCOMPILER_RT_BUILD_ORC=OFF - -DCOMPILER_RT_BUILD_PROFILE=OFF - -DCOMPILER_RT_BUILD_SANITIZERS=OFF - -DCOMPILER_RT_BUILD_XRAY=OFF - - -DPython3_EXECUTABLE="${PYTHON}" - ) - - if use prefix && [[ "${CHOST}" == *-darwin* ]] ; then - mycmakeargs+=( - # setting -isysroot is disabled with compiler-rt-prefix-paths.patch - # this allows adding arm64 support using SDK in EPREFIX - -DDARWIN_macosx_CACHED_SYSROOT="${EPREFIX}/MacOSX.sdk" - # Set version based on the SDK in EPREFIX. - # This disables i386 for SDK >= 10.15 - -DDARWIN_macosx_OVERRIDE_SDK_VERSION="$(realpath ${EPREFIX}/MacOSX.sdk | sed -e 's/.*MacOSX\(.*\)\.sdk/\1/')" - # Use our libtool instead of looking it up with xcrun - -DCMAKE_LIBTOOL="${EPREFIX}/usr/bin/${CHOST}-libtool" - ) - fi - - if use test; then - mycmakeargs+=( - -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit" - -DLLVM_LIT_ARGS="$(get_lit_flags)" - - -DCOMPILER_RT_TEST_COMPILER="${EPREFIX}/usr/lib/llvm/${CLANG_SLOT}/bin/clang" - -DCOMPILER_RT_TEST_CXX_COMPILER="${EPREFIX}/usr/lib/llvm/${CLANG_SLOT}/bin/clang++" - ) - fi - - cmake_src_configure -} - -src_test() { - # respect TMPDIR! - local -x LIT_PRESERVES_TMP=1 - - cmake_build check-builtins -} diff --git a/sys-libs/compiler-rt/compiler-rt-13.0.1.ebuild b/sys-libs/compiler-rt/compiler-rt-13.0.1.ebuild index 26709f8a2123..08e7c073204b 100644 --- a/sys-libs/compiler-rt/compiler-rt-13.0.1.ebuild +++ b/sys-libs/compiler-rt/compiler-rt-13.0.1.ebuild @@ -11,7 +11,7 @@ HOMEPAGE="https://llvm.org/" LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" SLOT="$(ver_cut 1-3)" -KEYWORDS="amd64 arm arm64 ppc64 ~riscv ~x86 ~amd64-linux ~ppc-macos ~x64-macos" +KEYWORDS="amd64 arm arm64 ppc64 ~riscv x86 ~amd64-linux ~ppc-macos ~x64-macos" IUSE="+abi_x86_32 abi_x86_64 +clang debug test" RESTRICT="!test? ( test ) !clang? ( test )" diff --git a/sys-libs/compiler-rt/compiler-rt-14.0.1.ebuild b/sys-libs/compiler-rt/compiler-rt-14.0.1.ebuild index 3822cdf53b40..0ac188065657 100644 --- a/sys-libs/compiler-rt/compiler-rt-14.0.1.ebuild +++ b/sys-libs/compiler-rt/compiler-rt-14.0.1.ebuild @@ -31,7 +31,7 @@ BDEPEND=" )" LLVM_COMPONENTS=( compiler-rt cmake ) -LLVM_PATCHSET=9999-1 +LLVM_PATCHSET=${PV/_/-} llvm.org_set_globals python_check_deps() { diff --git a/sys-libs/compiler-rt/compiler-rt-14.0.0.ebuild b/sys-libs/compiler-rt/compiler-rt-14.0.3.ebuild index 0ac188065657..dcbada06ccf0 100644 --- a/sys-libs/compiler-rt/compiler-rt-14.0.0.ebuild +++ b/sys-libs/compiler-rt/compiler-rt-14.0.3.ebuild @@ -1,7 +1,7 @@ # Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=7 +EAPI=8 PYTHON_COMPAT=( python3_{8..10} ) inherit cmake flag-o-matic llvm llvm.org python-any-r1 toolchain-funcs @@ -18,7 +18,8 @@ RESTRICT="!test? ( test ) !clang? ( test )" CLANG_SLOT=${SLOT%%.*} # llvm-6 for new lit options DEPEND=" - >=sys-devel/llvm-6" + >=sys-devel/llvm-6 +" BDEPEND=" >=dev-util/cmake-3.16 clang? ( sys-devel/clang ) @@ -28,10 +29,11 @@ BDEPEND=" ) !test? ( ${PYTHON_DEPS} - )" + ) +" LLVM_COMPONENTS=( compiler-rt cmake ) -LLVM_PATCHSET=${PV/_/-} +LLVM_PATCHSET=${PV} llvm.org_set_globals python_check_deps() { diff --git a/sys-libs/compiler-rt/compiler-rt-15.0.0.9999.ebuild b/sys-libs/compiler-rt/compiler-rt-15.0.0.9999.ebuild index 1c847a474a08..1a7cc5f2b724 100644 --- a/sys-libs/compiler-rt/compiler-rt-15.0.0.9999.ebuild +++ b/sys-libs/compiler-rt/compiler-rt-15.0.0.9999.ebuild @@ -1,7 +1,7 @@ # Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=7 +EAPI=8 PYTHON_COMPAT=( python3_{8..10} ) inherit cmake flag-o-matic llvm llvm.org python-any-r1 toolchain-funcs @@ -18,17 +18,19 @@ RESTRICT="!test? ( test ) !clang? ( test )" CLANG_SLOT=${SLOT%%.*} # llvm-6 for new lit options DEPEND=" - >=sys-devel/llvm-6" + >=sys-devel/llvm-6 +" BDEPEND=" >=dev-util/cmake-3.16 clang? ( sys-devel/clang ) test? ( - $(python_gen_any_dep ">=dev-python/lit-9.0.1[\${PYTHON_USEDEP}]") + $(python_gen_any_dep ">=dev-python/lit-15[\${PYTHON_USEDEP}]") =sys-devel/clang-${PV%_*}*:${CLANG_SLOT} ) !test? ( ${PYTHON_DEPS} - )" + ) +" LLVM_COMPONENTS=( compiler-rt cmake ) LLVM_PATCHSET=9999-1 diff --git a/sys-libs/cracklib/Manifest b/sys-libs/cracklib/Manifest index ed02b33ec414..a007bb95f2ad 100644 --- a/sys-libs/cracklib/Manifest +++ b/sys-libs/cracklib/Manifest @@ -1,3 +1,3 @@ DIST cracklib-2.9.7.tar.bz2 603630 BLAKE2B 81a45b2fb9f34da84d4fb864e1a9f67a4b22c246f1e4db1c599a555f79d560a04d95afb01a89cd3a2e0936f0e8fc51ff5ada26098c24d7af0777a94f51b82bbd SHA512 f6bf65ac092ba46ff78ddbc115692260fb76dc71219cd679d2ea935ebfb9e709fbb30259a7406743ed00dbdc415335b3ac9d9fcba1d204ea36d5eb96bf1333a2 -EBUILD cracklib-2.9.7.ebuild 2606 BLAKE2B 94554367a34bcd0924abd1a054e64408b605b43ecf904d6e72527612ec485ecd8cb03d9b664372a603e132d32facbbe63f40ca85c74f0206e455ff063672de23 SHA512 c65aad0170ff3b3ac58c30805d6816de1ad1df8174bfb390d6b04117e2761d7e04693fe1d07068831625ae9382b59b39c521e4f27882f5f22a7a275733fac66f +EBUILD cracklib-2.9.7.ebuild 2613 BLAKE2B 314ce7d109f3987f8386408bd82220793bd65b5a6a459dca63c054faf6d4432b699f226626e096fe7cf1f57d987b4f68019806dcdc70289ddd6e0ad9e53949b3 SHA512 e5e60fe3f604eccac9b0cb1d0e1c15a0c22adee15a99352517770b322d8052f295baa6b5444dbaeb0fdff3557065d7fef2697f104b8daf8cb1f63d601ac1af8c MISC metadata.xml 385 BLAKE2B f81e1ac44f5a4c3f647473385363eed564accca3b62ecde3cb35fab14112af1ceb2a25dc2816fc096aee9c3ed15006252f32491583861689ed70d49218684360 SHA512 6d9908f12c310ef22feeae2216236f9b632dc5204916fbb5693cc53bb58e592dc44f49c45d2c8bc22addd69cc5e4e63df463a23299d09a637f4f0f7379e7b796 diff --git a/sys-libs/cracklib/cracklib-2.9.7.ebuild b/sys-libs/cracklib/cracklib-2.9.7.ebuild index b2cada86052b..4acc9d791b07 100644 --- a/sys-libs/cracklib/cracklib-2.9.7.ebuild +++ b/sys-libs/cracklib/cracklib-2.9.7.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2021 Gentoo Authors +# Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -17,7 +17,7 @@ SRC_URI="https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.bz2" LICENSE="LGPL-2.1" SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos" IUSE="nls python static-libs zlib" REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" diff --git a/sys-libs/db/Manifest b/sys-libs/db/Manifest index a19eac69f2aa..3aaf35b5f96e 100644 --- a/sys-libs/db/Manifest +++ b/sys-libs/db/Manifest @@ -19,8 +19,8 @@ DIST db-6.2.38.tar.gz 41298311 BLAKE2B a04a3344058b1d9982f39628c1114aded8f8c8607 EBUILD db-18.1.32-r1.ebuild 5960 BLAKE2B 0c5376bf33a91c69c3f0bfe3baf9b4f99770082ebbbf202ac436a9a1b9d8f9ce8e59f8e2670c0a524848717e98991cbb0e628098d060af99cead9fa5ef82a632 SHA512 3f5dca955df5d78f95baaeb2f64ae30e67f7ee30656e962ccd119f8a88d45905fecbdf5d29a2e72b5e63c41ef849db6961b22b86cc03aa132a0114fc00310d61 EBUILD db-18.1.40-r1.ebuild 5877 BLAKE2B 225c7e6250140cc1c8c81f0b99a326e5b3ea0007b5b8804155b45e4b3c82fe09bb704590379098789ea43a657d0e72e79b1bd2e0c0dfd69c4615685010939d51 SHA512 6d9052607d2bf864d3ded422054b55a387c7cbc17f2575c879b7333be22b57507f186598f4107167a914dee7594c0a98d5e1628aba40a2c3269dc95ef0b73905 EBUILD db-4.8.30-r6.ebuild 4304 BLAKE2B c9021ae73d814d5f78e0fa9066a27813729d7353fb62b5735dadf7394dbc586b67e4f4703132396f9b80906c70353cde6ae1113cab8ed5778894d6242024e648 SHA512 6509604b1624b47f5e3a51e2b37e5de002836d23a4ea4633b994a4f168c44804dd2283904783473391e160cae5462ed6c087da893d2e4e06440f7db6456246e9 -EBUILD db-5.3.28-r8.ebuild 6274 BLAKE2B 47e32b5796b11c9d794a0ac69d5983d89b17c88ea98b2e50b9678fd9ae1d0072a8c28dc126d3c787324d84f04fd7db9f3d6e1eebea32a29cf35b1f295f4e14e0 SHA512 8b200232eeeee74f7e3cd23f53b202a8da8f3e215ee3a21ee62f57729fcea533379b8515a48de3449442a3b75abd40c4a1bcbab197366e9e82af9de201671dd4 -EBUILD db-6.0.35-r4.ebuild 6221 BLAKE2B c5c9602d02034638fd45c9cf4723cd86ee0bec8d2291add78ebbfb13fe43278fb477dea4337514b41002e4ade5dd2f715cf391b8f5353e9145455766bea2d2f6 SHA512 9642cb3f3b64510ec3d8d8bf04f95299f4301a48641b67c4a219d5c770947df9d2be20adc82c919c1b8be546fb19e0de85a8336fb28f7b7c51825c81f88db4b5 +EBUILD db-5.3.28-r8.ebuild 6325 BLAKE2B 8e4db465357b5fa3aa897134c0f18a0042d004896ed43979bf007b9602a1df889aed765ee0fadb70b9a50b991891d81606cd7d56393b098fb1d1bc42ef821a88 SHA512 e65b8a7801a8c180375949b2584952a05f207a8411021540f4d8989c0b3d6e462eb732592eaf468610cda3abeb70fb2381c07022288021de4cfa8654b4e82c65 +EBUILD db-6.0.35-r4.ebuild 6228 BLAKE2B 6c533595bbe2d1888c296eabaae5eb40f1335c81a76d1d95a3b4bbd2123abc673dee0e08e90c323ab7a59c95ab8890da483aa53cec93c92079000021e4d943b9 SHA512 18497321dd41cd1025c2e9ebffae12a0e0acb70843dd73c7db668bca86d31246cd3e60ceebfb1d06367061a47e8cbde3fa51053c67917000d567d1c4d663541f EBUILD db-6.1.38-r1.ebuild 6004 BLAKE2B fb9176d0eef059b4b9606d9287bebe69dafa3752c98fd03e536593b34159b500498758b77456771e28edf9409bbf917f10ca13365899c5245685ce2fe10e5a20 SHA512 7ccfff6e27f1e138a53abba02123f56e10a3da56ddc41c12a2715aa9fd6e8a47d8c8b2e05a6489e18ef69b063a1c9150378a93b398288f3c5fb89ed3c2c2449c EBUILD db-6.2.38-r1.ebuild 6267 BLAKE2B 883d7c81d6e2fc11a2c3d7dc6746935f1ea3a26aae9ab0bc833138234c238057a58caebc23b70e2dc2da05d0ea130bb670a4b33bf68aeb2bfd90bf86d9339b0f SHA512 b1411c814134c6ef9751425aaa79362cc03c0aa8d19a21fd4c5cc8085ec5a98bddc773442bdb69ee9f06544d013505f36b3c2d1301b37b20646f4126573c7aeb MISC metadata.xml 1261 BLAKE2B 81cfdd965f4e2e0342d812c6c1fd602c43ca8bbbb23bd12f230444d26bee578f9ba2af781a8390bb754b66b4699c6aada379dea90397798f8a489a7fd11b85fb SHA512 08d43450d54a8718639ae2637f13da7626415e99a8fa5948c5107b7a973161f31b3b0cf58dc538dd48a18db996f020d57d20edefbcdd8e37c6e58c206c3aab6e diff --git a/sys-libs/db/db-5.3.28-r8.ebuild b/sys-libs/db/db-5.3.28-r8.ebuild index c7f5d0f6d288..133c241be4a6 100644 --- a/sys-libs/db/db-5.3.28-r8.ebuild +++ b/sys-libs/db/db-5.3.28-r8.ebuild @@ -38,6 +38,8 @@ REQUIRED_USE="test? ( tcl )" DEPEND="tcl? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) test? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] )" RDEPEND="tcl? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] )" +# bug #841698 +BDEPEND="sys-devel/autoconf-archive" MULTILIB_WRAPPED_HEADERS=( /usr/include/db${SLOT}/db.h diff --git a/sys-libs/db/db-6.0.35-r4.ebuild b/sys-libs/db/db-6.0.35-r4.ebuild index cf95493690ea..93dc0fcf54a6 100644 --- a/sys-libs/db/db-6.0.35-r4.ebuild +++ b/sys-libs/db/db-6.0.35-r4.ebuild @@ -29,7 +29,7 @@ done LICENSE="AGPL-3" SLOT="$(ver_cut 1-2)" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" IUSE="doc cxx tcl test" REQUIRED_USE="test? ( tcl )" diff --git a/sys-libs/gdbm/Manifest b/sys-libs/gdbm/Manifest index 6f7480e033da..a7bf5e45e050 100644 --- a/sys-libs/gdbm/Manifest +++ b/sys-libs/gdbm/Manifest @@ -2,5 +2,5 @@ DIST gdbm-1.22.tar.gz 1090100 BLAKE2B f27c65e8cc7c71fc4f4a119b92e1d1b2068c1ec874 DIST gdbm-1.23.tar.gz 1115854 BLAKE2B a47746577cf2f3c9b62faea496c4d6a50a8f1b0a5af448cb2215e90057c99b5b630ba3f5357c85dfb7fd98ba4e90969e30a779120c29106ed1e8736721f9bec1 SHA512 918080cb0225b221c11eb7339634a95e00c526072395f7a3d46ccf42ef020dea7c4c5bec34aff2c4f16033e1fff6583252b7e978f68b8d7f8736b0e025838e10 DIST gdbm-1.23.tar.gz.sig 181 BLAKE2B 34785e6fe8e02100084d61e989749ee388794b8af82fc59a417140807bf169c45c15935f8cf91d0ba116dfdee295e05b2b014f1539f1f128a57acfe59010d34d SHA512 6653751c04584f10aa3325bd1cb5b9f7970a786dd2a99602ea620c11a86a9ba5c342aa52627bd06c03da822e9e1600dc034d9a8f42856a287fd67f6b9f161c71 EBUILD gdbm-1.22.ebuild 1202 BLAKE2B bc388868d2de48c00f3f68086ae93b65672b56a377432bdfb7285818dbbf4ca55d0b741fc13fd46927163947e620fbf2f9b014acc9f2c17cb8c46af89828f069 SHA512 3fcd47d0d2aafe1db816bcadfba4bce22b0bc8c7ebf7a67654e237df10ccff461e746f6ed530e1b4cc84c1f0b66499c7ca09239ba4d83c16a680b3874f63abb8 -EBUILD gdbm-1.23.ebuild 1405 BLAKE2B bb83d1bfda58d40be3383f0cafc9a59288a7a72ee94d3d8ecf8a2613b7c7d1fccf05494c22d1defe2cdbd26b438817985d4d5a404265b71ed49f0205e4288276 SHA512 e0e5ba2fc70e0573fbdfea95b6c0f084da2fb759b84583bdde3ca85ea28899eb14b9a40f7cfaca6cb56afd9a33d42a8232e1d4e2c22372ee1ab1a76bf1851d90 +EBUILD gdbm-1.23.ebuild 1552 BLAKE2B 52913b3c2c9a9db27305b9e8e79283099f3312d7f15d444703b008aefe3ca292438fddf4e4d63ddd683f7050b16c15ca6033299a645fe93ca1625a8a363afe68 SHA512 ff390a0dd103fd0b4b64f317cfe753950fe51246c5a306e59f80f8d067fdb3b77d4c48f9f8b1a48ced69a9a0861ebb23a5cb8592867ac4803bafec66827e98de MISC metadata.xml 360 BLAKE2B 4133eee8e152f330b954a1bcc947747364b73301a0bbb5c26cc88f8d53fa816a8b16e34b06a79859a19975bf45761dbc8bd73b6b6a875587d63624ccd737600b SHA512 5f8de97ceb589c6db119d81ef7e662042b288d2fca0ab1d1f8fef714dcb2087cf5f87ade607f7a18790fba02579a9ec5a84edb0482c83b7181e7836d108eb9d3 diff --git a/sys-libs/gdbm/gdbm-1.23.ebuild b/sys-libs/gdbm/gdbm-1.23.ebuild index 634e8f355c15..9df46a0d5032 100644 --- a/sys-libs/gdbm/gdbm-1.23.ebuild +++ b/sys-libs/gdbm/gdbm-1.23.ebuild @@ -4,7 +4,7 @@ EAPI=7 VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/gdbm.asc -inherit multilib-minimal verify-sig +inherit libtool multilib-minimal verify-sig DESCRIPTION="Standard GNU database libraries" HOMEPAGE="https://www.gnu.org/software/gdbm/" @@ -13,13 +13,21 @@ SRC_URI+=" verify-sig? ( mirror://gnu/gdbm/${P}.tar.gz.sig )" LICENSE="GPL-3" SLOT="0/6" # libgdbm.so 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" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~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="+berkdb nls +readline static-libs" DEPEND="readline? ( sys-libs/readline:=[${MULTILIB_USEDEP}] )" RDEPEND="${DEPEND}" BDEPEND="verify-sig? ( sec-keys/openpgp-keys-gdbm )" +src_prepare() { + default + + # gdbm ships with very old libtool files, regen to avoid + # errors when cross-compiling. + elibtoolize +} + multilib_src_configure() { # gdbm doesn't appear to use either of these libraries export ac_cv_lib_dbm_main=no ac_cv_lib_ndbm_main=no diff --git a/sys-libs/glibc/Manifest b/sys-libs/glibc/Manifest index 4a48e9eb19ea..2f57073cf3a7 100644 --- a/sys-libs/glibc/Manifest +++ b/sys-libs/glibc/Manifest @@ -25,9 +25,10 @@ DIST glibc-2.33-patches-11.tar.xz 143916 BLAKE2B ac13b3ccf9681bb6d3c35ecc33e268e DIST glibc-2.33.tar.xz 17031280 BLAKE2B 703d12121c1e2c5d9e0c6ba5341f5fb5c4d9111611a83f2360029b5de9c6e5a5611249d1833684a58ed4afdf49cae614365d87ec8721ba0e5d218f593b1f229d SHA512 4cb5777b68b22b746cc51669e0e9282b43c83f6944e42656e6db7195ebb68f2f9260f130fdeb4e3cfc64efae4f58d96c43d388f52be1eb024ca448084684abdb DIST glibc-2.34-patches-15.tar.xz 146124 BLAKE2B f679f0fc27780173875178537cf996cbfb59bb844566388df0c351dec125eb02070571d4e2852742b43933d09c7a148a39bbc7b2b71fffebd7b8d9d3c16850ac SHA512 5224613e2288fcf027be224001306a84019ebe741114ee1b09d3de9b269dad0280a6dc4d88f4bc38dace501b2944a0098972589a1560756cb3da7e1b7341d672 DIST glibc-2.34-patches-16.tar.xz 164648 BLAKE2B 78786a67109812942ac11bee9a880b9383aa61d0c2b006e3e7e635218842f49c6ce5b7c75597f7d317aa18fede0ca0c79a4bd436b8659ba6a2f1953848484d2a SHA512 acfc91e821cd8b4e57907c7aeaf1eac0bae1f8e244e4011f27819a8ba16a4e9c10fc675c6aaff992be81bba9373ec981fb598838f26aa247e7bd016e2cd786d2 +DIST glibc-2.34-patches-17.tar.xz 241584 BLAKE2B e4eea130c331f64ba66e14a6ba318853141ee3e41b455cb45b8fdb702cae071dd307229dafcfcafcc41e5a56982f52c87e31d95295f824f1a2ae689a7e0f5b49 SHA512 c6a51b373be3986e1ad753541ccf73f29515b5df0f80e0450b26bed37e8c505e22e8f13e89554347e551819c8d89d30f306464e5d25cafa4a12400c112578dca DIST glibc-2.34.tar.xz 17301232 BLAKE2B 874031192f2f5a3b35c3f5b044a467d4be4e67e8593e070e5b49b901ce8ea6bde2f8d2f6c92fa33b3f61eb723572a9e5f2b45e56064168df80a96d3fdb6fa30c SHA512 15252affd9ef4523a8001db16d497f4fdcb3ddf4cde7fe80e075df0bd3cc6524dc29fbe20229dbf5f97af580556e6b1fac0de321a5fe25322bc3e72f93beb624 -DIST glibc-2.35-patches-4.tar.xz 45456 BLAKE2B 47e1c5e4db4969da27f14816ac9b856f3a57e152139e071f0fd0ecf53b7ac2a0372a8dec7e9e51808d463d2e5b12a6acc9145bb0127a7f36cf1d19b96a0efa41 SHA512 39ca84ed5f3e74bccb8875a77188bb16f6b45b1b22843b4ccf8a7f792d35e05e8305929fbeede290ebb128722caf8277da03dbf4aee9261940765f8dfcd01561 -DIST glibc-2.35-patches-5.tar.xz 45632 BLAKE2B b49161139e8a9e6f4351b5954f38eaa3b0b16a444c370b906e2fcac8eb25c306e6f95474063e511a4f8bf48c0eade9509a6158a1019e32ec4b95c49f992405eb SHA512 5bf20061f24ad087aa0f22808cb0dfd810e5413e71dc9b9c7ec0e9cecd172c40e3517e0a151294175351cf0e037e9c35d8b50ba391a312976e7c4103845089e4 +DIST glibc-2.35-loongarch-patches-20220422.tar.xz 44804 BLAKE2B b93720e45d23c8d17918ffaa480351499f4748bc08ab6e1f1fd3c681fcc0b08a3381188f5d4f14e6706baa5eb45c787bc635d0e8ea59712514012caf93992222 SHA512 28e2d02f07fcf61f76585dd59627314ed20ebe29ecd7ae7f5aea8db0704482fc024fee744cbee1776e666d14b80b1393f64cd2283e3c39be4c97ebe09efcdee2 +DIST glibc-2.35-patches-6.tar.xz 57236 BLAKE2B a03845733e2f0ebe179523458695963d729b4211b4ce14310d55163cd33aff502f9e14a4bb0068410777e9b9bb5be4ef7ad1a1fd51debf9191dcf89dc9ff08b8 SHA512 59c5e1669677e969873f5bba38958316a3b32523cac628b97513aed864e191da10499edac77bb5e9a07179d14cf3c75073fd03e8427f7bcfd68fedcedc35083e DIST glibc-2.35.tar.xz 18165952 BLAKE2B 623c728884f070cd87ffeb9203f74206197c52405ac9bc44f3dd519a3468b8e8ae2536c883e5d17d94417dbd1e91775de2e674314e4ff7424f9720026d6b7063 SHA512 e7336ce27561be5d7c217832a1136fb327e057bd8d3f92925b35c97e3e9f9e486948b5a1e03e5e4090772ef06437a074d10b82e68f17f1ad8f22077ee39e1b66 DIST glibc-systemd-20210729.tar.gz 1480 BLAKE2B 37722c7579df782d890e44dbab99c3de52ab466eb9de80d82405e9bb5620bf39ffc8c5f466a435bdb86ef6d36dd7019c0736573916bda6c67d02a2581e0ec979 SHA512 efd75af58b50522c28cdac7abd1fc56555bc1bb042512c90d8340c1ec09c5791b3872a305bf83723252bbde5855b75d958c041083457765c4cfd170732d09238 DIST glibc-systemd-20210814.tar.gz 1469 BLAKE2B 10fa7bcb46d4fdce9c0ab353cbd30871e9b09a347a13a9c9a3b5777f931aa3c826c158d2e49532c604d4a834f2fab4089b67495fb88d0398945dc50d45ad9ef1 SHA512 5346a9ea459a1e6ccf665389f2a294de1e16f1e3e05cdf07e3dd99ed0e4f6f8b52cc333d4bff3c75ac90ab6ce70cd4ab2b3e126f920ce7979abd6dda56315efc @@ -39,9 +40,11 @@ EBUILD glibc-2.30-r9.ebuild 43400 BLAKE2B 01cbb9398dbe5d93f110f7c7ffe24d40719d86 EBUILD glibc-2.31-r7.ebuild 44522 BLAKE2B 1adfba68c35d3af5ec8476b2fe5d3bebf13880eeacb5aaa8438b41b98f5b275f0816a0e654446f62ee2f34f412c5c6e72befcc0deb8988b6faec2c53a07601a9 SHA512 5247b1d75efa86b1a1c85a09219f54d402aae8aaecf0e377ca663a984daf7c69ea97b3072fe83a20002ec7d72661ec7737fbc72982122b58c26cb5bc89997548 EBUILD glibc-2.32-r8.ebuild 44853 BLAKE2B 724f95c0ed2cda18dc2edcaa03b0783a2bc603b72a67e1451535040ddc83be6d1a90ad4b30f9623140b5c0a329ecafb6f19793390137e629d43a3c26e202b28a SHA512 0973b86c266e40203e301cf0c6f8fddc4273c002ffb8fd6c16f6e78f2cfdfbea95fda04adfebb8ee84a14dc950763ba706eadadb2e83f7982b800bee636d5d8f EBUILD glibc-2.33-r13.ebuild 48593 BLAKE2B 59c4e32d200c6b8fe1e365361c9cc4f4d7f93ab861e93fb13cb9bc0cc8e2d4f3a2f1f8f394570e186398858afc6d844188581f18a8eb7c0964ab73a147be9dcb SHA512 7003a462e28abef982330ab6fc29b836176c3e1943605bd04c907c40376de812783ebcd74a91305a9f86df7c0a75494a29f2187848bc75e6b42198704c514001 -EBUILD glibc-2.34-r10.ebuild 50089 BLAKE2B ada10ebb3acce89f9839a8f3ab4c52e3f42d1a8767f5701f2be1a585178efa551a8c820df524af24def955692858cc0eb7bd60f53e30bed1f3392c9d36402fec SHA512 3d6658c00b5f9cac9c29d1b15ba00ebcd3212819bdeaa83ad56f10f78f4e89286fb1eab12821cd43d4516154d4f602433ed50b9d832ceba1af1a135c80d6d882 +EBUILD glibc-2.34-r10.ebuild 50088 BLAKE2B 0851200f354aaedd3b336e2d1a5a3bf69a75c2496c6a7468b33b14b87bc641173f25154ec67d5a4a55fe620e7449f898f0bad2142e409423dc6840ef83e8d379 SHA512 522199f7d10d0b39f6cc7f13ed47159ceced9c4228c102ff200350f0aafbaf8bf2510a04e78a90c194c332339d5241273aa6f933c0750f25c70f0144162a80ec EBUILD glibc-2.34-r11.ebuild 50012 BLAKE2B 2b5c796fc88561d3862f5e1897bec6bd9a40bc53897c9b3e49ceb0c3c0f5d9fe872884da288c5284fb8da738002d9e9acd9641299972eeed38b2b12758167100 SHA512 63191d7aa56e3aa0e24976525a01491255a273686ded3f1a05bde06594e96dc0734d7fda64b3f45cd6be042c2a0cfdd6b39dfc79acfd68bc6a19f5f43ba384f0 -EBUILD glibc-2.35-r1.ebuild 48339 BLAKE2B d837073cf2e62d8cb5d6f50f1b48db0ac5d0954f6407784622ea79709fb4750f08d24ffc702d83747671b27589370640a451dea2262ea452e34327ede556ce68 SHA512 0cbc1074684f2ed48317a5face037db43de562693ffd356068eaa4160b063c01155b258fe79e47359d0400c9f50f40f1876d92eef351106974b5be6b29220077 -EBUILD glibc-2.35-r2.ebuild 48683 BLAKE2B dd103c6ff435d01e2c28eabab7099ab06ff60284a7a94eccd5a23e9809005421eaea2e5c058714765264c6d518e2d7a329fa1b7ce520b339aaa54bdbb7d78185 SHA512 1e5e12cf6030cb6dd23bd5a7b98c8d6b96cc3a0d55ef769d793365ea091b3c07f498655f53fbcc7c0391880b67219aaddf4d54bc09f38a0eb8b31c6a01e230d5 -EBUILD glibc-9999.ebuild 48441 BLAKE2B b1b5a913d75abcc15229e073d3417df2ff3c21f146eae9ca9b85a4630d35c2a3811f49deaa28eddebb76a8d4cb4208a7c8552afcca469bd69c897d14fc06d8fe SHA512 9dc2a2c09a4ba4ce923098ce579e54f84d8b756da7ac0acf426abc331447dc47a77811dcdb88e903015c2ddfa3a033cb600f6d00b96e0ef4ba74fedcdb529b80 -MISC metadata.xml 1701 BLAKE2B 91bd245d0a3685d76e3f874b50db872660054767fca5181871022fbdef9a18c4e674890bfed52cc3332c9557430ae8eec64505e67cdbedff000987406ab69ac5 SHA512 524edc37a01a47958ef557d586e8f06c6132481734ea28ed57e146969503fd129ad1da813a4d2d143a9bb8abe8810b0d8c920ab3c422a729287838435c44743a +EBUILD glibc-2.34-r12.ebuild 49816 BLAKE2B 5ea20d72b5986f2b4ff100d69a8cb85965a529c36da5120fd6c1e8c76c540f917584138d459e13eceaaf3ffdc9d2cecdb9c9e0b22a9833e88b24e2a44bfe6671 SHA512 7b7075e6534fddc9bb69ff7f362647be2061f5389a163b8681244f319fc5872bd222fe7a77dfc19e8b49d5636ae215bd147480637d6b15c22928db8fc1115155 +EBUILD glibc-2.34-r13.ebuild 49811 BLAKE2B 3e6284195fc10ef246becf0840e385a99fae575b9516945d45e83396981860097de8273077485da9ed81438fff8298693475bec8beb38a09d7e0b9d9b364f17e SHA512 fbf32c89f338f10f0155f4ee9b0c6511572fa34da29f9fb4c165b472be5e39853d72407367be66f95198de6aa57bc9a0c45a5eb8b9c772f0d3fb4651d7fa7f32 +EBUILD glibc-2.35-r3.ebuild 49052 BLAKE2B 989cad0d895fdd4c7a6c405a72c3dcb90d799076b47e7667059e54585ee64fec9aba5e1c226546afc8770af13754fc7988f08600c1d50f05e804fec422db7190 SHA512 80289d19be44c9a787022a3a389e640d46ac75c1c3510249f78c56a5898661698b85f124f29678d2a947163050de669953162ff0def1587691466d21bce44853 +EBUILD glibc-2.35-r4.ebuild 48863 BLAKE2B 6ff922da2ddcde3899bc6de017e30e215ed45a177968bf076309dfb8a15d2c91c846ec2dc10d21fb1f76205b979fc160d7924abd69e0f3138f8a34365f459cee SHA512 ce418643d37654d9cfc072272a4680a4f11a78a67682d8ed2072cdedeae02d25271784878adf8f153c569bc982b4ac5c59d6758637847c4bf5a116be717af0af +EBUILD glibc-9999.ebuild 48245 BLAKE2B 75b64b12a0ac417ac154547505bf1f4067aff625b67e082b26bfd451dfcb1c2610b50f165d76cc21cf595caf2f8c1f97b45169246cc564135a131dae46ba2345 SHA512 2b1d562471dc9754328f20398e37406b02c93e896010260479ecea69e7efe58e52dab5f8b7b82bcb4b78a51fc35a6af5deb31c9db56a887e7709b2bdf502da73 +MISC metadata.xml 1777 BLAKE2B 5dbde040a3ddbb381ff649d9e357a8fc463844ed4b2dfd836104b493f23aa2bc0117f775caf9a1f85d9a05abae9b890c0616aebc24e4f0a1e0312529691ea6c4 SHA512 ada714a8f8878ef0976fd5186979effcb5a1792812222468b881ffd45ccfecdb2c2cb04be670b181ff6f329caa40ed82760ae8019e18d8314e9fb28ea13f7774 diff --git a/sys-libs/glibc/glibc-2.34-r10.ebuild b/sys-libs/glibc/glibc-2.34-r10.ebuild index e607faf13339..3c6ded33ef89 100644 --- a/sys-libs/glibc/glibc-2.34-r10.ebuild +++ b/sys-libs/glibc/glibc-2.34-r10.ebuild @@ -29,7 +29,7 @@ PATCH_DEV=dilfridge if [[ ${PV} == 9999* ]]; then inherit git-r3 else - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86" + KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86" SRC_URI="mirror://gnu/glibc/${P}.tar.xz" SRC_URI+=" https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${P}-patches-${PATCH_VER}.tar.xz" fi diff --git a/sys-libs/glibc/glibc-2.34-r12.ebuild b/sys-libs/glibc/glibc-2.34-r12.ebuild new file mode 100644 index 000000000000..ea14a5159f6b --- /dev/null +++ b/sys-libs/glibc/glibc-2.34-r12.ebuild @@ -0,0 +1,1617 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +# Bumping notes: https://wiki.gentoo.org/wiki/Project:Toolchain/sys-libs/glibc +# Please read & adapt the page as necessary if obsolete. + +# We avoid Python 3.10 here _for now_ (it does work!) to avoid circular dependencies +# on upgrades as people migrate to libxcrypt. +# https://wiki.gentoo.org/wiki/User:Sam/Portage_help/Circular_dependencies#Python_and_libcrypt +PYTHON_COMPAT=( python3_{8,9} ) +TMPFILES_OPTIONAL=1 + +inherit python-any-r1 prefix preserve-libs toolchain-funcs flag-o-matic gnuconfig \ + multilib systemd multiprocessing tmpfiles + +DESCRIPTION="GNU libc C library" +HOMEPAGE="https://www.gnu.org/software/libc/" +LICENSE="LGPL-2.1+ BSD HPND ISC inner-net rc PCRE" +SLOT="2.2" + +EMULTILIB_PKG="true" + +# Gentoo patchset (ignored for live ebuilds) +PATCH_VER=16 +PATCH_DEV=dilfridge + +if [[ ${PV} == 9999* ]]; then + inherit git-r3 +else + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + SRC_URI="mirror://gnu/glibc/${P}.tar.xz" + SRC_URI+=" https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${P}-patches-${PATCH_VER}.tar.xz" +fi + +RELEASE_VER=${PV} + +GCC_BOOTSTRAP_VER=20201208 + +LOCALE_GEN_VER=2.22 + +GLIBC_SYSTEMD_VER=20210729 + +SRC_URI+=" https://gitweb.gentoo.org/proj/locale-gen.git/snapshot/locale-gen-${LOCALE_GEN_VER}.tar.gz" +SRC_URI+=" multilib-bootstrap? ( https://dev.gentoo.org/~dilfridge/distfiles/gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}.tar.xz )" +SRC_URI+=" systemd? ( https://gitweb.gentoo.org/proj/toolchain/glibc-systemd.git/snapshot/glibc-systemd-${GLIBC_SYSTEMD_VER}.tar.gz )" + +IUSE="audit caps cet +clone3 compile-locales +crypt custom-cflags doc gd headers-only +multiarch multilib multilib-bootstrap nscd profile selinux +ssp +static-libs static-pie suid systemd systemtap test vanilla" + +# Minimum kernel version that glibc requires +MIN_KERN_VER="3.2.0" +# Minimum pax-utils version needed (which contains any new syscall changes for +# its seccomp filter!). Please double check this! +MIN_PAX_UTILS_VER="1.3.3" + +# Here's how the cross-compile logic breaks down ... +# CTARGET - machine that will target the binaries +# CHOST - machine that will host the binaries +# CBUILD - machine that will build the binaries +# If CTARGET != CHOST, it means you want a libc for cross-compiling. +# If CHOST != CBUILD, it means you want to cross-compile the libc. +# CBUILD = CHOST = CTARGET - native build/install +# CBUILD != (CHOST = CTARGET) - cross-compile a native build +# (CBUILD = CHOST) != CTARGET - libc for cross-compiler +# CBUILD != CHOST != CTARGET - cross-compile a libc for a cross-compiler +# For install paths: +# CHOST = CTARGET - install into / +# CHOST != CTARGET - install into /usr/CTARGET/ +# +export CBUILD=${CBUILD:-${CHOST}} +export CTARGET=${CTARGET:-${CHOST}} +if [[ ${CTARGET} == ${CHOST} ]] ; then + if [[ ${CATEGORY} == cross-* ]] ; then + export CTARGET=${CATEGORY#cross-} + fi +fi + +# Note [Disable automatic stripping] +# Disabling automatic stripping for a few reasons: +# - portage's attempt to strip breaks non-native binaries at least on +# arm: bug #697428 +# - portage's attempt to strip libpthread.so.0 breaks gdb thread +# enumeration: bug #697910. This is quite subtle: +# * gdb uses glibc's libthread_db-1.0.so to enumerate threads. +# * libthread_db-1.0.so needs access to libpthread.so.0 local symbols +# via 'ps_pglobal_lookup' symbol defined in gdb. +# * 'ps_pglobal_lookup' uses '.symtab' section table to resolve all +# known symbols in 'libpthread.so.0'. Specifically 'nptl_version' +# (unexported) is used to sanity check compatibility before enabling +# debugging. +# Also see https://sourceware.org/gdb/wiki/FAQ#GDB_does_not_see_any_threads_besides_the_one_in_which_crash_occurred.3B_or_SIGTRAP_kills_my_program_when_I_set_a_breakpoint +# * normal 'strip' command trims '.symtab' +# Thus our main goal here is to prevent 'libpthread.so.0' from +# losing it's '.symtab' entries. +# As Gentoo's strip does not allow us to pass less aggressive stripping +# options and does not check the machine target we strip selectively. + +# We need a new-enough binutils/gcc to match upstream baseline. +# Also we need to make sure our binutils/gcc supports TLS, +# and that gcc already contains the hardened patches. +# Lastly, let's avoid some openssh nastiness, bug 708224, as +# convenience to our users. + +# gzip, grep, awk are needed by locale-gen, bug 740750 + +BDEPEND=" + ${PYTHON_DEPS} + >=app-misc/pax-utils-${MIN_PAX_UTILS_VER} + sys-devel/bison + doc? ( sys-apps/texinfo ) + !compile-locales? ( + app-arch/gzip + sys-apps/grep + virtual/awk + ) +" +COMMON_DEPEND=" + gd? ( media-libs/gd:2= ) + nscd? ( selinux? ( + audit? ( sys-process/audit ) + caps? ( sys-libs/libcap ) + ) ) + suid? ( caps? ( sys-libs/libcap ) ) + selinux? ( sys-libs/libselinux ) + systemtap? ( dev-util/systemtap ) +" +DEPEND="${COMMON_DEPEND} + compile-locales? ( + app-arch/gzip + sys-apps/grep + virtual/awk + ) + test? ( >=net-dns/libidn2-2.3.0 ) +" +RDEPEND="${COMMON_DEPEND} + app-arch/gzip + sys-apps/grep + virtual/awk + sys-apps/gentoo-functions + !<app-misc/pax-utils-${MIN_PAX_UTILS_VER} + !<net-misc/openssh-8.1_p1-r2 +" + +RESTRICT="!test? ( test )" + +if [[ ${CATEGORY} == cross-* ]] ; then + BDEPEND+=" !headers-only? ( + >=${CATEGORY}/binutils-2.27 + >=${CATEGORY}/gcc-6 + )" + [[ ${CATEGORY} == *-linux* ]] && DEPEND+=" ${CATEGORY}/linux-headers" +else + BDEPEND+=" + >=sys-devel/binutils-2.27 + >=sys-devel/gcc-6 + " + DEPEND+=" virtual/os-headers " + RDEPEND+=" + >=net-dns/libidn2-2.3.0 + vanilla? ( !sys-libs/timezone-data ) + " + PDEPEND+=" !vanilla? ( sys-libs/timezone-data )" +fi + +# Ignore tests whitelisted below +GENTOO_GLIBC_XFAIL_TESTS="${GENTOO_GLIBC_XFAIL_TESTS:-yes}" + +# The following tests fail due to the Gentoo build system and are thus +# executed but ignored: +XFAIL_TEST_LIST=( + # buggy test, assumes /dev/ and /dev/null on a single filesystem + # 'mount --bind /dev/null /chroot/dev/null' breaks it. + # https://sourceware.org/PR25909 + tst-support_descriptors + + # The following tests fail only inside portage + # https://bugs.gentoo.org/831267 + tst-system + tst-strerror + tst-strsignal +) + +# +# Small helper functions +# + +is_crosscompile() { + [[ ${CHOST} != ${CTARGET} ]] +} + +just_headers() { + is_crosscompile && use headers-only +} + +alt_prefix() { + is_crosscompile && echo /usr/${CTARGET} +} + +# This prefix is applicable to CHOST when building against this +# glibc. It is baked into the library at configure time. +host_eprefix() { + is_crosscompile || echo "${EPREFIX}" +} + +# This prefix is applicable to CBUILD when building against this +# glibc. It determines the destination path at install time. +build_eprefix() { + is_crosscompile && echo "${EPREFIX}" +} + +# We need to be able to set alternative headers for compiling for non-native +# platform. Will also become useful for testing kernel-headers without screwing +# up the whole system. +alt_headers() { + echo ${ALT_HEADERS:=$(alt_prefix)/usr/include} +} + +alt_build_headers() { + if [[ -z ${ALT_BUILD_HEADERS} ]] ; then + ALT_BUILD_HEADERS="$(host_eprefix)$(alt_headers)" + if tc-is-cross-compiler ; then + ALT_BUILD_HEADERS=${SYSROOT}$(alt_headers) + if [[ ! -e ${ALT_BUILD_HEADERS}/linux/version.h ]] ; then + local header_path=$(echo '#include <linux/version.h>' | $(tc-getCPP ${CTARGET}) ${CFLAGS} 2>&1 | grep -o '[^"]*linux/version.h') + ALT_BUILD_HEADERS=${header_path%/linux/version.h} + fi + fi + fi + echo "${ALT_BUILD_HEADERS}" +} + +alt_libdir() { + echo $(alt_prefix)/$(get_libdir) +} +alt_usrlibdir() { + echo $(alt_prefix)/usr/$(get_libdir) +} + +builddir() { + echo "${WORKDIR}/build-${ABI}-${CTARGET}-$1" +} + +do_compile_test() { + local ret save_cflags=${CFLAGS} + CFLAGS+=" $1" + shift + + pushd "${T}" >/dev/null + + rm -f glibc-test* + printf '%b' "$*" > glibc-test.c + + # Most of the time CC is already set, but not in early sanity checks. + nonfatal emake glibc-test CC="${CC-$(tc-getCC ${CTARGET})}" + ret=$? + + popd >/dev/null + + CFLAGS=${save_cflags} + return ${ret} +} + +do_run_test() { + local ret + + if [[ ${MERGE_TYPE} == "binary" ]] ; then + # ignore build failures when installing a binary package #324685 + do_compile_test "" "$@" 2>/dev/null || return 0 + else + if ! do_compile_test "" "$@" ; then + ewarn "Simple build failed ... assuming this is desired #324685" + return 0 + fi + fi + + pushd "${T}" >/dev/null + + ./glibc-test + ret=$? + rm -f glibc-test* + + popd >/dev/null + + return ${ret} +} + +setup_target_flags() { + # This largely mucks with compiler flags. None of which should matter + # when building up just the headers. + just_headers && return 0 + + case $(tc-arch) in + x86) + # -march needed for #185404 #199334 + # TODO: When creating the first glibc cross-compile, this test will + # always fail as it does a full link which in turn requires glibc. + # Probably also applies when changing multilib profile settings (e.g. + # enabling x86 when the profile was amd64-only previously). + # We could change main to _start and pass -nostdlib here so that we + # only test the gcc code compilation. Or we could do a compile and + # then look for the symbol via scanelf. + if ! do_compile_test "" 'void f(int i, void *p) {if (__sync_fetch_and_add(&i, 1)) f(i, p);}\nint main(){return 0;}\n'; then + local t=${CTARGET_OPT:-${CTARGET}} + t=${t%%-*} + filter-flags '-march=*' + export CFLAGS="-march=${t} ${CFLAGS}" + einfo "Auto adding -march=${t} to CFLAGS #185404" + fi + ;; + amd64) + # -march needed for #185404 #199334 + # TODO: See cross-compile issues listed above for x86. + [[ ${ABI} == x86 ]] && + if ! do_compile_test "${CFLAGS_x86}" 'void f(int i, void *p) {if (__sync_fetch_and_add(&i, 1)) f(i, p);}\nint main(){return 0;}\n'; then + local t=${CTARGET_OPT:-${CTARGET}} + t=${t%%-*} + # Normally the target is x86_64-xxx, so turn that into the -march that + # gcc actually accepts. #528708 + [[ ${t} == "x86_64" ]] && t="x86-64" + filter-flags '-march=*' + # ugly, ugly, ugly. ugly. + CFLAGS_x86=$(CFLAGS=${CFLAGS_x86} filter-flags '-march=*'; echo "${CFLAGS}") + export CFLAGS_x86="${CFLAGS_x86} -march=${t}" + einfo "Auto adding -march=${t} to CFLAGS_x86 #185404 (ABI=${ABI})" + fi + + # Workaround for https://bugs.gentoo.org/823780. This really should + # be removed when the upstream bug https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103275 + # is fixed in our tree, either via 11.3 or an 11.2p2 patch set. + if [[ ${ABI} == x86 ]] && tc-is-gcc && (($(gcc-major-version) == 11)) && (($(gcc-minor-version) <= 2)) && (($(gcc-micro-version) == 0)); then + export CFLAGS_x86="${CFLAGS_x86} -mno-avx512f" + einfo "Auto adding -mno-avx512f to CFLAGS_x86 (bug #823780) (ABI=${ABI})" + fi + ;; + mips) + # The mips abi cannot support the GNU style hashes. #233233 + filter-ldflags -Wl,--hash-style=gnu -Wl,--hash-style=both + ;; + ppc|ppc64) + # Many arch-specific implementations do not work on ppc with + # cache-block not equal to 128 bytes. This breaks memset: + # https://sourceware.org/PR26522 + # https://bugs.gentoo.org/737996 + # Use default -mcpu=. For ppc it means non-multiarch setup. + filter-flags '-mcpu=*' + ;; + sparc) + # Both sparc and sparc64 can use -fcall-used-g6. -g7 is bad, though. + filter-flags "-fcall-used-g7" + append-flags "-fcall-used-g6" + + local cpu + case ${CTARGET} in + sparc64-*) + cpu="sparc64" + case $(get-flag mcpu) in + v9) + # We need to force at least v9a because the base build doesn't + # work with just v9. + # https://sourceware.org/bugzilla/show_bug.cgi?id=19477 + append-flags "-Wa,-xarch=v9a" + ;; + esac + ;; + sparc-*) + case $(get-flag mcpu) in + v8|supersparc|hypersparc|leon|leon3) + cpu="sparcv8" + ;; + *) + cpu="sparcv9" + ;; + esac + ;; + esac + [[ -n ${cpu} ]] && CTARGET_OPT="${cpu}-${CTARGET#*-}" + ;; + esac +} + +setup_flags() { + # Make sure host make.conf doesn't pollute us + if is_crosscompile || tc-is-cross-compiler ; then + CHOST=${CTARGET} strip-unsupported-flags + fi + + # Store our CFLAGS because it's changed depending on which CTARGET + # we are building when pulling glibc on a multilib profile + CFLAGS_BASE=${CFLAGS_BASE-${CFLAGS}} + CFLAGS=${CFLAGS_BASE} + CXXFLAGS_BASE=${CXXFLAGS_BASE-${CXXFLAGS}} + CXXFLAGS=${CXXFLAGS_BASE} + ASFLAGS_BASE=${ASFLAGS_BASE-${ASFLAGS}} + ASFLAGS=${ASFLAGS_BASE} + + # Allow users to explicitly avoid flag sanitization via + # USE=custom-cflags. + if ! use custom-cflags; then + # Over-zealous CFLAGS can often cause problems. What may work for one + # person may not work for another. To avoid a large influx of bugs + # relating to failed builds, we strip most CFLAGS out to ensure as few + # problems as possible. + strip-flags + # Lock glibc at -O2; we want to be conservative here. + filter-flags '-O?' + append-flags -O2 + fi + + strip-unsupported-flags + filter-flags -m32 -m64 '-mabi=*' + + # glibc aborts if rpath is set by LDFLAGS + filter-ldflags '-Wl,-rpath=*' + + # ld can't use -r & --relax at the same time, bug #788901 + # https://sourceware.org/PR27837 + filter-ldflags '-Wl,--relax' + + # #492892 + filter-flags -frecord-gcc-switches + + # #829583 + filter-lfs-flags + + unset CBUILD_OPT CTARGET_OPT + if use multilib ; then + CTARGET_OPT=$(get_abi_CTARGET) + [[ -z ${CTARGET_OPT} ]] && CTARGET_OPT=$(get_abi_CHOST) + fi + + setup_target_flags + + if [[ -n ${CTARGET_OPT} && ${CBUILD} == ${CHOST} ]] && ! is_crosscompile; then + CBUILD_OPT=${CTARGET_OPT} + fi + + # glibc's headers disallow -O0 and fail at build time: + # include/libc-symbols.h:75:3: #error "glibc cannot be compiled without optimization" + replace-flags -O0 -O1 + + filter-flags '-fstack-protector*' + + # See end of bug #830454; we handle this via USE=cet + filter-flags '-fcf-protection=' +} + +use_multiarch() { + # Allow user to disable runtime arch detection in multilib. + use multiarch || return 1 + # Make sure binutils is new enough to support indirect functions, + # #336792. This funky sed supports gold and bfd linkers. + local bver nver + bver=$($(tc-getLD ${CTARGET}) -v | sed -n -r '1{s:[^0-9]*::;s:^([0-9.]*).*:\1:;p}') + case $(tc-arch ${CTARGET}) in + amd64|x86) nver="2.20" ;; + arm) nver="2.22" ;; + hppa) nver="2.23" ;; + ppc|ppc64) nver="2.20" ;; + # ifunc support was added in 2.23, but glibc also needs + # machinemode which is in 2.24. + s390) nver="2.24" ;; + sparc) nver="2.21" ;; + *) return 1 ;; + esac + ver_test ${bver} -ge ${nver} +} + +# Setup toolchain variables that had historically been defined in the +# profiles for these archs. +setup_env() { + # silly users + unset LD_RUN_PATH + unset LD_ASSUME_KERNEL + + if is_crosscompile || tc-is-cross-compiler ; then + multilib_env ${CTARGET_OPT:-${CTARGET}} + + if ! use multilib ; then + MULTILIB_ABIS=${DEFAULT_ABI} + else + MULTILIB_ABIS=${MULTILIB_ABIS:-${DEFAULT_ABI}} + fi + + # If the user has CFLAGS_<CTARGET> in their make.conf, use that, + # and fall back on CFLAGS. + local VAR=CFLAGS_${CTARGET//[-.]/_} + CFLAGS=${!VAR-${CFLAGS}} + einfo " $(printf '%15s' 'Manual CFLAGS:') ${CFLAGS}" + fi + + setup_flags + + export ABI=${ABI:-${DEFAULT_ABI:-default}} + + if just_headers ; then + # Avoid mixing host's CC and target's CFLAGS_${ABI}: + # At this bootstrap stage we have only binutils for + # target but not compiler yet. + einfo "Skip CC ABI injection. We can't use (cross-)compiler yet." + return 0 + fi + + # Glibc does not work with gold (for various reasons) #269274. + tc-ld-disable-gold + + if use doc ; then + export MAKEINFO=makeinfo + else + export MAKEINFO=/dev/null + fi + + # Reset CC and CXX to the value at start of emerge + export CC=${__ORIG_CC:-${CC:-$(tc-getCC ${CTARGET})}} + export CXX=${__ORIG_CXX:-${CXX:-$(tc-getCXX ${CTARGET})}} + + # and make sure __ORIC_CC and __ORIG_CXX is defined now. + export __ORIG_CC=${CC} + export __ORIG_CXX=${CXX} + + if tc-is-clang && ! use custom-cflags && ! is_crosscompile ; then + + # If we are running in an otherwise clang/llvm environment, we need to + # recover the proper gcc and binutils settings here, at least until glibc + # is finally building with clang. So let's override everything that is + # set in the clang profiles. + # Want to shoot yourself into the foot? Set USE=custom-cflags, that's always + # a good start into that direction. + # Also, if you're crosscompiling, let's assume you know what you are doing. + # Hopefully. + # Last, we need the settings of the *build* environment, not of the + # target environment... + + local current_binutils_path=$(env ROOT="${BROOT}" binutils-config -B) + local current_gcc_path=$(env ROOT="${BROOT}" gcc-config -B) + einfo "Overriding clang configuration, since it won't work here" + + export CC="${current_gcc_path}/gcc" + export CXX="${current_gcc_path}/g++" + export LD="${current_binutils_path}/ld.bfd" + export AR="${current_binutils_path}/ar" + export AS="${current_binutils_path}/as" + export NM="${current_binutils_path}/nm" + export STRIP="${current_binutils_path}/strip" + export RANLIB="${current_binutils_path}/ranlib" + export OBJCOPY="${current_binutils_path}/objcopy" + export STRINGS="${current_binutils_path}/strings" + export OBJDUMP="${current_binutils_path}/objdump" + export READELF="${current_binutils_path}/readelf" + export ADDR2LINE="${current_binutils_path}/addr2line" + + # do we need to also do flags munging here? yes! at least... + filter-flags '-fuse-ld=*' + filter-flags '-D_FORTIFY_SOURCE=*' + + else + + # this is the "normal" case + + export CC="$(tc-getCC ${CTARGET})" + export CXX="$(tc-getCXX ${CTARGET})" + + # Always use tuple-prefixed toolchain. For non-native ABI glibc's configure + # can't detect them automatically due to ${CHOST} mismatch and fallbacks + # to unprefixed tools. Similar to multilib.eclass:multilib_toolchain_setup(). + export NM="$(tc-getNM ${CTARGET})" + export READELF="$(tc-getREADELF ${CTARGET})" + + fi + + # We need to export CFLAGS with abi information in them because glibc's + # configure script checks CFLAGS for some targets (like mips). Keep + # around the original clean value to avoid appending multiple ABIs on + # top of each other. (Why does the comment talk about CFLAGS if the code + # acts on CC?) + export __GLIBC_CC=${CC} + export __GLIBC_CXX=${CXX} + + export __abi_CFLAGS="$(get_abi_CFLAGS)" + + # CFLAGS can contain ABI-specific flags like -mfpu=neon, see bug #657760 + # To build .S (assembly) files with the same ABI-specific flags + # upstream currently recommends adding CFLAGS to CC/CXX: + # https://sourceware.org/PR23273 + # Note: Passing CFLAGS via CPPFLAGS overrides glibc's arch-specific CFLAGS + # and breaks multiarch support. See 659030#c3 for an example. + # The glibc configure script doesn't properly use LDFLAGS all the time. + export CC="${__GLIBC_CC} ${__abi_CFLAGS} ${CFLAGS} ${LDFLAGS}" + + # Some of the tests are written in C++, so we need to force our multlib abis in, bug 623548 + export CXX="${__GLIBC_CXX} ${__abi_CFLAGS} ${CFLAGS}" + + if is_crosscompile; then + # Assume worst-case bootstrap: glibc is buil first time + # when ${CTARGET}-g++ is not available yet. We avoid + # building auxiliary programs that require C++: bug #683074 + # It should not affect final result. + export libc_cv_cxx_link_ok=no + # The line above has the same effect. We set CXX explicitly + # to make build logs less confusing. + export CXX= + fi +} + +foreach_abi() { + setup_env + + local ret=0 + local abilist="" + if use multilib ; then + abilist=$(get_install_abis) + else + abilist=${DEFAULT_ABI} + fi + local -x ABI + for ABI in ${abilist:-default} ; do + setup_env + einfo "Running $1 for ABI ${ABI}" + $1 + : $(( ret |= $? )) + done + return ${ret} +} + +glibc_banner() { + local b="Gentoo ${PVR}" + [[ -n ${PATCH_VER} ]] && ! use vanilla && b+=" p${PATCH_VER}" + echo "${b}" +} + +# The following Kernel version handling functions are mostly copied from portage +# source. It's better not to use linux-info.eclass here since a) it adds too +# much magic, see bug 326693 for some of the arguments, and b) some of the +# functions are just not provided. + +g_get_running_KV() { + uname -r + return $? +} + +g_KV_major() { + [[ -z $1 ]] && return 1 + local KV=$@ + echo "${KV%%.*}" +} + +g_KV_minor() { + [[ -z $1 ]] && return 1 + local KV=$@ + KV=${KV#*.} + echo "${KV%%.*}" +} + +g_KV_micro() { + [[ -z $1 ]] && return 1 + local KV=$@ + KV=${KV#*.*.} + echo "${KV%%[^[:digit:]]*}" +} + +g_KV_to_int() { + [[ -z $1 ]] && return 1 + local KV_MAJOR=$(g_KV_major "$1") + local KV_MINOR=$(g_KV_minor "$1") + local KV_MICRO=$(g_KV_micro "$1") + local KV_int=$(( KV_MAJOR * 65536 + KV_MINOR * 256 + KV_MICRO )) + + # We make version 2.2.0 the minimum version we will handle as + # a sanity check ... if its less, we fail ... + if [[ ${KV_int} -ge 131584 ]] ; then + echo "${KV_int}" + return 0 + fi + return 1 +} + +g_int_to_KV() { + local version=$1 major minor micro + major=$((version / 65536)) + minor=$(((version % 65536) / 256)) + micro=$((version % 256)) + echo ${major}.${minor}.${micro} +} + +eend_KV() { + [[ $(g_KV_to_int $1) -ge $(g_KV_to_int $2) ]] + eend $? +} + +get_kheader_version() { + printf '#include <linux/version.h>\nLINUX_VERSION_CODE\n' | \ + $(tc-getCPP ${CTARGET}) -I "$(build_eprefix)$(alt_build_headers)" - | \ + tail -n 1 +} + +# We collect all sanity checks here. Consistency is not guranteed between +# pkg_ and src_ phases, so we call this function both in pkg_pretend and in +# src_unpack. +sanity_prechecks() { + # Prevent native builds from downgrading + if [[ ${MERGE_TYPE} != "buildonly" ]] && \ + [[ -z ${ROOT} ]] && \ + [[ ${CBUILD} == ${CHOST} ]] && \ + [[ ${CHOST} == ${CTARGET} ]] ; then + + # The high rev # is to allow people to downgrade between -r# + # versions. We want to block 2.20->2.19, but 2.20-r3->2.20-r2 + # should be fine. Hopefully we never actually use a r# this + # high. + if has_version ">${CATEGORY}/${P}-r10000" ; then + eerror "Sanity check to keep you from breaking your system:" + eerror " Downgrading glibc is not supported and a sure way to destruction." + [[ ${I_ALLOW_TO_BREAK_MY_SYSTEM} = yes ]] || die "Aborting to save your system." + fi + + if ! do_run_test '#include <unistd.h>\n#include <sys/syscall.h>\nint main(){return syscall(1000)!=-1;}\n' ; then + eerror "Your old kernel is broken. You need to update it to a newer" + eerror "version as syscall(<bignum>) will break. See bug 279260." + die "Old and broken kernel." + fi + fi + + # Users have had a chance to phase themselves, time to give em the boot + if [[ -e ${EROOT}/etc/locale.gen ]] && [[ -e ${EROOT}/etc/locales.build ]] ; then + eerror "You still haven't deleted ${EROOT}/etc/locales.build." + eerror "Do so now after making sure ${EROOT}/etc/locale.gen is kosher." + die "Lazy upgrader detected" + fi + + if [[ ${CTARGET} == i386-* ]] ; then + eerror "i386 CHOSTs are no longer supported." + eerror "Chances are you don't actually want/need i386." + eerror "Please read https://www.gentoo.org/doc/en/change-chost.xml" + die "Please fix your CHOST" + fi + + if [[ -e /proc/xen ]] && [[ $(tc-arch) == "x86" ]] && ! is-flag -mno-tls-direct-seg-refs ; then + ewarn "You are using Xen but don't have -mno-tls-direct-seg-refs in your CFLAGS." + ewarn "This will result in a 50% performance penalty when running with a 32bit" + ewarn "hypervisor, which is probably not what you want." + fi + + # ABI-specific checks follow here. Hey, we have a lot more specific conditions that + # we test for... + if ! is_crosscompile ; then + if use amd64 && use multilib && [[ ${MERGE_TYPE} != "binary" ]] ; then + ebegin "Checking that IA32 emulation is enabled in the running kernel" + echo 'int main(){return 0;}' > "${T}/check-ia32-emulation.c" + local STAT + if "${CC-${CHOST}-gcc}" ${CFLAGS_x86} "${T}/check-ia32-emulation.c" -o "${T}/check-ia32-emulation.elf32"; then + "${T}/check-ia32-emulation.elf32" + STAT=$? + else + # Don't fail here to allow single->multi ABI switch + # or recover from breakage like bug #646424 + ewarn "Failed to compile the ABI test. Broken host glibc?" + STAT=0 + fi + rm -f "${T}/check-ia32-emulation.elf32" + eend $STAT + [[ $STAT -eq 0 ]] || die "CONFIG_IA32_EMULATION must be enabled in the kernel to compile a multilib glibc." + fi + + fi + + # When we actually have to compile something... + if ! just_headers && [[ ${MERGE_TYPE} != "binary" ]] ; then + if [[ -d "${ESYSROOT}"/usr/lib/include ]] ; then + # bug #833620, bug #643302 + eerror "Found ${ESYSROOT}/usr/lib/include directory!" + eerror "This is known to break glibc's build." + eerror "Please backup its contents then remove the directory." + die "Found directory (${ESYSROOT}/usr/lib/include) which will break build (bug #833620)!" + fi + + if [[ ${CTARGET} == *-linux* ]] ; then + local run_kv build_kv want_kv + + run_kv=$(g_get_running_KV) + build_kv=$(g_int_to_KV $(get_kheader_version)) + want_kv=${MIN_KERN_VER} + + if ! is_crosscompile && ! tc-is-cross-compiler ; then + # Building fails on an non-supporting kernel + ebegin "Checking running kernel version (${run_kv} >= ${want_kv})" + if ! eend_KV ${run_kv} ${want_kv} ; then + echo + eerror "You need a kernel of at least ${want_kv}!" + die "Kernel version too low!" + fi + fi + + ebegin "Checking linux-headers version (${build_kv} >= ${want_kv})" + if ! eend_KV ${build_kv} ${want_kv} ; then + echo + eerror "You need linux-headers of at least ${want_kv}!" + die "linux-headers version too low!" + fi + fi + fi +} + +upgrade_warning() { + if [[ ${MERGE_TYPE} != buildonly && -n ${REPLACING_VERSIONS} && -z ${ROOT} ]]; then + local oldv newv=$(ver_cut 1-2 ${PV}) + for oldv in ${REPLACING_VERSIONS}; do + if ver_test ${oldv} -lt ${newv}; then + ewarn "After upgrading glibc, please restart all running processes." + ewarn "Be sure to include init (telinit u) or systemd (systemctl daemon-reexec)." + ewarn "Alternatively, reboot your system." + ewarn "(See bug #660556, bug #741116, bug #823756, etc)" + break + fi + done + fi +} + +# +# the phases +# + +# pkg_pretend + +pkg_pretend() { + # All the checks... + einfo "Checking general environment sanity." + sanity_prechecks + upgrade_warning +} + +pkg_setup() { + # see bug 682570 + [[ -z ${BOOTSTRAP_RAP} ]] && python-any-r1_pkg_setup +} + +# src_unpack + +src_unpack() { + # Consistency is not guaranteed between pkg_ and src_ ... + sanity_prechecks + + use multilib-bootstrap && unpack gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}.tar.xz + + setup_env + + if [[ ${PV} == 9999* ]] ; then + EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/toolchain/glibc-patches.git" + EGIT_CHECKOUT_DIR=${WORKDIR}/patches-git + git-r3_src_unpack + mv patches-git/9999 patches || die + + EGIT_REPO_URI="https://sourceware.org/git/glibc.git" + EGIT_CHECKOUT_DIR=${S} + git-r3_src_unpack + else + unpack ${P}.tar.xz + + cd "${WORKDIR}" || die + unpack glibc-${RELEASE_VER}-patches-${PATCH_VER}.tar.xz + fi + + cd "${WORKDIR}" || die + unpack locale-gen-${LOCALE_GEN_VER}.tar.gz + use systemd && unpack glibc-systemd-${GLIBC_SYSTEMD_VER}.tar.gz +} + +src_prepare() { + local patchsetname + if ! use vanilla ; then + if [[ ${PV} == 9999* ]] ; then + patchsetname="from git master" + else + patchsetname="${RELEASE_VER}-${PATCH_VER}" + fi + einfo "Applying Gentoo Glibc Patchset ${patchsetname}" + eapply "${WORKDIR}"/patches + einfo "Done." + fi + + if use clone3 ; then + append-cppflags -DGENTOO_USE_CLONE3 + else + # See e.g. bug #827386, bug #819045. + elog "Disabling the clone3 syscall for compatibility with older Electron apps." + elog "Please re-enable this flag before filing bugs!" + fi + + default + + gnuconfig_update + + cd "${WORKDIR}" + find . -name configure -exec touch {} + + + # move the external locale-gen to its old place + mkdir extra || die + mv locale-gen-${LOCALE_GEN_VER} extra/locale || die + + eprefixify extra/locale/locale-gen + + # Fix permissions on some of the scripts. + chmod u+x "${S}"/scripts/*.sh + + cd "${S}" +} + +glibc_do_configure() { + + local v + for v in ABI CBUILD CHOST CTARGET CBUILD_OPT CTARGET_OPT CC CXX LD {AS,C,CPP,CXX,LD}FLAGS MAKEINFO NM AR AS STRIP RANLIB OBJCOPY STRINGS OBJDUMP READELF; do + einfo " $(printf '%15s' ${v}:) ${!v}" + done + + echo + local myconf=() + + case ${CTARGET} in + m68k*) + # setjmp() is not compatible with stack protection: + # https://sourceware.org/PR24202 + myconf+=( --enable-stack-protector=no ) + ;; + *) + # Use '=strong' instead of '=all' to protect only functions + # worth protecting from stack smashes. + # '=all' is also known to have a problem in IFUNC resolution + # tests: https://sourceware.org/PR25680, bug #712356. + myconf+=( --enable-stack-protector=$(usex ssp strong no) ) + ;; + esac + myconf+=( --enable-stackguard-randomization ) + + # Keep a whitelist of targets supporing IFUNC. glibc's ./configure + # is not robust enough to detect proper support: + # https://bugs.gentoo.org/641216 + # https://sourceware.org/PR22634#c0 + case $(tc-arch ${CTARGET}) in + # Keep whitelist of targets where autodetection mostly works. + amd64|x86|sparc|ppc|ppc64|arm|arm64|s390) ;; + # Blacklist everywhere else + *) myconf+=( libc_cv_ld_gnu_indirect_function=no ) ;; + esac + + # Enable Intel Control-flow Enforcement Technology on amd64 if requested + case ${CTARGET} in + x86_64-*) myconf+=( $(use_enable cet) ) ;; + *) ;; + esac + + [[ $(tc-is-softfloat) == "yes" ]] && myconf+=( --without-fp ) + + myconf+=( --enable-kernel=${MIN_KERN_VER} ) + + # Since SELinux support is only required for nscd, only enable it if: + # 1. USE selinux + # 2. only for the primary ABI on multilib systems + # 3. Not a crosscompile + if ! is_crosscompile && use selinux ; then + if use multilib ; then + if is_final_abi ; then + myconf+=( --with-selinux ) + else + myconf+=( --without-selinux ) + fi + else + myconf+=( --with-selinux ) + fi + else + myconf+=( --without-selinux ) + fi + + # Force a few tests where we always know the answer but + # configure is incapable of finding it. + if is_crosscompile ; then + export \ + libc_cv_c_cleanup=yes \ + libc_cv_forced_unwind=yes + fi + + myconf+=( + --without-cvs + --disable-werror + --enable-bind-now + --build=${CBUILD_OPT:-${CBUILD}} + --host=${CTARGET_OPT:-${CTARGET}} + $(use_enable profile) + $(use_with gd) + --with-headers=$(build_eprefix)$(alt_build_headers) + --prefix="$(host_eprefix)/usr" + --sysconfdir="$(host_eprefix)/etc" + --localstatedir="$(host_eprefix)/var" + --libdir='$(prefix)'/$(get_libdir) + --mandir='$(prefix)'/share/man + --infodir='$(prefix)'/share/info + --libexecdir='$(libdir)'/misc/glibc + --with-bugurl=https://bugs.gentoo.org/ + --with-pkgversion="$(glibc_banner)" + $(use_enable crypt) + $(use_multiarch || echo --disable-multi-arch) + $(use_enable static-pie) + $(use_enable systemtap) + $(use_enable nscd) + + # locale data is arch-independent + # https://bugs.gentoo.org/753740 + libc_cv_complocaledir='${exec_prefix}/lib/locale' + + # -march= option tricks build system to infer too + # high ISA level: https://sourceware.org/PR27318 + libc_cv_include_x86_isa_level=no + # Explicit override of https://sourceware.org/PR27991 + # exposes a bug in glibc's configure: + # https://sourceware.org/PR27991 + libc_cv_have_x86_lahf_sahf=no + libc_cv_have_x86_movbe=no + + ${EXTRA_ECONF} + ) + + # We rely on sys-libs/timezone-data for timezone tools normally. + myconf+=( $(use_enable vanilla timezone-tools) ) + + # These libs don't have configure flags. + ac_cv_lib_audit_audit_log_user_avc_message=$(usex audit || echo no) + ac_cv_lib_cap_cap_init=$(usex caps || echo no) + + # There is no configure option for this and we need to export it + # since the glibc build will re-run configure on itself + export libc_cv_rootsbindir="$(host_eprefix)/sbin" + export libc_cv_slibdir="$(host_eprefix)/$(get_libdir)" + + local builddir=$(builddir nptl) + mkdir -p "${builddir}" + cd "${builddir}" + set -- "${S}"/configure "${myconf[@]}" + echo "$@" + "$@" || die "failed to configure glibc" + + # ia64 static cross-compilers are a pita in so much that they + # can't produce static ELFs (as the libgcc.a is broken). so + # disable building of the programs for those targets if it + # doesn't work. + # XXX: We could turn this into a compiler test, but ia64 is + # the only one that matters, so this should be fine for now. + if is_crosscompile && [[ ${CTARGET} == ia64* ]] ; then + sed -i '1i+link-static = touch $@' config.make + fi + + # If we're trying to migrate between ABI sets, we need + # to lie and use a local copy of gcc. Like if the system + # is built with MULTILIB_ABIS="amd64 x86" but we want to + # add x32 to it, gcc/glibc don't yet support x32. + # + if [[ -n ${GCC_BOOTSTRAP_VER} ]] && use multilib-bootstrap ; then + echo 'main(){}' > "${T}"/test.c + if ! $(tc-getCC ${CTARGET}) ${CFLAGS} ${LDFLAGS} "${T}"/test.c -Wl,-emain -lgcc 2>/dev/null ; then + sed -i -e '/^CC = /s:$: -B$(objdir)/../'"gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}/${ABI}:" config.make || die + fi + fi +} + +glibc_headers_configure() { + export ABI=default + + local builddir=$(builddir "headers") + mkdir -p "${builddir}" + cd "${builddir}" + + # if we don't have a compiler yet, we can't really test it now ... + # hopefully they don't affect header generation, so let's hope for + # the best here ... + local v vars=( + ac_cv_header_cpuid_h=yes + libc_cv_{386,390,alpha,arm,hppa,ia64,mips,{powerpc,sparc}{,32,64},sh,x86_64}_tls=yes + libc_cv_asm_cfi_directives=yes + libc_cv_broken_visibility_attribute=no + libc_cv_c_cleanup=yes + libc_cv_compiler_powerpc64le_binary128_ok=yes + libc_cv_forced_unwind=yes + libc_cv_gcc___thread=yes + libc_cv_mlong_double_128=yes + libc_cv_mlong_double_128ibm=yes + libc_cv_ppc_machine=yes + libc_cv_ppc_rel16=yes + libc_cv_predef_fortify_source=no + libc_cv_target_power8_ok=yes + libc_cv_visibility_attribute=yes + libc_cv_z_combreloc=yes + libc_cv_z_execstack=yes + libc_cv_z_initfirst=yes + libc_cv_z_nodelete=yes + libc_cv_z_nodlopen=yes + libc_cv_z_relro=yes + libc_mips_abi=${ABI} + libc_mips_float=$([[ $(tc-is-softfloat) == "yes" ]] && echo soft || echo hard) + # These libs don't have configure flags. + ac_cv_lib_audit_audit_log_user_avc_message=no + ac_cv_lib_cap_cap_init=no + ) + + einfo "Forcing cached settings:" + for v in "${vars[@]}" ; do + einfo " ${v}" + export ${v} + done + + local headers_only_arch_CPPFLAGS=() + + # Blow away some random CC settings that screw things up. #550192 + if [[ -d ${S}/sysdeps/mips ]]; then + pushd "${S}"/sysdeps/mips >/dev/null + sed -i -e '/^CC +=/s:=.*:= -D_MIPS_SZPTR=32:' mips32/Makefile mips64/n32/Makefile || die + sed -i -e '/^CC +=/s:=.*:= -D_MIPS_SZPTR=64:' mips64/n64/Makefile || die + + # Force the mips ABI to the default. This is OK because the set of + # installed headers in this phase is the same between the 3 ABIs. + # If this ever changes, this hack will break, but that's unlikely + # as glibc discourages that behavior. + # https://crbug.com/647033 + sed -i -e 's:abiflag=.*:abiflag=_ABIO32:' preconfigure || die + + popd >/dev/null + fi + + case ${CTARGET} in + riscv*) + # RISC-V interrogates the compiler to determine which target to + # build. If building the headers then we don't strictly need a + # RISC-V compiler, so the built-in definitions that are provided + # along with all RISC-V compiler might not exist. This causes + # glibc's RISC-V preconfigure script to blow up. Since we're just + # building the headers any value will actually work here, so just + # pick the standard one (rv64g/lp64d) to make the build scripts + # happy for now -- the headers are all the same anyway so it + # doesn't matter. + headers_only_arch_CPPFLAGS+=( + -D__riscv_xlen=64 + -D__riscv_flen=64 + -D__riscv_float_abi_double=1 + -D__riscv_atomic=1 + ) ;; + esac + + local myconf=() + myconf+=( + --disable-sanity-checks + --enable-hacker-mode + --without-cvs + --disable-werror + --enable-bind-now + --build=${CBUILD_OPT:-${CBUILD}} + --host=${CTARGET_OPT:-${CTARGET}} + --with-headers=$(build_eprefix)$(alt_build_headers) + --prefix="$(host_eprefix)/usr" + ${EXTRA_ECONF} + ) + + # Nothing is compiled here which would affect the headers for the target. + # So forcing CC/CFLAGS is sane. + local headers_only_CC=$(tc-getBUILD_CC) + local headers_only_CFLAGS="-O1 -pipe" + local headers_only_CPPFLAGS="-U_FORTIFY_SOURCE ${headers_only_arch_CPPFLAGS[*]}" + local headers_only_LDFLAGS="" + set -- "${S}"/configure "${myconf[@]}" + echo \ + "CC=${headers_only_CC}" \ + "CFLAGS=${headers_only_CFLAGS}" \ + "CPPFLAGS=${headers_only_CPPFLAGS}" \ + "LDFLAGS=${headers_only_LDFLAGS}" \ + "$@" + CC=${headers_only_CC} \ + CFLAGS=${headers_only_CFLAGS} \ + CPPFLAGS=${headers_only_CPPFLAGS} \ + LDFLAGS="" \ + "$@" || die "failed to configure glibc" +} + +do_src_configure() { + if just_headers ; then + glibc_headers_configure + else + glibc_do_configure nptl + fi +} + +src_configure() { + foreach_abi do_src_configure +} + +do_src_compile() { + emake -C "$(builddir nptl)" +} + +src_compile() { + if just_headers ; then + return + fi + + foreach_abi do_src_compile +} + +glibc_src_test() { + cd "$(builddir nptl)" + + local myxfailparams="" + if [[ "${GENTOO_GLIBC_XFAIL_TESTS}" == "yes" ]] ; then + for myt in ${XFAIL_TEST_LIST[@]} ; do + myxfailparams+="test-xfail-${myt}=yes " + done + fi + + # sandbox does not understand unshare() and prevents + # writes to /proc/, which makes many tests fail + + SANDBOX_ON=0 LD_PRELOAD= emake ${myxfailparams} check +} + +do_src_test() { + local ret=0 + + glibc_src_test + : $(( ret |= $? )) + + return ${ret} +} + +src_test() { + if just_headers ; then + return + fi + + # Give tests more time to complete. + export TIMEOUTFACTOR=5 + + foreach_abi do_src_test || die "tests failed" +} + +run_locale_gen() { + # if the host locales.gen contains no entries, we'll install everything + local root="$1" + local inplace="" + + if [[ "${root}" == "--inplace-glibc" ]] ; then + inplace="--inplace-glibc" + root="$2" + fi + + local locale_list="${root%/}/etc/locale.gen" + + pushd "${ED}"/$(get_libdir) >/dev/null + + if [[ -z $(locale-gen --list --config "${locale_list}") ]] ; then + [[ -z ${inplace} ]] && ewarn "Generating all locales; edit /etc/locale.gen to save time/space" + locale_list="${root%/}/usr/share/i18n/SUPPORTED" + fi + + set -- locale-gen ${inplace} --jobs $(makeopts_jobs) --config "${locale_list}" \ + --destdir "${root}" + echo "$@" + "$@" + + popd >/dev/null +} + +glibc_do_src_install() { + local builddir=$(builddir nptl) + cd "${builddir}" + + emake install_root="${D}/$(build_eprefix)$(alt_prefix)" install + + # This version (2.26) provides some compatibility libraries for the NIS/NIS+ support + # which come without headers etc. Only needed for binary packages since the + # external net-libs/libnsl has increased soversion. Keep only versioned libraries. + find "${D}" -name "libnsl.a" -delete + find "${D}" -name "libnsl.so" -delete + + # Normally upstream_pv is ${PV}. Live ebuilds are exception, there we need + # to infer upstream version: + # '#define VERSION "2.26.90"' -> '2.26.90' + local upstream_pv=$(sed -n -r 's/#define VERSION "(.*)"/\1/p' "${S}"/version.h) + + # Avoid stripping binaries not targeted by ${CHOST}. Or else + # ${CHOST}-strip would break binaries build for ${CTARGET}. + is_crosscompile && dostrip -x / + # gdb thread introspection relies on local libpthreas symbols. stripping breaks it + # See Note [Disable automatic stripping] + dostrip -x $(alt_libdir)/libpthread-${upstream_pv}.so + + if [[ -e ${ED}/$(alt_usrlibdir)/libm-${upstream_pv}.a ]] ; then + # Move versioned .a file out of libdir to evade portage QA checks + # instead of using gen_usr_ldscript(). We fix ldscript as: + # "GROUP ( /usr/lib64/libm-<pv>.a ..." -> "GROUP ( /usr/lib64/glibc-<pv>/libm-<pv>.a ..." + sed -i "s@\(libm-${upstream_pv}.a\)@${P}/\1@" "${ED}"/$(alt_usrlibdir)/libm.a || die + dodir $(alt_usrlibdir)/${P} + mv "${ED}"/$(alt_usrlibdir)/libm-${upstream_pv}.a "${ED}"/$(alt_usrlibdir)/${P}/libm-${upstream_pv}.a || die + fi + + # We'll take care of the cache ourselves + rm -f "${ED}"/etc/ld.so.cache + + # Everything past this point just needs to be done once ... + is_final_abi || return 0 + + # Make sure the non-native interp can be found on multilib systems even + # if the main library set isn't installed into the right place. Maybe + # we should query the active gcc for info instead of hardcoding it ? + local i ldso_abi ldso_name + local ldso_abi_list=( + # x86 + amd64 /lib64/ld-linux-x86-64.so.2 + x32 /libx32/ld-linux-x32.so.2 + x86 /lib/ld-linux.so.2 + # mips + o32 /lib/ld.so.1 + n32 /lib32/ld.so.1 + n64 /lib64/ld.so.1 + # powerpc + ppc /lib/ld.so.1 + # riscv + ilp32d /lib/ld-linux-riscv32-ilp32d.so.1 + ilp32 /lib/ld-linux-riscv32-ilp32.so.1 + lp64d /lib/ld-linux-riscv64-lp64d.so.1 + lp64 /lib/ld-linux-riscv64-lp64.so.1 + # s390 + s390 /lib/ld.so.1 + s390x /lib/ld64.so.1 + # sparc + sparc32 /lib/ld-linux.so.2 + sparc64 /lib64/ld-linux.so.2 + ) + case $(tc-endian) in + little) + ldso_abi_list+=( + # arm + arm64 /lib/ld-linux-aarch64.so.1 + # ELFv2 (glibc does not support ELFv1 on LE) + ppc64 /lib64/ld64.so.2 + ) + ;; + big) + ldso_abi_list+=( + # arm + arm64 /lib/ld-linux-aarch64_be.so.1 + # ELFv1 (glibc does not support ELFv2 on BE) + ppc64 /lib64/ld64.so.1 + ) + ;; + esac + if [[ ${SYMLINK_LIB} == "yes" ]] && [[ ! -e ${ED}/$(alt_prefix)/lib ]] ; then + dosym $(get_abi_LIBDIR ${DEFAULT_ABI}) $(alt_prefix)/lib + fi + for (( i = 0; i < ${#ldso_abi_list[@]}; i += 2 )) ; do + ldso_abi=${ldso_abi_list[i]} + has ${ldso_abi} $(get_install_abis) || continue + + ldso_name="$(alt_prefix)${ldso_abi_list[i+1]}" + if [[ ! -L ${ED}/${ldso_name} && ! -e ${ED}/${ldso_name} ]] ; then + dosym ../$(get_abi_LIBDIR ${ldso_abi})/${ldso_name##*/} ${ldso_name} + fi + done + + # In the LSB 5.0 definition, someone had the excellent idea to "standardize" + # the runtime loader name, see also https://xkcd.com/927/ + # Normally, in Gentoo one should never come across executables that require this. + # However, binary commercial packages are known to adhere to weird practices. + # https://refspecs.linuxfoundation.org/LSB_5.0.0/LSB-Core-AMD64/LSB-Core-AMD64.html#BASELIB + local lsb_ldso_name native_ldso_name lsb_ldso_abi + local lsb_ldso_abi_list=( + # x86 + amd64 ld-linux-x86-64.so.2 ld-lsb-x86-64.so.3 + ) + for (( i = 0; i < ${#lsb_ldso_abi_list[@]}; i += 3 )) ; do + lsb_ldso_abi=${lsb_ldso_abi_list[i]} + native_ldso_name=${lsb_ldso_abi_list[i+1]} + lsb_ldso_name=${lsb_ldso_abi_list[i+2]} + has ${lsb_ldso_abi} $(get_install_abis) || continue + + if [[ ! -L ${ED}/$(get_abi_LIBDIR ${lsb_ldso_abi})/${lsb_ldso_name} && ! -e ${ED}/$(get_abi_LIBDIR ${lsb_ldso_abi})/${lsb_ldso_name} ]] ; then + dosym ${native_ldso_name} "$(alt_prefix)/$(get_abi_LIBDIR ${lsb_ldso_abi})/${lsb_ldso_name}" + fi + done + + # With devpts under Linux mounted properly, we do not need the pt_chown + # binary to be setuid. This is because the default owners/perms will be + # exactly what we want. + if ! use suid ; then + find "${ED}" -name pt_chown -exec chmod -s {} + + fi + + ################################################################# + # EVERYTHING AFTER THIS POINT IS FOR NATIVE GLIBC INSTALLS ONLY # + # Make sure we install some symlink hacks so that when we build + # a 2nd stage cross-compiler, gcc finds the target system + # headers correctly. See gcc/doc/gccinstall.info + if is_crosscompile ; then + # We need to make sure that /lib and /usr/lib always exists. + # gcc likes to use relative paths to get to its multilibs like + # /usr/lib/../lib64/. So while we don't install any files into + # /usr/lib/, we do need it to exist. + keepdir $(alt_prefix)/lib + keepdir $(alt_prefix)/usr/lib + + dosym usr/include $(alt_prefix)/sys-include + return 0 + fi + + # Files for Debian-style locale updating + dodir /usr/share/i18n + sed \ + -e "/^#/d" \ + -e "/SUPPORTED-LOCALES=/d" \ + -e "s: \\\\::g" -e "s:/: :g" \ + "${S}"/localedata/SUPPORTED > "${ED}"/usr/share/i18n/SUPPORTED \ + || die "generating /usr/share/i18n/SUPPORTED failed" + cd "${WORKDIR}"/extra/locale + dosbin locale-gen + doman *.[0-8] + insinto /etc + doins locale.gen + + keepdir /usr/lib/locale + + cd "${S}" + + # Install misc network config files + insinto /etc + doins posix/gai.conf + + if use systemd ; then + doins "${WORKDIR}/glibc-systemd-${GLIBC_SYSTEMD_VER}/gentoo-config/nsswitch.conf" + else + doins nss/nsswitch.conf + fi + + # Gentoo-specific + newins "${FILESDIR}"/host.conf-1 host.conf + + if use nscd ; then + doins nscd/nscd.conf + + newinitd "$(prefixify_ro "${FILESDIR}"/nscd-1)" nscd + + local nscd_args=( + -e "s:@PIDFILE@:$(strings "${ED}"/usr/sbin/nscd | grep nscd.pid):" + ) + + sed -i "${nscd_args[@]}" "${ED}"/etc/init.d/nscd + + use systemd && systemd_dounit nscd/nscd.service + newtmpfiles nscd/nscd.tmpfiles nscd.conf + fi + + echo 'LDPATH="include ld.so.conf.d/*.conf"' > "${T}"/00glibc + doenvd "${T}"/00glibc + + for d in BUGS ChangeLog CONFORMANCE FAQ NEWS NOTES PROJECTS README* ; do + [[ -s ${d} ]] && dodoc ${d} + done + dodoc -r ChangeLog.old + + # Prevent overwriting of the /etc/localtime symlink. We'll handle the + # creation of the "factory" symlink in pkg_postinst(). + rm -f "${ED}"/etc/localtime + + # Generate all locales if this is a native build as locale generation + if use compile-locales && ! is_crosscompile ; then + run_locale_gen --inplace-glibc "${ED}/" + sed -e 's:COMPILED_LOCALES="":COMPILED_LOCALES="1":' -i "${ED}"/usr/sbin/locale-gen || die + fi +} + +glibc_headers_install() { + local builddir=$(builddir "headers") + cd "${builddir}" + emake install_root="${D}/$(build_eprefix)$(alt_prefix)" install-headers + + insinto $(alt_headers)/gnu + doins "${S}"/include/gnu/stubs.h + + # Make sure we install the sys-include symlink so that when + # we build a 2nd stage cross-compiler, gcc finds the target + # system headers correctly. See gcc/doc/gccinstall.info + dosym usr/include $(alt_prefix)/sys-include +} + +src_install() { + if just_headers ; then + export ABI=default + glibc_headers_install + return + fi + + foreach_abi glibc_do_src_install + + if ! use static-libs ; then + einfo "Not installing static glibc libraries" + find "${ED}" -name "*.a" -and -not -name "*_nonshared.a" -delete + fi +} + +# Simple test to make sure our new glibc isn't completely broken. +# Make sure we don't test with statically built binaries since +# they will fail. Also, skip if this glibc is a cross compiler. +# +# If coreutils is built with USE=multicall, some of these files +# will just be wrapper scripts, not actual ELFs we can test. +glibc_sanity_check() { + cd / #228809 + + # We enter ${ED} so to avoid trouble if the path contains + # special characters; for instance if the path contains the + # colon character (:), then the linker will try to split it + # and look for the libraries in an unexpected place. This can + # lead to unsafe code execution if the generated prefix is + # within a world-writable directory. + # (e.g. /var/tmp/portage:${HOSTNAME}) + pushd "${ED}"/$(get_libdir) >/dev/null + + # first let's find the actual dynamic linker here + # symlinks may point to the wrong abi + local newldso=$(find . -maxdepth 1 -name 'ld*so.?' -type f -print -quit) + + einfo Last-minute run tests with ${newldso} in /$(get_libdir) ... + + local x striptest + for x in cal date env free ls true uname uptime ; do + x=$(type -p ${x}) + [[ -z ${x} || ${x} != ${EPREFIX}/* ]] && continue + striptest=$(LC_ALL="C" file -L ${x} 2>/dev/null) || continue + case ${striptest} in + *"statically linked"*) continue;; + *"ASCII text"*) continue;; + esac + # We need to clear the locale settings as the upgrade might want + # incompatible locale data. This test is not for verifying that. + LC_ALL=C \ + ${newldso} --library-path . ${x} > /dev/null \ + || die "simple run test (${x}) failed" + done + + popd >/dev/null +} + +pkg_preinst() { + # nothing to do if just installing headers + just_headers && return + + # prepare /etc/ld.so.conf.d/ for files + mkdir -p "${EROOT}"/etc/ld.so.conf.d + + # Default /etc/hosts.conf:multi to on for systems with small dbs. + if [[ $(wc -l < "${EROOT}"/etc/hosts) -lt 1000 ]] ; then + sed -i '/^multi off/s:off:on:' "${ED}"/etc/host.conf + einfo "Defaulting /etc/host.conf:multi to on" + fi + + [[ -n ${ROOT} ]] && return 0 + [[ -d ${ED}/$(get_libdir) ]] || return 0 + [[ -z ${BOOTSTRAP_RAP} ]] && glibc_sanity_check + + if [[ -L ${EROOT}/usr/lib/locale ]]; then + # Help portage migrate this to a directory + # https://bugs.gentoo.org/753740 + rm "${EROOT}"/usr/lib/locale || die + fi + + # Keep around libcrypt so that Perl doesn't break when merging libxcrypt + # (libxcrypt is the new provider for now of libcrypt.so.{1,2}). + # bug #802207 + if ! use crypt && has_version "${CATEGORY}/${PN}[crypt]" && ! has preserve-libs ${FEATURES}; then + PRESERVED_OLD_LIBCRYPT=1 + cp -p "${EROOT}/$(get_libdir)/libcrypt$(get_libname 1)" "${T}/libcrypt$(get_libname 1)" || die + else + PRESERVED_OLD_LIBCRYPT=0 + fi +} + +pkg_postinst() { + # nothing to do if just installing headers + just_headers && return + + if ! tc-is-cross-compiler && [[ -x ${EROOT}/usr/sbin/iconvconfig ]] ; then + # Generate fastloading iconv module configuration file. + "${EROOT}"/usr/sbin/iconvconfig --prefix="${ROOT}/" + fi + + if ! is_crosscompile && [[ -z ${ROOT} ]] ; then + use compile-locales || run_locale_gen "${EROOT}/" + fi + + upgrade_warning + + # Check for sanity of /etc/nsswitch.conf, take 2 + if [[ -e ${EROOT}/etc/nsswitch.conf ]] && ! has_version sys-auth/libnss-nis ; then + local entry + for entry in passwd group shadow; do + if egrep -q "^[ \t]*${entry}:.*nis" "${EROOT}"/etc/nsswitch.conf; then + ewarn "" + ewarn "Your ${EROOT}/etc/nsswitch.conf uses NIS. Support for that has been" + ewarn "removed from glibc and is now provided by the package" + ewarn " sys-auth/libnss-nis" + ewarn "Install it now to keep your NIS setup working." + ewarn "" + fi + done + fi + + if [[ ${PRESERVED_OLD_LIBCRYPT} -eq 1 ]] ; then + cp -p "${T}/libcrypt$(get_libname 1)" "${EROOT}/$(get_libdir)/libcrypt$(get_libname 1)" || die + preserve_old_lib_notify /$(get_libdir)/libcrypt$(get_libname 1) + + elog "Please ignore a possible later error message about a file collision involving" + elog "${EROOT}/$(get_libdir)/libcrypt$(get_libname 1). We need to preserve this file for the moment to keep" + elog "the upgrade working, but it also needs to be overwritten when" + elog "sys-libs/libxcrypt is installed. See bug 802210 for more details." + fi +} diff --git a/sys-libs/glibc/glibc-2.34-r13.ebuild b/sys-libs/glibc/glibc-2.34-r13.ebuild new file mode 100644 index 000000000000..dd432185bf98 --- /dev/null +++ b/sys-libs/glibc/glibc-2.34-r13.ebuild @@ -0,0 +1,1617 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +# Bumping notes: https://wiki.gentoo.org/wiki/Project:Toolchain/sys-libs/glibc +# Please read & adapt the page as necessary if obsolete. + +# We avoid Python 3.10 here _for now_ (it does work!) to avoid circular dependencies +# on upgrades as people migrate to libxcrypt. +# https://wiki.gentoo.org/wiki/User:Sam/Portage_help/Circular_dependencies#Python_and_libcrypt +PYTHON_COMPAT=( python3_{8,9} ) +TMPFILES_OPTIONAL=1 + +inherit python-any-r1 prefix preserve-libs toolchain-funcs flag-o-matic gnuconfig \ + multilib systemd multiprocessing tmpfiles + +DESCRIPTION="GNU libc C library" +HOMEPAGE="https://www.gnu.org/software/libc/" +LICENSE="LGPL-2.1+ BSD HPND ISC inner-net rc PCRE" +SLOT="2.2" + +EMULTILIB_PKG="true" + +# Gentoo patchset (ignored for live ebuilds) +PATCH_VER=17 +PATCH_DEV=dilfridge + +if [[ ${PV} == 9999* ]]; then + inherit git-r3 +else + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ppc64 ~riscv ~s390 sparc ~x86" + SRC_URI="mirror://gnu/glibc/${P}.tar.xz" + SRC_URI+=" https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${P}-patches-${PATCH_VER}.tar.xz" +fi + +RELEASE_VER=${PV} + +GCC_BOOTSTRAP_VER=20201208 + +LOCALE_GEN_VER=2.22 + +GLIBC_SYSTEMD_VER=20210729 + +SRC_URI+=" https://gitweb.gentoo.org/proj/locale-gen.git/snapshot/locale-gen-${LOCALE_GEN_VER}.tar.gz" +SRC_URI+=" multilib-bootstrap? ( https://dev.gentoo.org/~dilfridge/distfiles/gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}.tar.xz )" +SRC_URI+=" systemd? ( https://gitweb.gentoo.org/proj/toolchain/glibc-systemd.git/snapshot/glibc-systemd-${GLIBC_SYSTEMD_VER}.tar.gz )" + +IUSE="audit caps cet +clone3 compile-locales +crypt custom-cflags doc gd headers-only +multiarch multilib multilib-bootstrap nscd profile selinux +ssp +static-libs static-pie suid systemd systemtap test vanilla" + +# Minimum kernel version that glibc requires +MIN_KERN_VER="3.2.0" +# Minimum pax-utils version needed (which contains any new syscall changes for +# its seccomp filter!). Please double check this! +MIN_PAX_UTILS_VER="1.3.3" + +# Here's how the cross-compile logic breaks down ... +# CTARGET - machine that will target the binaries +# CHOST - machine that will host the binaries +# CBUILD - machine that will build the binaries +# If CTARGET != CHOST, it means you want a libc for cross-compiling. +# If CHOST != CBUILD, it means you want to cross-compile the libc. +# CBUILD = CHOST = CTARGET - native build/install +# CBUILD != (CHOST = CTARGET) - cross-compile a native build +# (CBUILD = CHOST) != CTARGET - libc for cross-compiler +# CBUILD != CHOST != CTARGET - cross-compile a libc for a cross-compiler +# For install paths: +# CHOST = CTARGET - install into / +# CHOST != CTARGET - install into /usr/CTARGET/ +# +export CBUILD=${CBUILD:-${CHOST}} +export CTARGET=${CTARGET:-${CHOST}} +if [[ ${CTARGET} == ${CHOST} ]] ; then + if [[ ${CATEGORY} == cross-* ]] ; then + export CTARGET=${CATEGORY#cross-} + fi +fi + +# Note [Disable automatic stripping] +# Disabling automatic stripping for a few reasons: +# - portage's attempt to strip breaks non-native binaries at least on +# arm: bug #697428 +# - portage's attempt to strip libpthread.so.0 breaks gdb thread +# enumeration: bug #697910. This is quite subtle: +# * gdb uses glibc's libthread_db-1.0.so to enumerate threads. +# * libthread_db-1.0.so needs access to libpthread.so.0 local symbols +# via 'ps_pglobal_lookup' symbol defined in gdb. +# * 'ps_pglobal_lookup' uses '.symtab' section table to resolve all +# known symbols in 'libpthread.so.0'. Specifically 'nptl_version' +# (unexported) is used to sanity check compatibility before enabling +# debugging. +# Also see https://sourceware.org/gdb/wiki/FAQ#GDB_does_not_see_any_threads_besides_the_one_in_which_crash_occurred.3B_or_SIGTRAP_kills_my_program_when_I_set_a_breakpoint +# * normal 'strip' command trims '.symtab' +# Thus our main goal here is to prevent 'libpthread.so.0' from +# losing it's '.symtab' entries. +# As Gentoo's strip does not allow us to pass less aggressive stripping +# options and does not check the machine target we strip selectively. + +# We need a new-enough binutils/gcc to match upstream baseline. +# Also we need to make sure our binutils/gcc supports TLS, +# and that gcc already contains the hardened patches. +# Lastly, let's avoid some openssh nastiness, bug 708224, as +# convenience to our users. + +# gzip, grep, awk are needed by locale-gen, bug 740750 + +BDEPEND=" + ${PYTHON_DEPS} + >=app-misc/pax-utils-${MIN_PAX_UTILS_VER} + sys-devel/bison + doc? ( sys-apps/texinfo ) + !compile-locales? ( + app-arch/gzip + sys-apps/grep + virtual/awk + ) +" +COMMON_DEPEND=" + gd? ( media-libs/gd:2= ) + nscd? ( selinux? ( + audit? ( sys-process/audit ) + caps? ( sys-libs/libcap ) + ) ) + suid? ( caps? ( sys-libs/libcap ) ) + selinux? ( sys-libs/libselinux ) + systemtap? ( dev-util/systemtap ) +" +DEPEND="${COMMON_DEPEND} + compile-locales? ( + app-arch/gzip + sys-apps/grep + virtual/awk + ) + test? ( >=net-dns/libidn2-2.3.0 ) +" +RDEPEND="${COMMON_DEPEND} + app-arch/gzip + sys-apps/grep + virtual/awk + sys-apps/gentoo-functions + !<app-misc/pax-utils-${MIN_PAX_UTILS_VER} + !<net-misc/openssh-8.1_p1-r2 +" + +RESTRICT="!test? ( test )" + +if [[ ${CATEGORY} == cross-* ]] ; then + BDEPEND+=" !headers-only? ( + >=${CATEGORY}/binutils-2.27 + >=${CATEGORY}/gcc-6 + )" + [[ ${CATEGORY} == *-linux* ]] && DEPEND+=" ${CATEGORY}/linux-headers" +else + BDEPEND+=" + >=sys-devel/binutils-2.27 + >=sys-devel/gcc-6 + " + DEPEND+=" virtual/os-headers " + RDEPEND+=" + >=net-dns/libidn2-2.3.0 + vanilla? ( !sys-libs/timezone-data ) + " + PDEPEND+=" !vanilla? ( sys-libs/timezone-data )" +fi + +# Ignore tests whitelisted below +GENTOO_GLIBC_XFAIL_TESTS="${GENTOO_GLIBC_XFAIL_TESTS:-yes}" + +# The following tests fail due to the Gentoo build system and are thus +# executed but ignored: +XFAIL_TEST_LIST=( + # buggy test, assumes /dev/ and /dev/null on a single filesystem + # 'mount --bind /dev/null /chroot/dev/null' breaks it. + # https://sourceware.org/PR25909 + tst-support_descriptors + + # The following tests fail only inside portage + # https://bugs.gentoo.org/831267 + tst-system + tst-strerror + tst-strsignal +) + +# +# Small helper functions +# + +is_crosscompile() { + [[ ${CHOST} != ${CTARGET} ]] +} + +just_headers() { + is_crosscompile && use headers-only +} + +alt_prefix() { + is_crosscompile && echo /usr/${CTARGET} +} + +# This prefix is applicable to CHOST when building against this +# glibc. It is baked into the library at configure time. +host_eprefix() { + is_crosscompile || echo "${EPREFIX}" +} + +# This prefix is applicable to CBUILD when building against this +# glibc. It determines the destination path at install time. +build_eprefix() { + is_crosscompile && echo "${EPREFIX}" +} + +# We need to be able to set alternative headers for compiling for non-native +# platform. Will also become useful for testing kernel-headers without screwing +# up the whole system. +alt_headers() { + echo ${ALT_HEADERS:=$(alt_prefix)/usr/include} +} + +alt_build_headers() { + if [[ -z ${ALT_BUILD_HEADERS} ]] ; then + ALT_BUILD_HEADERS="$(host_eprefix)$(alt_headers)" + if tc-is-cross-compiler ; then + ALT_BUILD_HEADERS=${SYSROOT}$(alt_headers) + if [[ ! -e ${ALT_BUILD_HEADERS}/linux/version.h ]] ; then + local header_path=$(echo '#include <linux/version.h>' | $(tc-getCPP ${CTARGET}) ${CFLAGS} 2>&1 | grep -o '[^"]*linux/version.h') + ALT_BUILD_HEADERS=${header_path%/linux/version.h} + fi + fi + fi + echo "${ALT_BUILD_HEADERS}" +} + +alt_libdir() { + echo $(alt_prefix)/$(get_libdir) +} +alt_usrlibdir() { + echo $(alt_prefix)/usr/$(get_libdir) +} + +builddir() { + echo "${WORKDIR}/build-${ABI}-${CTARGET}-$1" +} + +do_compile_test() { + local ret save_cflags=${CFLAGS} + CFLAGS+=" $1" + shift + + pushd "${T}" >/dev/null + + rm -f glibc-test* + printf '%b' "$*" > glibc-test.c + + # Most of the time CC is already set, but not in early sanity checks. + nonfatal emake glibc-test CC="${CC-$(tc-getCC ${CTARGET})}" + ret=$? + + popd >/dev/null + + CFLAGS=${save_cflags} + return ${ret} +} + +do_run_test() { + local ret + + if [[ ${MERGE_TYPE} == "binary" ]] ; then + # ignore build failures when installing a binary package #324685 + do_compile_test "" "$@" 2>/dev/null || return 0 + else + if ! do_compile_test "" "$@" ; then + ewarn "Simple build failed ... assuming this is desired #324685" + return 0 + fi + fi + + pushd "${T}" >/dev/null + + ./glibc-test + ret=$? + rm -f glibc-test* + + popd >/dev/null + + return ${ret} +} + +setup_target_flags() { + # This largely mucks with compiler flags. None of which should matter + # when building up just the headers. + just_headers && return 0 + + case $(tc-arch) in + x86) + # -march needed for #185404 #199334 + # TODO: When creating the first glibc cross-compile, this test will + # always fail as it does a full link which in turn requires glibc. + # Probably also applies when changing multilib profile settings (e.g. + # enabling x86 when the profile was amd64-only previously). + # We could change main to _start and pass -nostdlib here so that we + # only test the gcc code compilation. Or we could do a compile and + # then look for the symbol via scanelf. + if ! do_compile_test "" 'void f(int i, void *p) {if (__sync_fetch_and_add(&i, 1)) f(i, p);}\nint main(){return 0;}\n'; then + local t=${CTARGET_OPT:-${CTARGET}} + t=${t%%-*} + filter-flags '-march=*' + export CFLAGS="-march=${t} ${CFLAGS}" + einfo "Auto adding -march=${t} to CFLAGS #185404" + fi + ;; + amd64) + # -march needed for #185404 #199334 + # TODO: See cross-compile issues listed above for x86. + [[ ${ABI} == x86 ]] && + if ! do_compile_test "${CFLAGS_x86}" 'void f(int i, void *p) {if (__sync_fetch_and_add(&i, 1)) f(i, p);}\nint main(){return 0;}\n'; then + local t=${CTARGET_OPT:-${CTARGET}} + t=${t%%-*} + # Normally the target is x86_64-xxx, so turn that into the -march that + # gcc actually accepts. #528708 + [[ ${t} == "x86_64" ]] && t="x86-64" + filter-flags '-march=*' + # ugly, ugly, ugly. ugly. + CFLAGS_x86=$(CFLAGS=${CFLAGS_x86} filter-flags '-march=*'; echo "${CFLAGS}") + export CFLAGS_x86="${CFLAGS_x86} -march=${t}" + einfo "Auto adding -march=${t} to CFLAGS_x86 #185404 (ABI=${ABI})" + fi + + # Workaround for https://bugs.gentoo.org/823780. This really should + # be removed when the upstream bug https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103275 + # is fixed in our tree, either via 11.3 or an 11.2p2 patch set. + if [[ ${ABI} == x86 ]] && tc-is-gcc && (($(gcc-major-version) == 11)) && (($(gcc-minor-version) <= 2)) && (($(gcc-micro-version) == 0)); then + export CFLAGS_x86="${CFLAGS_x86} -mno-avx512f" + einfo "Auto adding -mno-avx512f to CFLAGS_x86 (bug #823780) (ABI=${ABI})" + fi + ;; + mips) + # The mips abi cannot support the GNU style hashes. #233233 + filter-ldflags -Wl,--hash-style=gnu -Wl,--hash-style=both + ;; + ppc|ppc64) + # Many arch-specific implementations do not work on ppc with + # cache-block not equal to 128 bytes. This breaks memset: + # https://sourceware.org/PR26522 + # https://bugs.gentoo.org/737996 + # Use default -mcpu=. For ppc it means non-multiarch setup. + filter-flags '-mcpu=*' + ;; + sparc) + # Both sparc and sparc64 can use -fcall-used-g6. -g7 is bad, though. + filter-flags "-fcall-used-g7" + append-flags "-fcall-used-g6" + + local cpu + case ${CTARGET} in + sparc64-*) + cpu="sparc64" + case $(get-flag mcpu) in + v9) + # We need to force at least v9a because the base build doesn't + # work with just v9. + # https://sourceware.org/bugzilla/show_bug.cgi?id=19477 + append-flags "-Wa,-xarch=v9a" + ;; + esac + ;; + sparc-*) + case $(get-flag mcpu) in + v8|supersparc|hypersparc|leon|leon3) + cpu="sparcv8" + ;; + *) + cpu="sparcv9" + ;; + esac + ;; + esac + [[ -n ${cpu} ]] && CTARGET_OPT="${cpu}-${CTARGET#*-}" + ;; + esac +} + +setup_flags() { + # Make sure host make.conf doesn't pollute us + if is_crosscompile || tc-is-cross-compiler ; then + CHOST=${CTARGET} strip-unsupported-flags + fi + + # Store our CFLAGS because it's changed depending on which CTARGET + # we are building when pulling glibc on a multilib profile + CFLAGS_BASE=${CFLAGS_BASE-${CFLAGS}} + CFLAGS=${CFLAGS_BASE} + CXXFLAGS_BASE=${CXXFLAGS_BASE-${CXXFLAGS}} + CXXFLAGS=${CXXFLAGS_BASE} + ASFLAGS_BASE=${ASFLAGS_BASE-${ASFLAGS}} + ASFLAGS=${ASFLAGS_BASE} + + # Allow users to explicitly avoid flag sanitization via + # USE=custom-cflags. + if ! use custom-cflags; then + # Over-zealous CFLAGS can often cause problems. What may work for one + # person may not work for another. To avoid a large influx of bugs + # relating to failed builds, we strip most CFLAGS out to ensure as few + # problems as possible. + strip-flags + # Lock glibc at -O2; we want to be conservative here. + filter-flags '-O?' + append-flags -O2 + fi + + strip-unsupported-flags + filter-flags -m32 -m64 '-mabi=*' + + # glibc aborts if rpath is set by LDFLAGS + filter-ldflags '-Wl,-rpath=*' + + # ld can't use -r & --relax at the same time, bug #788901 + # https://sourceware.org/PR27837 + filter-ldflags '-Wl,--relax' + + # #492892 + filter-flags -frecord-gcc-switches + + # #829583 + filter-lfs-flags + + unset CBUILD_OPT CTARGET_OPT + if use multilib ; then + CTARGET_OPT=$(get_abi_CTARGET) + [[ -z ${CTARGET_OPT} ]] && CTARGET_OPT=$(get_abi_CHOST) + fi + + setup_target_flags + + if [[ -n ${CTARGET_OPT} && ${CBUILD} == ${CHOST} ]] && ! is_crosscompile; then + CBUILD_OPT=${CTARGET_OPT} + fi + + # glibc's headers disallow -O0 and fail at build time: + # include/libc-symbols.h:75:3: #error "glibc cannot be compiled without optimization" + replace-flags -O0 -O1 + + filter-flags '-fstack-protector*' + + # See end of bug #830454; we handle this via USE=cet + filter-flags '-fcf-protection=' +} + +use_multiarch() { + # Allow user to disable runtime arch detection in multilib. + use multiarch || return 1 + # Make sure binutils is new enough to support indirect functions, + # #336792. This funky sed supports gold and bfd linkers. + local bver nver + bver=$($(tc-getLD ${CTARGET}) -v | sed -n -r '1{s:[^0-9]*::;s:^([0-9.]*).*:\1:;p}') + case $(tc-arch ${CTARGET}) in + amd64|x86) nver="2.20" ;; + arm) nver="2.22" ;; + hppa) nver="2.23" ;; + ppc|ppc64) nver="2.20" ;; + # ifunc support was added in 2.23, but glibc also needs + # machinemode which is in 2.24. + s390) nver="2.24" ;; + sparc) nver="2.21" ;; + *) return 1 ;; + esac + ver_test ${bver} -ge ${nver} +} + +# Setup toolchain variables that had historically been defined in the +# profiles for these archs. +setup_env() { + # silly users + unset LD_RUN_PATH + unset LD_ASSUME_KERNEL + + if is_crosscompile || tc-is-cross-compiler ; then + multilib_env ${CTARGET_OPT:-${CTARGET}} + + if ! use multilib ; then + MULTILIB_ABIS=${DEFAULT_ABI} + else + MULTILIB_ABIS=${MULTILIB_ABIS:-${DEFAULT_ABI}} + fi + + # If the user has CFLAGS_<CTARGET> in their make.conf, use that, + # and fall back on CFLAGS. + local VAR=CFLAGS_${CTARGET//[-.]/_} + CFLAGS=${!VAR-${CFLAGS}} + einfo " $(printf '%15s' 'Manual CFLAGS:') ${CFLAGS}" + fi + + setup_flags + + export ABI=${ABI:-${DEFAULT_ABI:-default}} + + if just_headers ; then + # Avoid mixing host's CC and target's CFLAGS_${ABI}: + # At this bootstrap stage we have only binutils for + # target but not compiler yet. + einfo "Skip CC ABI injection. We can't use (cross-)compiler yet." + return 0 + fi + + # Glibc does not work with gold (for various reasons) #269274. + tc-ld-disable-gold + + if use doc ; then + export MAKEINFO=makeinfo + else + export MAKEINFO=/dev/null + fi + + # Reset CC and CXX to the value at start of emerge + export CC=${__ORIG_CC:-${CC:-$(tc-getCC ${CTARGET})}} + export CXX=${__ORIG_CXX:-${CXX:-$(tc-getCXX ${CTARGET})}} + + # and make sure __ORIC_CC and __ORIG_CXX is defined now. + export __ORIG_CC=${CC} + export __ORIG_CXX=${CXX} + + if tc-is-clang && ! use custom-cflags && ! is_crosscompile ; then + + # If we are running in an otherwise clang/llvm environment, we need to + # recover the proper gcc and binutils settings here, at least until glibc + # is finally building with clang. So let's override everything that is + # set in the clang profiles. + # Want to shoot yourself into the foot? Set USE=custom-cflags, that's always + # a good start into that direction. + # Also, if you're crosscompiling, let's assume you know what you are doing. + # Hopefully. + # Last, we need the settings of the *build* environment, not of the + # target environment... + + local current_binutils_path=$(env ROOT="${BROOT}" binutils-config -B) + local current_gcc_path=$(env ROOT="${BROOT}" gcc-config -B) + einfo "Overriding clang configuration, since it won't work here" + + export CC="${current_gcc_path}/gcc" + export CXX="${current_gcc_path}/g++" + export LD="${current_binutils_path}/ld.bfd" + export AR="${current_binutils_path}/ar" + export AS="${current_binutils_path}/as" + export NM="${current_binutils_path}/nm" + export STRIP="${current_binutils_path}/strip" + export RANLIB="${current_binutils_path}/ranlib" + export OBJCOPY="${current_binutils_path}/objcopy" + export STRINGS="${current_binutils_path}/strings" + export OBJDUMP="${current_binutils_path}/objdump" + export READELF="${current_binutils_path}/readelf" + export ADDR2LINE="${current_binutils_path}/addr2line" + + # do we need to also do flags munging here? yes! at least... + filter-flags '-fuse-ld=*' + filter-flags '-D_FORTIFY_SOURCE=*' + + else + + # this is the "normal" case + + export CC="$(tc-getCC ${CTARGET})" + export CXX="$(tc-getCXX ${CTARGET})" + + # Always use tuple-prefixed toolchain. For non-native ABI glibc's configure + # can't detect them automatically due to ${CHOST} mismatch and fallbacks + # to unprefixed tools. Similar to multilib.eclass:multilib_toolchain_setup(). + export NM="$(tc-getNM ${CTARGET})" + export READELF="$(tc-getREADELF ${CTARGET})" + + fi + + # We need to export CFLAGS with abi information in them because glibc's + # configure script checks CFLAGS for some targets (like mips). Keep + # around the original clean value to avoid appending multiple ABIs on + # top of each other. (Why does the comment talk about CFLAGS if the code + # acts on CC?) + export __GLIBC_CC=${CC} + export __GLIBC_CXX=${CXX} + + export __abi_CFLAGS="$(get_abi_CFLAGS)" + + # CFLAGS can contain ABI-specific flags like -mfpu=neon, see bug #657760 + # To build .S (assembly) files with the same ABI-specific flags + # upstream currently recommends adding CFLAGS to CC/CXX: + # https://sourceware.org/PR23273 + # Note: Passing CFLAGS via CPPFLAGS overrides glibc's arch-specific CFLAGS + # and breaks multiarch support. See 659030#c3 for an example. + # The glibc configure script doesn't properly use LDFLAGS all the time. + export CC="${__GLIBC_CC} ${__abi_CFLAGS} ${CFLAGS} ${LDFLAGS}" + + # Some of the tests are written in C++, so we need to force our multlib abis in, bug 623548 + export CXX="${__GLIBC_CXX} ${__abi_CFLAGS} ${CFLAGS}" + + if is_crosscompile; then + # Assume worst-case bootstrap: glibc is buil first time + # when ${CTARGET}-g++ is not available yet. We avoid + # building auxiliary programs that require C++: bug #683074 + # It should not affect final result. + export libc_cv_cxx_link_ok=no + # The line above has the same effect. We set CXX explicitly + # to make build logs less confusing. + export CXX= + fi +} + +foreach_abi() { + setup_env + + local ret=0 + local abilist="" + if use multilib ; then + abilist=$(get_install_abis) + else + abilist=${DEFAULT_ABI} + fi + local -x ABI + for ABI in ${abilist:-default} ; do + setup_env + einfo "Running $1 for ABI ${ABI}" + $1 + : $(( ret |= $? )) + done + return ${ret} +} + +glibc_banner() { + local b="Gentoo ${PVR}" + [[ -n ${PATCH_VER} ]] && ! use vanilla && b+=" p${PATCH_VER}" + echo "${b}" +} + +# The following Kernel version handling functions are mostly copied from portage +# source. It's better not to use linux-info.eclass here since a) it adds too +# much magic, see bug 326693 for some of the arguments, and b) some of the +# functions are just not provided. + +g_get_running_KV() { + uname -r + return $? +} + +g_KV_major() { + [[ -z $1 ]] && return 1 + local KV=$@ + echo "${KV%%.*}" +} + +g_KV_minor() { + [[ -z $1 ]] && return 1 + local KV=$@ + KV=${KV#*.} + echo "${KV%%.*}" +} + +g_KV_micro() { + [[ -z $1 ]] && return 1 + local KV=$@ + KV=${KV#*.*.} + echo "${KV%%[^[:digit:]]*}" +} + +g_KV_to_int() { + [[ -z $1 ]] && return 1 + local KV_MAJOR=$(g_KV_major "$1") + local KV_MINOR=$(g_KV_minor "$1") + local KV_MICRO=$(g_KV_micro "$1") + local KV_int=$(( KV_MAJOR * 65536 + KV_MINOR * 256 + KV_MICRO )) + + # We make version 2.2.0 the minimum version we will handle as + # a sanity check ... if its less, we fail ... + if [[ ${KV_int} -ge 131584 ]] ; then + echo "${KV_int}" + return 0 + fi + return 1 +} + +g_int_to_KV() { + local version=$1 major minor micro + major=$((version / 65536)) + minor=$(((version % 65536) / 256)) + micro=$((version % 256)) + echo ${major}.${minor}.${micro} +} + +eend_KV() { + [[ $(g_KV_to_int $1) -ge $(g_KV_to_int $2) ]] + eend $? +} + +get_kheader_version() { + printf '#include <linux/version.h>\nLINUX_VERSION_CODE\n' | \ + $(tc-getCPP ${CTARGET}) -I "$(build_eprefix)$(alt_build_headers)" - | \ + tail -n 1 +} + +# We collect all sanity checks here. Consistency is not guranteed between +# pkg_ and src_ phases, so we call this function both in pkg_pretend and in +# src_unpack. +sanity_prechecks() { + # Prevent native builds from downgrading + if [[ ${MERGE_TYPE} != "buildonly" ]] && \ + [[ -z ${ROOT} ]] && \ + [[ ${CBUILD} == ${CHOST} ]] && \ + [[ ${CHOST} == ${CTARGET} ]] ; then + + # The high rev # is to allow people to downgrade between -r# + # versions. We want to block 2.20->2.19, but 2.20-r3->2.20-r2 + # should be fine. Hopefully we never actually use a r# this + # high. + if has_version ">${CATEGORY}/${P}-r10000" ; then + eerror "Sanity check to keep you from breaking your system:" + eerror " Downgrading glibc is not supported and a sure way to destruction." + [[ ${I_ALLOW_TO_BREAK_MY_SYSTEM} = yes ]] || die "Aborting to save your system." + fi + + if ! do_run_test '#include <unistd.h>\n#include <sys/syscall.h>\nint main(){return syscall(1000)!=-1;}\n' ; then + eerror "Your old kernel is broken. You need to update it to a newer" + eerror "version as syscall(<bignum>) will break. See bug 279260." + die "Old and broken kernel." + fi + fi + + # Users have had a chance to phase themselves, time to give em the boot + if [[ -e ${EROOT}/etc/locale.gen ]] && [[ -e ${EROOT}/etc/locales.build ]] ; then + eerror "You still haven't deleted ${EROOT}/etc/locales.build." + eerror "Do so now after making sure ${EROOT}/etc/locale.gen is kosher." + die "Lazy upgrader detected" + fi + + if [[ ${CTARGET} == i386-* ]] ; then + eerror "i386 CHOSTs are no longer supported." + eerror "Chances are you don't actually want/need i386." + eerror "Please read https://www.gentoo.org/doc/en/change-chost.xml" + die "Please fix your CHOST" + fi + + if [[ -e /proc/xen ]] && [[ $(tc-arch) == "x86" ]] && ! is-flag -mno-tls-direct-seg-refs ; then + ewarn "You are using Xen but don't have -mno-tls-direct-seg-refs in your CFLAGS." + ewarn "This will result in a 50% performance penalty when running with a 32bit" + ewarn "hypervisor, which is probably not what you want." + fi + + # ABI-specific checks follow here. Hey, we have a lot more specific conditions that + # we test for... + if ! is_crosscompile ; then + if use amd64 && use multilib && [[ ${MERGE_TYPE} != "binary" ]] ; then + ebegin "Checking that IA32 emulation is enabled in the running kernel" + echo 'int main(){return 0;}' > "${T}/check-ia32-emulation.c" + local STAT + if "${CC-${CHOST}-gcc}" ${CFLAGS_x86} "${T}/check-ia32-emulation.c" -o "${T}/check-ia32-emulation.elf32"; then + "${T}/check-ia32-emulation.elf32" + STAT=$? + else + # Don't fail here to allow single->multi ABI switch + # or recover from breakage like bug #646424 + ewarn "Failed to compile the ABI test. Broken host glibc?" + STAT=0 + fi + rm -f "${T}/check-ia32-emulation.elf32" + eend $STAT + [[ $STAT -eq 0 ]] || die "CONFIG_IA32_EMULATION must be enabled in the kernel to compile a multilib glibc." + fi + + fi + + # When we actually have to compile something... + if ! just_headers && [[ ${MERGE_TYPE} != "binary" ]] ; then + if [[ -d "${ESYSROOT}"/usr/lib/include ]] ; then + # bug #833620, bug #643302 + eerror "Found ${ESYSROOT}/usr/lib/include directory!" + eerror "This is known to break glibc's build." + eerror "Please backup its contents then remove the directory." + die "Found directory (${ESYSROOT}/usr/lib/include) which will break build (bug #833620)!" + fi + + if [[ ${CTARGET} == *-linux* ]] ; then + local run_kv build_kv want_kv + + run_kv=$(g_get_running_KV) + build_kv=$(g_int_to_KV $(get_kheader_version)) + want_kv=${MIN_KERN_VER} + + if ! is_crosscompile && ! tc-is-cross-compiler ; then + # Building fails on an non-supporting kernel + ebegin "Checking running kernel version (${run_kv} >= ${want_kv})" + if ! eend_KV ${run_kv} ${want_kv} ; then + echo + eerror "You need a kernel of at least ${want_kv}!" + die "Kernel version too low!" + fi + fi + + ebegin "Checking linux-headers version (${build_kv} >= ${want_kv})" + if ! eend_KV ${build_kv} ${want_kv} ; then + echo + eerror "You need linux-headers of at least ${want_kv}!" + die "linux-headers version too low!" + fi + fi + fi +} + +upgrade_warning() { + if [[ ${MERGE_TYPE} != buildonly && -n ${REPLACING_VERSIONS} && -z ${ROOT} ]]; then + local oldv newv=$(ver_cut 1-2 ${PV}) + for oldv in ${REPLACING_VERSIONS}; do + if ver_test ${oldv} -lt ${newv}; then + ewarn "After upgrading glibc, please restart all running processes." + ewarn "Be sure to include init (telinit u) or systemd (systemctl daemon-reexec)." + ewarn "Alternatively, reboot your system." + ewarn "(See bug #660556, bug #741116, bug #823756, etc)" + break + fi + done + fi +} + +# +# the phases +# + +# pkg_pretend + +pkg_pretend() { + # All the checks... + einfo "Checking general environment sanity." + sanity_prechecks + upgrade_warning +} + +pkg_setup() { + # see bug 682570 + [[ -z ${BOOTSTRAP_RAP} ]] && python-any-r1_pkg_setup +} + +# src_unpack + +src_unpack() { + # Consistency is not guaranteed between pkg_ and src_ ... + sanity_prechecks + + use multilib-bootstrap && unpack gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}.tar.xz + + setup_env + + if [[ ${PV} == 9999* ]] ; then + EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/toolchain/glibc-patches.git" + EGIT_CHECKOUT_DIR=${WORKDIR}/patches-git + git-r3_src_unpack + mv patches-git/9999 patches || die + + EGIT_REPO_URI="https://sourceware.org/git/glibc.git" + EGIT_CHECKOUT_DIR=${S} + git-r3_src_unpack + else + unpack ${P}.tar.xz + + cd "${WORKDIR}" || die + unpack glibc-${RELEASE_VER}-patches-${PATCH_VER}.tar.xz + fi + + cd "${WORKDIR}" || die + unpack locale-gen-${LOCALE_GEN_VER}.tar.gz + use systemd && unpack glibc-systemd-${GLIBC_SYSTEMD_VER}.tar.gz +} + +src_prepare() { + local patchsetname + if ! use vanilla ; then + if [[ ${PV} == 9999* ]] ; then + patchsetname="from git master" + else + patchsetname="${RELEASE_VER}-${PATCH_VER}" + fi + einfo "Applying Gentoo Glibc Patchset ${patchsetname}" + eapply "${WORKDIR}"/patches + einfo "Done." + fi + + if use clone3 ; then + append-cppflags -DGENTOO_USE_CLONE3 + else + # See e.g. bug #827386, bug #819045. + elog "Disabling the clone3 syscall for compatibility with older Electron apps." + elog "Please re-enable this flag before filing bugs!" + fi + + default + + gnuconfig_update + + cd "${WORKDIR}" + find . -name configure -exec touch {} + + + # move the external locale-gen to its old place + mkdir extra || die + mv locale-gen-${LOCALE_GEN_VER} extra/locale || die + + eprefixify extra/locale/locale-gen + + # Fix permissions on some of the scripts. + chmod u+x "${S}"/scripts/*.sh + + cd "${S}" +} + +glibc_do_configure() { + + local v + for v in ABI CBUILD CHOST CTARGET CBUILD_OPT CTARGET_OPT CC CXX LD {AS,C,CPP,CXX,LD}FLAGS MAKEINFO NM AR AS STRIP RANLIB OBJCOPY STRINGS OBJDUMP READELF; do + einfo " $(printf '%15s' ${v}:) ${!v}" + done + + echo + local myconf=() + + case ${CTARGET} in + m68k*) + # setjmp() is not compatible with stack protection: + # https://sourceware.org/PR24202 + myconf+=( --enable-stack-protector=no ) + ;; + *) + # Use '=strong' instead of '=all' to protect only functions + # worth protecting from stack smashes. + # '=all' is also known to have a problem in IFUNC resolution + # tests: https://sourceware.org/PR25680, bug #712356. + myconf+=( --enable-stack-protector=$(usex ssp strong no) ) + ;; + esac + myconf+=( --enable-stackguard-randomization ) + + # Keep a whitelist of targets supporing IFUNC. glibc's ./configure + # is not robust enough to detect proper support: + # https://bugs.gentoo.org/641216 + # https://sourceware.org/PR22634#c0 + case $(tc-arch ${CTARGET}) in + # Keep whitelist of targets where autodetection mostly works. + amd64|x86|sparc|ppc|ppc64|arm|arm64|s390) ;; + # Blacklist everywhere else + *) myconf+=( libc_cv_ld_gnu_indirect_function=no ) ;; + esac + + # Enable Intel Control-flow Enforcement Technology on amd64 if requested + case ${CTARGET} in + x86_64-*) myconf+=( $(use_enable cet) ) ;; + *) ;; + esac + + [[ $(tc-is-softfloat) == "yes" ]] && myconf+=( --without-fp ) + + myconf+=( --enable-kernel=${MIN_KERN_VER} ) + + # Since SELinux support is only required for nscd, only enable it if: + # 1. USE selinux + # 2. only for the primary ABI on multilib systems + # 3. Not a crosscompile + if ! is_crosscompile && use selinux ; then + if use multilib ; then + if is_final_abi ; then + myconf+=( --with-selinux ) + else + myconf+=( --without-selinux ) + fi + else + myconf+=( --with-selinux ) + fi + else + myconf+=( --without-selinux ) + fi + + # Force a few tests where we always know the answer but + # configure is incapable of finding it. + if is_crosscompile ; then + export \ + libc_cv_c_cleanup=yes \ + libc_cv_forced_unwind=yes + fi + + myconf+=( + --without-cvs + --disable-werror + --enable-bind-now + --build=${CBUILD_OPT:-${CBUILD}} + --host=${CTARGET_OPT:-${CTARGET}} + $(use_enable profile) + $(use_with gd) + --with-headers=$(build_eprefix)$(alt_build_headers) + --prefix="$(host_eprefix)/usr" + --sysconfdir="$(host_eprefix)/etc" + --localstatedir="$(host_eprefix)/var" + --libdir='$(prefix)'/$(get_libdir) + --mandir='$(prefix)'/share/man + --infodir='$(prefix)'/share/info + --libexecdir='$(libdir)'/misc/glibc + --with-bugurl=https://bugs.gentoo.org/ + --with-pkgversion="$(glibc_banner)" + $(use_enable crypt) + $(use_multiarch || echo --disable-multi-arch) + $(use_enable static-pie) + $(use_enable systemtap) + $(use_enable nscd) + + # locale data is arch-independent + # https://bugs.gentoo.org/753740 + libc_cv_complocaledir='${exec_prefix}/lib/locale' + + # -march= option tricks build system to infer too + # high ISA level: https://sourceware.org/PR27318 + libc_cv_include_x86_isa_level=no + # Explicit override of https://sourceware.org/PR27991 + # exposes a bug in glibc's configure: + # https://sourceware.org/PR27991 + libc_cv_have_x86_lahf_sahf=no + libc_cv_have_x86_movbe=no + + ${EXTRA_ECONF} + ) + + # We rely on sys-libs/timezone-data for timezone tools normally. + myconf+=( $(use_enable vanilla timezone-tools) ) + + # These libs don't have configure flags. + ac_cv_lib_audit_audit_log_user_avc_message=$(usex audit || echo no) + ac_cv_lib_cap_cap_init=$(usex caps || echo no) + + # There is no configure option for this and we need to export it + # since the glibc build will re-run configure on itself + export libc_cv_rootsbindir="$(host_eprefix)/sbin" + export libc_cv_slibdir="$(host_eprefix)/$(get_libdir)" + + local builddir=$(builddir nptl) + mkdir -p "${builddir}" + cd "${builddir}" + set -- "${S}"/configure "${myconf[@]}" + echo "$@" + "$@" || die "failed to configure glibc" + + # ia64 static cross-compilers are a pita in so much that they + # can't produce static ELFs (as the libgcc.a is broken). so + # disable building of the programs for those targets if it + # doesn't work. + # XXX: We could turn this into a compiler test, but ia64 is + # the only one that matters, so this should be fine for now. + if is_crosscompile && [[ ${CTARGET} == ia64* ]] ; then + sed -i '1i+link-static = touch $@' config.make + fi + + # If we're trying to migrate between ABI sets, we need + # to lie and use a local copy of gcc. Like if the system + # is built with MULTILIB_ABIS="amd64 x86" but we want to + # add x32 to it, gcc/glibc don't yet support x32. + # + if [[ -n ${GCC_BOOTSTRAP_VER} ]] && use multilib-bootstrap ; then + echo 'main(){}' > "${T}"/test.c + if ! $(tc-getCC ${CTARGET}) ${CFLAGS} ${LDFLAGS} "${T}"/test.c -Wl,-emain -lgcc 2>/dev/null ; then + sed -i -e '/^CC = /s:$: -B$(objdir)/../'"gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}/${ABI}:" config.make || die + fi + fi +} + +glibc_headers_configure() { + export ABI=default + + local builddir=$(builddir "headers") + mkdir -p "${builddir}" + cd "${builddir}" + + # if we don't have a compiler yet, we can't really test it now ... + # hopefully they don't affect header generation, so let's hope for + # the best here ... + local v vars=( + ac_cv_header_cpuid_h=yes + libc_cv_{386,390,alpha,arm,hppa,ia64,mips,{powerpc,sparc}{,32,64},sh,x86_64}_tls=yes + libc_cv_asm_cfi_directives=yes + libc_cv_broken_visibility_attribute=no + libc_cv_c_cleanup=yes + libc_cv_compiler_powerpc64le_binary128_ok=yes + libc_cv_forced_unwind=yes + libc_cv_gcc___thread=yes + libc_cv_mlong_double_128=yes + libc_cv_mlong_double_128ibm=yes + libc_cv_ppc_machine=yes + libc_cv_ppc_rel16=yes + libc_cv_predef_fortify_source=no + libc_cv_target_power8_ok=yes + libc_cv_visibility_attribute=yes + libc_cv_z_combreloc=yes + libc_cv_z_execstack=yes + libc_cv_z_initfirst=yes + libc_cv_z_nodelete=yes + libc_cv_z_nodlopen=yes + libc_cv_z_relro=yes + libc_mips_abi=${ABI} + libc_mips_float=$([[ $(tc-is-softfloat) == "yes" ]] && echo soft || echo hard) + # These libs don't have configure flags. + ac_cv_lib_audit_audit_log_user_avc_message=no + ac_cv_lib_cap_cap_init=no + ) + + einfo "Forcing cached settings:" + for v in "${vars[@]}" ; do + einfo " ${v}" + export ${v} + done + + local headers_only_arch_CPPFLAGS=() + + # Blow away some random CC settings that screw things up. #550192 + if [[ -d ${S}/sysdeps/mips ]]; then + pushd "${S}"/sysdeps/mips >/dev/null + sed -i -e '/^CC +=/s:=.*:= -D_MIPS_SZPTR=32:' mips32/Makefile mips64/n32/Makefile || die + sed -i -e '/^CC +=/s:=.*:= -D_MIPS_SZPTR=64:' mips64/n64/Makefile || die + + # Force the mips ABI to the default. This is OK because the set of + # installed headers in this phase is the same between the 3 ABIs. + # If this ever changes, this hack will break, but that's unlikely + # as glibc discourages that behavior. + # https://crbug.com/647033 + sed -i -e 's:abiflag=.*:abiflag=_ABIO32:' preconfigure || die + + popd >/dev/null + fi + + case ${CTARGET} in + riscv*) + # RISC-V interrogates the compiler to determine which target to + # build. If building the headers then we don't strictly need a + # RISC-V compiler, so the built-in definitions that are provided + # along with all RISC-V compiler might not exist. This causes + # glibc's RISC-V preconfigure script to blow up. Since we're just + # building the headers any value will actually work here, so just + # pick the standard one (rv64g/lp64d) to make the build scripts + # happy for now -- the headers are all the same anyway so it + # doesn't matter. + headers_only_arch_CPPFLAGS+=( + -D__riscv_xlen=64 + -D__riscv_flen=64 + -D__riscv_float_abi_double=1 + -D__riscv_atomic=1 + ) ;; + esac + + local myconf=() + myconf+=( + --disable-sanity-checks + --enable-hacker-mode + --without-cvs + --disable-werror + --enable-bind-now + --build=${CBUILD_OPT:-${CBUILD}} + --host=${CTARGET_OPT:-${CTARGET}} + --with-headers=$(build_eprefix)$(alt_build_headers) + --prefix="$(host_eprefix)/usr" + ${EXTRA_ECONF} + ) + + # Nothing is compiled here which would affect the headers for the target. + # So forcing CC/CFLAGS is sane. + local headers_only_CC=$(tc-getBUILD_CC) + local headers_only_CFLAGS="-O1 -pipe" + local headers_only_CPPFLAGS="-U_FORTIFY_SOURCE ${headers_only_arch_CPPFLAGS[*]}" + local headers_only_LDFLAGS="" + set -- "${S}"/configure "${myconf[@]}" + echo \ + "CC=${headers_only_CC}" \ + "CFLAGS=${headers_only_CFLAGS}" \ + "CPPFLAGS=${headers_only_CPPFLAGS}" \ + "LDFLAGS=${headers_only_LDFLAGS}" \ + "$@" + CC=${headers_only_CC} \ + CFLAGS=${headers_only_CFLAGS} \ + CPPFLAGS=${headers_only_CPPFLAGS} \ + LDFLAGS="" \ + "$@" || die "failed to configure glibc" +} + +do_src_configure() { + if just_headers ; then + glibc_headers_configure + else + glibc_do_configure nptl + fi +} + +src_configure() { + foreach_abi do_src_configure +} + +do_src_compile() { + emake -C "$(builddir nptl)" +} + +src_compile() { + if just_headers ; then + return + fi + + foreach_abi do_src_compile +} + +glibc_src_test() { + cd "$(builddir nptl)" + + local myxfailparams="" + if [[ "${GENTOO_GLIBC_XFAIL_TESTS}" == "yes" ]] ; then + for myt in ${XFAIL_TEST_LIST[@]} ; do + myxfailparams+="test-xfail-${myt}=yes " + done + fi + + # sandbox does not understand unshare() and prevents + # writes to /proc/, which makes many tests fail + + SANDBOX_ON=0 LD_PRELOAD= emake ${myxfailparams} check +} + +do_src_test() { + local ret=0 + + glibc_src_test + : $(( ret |= $? )) + + return ${ret} +} + +src_test() { + if just_headers ; then + return + fi + + # Give tests more time to complete. + export TIMEOUTFACTOR=5 + + foreach_abi do_src_test || die "tests failed" +} + +run_locale_gen() { + # if the host locales.gen contains no entries, we'll install everything + local root="$1" + local inplace="" + + if [[ "${root}" == "--inplace-glibc" ]] ; then + inplace="--inplace-glibc" + root="$2" + fi + + local locale_list="${root%/}/etc/locale.gen" + + pushd "${ED}"/$(get_libdir) >/dev/null + + if [[ -z $(locale-gen --list --config "${locale_list}") ]] ; then + [[ -z ${inplace} ]] && ewarn "Generating all locales; edit /etc/locale.gen to save time/space" + locale_list="${root%/}/usr/share/i18n/SUPPORTED" + fi + + set -- locale-gen ${inplace} --jobs $(makeopts_jobs) --config "${locale_list}" \ + --destdir "${root}" + echo "$@" + "$@" + + popd >/dev/null +} + +glibc_do_src_install() { + local builddir=$(builddir nptl) + cd "${builddir}" + + emake install_root="${D}/$(build_eprefix)$(alt_prefix)" install + + # This version (2.26) provides some compatibility libraries for the NIS/NIS+ support + # which come without headers etc. Only needed for binary packages since the + # external net-libs/libnsl has increased soversion. Keep only versioned libraries. + find "${D}" -name "libnsl.a" -delete + find "${D}" -name "libnsl.so" -delete + + # Normally upstream_pv is ${PV}. Live ebuilds are exception, there we need + # to infer upstream version: + # '#define VERSION "2.26.90"' -> '2.26.90' + local upstream_pv=$(sed -n -r 's/#define VERSION "(.*)"/\1/p' "${S}"/version.h) + + # Avoid stripping binaries not targeted by ${CHOST}. Or else + # ${CHOST}-strip would break binaries build for ${CTARGET}. + is_crosscompile && dostrip -x / + # gdb thread introspection relies on local libpthreas symbols. stripping breaks it + # See Note [Disable automatic stripping] + dostrip -x $(alt_libdir)/libpthread-${upstream_pv}.so + + if [[ -e ${ED}/$(alt_usrlibdir)/libm-${upstream_pv}.a ]] ; then + # Move versioned .a file out of libdir to evade portage QA checks + # instead of using gen_usr_ldscript(). We fix ldscript as: + # "GROUP ( /usr/lib64/libm-<pv>.a ..." -> "GROUP ( /usr/lib64/glibc-<pv>/libm-<pv>.a ..." + sed -i "s@\(libm-${upstream_pv}.a\)@${P}/\1@" "${ED}"/$(alt_usrlibdir)/libm.a || die + dodir $(alt_usrlibdir)/${P} + mv "${ED}"/$(alt_usrlibdir)/libm-${upstream_pv}.a "${ED}"/$(alt_usrlibdir)/${P}/libm-${upstream_pv}.a || die + fi + + # We'll take care of the cache ourselves + rm -f "${ED}"/etc/ld.so.cache + + # Everything past this point just needs to be done once ... + is_final_abi || return 0 + + # Make sure the non-native interp can be found on multilib systems even + # if the main library set isn't installed into the right place. Maybe + # we should query the active gcc for info instead of hardcoding it ? + local i ldso_abi ldso_name + local ldso_abi_list=( + # x86 + amd64 /lib64/ld-linux-x86-64.so.2 + x32 /libx32/ld-linux-x32.so.2 + x86 /lib/ld-linux.so.2 + # mips + o32 /lib/ld.so.1 + n32 /lib32/ld.so.1 + n64 /lib64/ld.so.1 + # powerpc + ppc /lib/ld.so.1 + # riscv + ilp32d /lib/ld-linux-riscv32-ilp32d.so.1 + ilp32 /lib/ld-linux-riscv32-ilp32.so.1 + lp64d /lib/ld-linux-riscv64-lp64d.so.1 + lp64 /lib/ld-linux-riscv64-lp64.so.1 + # s390 + s390 /lib/ld.so.1 + s390x /lib/ld64.so.1 + # sparc + sparc32 /lib/ld-linux.so.2 + sparc64 /lib64/ld-linux.so.2 + ) + case $(tc-endian) in + little) + ldso_abi_list+=( + # arm + arm64 /lib/ld-linux-aarch64.so.1 + # ELFv2 (glibc does not support ELFv1 on LE) + ppc64 /lib64/ld64.so.2 + ) + ;; + big) + ldso_abi_list+=( + # arm + arm64 /lib/ld-linux-aarch64_be.so.1 + # ELFv1 (glibc does not support ELFv2 on BE) + ppc64 /lib64/ld64.so.1 + ) + ;; + esac + if [[ ${SYMLINK_LIB} == "yes" ]] && [[ ! -e ${ED}/$(alt_prefix)/lib ]] ; then + dosym $(get_abi_LIBDIR ${DEFAULT_ABI}) $(alt_prefix)/lib + fi + for (( i = 0; i < ${#ldso_abi_list[@]}; i += 2 )) ; do + ldso_abi=${ldso_abi_list[i]} + has ${ldso_abi} $(get_install_abis) || continue + + ldso_name="$(alt_prefix)${ldso_abi_list[i+1]}" + if [[ ! -L ${ED}/${ldso_name} && ! -e ${ED}/${ldso_name} ]] ; then + dosym ../$(get_abi_LIBDIR ${ldso_abi})/${ldso_name##*/} ${ldso_name} + fi + done + + # In the LSB 5.0 definition, someone had the excellent idea to "standardize" + # the runtime loader name, see also https://xkcd.com/927/ + # Normally, in Gentoo one should never come across executables that require this. + # However, binary commercial packages are known to adhere to weird practices. + # https://refspecs.linuxfoundation.org/LSB_5.0.0/LSB-Core-AMD64/LSB-Core-AMD64.html#BASELIB + local lsb_ldso_name native_ldso_name lsb_ldso_abi + local lsb_ldso_abi_list=( + # x86 + amd64 ld-linux-x86-64.so.2 ld-lsb-x86-64.so.3 + ) + for (( i = 0; i < ${#lsb_ldso_abi_list[@]}; i += 3 )) ; do + lsb_ldso_abi=${lsb_ldso_abi_list[i]} + native_ldso_name=${lsb_ldso_abi_list[i+1]} + lsb_ldso_name=${lsb_ldso_abi_list[i+2]} + has ${lsb_ldso_abi} $(get_install_abis) || continue + + if [[ ! -L ${ED}/$(get_abi_LIBDIR ${lsb_ldso_abi})/${lsb_ldso_name} && ! -e ${ED}/$(get_abi_LIBDIR ${lsb_ldso_abi})/${lsb_ldso_name} ]] ; then + dosym ${native_ldso_name} "$(alt_prefix)/$(get_abi_LIBDIR ${lsb_ldso_abi})/${lsb_ldso_name}" + fi + done + + # With devpts under Linux mounted properly, we do not need the pt_chown + # binary to be setuid. This is because the default owners/perms will be + # exactly what we want. + if ! use suid ; then + find "${ED}" -name pt_chown -exec chmod -s {} + + fi + + ################################################################# + # EVERYTHING AFTER THIS POINT IS FOR NATIVE GLIBC INSTALLS ONLY # + # Make sure we install some symlink hacks so that when we build + # a 2nd stage cross-compiler, gcc finds the target system + # headers correctly. See gcc/doc/gccinstall.info + if is_crosscompile ; then + # We need to make sure that /lib and /usr/lib always exists. + # gcc likes to use relative paths to get to its multilibs like + # /usr/lib/../lib64/. So while we don't install any files into + # /usr/lib/, we do need it to exist. + keepdir $(alt_prefix)/lib + keepdir $(alt_prefix)/usr/lib + + dosym usr/include $(alt_prefix)/sys-include + return 0 + fi + + # Files for Debian-style locale updating + dodir /usr/share/i18n + sed \ + -e "/^#/d" \ + -e "/SUPPORTED-LOCALES=/d" \ + -e "s: \\\\::g" -e "s:/: :g" \ + "${S}"/localedata/SUPPORTED > "${ED}"/usr/share/i18n/SUPPORTED \ + || die "generating /usr/share/i18n/SUPPORTED failed" + cd "${WORKDIR}"/extra/locale + dosbin locale-gen + doman *.[0-8] + insinto /etc + doins locale.gen + + keepdir /usr/lib/locale + + cd "${S}" + + # Install misc network config files + insinto /etc + doins posix/gai.conf + + if use systemd ; then + doins "${WORKDIR}/glibc-systemd-${GLIBC_SYSTEMD_VER}/gentoo-config/nsswitch.conf" + else + doins nss/nsswitch.conf + fi + + # Gentoo-specific + newins "${FILESDIR}"/host.conf-1 host.conf + + if use nscd ; then + doins nscd/nscd.conf + + newinitd "$(prefixify_ro "${FILESDIR}"/nscd-1)" nscd + + local nscd_args=( + -e "s:@PIDFILE@:$(strings "${ED}"/usr/sbin/nscd | grep nscd.pid):" + ) + + sed -i "${nscd_args[@]}" "${ED}"/etc/init.d/nscd + + use systemd && systemd_dounit nscd/nscd.service + newtmpfiles nscd/nscd.tmpfiles nscd.conf + fi + + echo 'LDPATH="include ld.so.conf.d/*.conf"' > "${T}"/00glibc + doenvd "${T}"/00glibc + + for d in BUGS ChangeLog CONFORMANCE FAQ NEWS NOTES PROJECTS README* ; do + [[ -s ${d} ]] && dodoc ${d} + done + dodoc -r ChangeLog.old + + # Prevent overwriting of the /etc/localtime symlink. We'll handle the + # creation of the "factory" symlink in pkg_postinst(). + rm -f "${ED}"/etc/localtime + + # Generate all locales if this is a native build as locale generation + if use compile-locales && ! is_crosscompile ; then + run_locale_gen --inplace-glibc "${ED}/" + sed -e 's:COMPILED_LOCALES="":COMPILED_LOCALES="1":' -i "${ED}"/usr/sbin/locale-gen || die + fi +} + +glibc_headers_install() { + local builddir=$(builddir "headers") + cd "${builddir}" + emake install_root="${D}/$(build_eprefix)$(alt_prefix)" install-headers + + insinto $(alt_headers)/gnu + doins "${S}"/include/gnu/stubs.h + + # Make sure we install the sys-include symlink so that when + # we build a 2nd stage cross-compiler, gcc finds the target + # system headers correctly. See gcc/doc/gccinstall.info + dosym usr/include $(alt_prefix)/sys-include +} + +src_install() { + if just_headers ; then + export ABI=default + glibc_headers_install + return + fi + + foreach_abi glibc_do_src_install + + if ! use static-libs ; then + einfo "Not installing static glibc libraries" + find "${ED}" -name "*.a" -and -not -name "*_nonshared.a" -delete + fi +} + +# Simple test to make sure our new glibc isn't completely broken. +# Make sure we don't test with statically built binaries since +# they will fail. Also, skip if this glibc is a cross compiler. +# +# If coreutils is built with USE=multicall, some of these files +# will just be wrapper scripts, not actual ELFs we can test. +glibc_sanity_check() { + cd / #228809 + + # We enter ${ED} so to avoid trouble if the path contains + # special characters; for instance if the path contains the + # colon character (:), then the linker will try to split it + # and look for the libraries in an unexpected place. This can + # lead to unsafe code execution if the generated prefix is + # within a world-writable directory. + # (e.g. /var/tmp/portage:${HOSTNAME}) + pushd "${ED}"/$(get_libdir) >/dev/null + + # first let's find the actual dynamic linker here + # symlinks may point to the wrong abi + local newldso=$(find . -maxdepth 1 -name 'ld*so.?' -type f -print -quit) + + einfo Last-minute run tests with ${newldso} in /$(get_libdir) ... + + local x striptest + for x in cal date env free ls true uname uptime ; do + x=$(type -p ${x}) + [[ -z ${x} || ${x} != ${EPREFIX}/* ]] && continue + striptest=$(LC_ALL="C" file -L ${x} 2>/dev/null) || continue + case ${striptest} in + *"statically linked"*) continue;; + *"ASCII text"*) continue;; + esac + # We need to clear the locale settings as the upgrade might want + # incompatible locale data. This test is not for verifying that. + LC_ALL=C \ + ${newldso} --library-path . ${x} > /dev/null \ + || die "simple run test (${x}) failed" + done + + popd >/dev/null +} + +pkg_preinst() { + # nothing to do if just installing headers + just_headers && return + + # prepare /etc/ld.so.conf.d/ for files + mkdir -p "${EROOT}"/etc/ld.so.conf.d + + # Default /etc/hosts.conf:multi to on for systems with small dbs. + if [[ $(wc -l < "${EROOT}"/etc/hosts) -lt 1000 ]] ; then + sed -i '/^multi off/s:off:on:' "${ED}"/etc/host.conf + einfo "Defaulting /etc/host.conf:multi to on" + fi + + [[ -n ${ROOT} ]] && return 0 + [[ -d ${ED}/$(get_libdir) ]] || return 0 + [[ -z ${BOOTSTRAP_RAP} ]] && glibc_sanity_check + + if [[ -L ${EROOT}/usr/lib/locale ]]; then + # Help portage migrate this to a directory + # https://bugs.gentoo.org/753740 + rm "${EROOT}"/usr/lib/locale || die + fi + + # Keep around libcrypt so that Perl doesn't break when merging libxcrypt + # (libxcrypt is the new provider for now of libcrypt.so.{1,2}). + # bug #802207 + if ! use crypt && has_version "${CATEGORY}/${PN}[crypt]" && ! has preserve-libs ${FEATURES}; then + PRESERVED_OLD_LIBCRYPT=1 + cp -p "${EROOT}/$(get_libdir)/libcrypt$(get_libname 1)" "${T}/libcrypt$(get_libname 1)" || die + else + PRESERVED_OLD_LIBCRYPT=0 + fi +} + +pkg_postinst() { + # nothing to do if just installing headers + just_headers && return + + if ! tc-is-cross-compiler && [[ -x ${EROOT}/usr/sbin/iconvconfig ]] ; then + # Generate fastloading iconv module configuration file. + "${EROOT}"/usr/sbin/iconvconfig --prefix="${ROOT}/" + fi + + if ! is_crosscompile && [[ -z ${ROOT} ]] ; then + use compile-locales || run_locale_gen "${EROOT}/" + fi + + upgrade_warning + + # Check for sanity of /etc/nsswitch.conf, take 2 + if [[ -e ${EROOT}/etc/nsswitch.conf ]] && ! has_version sys-auth/libnss-nis ; then + local entry + for entry in passwd group shadow; do + if egrep -q "^[ \t]*${entry}:.*nis" "${EROOT}"/etc/nsswitch.conf; then + ewarn "" + ewarn "Your ${EROOT}/etc/nsswitch.conf uses NIS. Support for that has been" + ewarn "removed from glibc and is now provided by the package" + ewarn " sys-auth/libnss-nis" + ewarn "Install it now to keep your NIS setup working." + ewarn "" + fi + done + fi + + if [[ ${PRESERVED_OLD_LIBCRYPT} -eq 1 ]] ; then + cp -p "${T}/libcrypt$(get_libname 1)" "${EROOT}/$(get_libdir)/libcrypt$(get_libname 1)" || die + preserve_old_lib_notify /$(get_libdir)/libcrypt$(get_libname 1) + + elog "Please ignore a possible later error message about a file collision involving" + elog "${EROOT}/$(get_libdir)/libcrypt$(get_libname 1). We need to preserve this file for the moment to keep" + elog "the upgrade working, but it also needs to be overwritten when" + elog "sys-libs/libxcrypt is installed. See bug 802210 for more details." + fi +} diff --git a/sys-libs/glibc/glibc-2.35-r2.ebuild b/sys-libs/glibc/glibc-2.35-r3.ebuild index 22e2d5153f19..7040d0738b6a 100644 --- a/sys-libs/glibc/glibc-2.35-r2.ebuild +++ b/sys-libs/glibc/glibc-2.35-r3.ebuild @@ -20,7 +20,7 @@ SLOT="2.2" EMULTILIB_PKG="true" # Gentoo patchset (ignored for live ebuilds) -PATCH_VER=5 +PATCH_VER=6 PATCH_DEV=dilfridge if [[ ${PV} == 9999* ]]; then @@ -29,6 +29,7 @@ else KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" SRC_URI="mirror://gnu/glibc/${P}.tar.xz" SRC_URI+=" https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${P}-patches-${PATCH_VER}.tar.xz" + SRC_URI+=" experimental-loong? ( https://dev.gentoo.org/~xen0n/distfiles/glibc-2.35-loongarch-patches-20220422.tar.xz )" fi RELEASE_VER=${PV} @@ -43,7 +44,7 @@ SRC_URI+=" https://gitweb.gentoo.org/proj/locale-gen.git/snapshot/locale-gen-${L SRC_URI+=" multilib-bootstrap? ( https://dev.gentoo.org/~dilfridge/distfiles/gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}.tar.xz )" SRC_URI+=" systemd? ( https://gitweb.gentoo.org/proj/toolchain/glibc-systemd.git/snapshot/glibc-systemd-${GLIBC_SYSTEMD_VER}.tar.gz )" -IUSE="audit caps cet +clone3 compile-locales +crypt custom-cflags doc gd headers-only +multiarch multilib multilib-bootstrap nscd profile selinux +ssp +static-libs suid systemd systemtap test vanilla" +IUSE="audit caps cet +clone3 compile-locales +crypt custom-cflags doc experimental-loong gd headers-only +multiarch multilib multilib-bootstrap nscd profile selinux +ssp +static-libs suid systemd systemtap test vanilla" # Minimum kernel version that glibc requires MIN_KERN_VER="3.2.0" @@ -843,6 +844,7 @@ src_unpack() { cd "${WORKDIR}" || die unpack glibc-${RELEASE_VER}-patches-${PATCH_VER}.tar.xz + use experimental-loong && unpack glibc-2.35-loongarch-patches-20220422.tar.xz fi cd "${WORKDIR}" || die @@ -861,6 +863,12 @@ src_prepare() { einfo "Applying Gentoo Glibc Patchset ${patchsetname}" eapply "${WORKDIR}"/patches einfo "Done." + + if use experimental-loong ; then + einfo "Applying experimental LoongArch patchset" + eapply "${WORKDIR}"/loongarch-2.35 + einfo "Done." + fi fi if use clone3 ; then diff --git a/sys-libs/glibc/glibc-2.35-r1.ebuild b/sys-libs/glibc/glibc-2.35-r4.ebuild index 891974bc21c4..c67cc3205f9f 100644 --- a/sys-libs/glibc/glibc-2.35-r1.ebuild +++ b/sys-libs/glibc/glibc-2.35-r4.ebuild @@ -20,15 +20,16 @@ SLOT="2.2" EMULTILIB_PKG="true" # Gentoo patchset (ignored for live ebuilds) -PATCH_VER=4 +PATCH_VER=6 PATCH_DEV=dilfridge if [[ ${PV} == 9999* ]]; then inherit git-r3 else - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" SRC_URI="mirror://gnu/glibc/${P}.tar.xz" SRC_URI+=" https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${P}-patches-${PATCH_VER}.tar.xz" + SRC_URI+=" experimental-loong? ( https://dev.gentoo.org/~xen0n/distfiles/glibc-2.35-loongarch-patches-20220422.tar.xz )" fi RELEASE_VER=${PV} @@ -43,7 +44,7 @@ SRC_URI+=" https://gitweb.gentoo.org/proj/locale-gen.git/snapshot/locale-gen-${L SRC_URI+=" multilib-bootstrap? ( https://dev.gentoo.org/~dilfridge/distfiles/gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}.tar.xz )" SRC_URI+=" systemd? ( https://gitweb.gentoo.org/proj/toolchain/glibc-systemd.git/snapshot/glibc-systemd-${GLIBC_SYSTEMD_VER}.tar.gz )" -IUSE="audit caps cet compile-locales +crypt custom-cflags doc gd headers-only +multiarch multilib multilib-bootstrap nscd profile selinux +ssp +static-libs suid systemd systemtap test vanilla" +IUSE="audit caps cet +clone3 compile-locales +crypt custom-cflags doc experimental-loong gd headers-only +multiarch multilib multilib-bootstrap nscd profile selinux +ssp +static-libs suid systemd systemtap test vanilla" # Minimum kernel version that glibc requires MIN_KERN_VER="3.2.0" @@ -429,6 +430,9 @@ setup_flags() { replace-flags -O0 -O1 filter-flags '-fstack-protector*' + + # See end of bug #830454; we handle this via USE=cet + filter-flags '-fcf-protection=' } use_multiarch() { @@ -840,6 +844,7 @@ src_unpack() { cd "${WORKDIR}" || die unpack glibc-${RELEASE_VER}-patches-${PATCH_VER}.tar.xz + use experimental-loong && unpack glibc-2.35-loongarch-patches-20220422.tar.xz fi cd "${WORKDIR}" || die @@ -858,6 +863,20 @@ src_prepare() { einfo "Applying Gentoo Glibc Patchset ${patchsetname}" eapply "${WORKDIR}"/patches einfo "Done." + + if use experimental-loong ; then + einfo "Applying experimental LoongArch patchset" + eapply "${WORKDIR}"/loongarch-2.35 + einfo "Done." + fi + fi + + if use clone3 ; then + append-cppflags -DGENTOO_USE_CLONE3 + else + # See e.g. bug #827386, bug #819045. + elog "Disabling the clone3 syscall for compatibility with older Electron apps." + elog "Please re-enable this flag before filing bugs!" fi default @@ -990,11 +1009,6 @@ glibc_do_configure() { export libc_cv_rootsbindir="$(host_eprefix)/sbin" export libc_cv_slibdir="$(host_eprefix)/$(get_libdir)" - # We take care of patching our binutils to use both hash styles, - # and many people like to force gnu hash style only, so disable - # this overriding check. #347761 - export libc_cv_hashstyle=no - local builddir=$(builddir nptl) mkdir -p "${builddir}" cd "${builddir}" diff --git a/sys-libs/glibc/glibc-9999.ebuild b/sys-libs/glibc/glibc-9999.ebuild index 94842d8172b7..0ccad6a681c1 100644 --- a/sys-libs/glibc/glibc-9999.ebuild +++ b/sys-libs/glibc/glibc-9999.ebuild @@ -994,11 +994,6 @@ glibc_do_configure() { export libc_cv_rootsbindir="$(host_eprefix)/sbin" export libc_cv_slibdir="$(host_eprefix)/$(get_libdir)" - # We take care of patching our binutils to use both hash styles, - # and many people like to force gnu hash style only, so disable - # this overriding check. #347761 - export libc_cv_hashstyle=no - local builddir=$(builddir nptl) mkdir -p "${builddir}" cd "${builddir}" diff --git a/sys-libs/glibc/metadata.xml b/sys-libs/glibc/metadata.xml index 613e58eff7ee..e00a008ac5c3 100644 --- a/sys-libs/glibc/metadata.xml +++ b/sys-libs/glibc/metadata.xml @@ -11,6 +11,7 @@ <flag name="compile-locales">build *all* locales in src_install; this is generally meant for stage building only as it ignores /etc/locale.gen file and can be pretty slow</flag> <flag name="crypt">build and install libcrypt and crypt.h</flag> <flag name="debug">When USE=hardened, allow fortify/stack violations to dump core (SIGABRT) and not kill self (SIGKILL)</flag> + <flag name="experimental-loong">Add experimental LoongArch patchset</flag> <flag name="gd">build memusage and memusagestat tools</flag> <flag name="multiarch">enable optimizations for multiple CPU architectures (detected at runtime)</flag> <flag name="multilib-bootstrap">Provide prebuilt libgcc.a and crt files if missing. Only needed for ABI switch.</flag> diff --git a/sys-libs/gpm/Manifest b/sys-libs/gpm/Manifest index 30384fbe6eff..3a9781c82195 100644 --- a/sys-libs/gpm/Manifest +++ b/sys-libs/gpm/Manifest @@ -10,5 +10,5 @@ AUX gpm.service 218 BLAKE2B 728726976390bb394d479e424d5c1fafb9bc17d00e23a9021899 DIST gpm-1.20.7-docs.patch.xz 41668 BLAKE2B cab4649d0eda83c37474b68ac141fab84cbfaac4e18f0f42ad7c0a90d14bc39697b17c450e8a8dc8b1c960f6d9e7ff344ec15791df240f61a27ccfcd7d0a9171 SHA512 6cdcad70d0a77a56cb507330ff8409155de11255b5e61fb92ee439c1e117932c346df475f4187abb0e348ee4c28fa235a9693883b1c36913e91404662df272f4 DIST gpm-1.20.7.tar.lzma 789691 BLAKE2B 5dbceedaa330d5f1ead8b2267fb5844cfd284627e085edd784a72365830a700f9a6a97f96afb4aa00a44ddbae735ef23be7eafc97a65f6250d72e15b359486c7 SHA512 a502741e2f457b47e41c6d155b1f7ef7c95384fd394503f82ddacf80cde9cdc286c906c77be12b6af8565ef1c3ab24d226379c1dcebcfcd15d64bcf3e94b63b9 EBUILD gpm-1.20.7-r3.ebuild 2384 BLAKE2B b54374cfe57825cac1cd3dbea8994b9087333316bcd858d6d0e94af55cdb7d840adb7884824a87b10b1e7714f43cdb61a41bc61af6136265f9de6cb7ab9c6083 SHA512 ff917fae60b9398a205ca3cefb477f4f872867192ca540abc69cf21d59b25af2b51b01d0255d73838a7ceb6630f885e2a6140a1d1ea72357fe82af248c1deb2e -EBUILD gpm-1.20.7-r4.ebuild 2536 BLAKE2B 45a61f5a57b5775564b7b231327566ccf085c92fde2ed370a862283d8eb434f33738fbd6a4f9e47aebd98e923901b773957320296a9d8bb9da2f381a213bac76 SHA512 c792d00cf7a6aedbcef3c8c0db1430e032a2ecb17675e42890a68b2d3733d0acc6b07d3ba94a1cdcf505ddbadba5d0cfb20c6e822935acc819267959e2425a42 +EBUILD gpm-1.20.7-r4.ebuild 2528 BLAKE2B 677775a267c7844a38959843ee73d6a8a19a8c0086c791f30b1f3ec92400ae1dde6c1808d311f07141e04568a4fabfa43c145b34e61b574b7904dcc343a37f6f SHA512 1372cbcfdf6cd2ba29eba5fa61661f016341dc71caa25a97463c40362052687647a8e13c4c1856571973c5fa13210153ca1667cf6e033e6297f68c33fdabfadc MISC metadata.xml 254 BLAKE2B f3a9f843cf94243d1129711770df727fcdc8808bca829ef784819cab6f5410dfa463cfed85182f8228c7de796a674dd602653ad3ef817a62c0c3e7198b23befe SHA512 b9fcd3084a7e197f6138e1ce8b0eff99c4c203c37a7d5c40de207040ba1501ef0e5b2f4e00216a567037bcd6d3394fdec6ff587484c9ba2fca9d04f431733b7c diff --git a/sys-libs/gpm/gpm-1.20.7-r4.ebuild b/sys-libs/gpm/gpm-1.20.7-r4.ebuild index d554df614508..c658f09ef995 100644 --- a/sys-libs/gpm/gpm-1.20.7-r4.ebuild +++ b/sys-libs/gpm/gpm-1.20.7-r4.ebuild @@ -15,7 +15,7 @@ SRC_URI=" LICENSE="GPL-2" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86" IUSE="selinux" RDEPEND=" diff --git a/sys-libs/kpmcore/Manifest b/sys-libs/kpmcore/Manifest index 9e3243a6598a..76416d34e109 100644 --- a/sys-libs/kpmcore/Manifest +++ b/sys-libs/kpmcore/Manifest @@ -1,7 +1,5 @@ -AUX kpmcore-21.08.3-dont-destroy-zfs-pool.patch 1539 BLAKE2B 926b93a359383686e341a52ac5a74b20b48e9c8e66ff0b61ebaeaf39137ea1f96600951c41b503c903d778767547717b271d7052f688e46964873e8ba3e2c81e SHA512 3da2cadc6ab753edaf502dbca775cd96700096b2b28d9ad63039872e6728d111b855b77d77b9b2481ff439945f094f35e071425584e752c92ddc53ed5b5ae96e -AUX kpmcore-21.08.3-fix-seek-error-when-shred-partition.patch 1017 BLAKE2B 88775e15a0d7ab025645f3423675cc6a141ce343eb91c8f352cc5e32dbb4e02c11763c777fb7eccea653eeec49adaefe407261d3415745d4c561a00999ffbcb6 SHA512 2321b77cb3f80de4ff94dc886f06317bb6f3a09080d71b9e3ffbc87c6091332e6dc4e01b7c33da4724683c860f6df7b547a3c10be38f48310cbd707707e9688d -DIST kpmcore-21.08.3.tar.xz 589464 BLAKE2B 188a702b21976c352bea49c3e40e86c6d3f85b398c3dc9577301471c49cbbf8f161a5f6b62acfc020bcd9530aab2739a39023170c7586a1f18e52add4b2d6ecd SHA512 16570fe9b5e4e83d26b1c2e591d797cd23f37a2195ac5f043ee921d038d0e10d63f9d2c72c4d710e10eeb05d81a6df577f9ddb48b762b034154e399560daa7a7 DIST kpmcore-21.12.3.tar.xz 595940 BLAKE2B ddeb1140b89993ff506d3936017f4882786f716037250f93bb820b1769de2b67301a542e1222adbf71815c36d06372cfffcacee275d807f702c48f1abdd9c84a SHA512 7f26ca0a2a0889c3fe3c67a23e673e7ac96ba359a2da3dec72c1d1d0faeb247d136c405d2e28f1bbe8bcb56352dcca16666a9339cfe199d4a2d0105a44597d16 -EBUILD kpmcore-21.08.3-r1.ebuild 859 BLAKE2B ce8a1d8701008c122a79d78d39f3b744015848db11202201493ced6b342da5cc4cf40fe02f9ba75862c6f2f3f2a473695676d85ea44b588bc212e8e2e2259824 SHA512 dc3bc3f41ac00c73c4403dd4b07cb4be14e63ed30a78d0228391a5b40abdcd51bdbc9faa4c3359e3dff029a5c5ed26aced47f3dd3af9431933c161749b55b8dd -EBUILD kpmcore-21.12.3.ebuild 737 BLAKE2B cfa563bf6fabc3b3dce840a566a03e5f92ec1f4f2d201ce1fff19662973b1047a7e1afbcf36d6de992dd8161f424248f94bfa71b9c13489949fa2299c9d80c06 SHA512 6e446f8264ee04c9953e6c4085c84a170374be99ac1d47942e22bc511df416c8c883f3922102b8efb546582450ca935c5e1840bf425b48fb76e8ed7ebf22ea8d +DIST kpmcore-22.04.0.tar.xz 599012 BLAKE2B bca08917139662ad2c983a2be2ee70c949ea613d3d1a901ae564175ca26bf2110dde18c7d828b660e2d3acc40893eca0b98c30d8284557698cf0994fa5674778 SHA512 355b436b58aa99cdbef50dafc4991af8e6f80ff1f885413cb08331954c8a8c3bbcac162f67fa27c1e898e7e3246ec08a967eeefaaff5b537594a14b6f841037d +EBUILD kpmcore-21.12.3.ebuild 736 BLAKE2B f111e80d31c62c7b427d9bb7ba7944f6c8c6332e516c61622a26882aeb5dfeeaf2efb87bc1d070e1df1a71ef1b28295ae996645d1204bb351ff240baaf245e42 SHA512 ec6a75e5c2dd4f17c746d09b0c6ec50dac0c53257069497ace9cac0cd842d11652ac62c33f0d93cc3a4da8249b6da3332ce53da643676223589d3097f209f734 +EBUILD kpmcore-22.04.0.ebuild 739 BLAKE2B 0d5f6a02b1987babb3bd117cc7e052580b6f6d48193d78deec15f300590a2b73cf88424af348121ea6805f55890cf14b7c51db9254f23523a0d89c9053f73b1c SHA512 9e9746b7c62333352d688d72e24ad5f1011e253d99a6b02f85170282b433dba8ab4c9c96561a705f4ef73a2024484fe52830d8197873084b44032f0c0daf66a9 MISC metadata.xml 318 BLAKE2B 922a5e32e706b2976c5f359a14194d268d3f499398576c80ce5fad8c0fcea0fbf048de4480a80a6a1889c88b8b6c14147654a3ab4d5ffbcc258c2290da63f6d1 SHA512 614cb8dda7ad2088e5d6ef39b449bb4be0ac72cd0231c320188d76d1816dce6490c5114bb4798112c4b11d99d30a9e82ff8fcf08ffa8c049589682a5e38208f6 diff --git a/sys-libs/kpmcore/files/kpmcore-21.08.3-dont-destroy-zfs-pool.patch b/sys-libs/kpmcore/files/kpmcore-21.08.3-dont-destroy-zfs-pool.patch deleted file mode 100644 index 83cc15d0f2d5..000000000000 --- a/sys-libs/kpmcore/files/kpmcore-21.08.3-dont-destroy-zfs-pool.patch +++ /dev/null @@ -1,46 +0,0 @@ -From 282cfdcde179ec44d053b257e13aa715158596bd Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Andrius=20=C5=A0tikonas?= <andrius@stikonas.eu> -Date: Sat, 30 Oct 2021 21:13:07 +0100 -Subject: [PATCH] Do not destroy zfs pool when removing zfs partition. - -This can be dangerous, e.g. if partition is part of raid set. -So better be more cautious and in some cases fail to remove partition -than lose data. ---- - src/fs/zfs.cpp | 7 ------- - src/fs/zfs.h | 1 - - 2 files changed, 8 deletions(-) - -diff --git a/src/fs/zfs.cpp b/src/fs/zfs.cpp -index 5d12894..5f4c87d 100644 ---- a/src/fs/zfs.cpp -+++ b/src/fs/zfs.cpp -@@ -77,13 +77,6 @@ qint64 zfs::maxCapacity() const - return Capacity::unitFactor(Capacity::Unit::Byte, Capacity::Unit::EiB); - } - --bool zfs::remove(Report& report, const QString& deviceNode) const --{ -- Q_UNUSED(deviceNode) -- ExternalCommand cmd(report, QStringLiteral("zpool"), { QStringLiteral("destroy"), QStringLiteral("-f"), label() }); -- return cmd.run(-1) && cmd.exitCode() == 0; --} -- - bool zfs::writeLabel(Report& report, const QString& deviceNode, const QString& newLabel) - { - Q_UNUSED(deviceNode) -diff --git a/src/fs/zfs.h b/src/fs/zfs.h -index 6e559de..61026c3 100644 ---- a/src/fs/zfs.h -+++ b/src/fs/zfs.h -@@ -35,7 +35,6 @@ public: - public: - void init() override; - -- bool remove(Report& report, const QString& deviceNode) const override; - bool writeLabel(Report& report, const QString& deviceNode, const QString& newLabel) override; - - CommandSupportType supportGetUsed() const override { --- -GitLab - diff --git a/sys-libs/kpmcore/files/kpmcore-21.08.3-fix-seek-error-when-shred-partition.patch b/sys-libs/kpmcore/files/kpmcore-21.08.3-fix-seek-error-when-shred-partition.patch deleted file mode 100644 index 568db790c7e9..000000000000 --- a/sys-libs/kpmcore/files/kpmcore-21.08.3-fix-seek-error-when-shred-partition.patch +++ /dev/null @@ -1,27 +0,0 @@ -From e9fc875c5e233401afd12f54ab0472c66ff6fdff Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Andrius=20=C5=A0tikonas?= <andrius@stikonas.eu> -Date: Fri, 12 Nov 2021 01:02:15 +0000 -Subject: [PATCH] Fix seek error when filling device with random data or - zeroes. - ---- - src/util/externalcommandhelper.cpp | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/src/util/externalcommandhelper.cpp b/src/util/externalcommandhelper.cpp -index 6e61aba..0fa400d 100644 ---- a/src/util/externalcommandhelper.cpp -+++ b/src/util/externalcommandhelper.cpp -@@ -80,7 +80,8 @@ bool ExternalCommandHelper::readData(const QString& sourceDevice, QByteArray& bu - return false; - } - -- if (!device.seek(offset)) { -+ // Sequential devices such as /dev/zero or /dev/urandom return false on seek(). -+ if (!device.isSequential() && !device.seek(offset)) { - qCritical() << xi18n("Could not seek position %1 on device <filename>%2</filename>.", offset, sourceDevice); - return false; - } --- -GitLab - diff --git a/sys-libs/kpmcore/kpmcore-21.12.3.ebuild b/sys-libs/kpmcore/kpmcore-21.12.3.ebuild index 79e6ad38178d..55a0e9f5b790 100644 --- a/sys-libs/kpmcore/kpmcore-21.12.3.ebuild +++ b/sys-libs/kpmcore/kpmcore-21.12.3.ebuild @@ -14,7 +14,7 @@ HOMEPAGE="https://apps.kde.org/partitionmanager/" LICENSE="GPL-3" SLOT="5/10" -KEYWORDS="amd64 ~arm ~arm64 ~ppc64 x86" +KEYWORDS="amd64 ~arm arm64 ~ppc64 x86" IUSE="" # bug 689468, tests need polkit etc. diff --git a/sys-libs/kpmcore/kpmcore-21.08.3-r1.ebuild b/sys-libs/kpmcore/kpmcore-22.04.0.ebuild index dbf7c293053e..83d3b36bf651 100644 --- a/sys-libs/kpmcore/kpmcore-21.08.3-r1.ebuild +++ b/sys-libs/kpmcore/kpmcore-22.04.0.ebuild @@ -1,11 +1,11 @@ -# Copyright 1999-2021 Gentoo Authors +# Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 ECM_NONGUI="true" KDE_GEAR="true" -KFMIN=5.84.0 +KFMIN=5.92.0 QTMIN=5.15.2 inherit ecm kde.org @@ -14,12 +14,13 @@ HOMEPAGE="https://apps.kde.org/partitionmanager/" LICENSE="GPL-3" SLOT="5/10" -KEYWORDS="amd64 ~arm arm64 ~ppc64 x86" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86" IUSE="" # bug 689468, tests need polkit etc. RESTRICT="test" +BDEPEND="virtual/pkgconfig" DEPEND=" >=dev-qt/qtdbus-${QTMIN}:5 >=dev-qt/qtgui-${QTMIN}:5 @@ -31,9 +32,3 @@ DEPEND=" sys-auth/polkit-qt " RDEPEND="${DEPEND}" -BDEPEND="virtual/pkgconfig" - -PATCHES=( - "${FILESDIR}/${P}-dont-destroy-zfs-pool.patch" - "${FILESDIR}/${P}-fix-seek-error-when-shred-partition.patch" -) diff --git a/sys-libs/ldb/Manifest b/sys-libs/ldb/Manifest index 664006118303..d607d32e5e05 100644 --- a/sys-libs/ldb/Manifest +++ b/sys-libs/ldb/Manifest @@ -1,15 +1,13 @@ AUX ldb-1.1.31-fix_PKGCONFIGDIR-when-python-disabled.patch 701 BLAKE2B dd2398f9e1fa39bfc3de89928dd3b935fd6ee9db4bc2c4e381ba5672098ae9209b2d6e475fa2549a9cef2e3ce5e9a789557413fbdb1bbd68842cca89ce1e8094 SHA512 35ba295d94ab5ce767f39c4cd5eb48d57a6e4993977013ee6ae0d640f74b5437a4dff6f1d14dc44dbcdc25d4e51e5084b0e3216353b2af383d8f544993228170 AUX ldb-1.5.2-optional_packages.patch 1441 BLAKE2B 0b9413cd9690aae2b2eb26f097d2509c0bbe0fc59f81bab22add57ffe0c603a8fb0c9be038d06693dcbb1d3817d4ad97a5931120b18bd9783efaac599fe0ccbc SHA512 2f313c3377385279ca3da6db21d926df0559d971e1fd42f8cce57b4001078c3817f472b85088a1f3b0e5ddcdfbbfd943199485d6e4a00412f62c883c6ea04afd AUX ldb-2.4.2-skip-32bit-time_t-tests.patch 1308 BLAKE2B 1ff687160b92c5395c7838ade8af32ba77637a2b18153d146b9e1496f96ec9c411cc5e5f9721a8dea1730118e6574a091ee7fd1edca1830cc54c5d4fddb007ab SHA512 27a35123cb9a1f6e39b88c91de8241ecfc0f0ed125a235ba26b95767dc3121d176b267ba97b1579e5b68cfb9e3879f40326f0163a31e311f01a1b2eb7751caf4 -DIST ldb-2.3.1.tar.gz 1718379 BLAKE2B e2aa196e6e09846be2a631d81bf0b94c0cd80984ac124757888889717efdf78caf5501c4278ace33dcc2a6fb92a4a2f224b20ea9f3bf3fa5c7333f9994dcbdc1 SHA512 d87f3839481c3ac3f5ce5e2b5bb766451fe39681bff9c53747d45e2cdcef9f1eb91c0a7d6a9c202c4d01097600d66ca431a175f4fc28a126ad987b9783cb87bc DIST ldb-2.3.2.tar.gz 1718583 BLAKE2B 48b9fb77e414af0f9fffe0cda9cf49971d79ed8b66213b01b73f53a61969e03f9e6426a04a33ff70da906c814470d8fa356902a68aa1169d969cc597e8c234d7 SHA512 be324e8f20db50529634548451dbc5f95f26a701e124bfb40ae2b0a5069de78b7c5c1a66222097209ea24ef6077373d996e67c00257a5a05198f1b81bf0ed53e -DIST ldb-2.4.0.tar.gz 1689484 BLAKE2B 904d74900011ce3f63ad1c24fe88b1a090e835c68829ddfda5e8af2c0ab3674d7a8cd9a62b95c1f38f26578d0704556d3562e46e21a54cbb44a15b9d83676521 SHA512 6c500b723c081488bc0717b6a5b0e8966c5d8a751232f8856281a6fe4d358ae6b5878c8400a82fa666379066105fbb9259b2967313e73efabef0e1386095e2ee +DIST ldb-2.3.3.tar.gz 1719542 BLAKE2B 2a5cfe3ddac2054d167c2857e0cd92e0f88d2c196f9285c029b2a525d781025a956a296bd6d793b65f848188cf7adf70f99542999061a85be473b3fc3b2856f1 SHA512 ffb50208fe971afd544a431b79905ec8fce67d78d20c3fcfb8345a56f3b278fb664bc48079d7239a8ca5b70aae8b32076b6007cb63e080cd536e9fe458efeccd DIST ldb-2.4.1.tar.gz 1719769 BLAKE2B 868d3dcc51bd8272d99f2335ed1af2e37506b6a175254f1aca37f758488ba0997e37419a7d8c81def77698128307df97de26d4807ac78c34088f7a623f8d9e68 SHA512 14ab5397d28c369142b2ccf55a2ab4e678a3fe6e018541cfce46241f8226400bc169360bbef254fae4410a6e15024ae986f02298d3d324e3d3a8b88801bf76d7 DIST ldb-2.4.2.tar.gz 1720169 BLAKE2B d144218bf62dde57560df8b8a641e9f58bee001fdfa7b1527d9eb9a1a55e428662db81912173cbcdb9f993c0b316faab7d758a4878beeff1daadd487e9aa44a9 SHA512 77705ad284eed9105c9aba0459d2e48cd66ca19b657a55f7513e10281dd2e96540d24d1c8df53adc84109a918900687dc75b635cda05c4e788424ed71b5ff989 DIST ldb-2.5.0.tar.gz 1722847 BLAKE2B 880a5a516b0b423854f8a3f9c54da89e4640f8462ccc54a7b147c70c3a9eb073dc9e914d1906ab914a9ddd9b9aa0e7d177ef3ecb4c0b506f5417db931b017849 SHA512 f16a235f1409e06266c51735ac645cf2708d31dd731ee7b95d6778498b115f4252b0a528952e620767d1616a4e1e7c5f2cdc69f3fa32d79288cf14da2f52a010 -EBUILD ldb-2.3.1-r1.ebuild 2942 BLAKE2B d2495240018b7ecece8c88092c30ea64f411ea0f073f0ff2404ca6184fe931ada8342ea3beffd710fb0d3c137174cc01fba37d73d7884ad11edba84855f2ae08 SHA512 8711a2758689c818b66af5548af9881cf217839d5ea951cbcdbc83531ec602a9b39e1d2b12e8452e60691f09ef4e9db0d0d639e7d4a45d16cc7e75db583c714b EBUILD ldb-2.3.2-r1.ebuild 2942 BLAKE2B d2495240018b7ecece8c88092c30ea64f411ea0f073f0ff2404ca6184fe931ada8342ea3beffd710fb0d3c137174cc01fba37d73d7884ad11edba84855f2ae08 SHA512 8711a2758689c818b66af5548af9881cf217839d5ea951cbcdbc83531ec602a9b39e1d2b12e8452e60691f09ef4e9db0d0d639e7d4a45d16cc7e75db583c714b -EBUILD ldb-2.4.0-r2.ebuild 2949 BLAKE2B 119bd03399cb6851748acd19904afb7cb423bf77b58cb419169be64ef49a8d1461ab705f992529a726d5e00dd1977ea9d6f6b2e3009f61512f13c431b5d729fe SHA512 6ba869ee1b7c082a02ede9a78384fcd539c2482b44c46bed3afe8712541eabf169cf991c1bf65649ab1b4300b5fce7c3f0512a605e25d37a63f93d9b1a602377 +EBUILD ldb-2.3.3.ebuild 2949 BLAKE2B 5ee78f915254ca0ff1f5f107ec4caf24393022e5eeeac6b3bf5593b4da9c802e3f72965fcc023c81676a93e7ba21bfc255c175204f8497fc6031fdfe644d8af9 SHA512 b9441f83f2b078a7bb7492222acb04afb77238c78cb8c77ddf097a51b340c2ba7bc1f7c552a66d297baf825fc4020f3f77143199a6f4c0edd217deb980f911fb EBUILD ldb-2.4.1-r1.ebuild 2943 BLAKE2B e96f5909024e90dd48096bd1a80d123460cd86c6a1743372992cdab7ed758f0759f889f558ce999cd493b625a231f8185852e18cf678f086bc221a61f895e887 SHA512 60ffaadddc5007e6c3aa8cbad369b20e5691b26ed163e747196cc7c1fb40ee74477ea00e022cfd94ff69eb9c911aaa51945d793913aa3056321b8026bd38bb66 EBUILD ldb-2.4.2-r1.ebuild 3007 BLAKE2B 543d57e1e3e50a57fdde0a15003fbd04990b16300df7e38b0be8021549f57e2bbfc30417a81b8519ca47d236cfbf3be3bf10d8dbeeff2b5d06e575ab9acff22b SHA512 71027d7877c6af0db3b859aa3271aefb3e9bb0134d732393e5c7d6a2b14da9a55d255fac0e04de271caf269a9d627f4203a932ed13d74137558d1c7adfcccc51 EBUILD ldb-2.5.0-r1.ebuild 3007 BLAKE2B 0abb5aa964f1b945d2bddd1154421bf35d24e9fb78dde2b0ae34b4495326142dbda601c1aa2579bdfb81face8bf6072f0dafb676524d2aa3c1f2e9947c7a9cf7 SHA512 ff46752cb5c33374665b52eef69398821f7c463deaa1a5c8c05115b94fb97cc56c805df49826f09ded208adf91a50799fa9f43e878f36291676ff7e2c9f917a7 diff --git a/sys-libs/ldb/ldb-2.3.1-r1.ebuild b/sys-libs/ldb/ldb-2.3.3.ebuild index 49ea629050ba..99aa75a74e34 100644 --- a/sys-libs/ldb/ldb-2.3.1-r1.ebuild +++ b/sys-libs/ldb/ldb-2.3.3.ebuild @@ -13,7 +13,7 @@ SRC_URI="https://samba.org/ftp/pub/${PN}/${P}.tar.gz" LICENSE="LGPL-3" SLOT="0/${PV}" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" IUSE="doc ldap +lmdb python test" REQUIRED_USE="${PYTHON_REQUIRED_USE} diff --git a/sys-libs/ldb/ldb-2.4.0-r2.ebuild b/sys-libs/ldb/ldb-2.4.0-r2.ebuild deleted file mode 100644 index ebd2a0d0b0ea..000000000000 --- a/sys-libs/ldb/ldb-2.4.0-r2.ebuild +++ /dev/null @@ -1,120 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python3_{7..9} ) -PYTHON_REQ_USE="threads(+)" -inherit python-single-r1 waf-utils multilib-minimal - -DESCRIPTION="LDAP-like embedded database" -HOMEPAGE="https://ldb.samba.org" -SRC_URI="https://samba.org/ftp/pub/${PN}/${P}.tar.gz" - -LICENSE="LGPL-3" -SLOT="0/${PV}" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" -IUSE="doc ldap +lmdb python test" - -REQUIRED_USE="${PYTHON_REQUIRED_USE} - test? ( python )" - -RESTRICT="!test? ( test )" - -RDEPEND=" - dev-libs/libbsd[${MULTILIB_USEDEP}] - dev-libs/popt[${MULTILIB_USEDEP}] - >=dev-util/cmocka-1.1.3[${MULTILIB_USEDEP}] - >=sys-libs/talloc-2.3.3[${MULTILIB_USEDEP}] - >=sys-libs/tdb-1.4.4[${MULTILIB_USEDEP}] - >=sys-libs/tevent-0.11.0[${MULTILIB_USEDEP}] - ldap? ( net-nds/openldap:= ) - lmdb? ( >=dev-db/lmdb-0.9.16:=[${MULTILIB_USEDEP}] ) - python? ( - ${PYTHON_DEPS} - sys-libs/talloc[python,${PYTHON_SINGLE_USEDEP}] - sys-libs/tdb[python,${PYTHON_SINGLE_USEDEP}] - sys-libs/tevent[python,${PYTHON_SINGLE_USEDEP}] - ) -" -DEPEND="${RDEPEND} - virtual/libcrypt -" -BDEPEND="${PYTHON_DEPS} - dev-libs/libxslt - virtual/pkgconfig - doc? ( app-doc/doxygen ) -" - -WAF_BINARY="${S}/buildtools/bin/waf" - -MULTILIB_WRAPPED_HEADERS=( /usr/include/pyldb.h ) - -PATCHES=( - "${FILESDIR}"/${PN}-1.5.2-optional_packages.patch - "${FILESDIR}"/${PN}-1.1.31-fix_PKGCONFIGDIR-when-python-disabled.patch -) - -pkg_setup() { - # Package fails to build with distcc - export DISTCC_DISABLE=1 - - # waf requires a python interpreter - python-single-r1_pkg_setup -} - -src_prepare() { - default - multilib_copy_sources -} - -multilib_src_configure() { - local myconf=( - $(usex ldap '' --disable-ldap) - $(usex lmdb '' --without-ldb-lmdb) - --disable-rpath - --disable-rpath-install --bundled-libraries=NONE - --with-modulesdir="${EPREFIX}"/usr/$(get_libdir)/samba - --builtin-libraries=NONE - ) - if ! multilib_is_native_abi; then - myconf+=( --disable-python ) - else - use python || myconf+=( --disable-python ) - fi - waf-utils_src_configure "${myconf[@]}" -} - -multilib_src_compile() { - waf-utils_src_compile - multilib_is_native_abi && use doc && doxygen Doxyfile -} - -multilib_src_test() { - if multilib_is_native_abi; then - WAF_MAKE=1 \ - PATH=buildtools/bin:../../../buildtools/bin:$PATH:"${BUILD_DIR}"/bin/shared/private/ \ - LD_LIBRARY_PATH=$LD_LIBRARY_PATH:"${BUILD_DIR}"/bin/shared/private/:"${BUILD_DIR}"/bin/shared \ - waf test || die - fi -} - -multilib_src_install() { - waf-utils_src_install - - if multilib_is_native_abi && use doc; then - doman apidocs/man/man3/*.3 - docinto html - dodoc -r apidocs/html/. - fi - - use python && python_optimize #726454 -} - -pkg_postinst() { - if has_version sys-auth/sssd; then - ewarn "You have sssd installed. It is known to break after ldb upgrades," - ewarn "so please try to rebuild it before reporting bugs." - ewarn "See https://bugs.gentoo.org/404281" - fi -} diff --git a/sys-libs/libaal/Manifest b/sys-libs/libaal/Manifest index abee092c8292..5cd45c3eaf55 100644 --- a/sys-libs/libaal/Manifest +++ b/sys-libs/libaal/Manifest @@ -1,3 +1,3 @@ DIST libaal-1.0.7.tar.gz 376068 BLAKE2B 2fb7802401721a64b17c0409f3ff668524399efc03b4bda4b4523af2cce204fdb5cf41bb2b2a6af5cbda34ee88cbb4703eec9bb76774d705b1759c91a33b1e34 SHA512 9b39a8cd3f49257ea912bb0e463c0c63ad06914e8a310deb4d4dce544d3ee34f492203c7321f971af71dddc1eb85f207082a4791b19bd4fad3f7dab516513b3d -EBUILD libaal-1.0.7-r2.ebuild 893 BLAKE2B 857f04ac3c66445447a663eea012c42bce415b58278480437514eec5a4fdf931381cb237a2e63661b3ccba28512d0b6fa612aba2527463c901675b72aa8fb6db SHA512 e4a690f993a16acba6289921091d65858e5c7a9a8509f7822aaee823d82cc0fb72b66c3a4fcd3409e3031d900dee0034608ce571526eee0a910ec0698caad3b4 +EBUILD libaal-1.0.7-r2.ebuild 900 BLAKE2B 99b2e94b901e1d6a70b808213d101cdbabcd7833d11418c10b6bc2dd6e8d3bfd1ee0bf64908bf4b882f21a506733255fd419bd698b271a868f1ffe42d98f92b1 SHA512 4d39df137ce2b24327067ba199f5b0234c0aba771494c6544fa36a9959e44dbe9545471bb4b7589ed5887aa816be7841dfdea79295b9afb41b5380559270dad2 MISC metadata.xml 407 BLAKE2B 86af1cbf6e229e1cad21aa8ad5ad8ac29eb5fed43a3df646cbcac34614acd0665b7f903dd7f1734a4e4bfe239da49e8b2c875da75ab66dcc377d711fa2ff48b8 SHA512 a0c6fbba6d5dfb54f836a7cdc95d8317fbd126a871883711a03856dc183ddfdefed285ecc3d199588c8ef45c8e70d328b33cd21fdcfed786ed9011e52818a731 diff --git a/sys-libs/libaal/libaal-1.0.7-r2.ebuild b/sys-libs/libaal/libaal-1.0.7-r2.ebuild index 7994ee19251f..32c17e6921af 100644 --- a/sys-libs/libaal/libaal-1.0.7-r2.ebuild +++ b/sys-libs/libaal/libaal-1.0.7-r2.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2021 Gentoo Authors +# Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -11,7 +11,7 @@ SRC_URI="mirror://sourceforge/reiser4/${P}.tar.gz" LICENSE="GPL-2" SLOT="0/7" -KEYWORDS="amd64 arm ~arm64 ppc ppc64 -sparc x86" +KEYWORDS="amd64 arm ~arm64 ~loong ppc ppc64 -sparc x86" IUSE="static-libs" BDEPEND="virtual/os-headers" diff --git a/sys-libs/libblockdev/Manifest b/sys-libs/libblockdev/Manifest index 4838efc018fe..8492c143fe79 100644 --- a/sys-libs/libblockdev/Manifest +++ b/sys-libs/libblockdev/Manifest @@ -1,6 +1,4 @@ -DIST libblockdev-2.25.tar.gz 930238 BLAKE2B ae28c40b5e114826baf4a8ba9012267b297dbc4abee52669cf39c886d2c9989291f41937ec742c7457049a6a30e674f9c89ad6478923f393ae1773db3afcf621 SHA512 628d05f3a257b44208a9d0b5d84ae248fefd415812d9a93d132c03039b09fefc4d6110beb9aa0d3072e3f0c992e642d7867d0241209056538f132f86a748e195 DIST libblockdev-2.26.tar.gz 932129 BLAKE2B 39d95db69de917449e6009fa0160b6288327b2c49b64309d17a1e4e028756d1ce170779ce1c4df926c8796d8a8ed7b9131b5d4b51115a3ea901dacdaa971961a SHA512 ddd4e9c22135bd7dad0bb9bc254ac0c63e3bacc592e7c5a0c846e367da3fc248bf6187f1c81407c3bce599d3b0ceeec9a8a0030ad8e981e245f715b35eaec523 -EBUILD libblockdev-2.25.ebuild 2613 BLAKE2B 848c426ed0dc619799901680eb16d5d00d94c36894adf29c9b8338edb711a090d57ebadd94d6dc720217902fda2390f1d45f46c41febe3dee89333b42fd845f8 SHA512 781c02b20d97d28430ba2834998c62aff5721e6b9f36f7e2325285dbaab4eaa7adf5b2511caf6accf48d0935c9bdff455c976c7f0b4a9bebc36c31c71fd919ad -EBUILD libblockdev-2.26.ebuild 2886 BLAKE2B 42732b4d5822bb2c5f512064dc4367d46a310a9a68eb4f3ee693b94c220a87cbbe666a8c850e3623be5db260bb3839f0b3965b8c354733c22221ee54d9b5827b SHA512 01b97554ec2e6870bbb0e3e8cd0636daacbc3b1636c75e18765273656668c572e2cb39ac68b0c228808208dd74ea5d8aeb5c709a0a8e45fcc15c828720a6d8b3 -EBUILD libblockdev-9999.ebuild 2886 BLAKE2B 42732b4d5822bb2c5f512064dc4367d46a310a9a68eb4f3ee693b94c220a87cbbe666a8c850e3623be5db260bb3839f0b3965b8c354733c22221ee54d9b5827b SHA512 01b97554ec2e6870bbb0e3e8cd0636daacbc3b1636c75e18765273656668c572e2cb39ac68b0c228808208dd74ea5d8aeb5c709a0a8e45fcc15c828720a6d8b3 -MISC metadata.xml 1080 BLAKE2B e959d07886b20d615c369d2a9dd621f7b4af9cb3a93c425cf9ac1c64179eeb09f9b78d95bfc5b8deabe50e9d6bc6f5364eb4ace76c1b8f7f5aab2f01f83e1c08 SHA512 7f6fe7ab61119dcd024bc8a6fd62d2b60ac59e5eb70244d13e62c8e35279db8690717e67381ae05eb10b4b7e6cdeedb8c5b423ddd7fb8e750a77e2d254e6162d +EBUILD libblockdev-2.26.ebuild 2879 BLAKE2B f916a130ae27de31deb7564e25517733305dc07a00df358ac0b328e35cda81cfa4af9d5d3cb61c25146accccc3df6a318854ca7e4d2c6c35728e1520cbf6000f SHA512 b966334e28a29a979f4bad47c92e4efb2b6bd869ad3408ba9a9f6e4450c2797d1bac3544945991705526b767e67f16e41bd5dc67d66e255e5c7db3622ef1abcf +EBUILD libblockdev-9999.ebuild 2871 BLAKE2B 91afe84f6a72beef76cdd364203333d56640ec79addd425628bf194407fc1ccd0f73e3e76be89eb2b6229936ccc7ad9f106cce66a9439bf01a786a98bc6a6897 SHA512 dbd469752e2c6e6316b4844957cf95b5b4a82a40a33ed95a1aa0a29ebd6d0fbfddd4e83a11854c24e3b9620823fd1b97569c8d67fd0d9b0f8e230672e1f060ac +MISC metadata.xml 1158 BLAKE2B 0ee231799be379354cf0ede12466e0d09277bde99687abca2fc8bebe47847fc042844e3909f76b0e3b219d361cf99fb6582e12cb79b862e00ae7a460ce1785bc SHA512 b81132d7617eac81f946c2878759a4dde7edd691514ca7800621bd89be4a4a965b7389efac40b7b9c85ab19fe9ab1e1c4e0977032405bef66984e4ef44bfaee4 diff --git a/sys-libs/libblockdev/libblockdev-2.25.ebuild b/sys-libs/libblockdev/libblockdev-2.25.ebuild deleted file mode 100644 index 542a3e9e88c6..000000000000 --- a/sys-libs/libblockdev/libblockdev-2.25.ebuild +++ /dev/null @@ -1,119 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python3_{7..9} ) -inherit autotools python-single-r1 xdg-utils - -DESCRIPTION="A library for manipulating block devices" -HOMEPAGE="https://github.com/storaged-project/libblockdev" -if [[ "${PV}" == *9999 ]] ; then - inherit git-r3 - EGIT_REPO_URI="https://github.com/storaged-project/libblockdev.git" - BDEPEND=" - sys-devel/autoconf-archive - " -else - MY_PV="${PV}-1" - #MY_P="${PN}-${MY_PV}" - #SRC_URI="https://github.com/storaged-project/${PN}/archive/${MY_PV}.tar.gz -> ${MY_P}.tar.gz" - SRC_URI="https://github.com/storaged-project/${PN}/releases/download/${MY_PV}/${P}.tar.gz" - KEYWORDS="~alpha amd64 arm arm64 ~ia64 ~mips ppc ppc64 ~riscv sparc x86" - #S="${WORKDIR}/${MY_P}" -fi -LICENSE="LGPL-2+" -SLOT="0" -IUSE="bcache +cryptsetup device-mapper dmraid escrow gtk-doc introspection lvm kbd test +tools vdo" -RESTRICT="!test? ( test )" - -RDEPEND=" - >=dev-libs/glib-2.42.2 - dev-libs/libbytesize - >=sys-apps/kmod-19 - >=sys-apps/util-linux-2.27 - >=sys-block/parted-3.1 - cryptsetup? ( - escrow? ( - >=dev-libs/nss-3.18.0 - dev-libs/volume_key - ) - >=sys-fs/cryptsetup-1.6.7:= - ) - device-mapper? ( sys-fs/lvm2 ) - dmraid? ( - sys-fs/dmraid - sys-fs/lvm2 - ) - lvm? ( - sys-fs/lvm2 - virtual/udev - ) - vdo? ( dev-libs/libyaml ) - ${PYTHON_DEPS} -" - -DEPEND=" - ${RDEPEND} -" - -BDEPEND+=" - dev-util/gtk-doc-am - gtk-doc? ( dev-util/gtk-doc ) - introspection? ( >=dev-libs/gobject-introspection-1.3.0 ) -" - -REQUIRED_USE="${PYTHON_REQUIRED_USE} - escrow? ( cryptsetup )" - -pkg_setup() { - python-single-r1_pkg_setup -} - -src_prepare() { - xdg_environment_reset #623992 - default - - # https://bugs.gentoo.org/744289 - find -type f \( -name "Makefile.am" -o -name "configure.ac" \) -print0 \ - | xargs --null sed "s@ -Werror@@" -i || die - - eautoreconf -} - -src_configure() { - local myeconfargs=( - --with-btrfs - --with-fs - --with-part - --without-mpath - --without-nvdimm - $(use_enable introspection) - $(use_enable test tests) - $(use_with bcache) - $(use_with cryptsetup crypto) - $(use_with device-mapper dm) - $(use_with dmraid) - $(use_with escrow) - $(use_with gtk-doc) - $(use_with kbd) - $(use_with lvm lvm) - $(use_with lvm lvm-dbus) - $(use_with tools) - $(use_with vdo) - --without-python2 - --with-python3 - ) - econf "${myeconfargs[@]}" -} - -src_install() { - default - find "${ED}" -type f -name "*.la" -delete || die - # This is installed even with USE=-lvm, but libbd_lvm are omitted so it - # doesn't work at all. - if ! use lvm; then - rm -f "${ED}"/usr/bin/lvm-cache-stats || die - fi - python_optimize #718576 -} diff --git a/sys-libs/libblockdev/libblockdev-2.26.ebuild b/sys-libs/libblockdev/libblockdev-2.26.ebuild index 0682b4b778eb..b7f75e8e7b48 100644 --- a/sys-libs/libblockdev/libblockdev-2.26.ebuild +++ b/sys-libs/libblockdev/libblockdev-2.26.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2021 Gentoo Authors +# Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 -PYTHON_COMPAT=( python3_{7..10} ) +PYTHON_COMPAT=( python3_{8..10} ) inherit autotools python-single-r1 xdg-utils DESCRIPTION="A library for manipulating block devices" @@ -19,7 +19,7 @@ else #MY_P="${PN}-${MY_PV}" #SRC_URI="https://github.com/storaged-project/${PN}/archive/${MY_PV}.tar.gz -> ${MY_P}.tar.gz" SRC_URI="https://github.com/storaged-project/${PN}/releases/download/${MY_PV}/${P}.tar.gz" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" + KEYWORDS="~alpha amd64 arm arm64 ~ia64 ~mips ppc ppc64 ~riscv sparc x86" #S="${WORKDIR}/${MY_P}" fi LICENSE="LGPL-2+" diff --git a/sys-libs/libblockdev/libblockdev-9999.ebuild b/sys-libs/libblockdev/libblockdev-9999.ebuild index 0682b4b778eb..caa2065daf93 100644 --- a/sys-libs/libblockdev/libblockdev-9999.ebuild +++ b/sys-libs/libblockdev/libblockdev-9999.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2021 Gentoo Authors +# Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=7 +EAPI=8 -PYTHON_COMPAT=( python3_{7..10} ) +PYTHON_COMPAT=( python3_{8..10} ) inherit autotools python-single-r1 xdg-utils DESCRIPTION="A library for manipulating block devices" @@ -24,7 +24,7 @@ else fi LICENSE="LGPL-2+" SLOT="0" -IUSE="bcache +cryptsetup device-mapper dmraid escrow gtk-doc introspection lvm kbd test +tools vdo" +IUSE="bcache +cryptsetup device-mapper dmraid escrow gtk-doc introspection lvm kbd +nvme test +tools" # Tests require root. In a future release, we may be able to run a smaller # subset with new run_tests.py arguments. RESTRICT="!test? ( test ) test" @@ -51,7 +51,7 @@ RDEPEND=" sys-fs/lvm2 virtual/udev ) - vdo? ( dev-libs/libyaml ) + nvme? ( sys-libs/libnvme ) ${PYTHON_DEPS} " @@ -88,6 +88,7 @@ src_configure() { --with-btrfs --with-fs --with-part + --with-python3 --without-mpath --without-nvdimm $(use_enable introspection) @@ -101,10 +102,8 @@ src_configure() { $(use_with kbd) $(use_with lvm lvm) $(use_with lvm lvm-dbus) + $(use_with nvme) $(use_with tools) - $(use_with vdo) - --without-python2 - --with-python3 ) econf "${myeconfargs[@]}" } @@ -121,7 +120,7 @@ src_install() { find "${ED}" -type f -name "*.la" -delete || die # This is installed even with USE=-lvm, but libbd_lvm are omitted so it # doesn't work at all. - if ! use lvm; then + if ! use lvm ; then rm -f "${ED}"/usr/bin/lvm-cache-stats || die fi python_optimize #718576 diff --git a/sys-libs/libblockdev/metadata.xml b/sys-libs/libblockdev/metadata.xml index 981e2c38015b..5d09531b8a88 100644 --- a/sys-libs/libblockdev/metadata.xml +++ b/sys-libs/libblockdev/metadata.xml @@ -13,6 +13,7 @@ <flag name="escrow">Support for building crypto plugin with escrow device support</flag> <flag name="kbd">Enable kernel block device support.</flag> <flag name="lvm">Enable support for Logical Volume Management via <pkg>sys-fs/lvm2</pkg>.</flag> + <flag name="nvme">Add nvme support via <pkg>sys-libs/libnvme</pkg></flag> <flag name="tools">Build tools</flag> <flag name="vdo">Enable Virtual Data Optimizer support.</flag> </use> diff --git a/sys-libs/libcap-ng/Manifest b/sys-libs/libcap-ng/Manifest index 28af9218a47d..a40aaa876397 100644 --- a/sys-libs/libcap-ng/Manifest +++ b/sys-libs/libcap-ng/Manifest @@ -2,5 +2,5 @@ DIST libcap-ng-0.8.2-apply-disable.patch 723 BLAKE2B 70d9959c55119c02bbc4ea60525 DIST libcap-ng-0.8.2.tar.gz 456066 BLAKE2B 7e721d05b92fd3708b970527e76b1898daa91bde3ab6ed5d8f23b1435404fbe7d15731461c6d9d2c791738e5498d1f5eaba727413480d34b7edea13c8691c32b SHA512 0ac6e55c03b1fba3a849048b721e250951afb59190d9646704d4fd9938eccc3bd0767380fbddc42f186b4f55695475e31f34f537ae91c04a37662577a5b7a19b DIST libcap-ng-0.8.3.tar.gz 455383 BLAKE2B c54dd753e0ef6dd21bcf6af7b003f85ded9faf2fbf1ea834cda6b181b165ff4b11a0284c23c73d0e6f97a810b3e6a63fceeb57ff583a2b32f23924bdee597ef5 SHA512 0ef9bc7bc6b7b59991f43b79aa6cde3e8d2c22c4b9ced2af8deae501e01d51e893033d109cb8aa0fdcba190140110993089245346334d7b114d18f1bb1b55b97 EBUILD libcap-ng-0.8.2-r1.ebuild 2361 BLAKE2B 3cd7b240ded1eaf09ba19073704c49a0e4f3bea9ca86c430a5b3dd916cc5be51f482234918c16ff7b231f76ff0f789b43095cce2d2445653b1af67d93ea72ef0 SHA512 7a9f35ba259d9c39d054905ee95244d3fd265b4f1d0a1c93b9335ded988f349d2508d298e9c7a2c7a4d3062cc4c972033a2b1e1999c7d3a4d8f06984ad8af306 -EBUILD libcap-ng-0.8.3.ebuild 2786 BLAKE2B 099dc21ba5ac41831ff888da3cf3ef4f7e87b7bf8ce766d1ce56ee3c7d8039ab6bb1cbf9c605a7f704c747974ff7bd08f9f1659685af425aee70f4cb2f003b48 SHA512 805fba2a6db0d1ed69c937f322b96e548cdcb972edc8cfb86dccf0cf7b8e9e305e04fe9c8a1ad9c5bd5fd61ab112c6eaf907571ab89f9315d1efd0bddf37a09d +EBUILD libcap-ng-0.8.3.ebuild 2793 BLAKE2B e6390cd6919c1f3dce84f1a0d61b9446117fde7016939c2dfac7029ab3a769cfbf59b1b315b2dd96a46a92c2d0a51c7a04d81b950a038756acb36b1e1a08e194 SHA512 36143b8094e6df59ca786b00dfcaba3c5549a3885753cc35c9d6da89036f7d9604af4088e2529cb9a18eb6bc91b556ee368697016f01cf712d0000b1bd502ab1 MISC metadata.xml 674 BLAKE2B 3de3fabf1f2c58f226adaf783fc2261c23f30e9777c28d5df4bdd3bf998a491dad164c2aaa90aed6f6378ac3b6036f4ddb06163afda0cfe06c354d4607a7471a SHA512 00a18c626c465437ff1d83ddf0fef4f6caa1cdf144973e7150fd5b771418f3a6980b15a66b998b8d6dfc5032761f4523f04bc96644d55a9ba8f2c05e6bc8a943 diff --git a/sys-libs/libcap-ng/libcap-ng-0.8.3.ebuild b/sys-libs/libcap-ng/libcap-ng-0.8.3.ebuild index 9dbc035b5526..3e163b1e19cb 100644 --- a/sys-libs/libcap-ng/libcap-ng-0.8.3.ebuild +++ b/sys-libs/libcap-ng/libcap-ng-0.8.3.ebuild @@ -19,7 +19,7 @@ SRC_URI="https://people.redhat.com/sgrubb/${PN}/${P}.tar.gz LICENSE="LGPL-2.1" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x86-linux" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x86-linux" IUSE="python static-libs" REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" diff --git a/sys-libs/libcap/Manifest b/sys-libs/libcap/Manifest index cc775d123583..54660379309e 100644 --- a/sys-libs/libcap/Manifest +++ b/sys-libs/libcap/Manifest @@ -2,6 +2,6 @@ AUX libcap-2.62-ignore-RAISE_SETFCAP-install-failures.patch 901 BLAKE2B 8b4795bf DIST libcap-2.63.tar.xz 175104 BLAKE2B a49a628f5b9ddf5a3d077428544a53b9cdedf62053ff296a0aa7d61e12ca05f9ba7597f20ee16a3843736bee2417a3d1585ad6b336651fcb3e4ee29b108cfa0f SHA512 832842b71ca32db8f53ca5f1a3010f14e7f42693f62f29632e9948c860f990899bb094165c37307ce8b9e5bc5eb1c833e780ebca98442df3e6d900e4b238834b DIST libcap-2.64.tar.xz 175704 BLAKE2B 078ce2505a79c1bd4ca0a8eaf3444178bc19a566f0505d28c6959f86fbbac2fe2fc88c06fd0d988087a6e20e8ec66a2633146cea957f0f3fd92eaff4f81d7c66 SHA512 3c5cf478cef249585ee1a0dfd75c6b41b0daf4e1ecb59dce894eac5523841aa79ca499be4161f73193dd8e7363edcd51063f3e281930cee939ebd50983eecbaf EBUILD libcap-2.63.ebuild 2239 BLAKE2B 180d54dbec5a1835050c7774ccb9d364e1daa66a60daa32874c3d4428a7f1e0a1e29c16d235eb7c70837266066c6fbbc57d8d006bd5b08394520a66f92df4513 SHA512 04101d0259bc4316366857129cf7ce5b4997ae63f7461451471aec8c52c8590e1fe295104b99a7d59dca766d0f7aaba3ced55315380cd9330af3e9414961aa9e -EBUILD libcap-2.64.ebuild 2247 BLAKE2B 2389e4b01003116fb6b24c1ce10311a6635dc2cb0f705f4cd46f5f45cc89a7a8576442f55d1aaf438a0f90d10c69933dbd2e53982aec7402756ab88762cf9592 SHA512 658f0ddf51fdbd3728c4641ff9b06718cae63b1423812975851a855dc663fc05a45d051235e80c1c91b3818742fc92c8ffc2a4fecd6e5e86ef522f824b00d4f0 -EBUILD libcap-9999.ebuild 2164 BLAKE2B 6d44b9aadf000c40c8dd9c77fb88623fd24f7ea5f14c13515b3a3c06b1d1f615f8cf33876c51a17e553f3c76c553e1f1387f7caa7dc1dc333926616972e4ccfe SHA512 701d3d42487dc00e88a9101846b0f59976dc6baba977c045806c7986c08700496e5596019c1b7de084125ec1380252219dce86b3cf9461a7350c75d779762a24 +EBUILD libcap-2.64.ebuild 2254 BLAKE2B 2a7bb8f1ef55c91aa400a344e32401c982b88e1efb272e120f358d04fdf73a2bab8d744a4919b8a6c2205954d9789d4910e70bd19df987572e59aaf825fea82a SHA512 59bab3761eac29d28b3bd776ec6256b745e8c65daf8c9dcbdc230d4ba2425bae7af1eead73b65c22e0eaf3969feca784192d0562f565da0c2a4cc5f92d147568 +EBUILD libcap-9999.ebuild 2171 BLAKE2B 8f0156d46c0da997b1204aacd200d2c7b249248af2bf96488f2fd5cb41c2bfe0a5c66fd21e6fb9a42c9a2fd3655721f782f1a944d912a74dcc1475bbfbd92df2 SHA512 163e96072426881e6db427d31e89d6c2c4d2d3b9488e4f10bae1910fd898a6c263e40c6ddca8404391ae0944508779845d06170632db9dace7b42068b9cd603c MISC metadata.xml 438 BLAKE2B b5260cc84a3fe6b992bb6218846c738af296522d7a467337c05a6240fd07fc9d6cece779bd9fcf24a11486a70874e17acae8182647d307a31cf43e1c19c3a2d3 SHA512 fa3713dcf6b7bb2ea6d4c2fdefc05e92ae345c76a6187ebcb40dab8c4ce0148650a8301f236efcb8cf53fff25730977a385578dbaa160b800159c6d6abbf37a9 diff --git a/sys-libs/libcap/libcap-2.64.ebuild b/sys-libs/libcap/libcap-2.64.ebuild index 041fc1239fb0..8e216f0ec4fe 100644 --- a/sys-libs/libcap/libcap-2.64.ebuild +++ b/sys-libs/libcap/libcap-2.64.ebuild @@ -11,7 +11,7 @@ if [[ ${PV} == *9999 ]]; then else SRC_URI="https://www.kernel.org/pub/linux/libs/security/linux-privs/libcap2/${P}.tar.xz" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux" fi DESCRIPTION="POSIX 1003.1e capabilities" diff --git a/sys-libs/libcap/libcap-9999.ebuild b/sys-libs/libcap/libcap-9999.ebuild index 969f9d0aaacb..b155f3846415 100644 --- a/sys-libs/libcap/libcap-9999.ebuild +++ b/sys-libs/libcap/libcap-9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2021 Gentoo Authors +# Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -11,7 +11,7 @@ if [[ ${PV} == *9999 ]]; then else SRC_URI="https://www.kernel.org/pub/linux/libs/security/linux-privs/libcap2/${P}.tar.xz" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux" fi DESCRIPTION="POSIX 1003.1e capabilities" diff --git a/sys-libs/libcxx/Manifest b/sys-libs/libcxx/Manifest index 1a4a61ee604b..67a892955f1f 100644 --- a/sys-libs/libcxx/Manifest +++ b/sys-libs/libcxx/Manifest @@ -1,20 +1,15 @@ -DIST llvm-gentoo-patchset-11.1.0-1.tar.xz 4032 BLAKE2B e69138a422e315b31a3d9c11faa4ae1ddf1bf9092cee2db0de4d2adef81fd802973488293aab48b764402b51996893b17ca03249ef4620848a576d1f6cdb9698 SHA512 e1c5504dab6c5db9fdf4addfeb12316f22d0258717ba551a9b7b3ba37919491fb6011ac5cca1e793b7509d5c1c186bc6bc4213f7d6155d190612492b216f979b DIST llvm-gentoo-patchset-12.0.1.tar.xz 5280 BLAKE2B 963d005bc7b636570be90eb841ac5bcaeb927538cc7de27683167111a17d6496677c7517de2ecfaf14b5d8ac22bad357be490b8a2ed9aba502fd5f447ecc99e9 SHA512 fc7c38e671555751650299c3a8bee44d5c7f26e11b68d5538c507fb7fe9ff2d349bdcd43bce90a448a747f082d523b3849d6bcda5e3ae2e998edcb926d6aa249 -DIST llvm-gentoo-patchset-13.0.0.tar.xz 5012 BLAKE2B 6760c78c086aaf6629143fd920b0a2c68cad9278628fbea8164dfeb59db95984a5b5d6b3505b510c697e8c95bf8d2be782c6b73c01622d52f2da9b07ecff39e0 SHA512 7764d49343b795b6bebae64f646ba27e3e6cc2a20b8a1aee645ce0d8474633c34acfbb73c08546fee415755dd4ea5a98c1d84db5e394cf5f4fc802eb61148ab6 DIST llvm-gentoo-patchset-13.0.1.tar.xz 6288 BLAKE2B 899222b962486e924e4f8a2b574d285531a3f87af9385ff68c81db92aa224a0cde6d4ee049b5405056bedb4b232b50e1d5840024071a4a215f6311853304c92d SHA512 b2805337f1deca626768a44c5e7ac9ed16e0c31bead1647d44a493a8123c1b8e8f1c8ceee3536bcc6fa87fdd3fcec408229f701adf30eff07e7ef9889b847b01 -DIST llvm-gentoo-patchset-14.0.0.tar.xz 4076 BLAKE2B dc114e53fb878ca74489c420506b9dd9c417e2b97dff4d9441d78a0a256ca1e7243ea2ce38b8665d37b0f24436f9ea5771cd05d9b13887e7370a19ec5e05ba20 SHA512 7f7d08fc762d634692fb251a51c0d73a4a9098907f25451b9ca9453315b603331b65a454b2d631cfecbb3fbc11ab3a36f644c0d7b03e1bb8e96ce4aa08d60615 +DIST llvm-gentoo-patchset-14.0.1.tar.xz 4724 BLAKE2B 2689298c687fa8b5fa2545afccc248c00ff6778f1a14e3e7999e5d52a1b0b9c3b2e66e8c008e27c62c6c3c08009dc7d9d083ca53698138258ac972e4ad03c042 SHA512 a9f071ad0a792f558105a64790f9e470d8aaed05bd1baabbe86539760c881f772602a03265e0962d8599f991f7fd44d14a49e2ef9d74bb5eb283f473f4084d32 +DIST llvm-gentoo-patchset-14.0.3.tar.xz 5492 BLAKE2B 48a46d50a81c5572d1573c6923bc404b198f74ee8587a928e0858553dac37f7fa39cc969d72b938ef3d2f04f6872f9e2e2478821ab90c657ecbbacb3f7d99d7a SHA512 b917b549de6d46cd7aab3e59b888b5e5ffb955435b33d6538be2f31dc30217a24740a673cb6bb661087c245121edb079052b179badaf70b86b985ca69b3652a6 DIST llvm-gentoo-patchset-9999-1.tar.xz 4032 BLAKE2B b9413484dafed8ae0c68c2c164b45fd07bb8d5d0898f03abe118fd2120ffcb1fb6c949de9649a97c2e8105f24b9d131a725c67c0a502ca4d4d192c1a0d65f49d SHA512 e64449eeaf756c5bd945109937b84ba4bd8a015222bd792d39cf3947871e87571a4ca57814790e51544cb05ad4c2d1f044e818e4caaac7c2e2a02cb1aa290fcc -DIST llvmorg-11.1.0.tar.gz 122776532 BLAKE2B ca842ff4afff8f44c82b5e7383962a9c45ca1c93b64fa4c6ebcd70a1d3849dbad2b8e4e24fba02d144c6266d7fab3607ebc6999b28c229cb35256cf40f26a985 SHA512 9a8ce022a935eed42fa71a224f2a207122aadcbef58ee855fdb4825f879e7d028e4dcff22c19b9d336db1c8bf63fb84372d44981acf84615f757e54306c92b81 DIST llvmorg-12.0.1.tar.gz 134259748 BLAKE2B f41de787bc73ff2edfda1b22cc8602be6f65f37dd9e4c8888533cfa8c3ccdcf4f108aaab9de23ab0ab987966eb160f2a553a0bdff99461e71ddd5bfcd086090d SHA512 6eb0dc18e2c25935fabfdfc48b0114be0939158dfdef7b85b395fe2e71042672446af0e68750aae003c9847d10d1f63316fe95d3df738d18f249174292b1b9e1 -DIST llvmorg-13.0.0.tar.gz 147270176 BLAKE2B 628f316b580e1edf3a58d4825b724df759e6ed2a4116802470c04562caefc392fa325c91f388036365a2e45a9595cca6d3557fab12984fc8bcfef29c9116d822 SHA512 8004c05d32b9720fb3391783621690c1df9bd1e97e72cbff9192ed88a84b0acd303b61432145fa917b5b5e548c8cee29b24ef8547dcc8677adf4816e7a8a0eb2 DIST llvmorg-13.0.1.tar.gz 147290251 BLAKE2B 2a44b012a672501761d0c27c6b3a315b69bfef0cd13b078a7e7d2fccc4a9c8c0f2bee0f164c4271c9106b0a99cb06e8b64986f66253b613336719fb86b82541b SHA512 9a8cb5d11964ba88b7624f19ec861fb28701f23956ea3c92f6ac644332d5f41fde97bd8933dd3ee70ed378058c252fa3a3887c8d1af90d219970c2b27691166f -DIST llvmorg-14.0.0.tar.gz 158057350 BLAKE2B 7052684c620a5eaf52beeee4591adf58cfec9e64a5ee0b24f3d5849fd4df5b006e2906a839cb806ac69c33fab6013c58589b1d74e4fb8558758edcb7d5065064 SHA512 eb5acf96b5e2c59bd07579f7ebe73018b0dd6e2f2d9a5a3c7986320e88febd837d1084b9e5313a2264310342193044629d228337cc76dd2b8527dc0a8bdda999 DIST llvmorg-14.0.1.tar.gz 158074615 BLAKE2B bf80366461580058494eb101646efcd1a8b55a66818a710c2eb8c649bf88c02fe4552cecf4c1c8637a64e7cee8d644bca31aafc804765ed18f2b5e2975dd6c92 SHA512 0a15aa9cfc978a7b03a1659a2affad65ede66d280f5c12bf0beaaf194cd7bdd57ff438b5f40e64c1e1b88f368de99be349e9d30b544d2bbe4a50f0ebed3307f2 -EBUILD libcxx-11.1.0.ebuild 6638 BLAKE2B 1c141e7dc80e2e4a47d7619500626458c931903c7efc1d5b1f3173ff927ec682b277ed0a932af1681df1416f499d98fd1e8c024ddd14d839a543bf42f673e896 SHA512 4d37e1d3077908dd49fd55b8422f12547848d58dede2b6f9be58d993862d71e47a45c6ce383677b46c178dbfd6c22559beb7f7745f3b589039208d63585174e2 +DIST llvmorg-14.0.3.tar.gz 158092596 BLAKE2B ef901df510ec6bc1242595ec330e9c9ee76e696b077d67a8d62b53608c3d18b2f2d7ea3150864e13d9b37a8ce899ebca946ebe72cbc4538700176e20859ddec2 SHA512 511e93fd9b1c414c38fe9e2649679ac0b16cb04f7f7838569d187b04c542a185e364d6db73e96465026e3b2533649eb75ac95507d12514af32b28bdfb66f2646 EBUILD libcxx-12.0.1.ebuild 6677 BLAKE2B 32a2f3bbff395d3c129cd4d168a8cb0ee1074c3fc164bf9a33f3287852c07af3e7443018b3fa31036f851cf5544bf80db0579ba2dfa2a3420801a6aef0dd6b05 SHA512 3820b6a249a36cf12ba72b4c4a3847ec035265ce23388dcdbc0547c5708737eee4cf449b14370badc13be3f79ecda2f3c788ac6c7f2f8063c3dd53b1e7b1bf62 -EBUILD libcxx-13.0.0.ebuild 6756 BLAKE2B c27aba7517136e19bdebd4f864958922000fd9d59791c0ae0407afffa5c39db21c3cbf2655532453679a54beddd46ad90df2a9482fed99501340f6b0073e264b SHA512 0516aed74ebe4cb170c2b3a975005f054e1227cdd8ae4807c7f1e6796055b09abce148a44425ffd12dde88eb8f638559e3a3dd6c7e29b1fe2bdc86123783f941 -EBUILD libcxx-13.0.1.ebuild 6781 BLAKE2B 6ada751bfe1f8e1980e4c20b2a45f237c6630deb4fbb695701b596af17b78391e6a2db99101371a6577f4d414933cf4143d0b60d29fd62e6ec8d6ef3f563b77d SHA512 9d389d1323e866d9b66881b215a2625eee8263a6df790ef5027462b0c3de5421d4ae6077d5861fdfe8adad9d66e34a12de754149e1a1764a42fd824b900c03ac -EBUILD libcxx-14.0.0.ebuild 6937 BLAKE2B 04722fb717fcf971cfad08599681619a1f003ef487ba73dded68aa1661a8ad64369f30844379750045e81df0959d5d3b2416e9fbe4b2f7faf7043456ed913abe SHA512 ae21926685648e200c8ad649d7172c70962b17fc447a6c5b0d7979d31a7fd3428f54ed43efb24ee1af1868ef059d7519a886b427b5cd18ce0489d7b3dee3cd04 -EBUILD libcxx-14.0.1.ebuild 6934 BLAKE2B 1a31c9fbee3e7ada37bfde446b90ce0aad7a9b30445a094b2ff52886e16aaedb1a09799f0fdb7aa99e80e4c3ac46e2cc75acd6247f48ad428d59f48d93272415 SHA512 f3b27537fc2f8448f92d15cd3220273a2ecd9dd46efe3b5ab3afd43d78de17ce0f3fa02b082b1943b96894a448fbc296d0b61d495204ef372ef1da8e71ad346d -EBUILD libcxx-15.0.0.9999.ebuild 6893 BLAKE2B d45f14e1ecf594063281916fdd8d63bca9fe910e2c51b7d9ca03d363bb1fe9ec06504af44fc61be1f848094ef76ea752ffe479553e9b990544482c69211bea67 SHA512 814773f6731309b31e46636e6e3ed9b4508ed60154eda14826015bf0da75ff4a2cebdacbb1e1535958d3af1d1f10b1e552126eb6aebed945f3a034d36d1b9e1e +EBUILD libcxx-13.0.1.ebuild 6780 BLAKE2B 575c9089d74bddc871e97147c53f7c298cd1683b989eba6b50601b45693c11d0647e3bd6f70c0a75caaea7ee3fea2f88f1bbad444d7f1785a62175337659e2e3 SHA512 f0ff78e48acca25cb925aee5106fba0d547ab8522ccfd65e2198d4f481f83abbadc415ac3808e45387fc945980f9892fdbda3b6a26d54163cebfa4f12fa17172 +EBUILD libcxx-14.0.1.ebuild 6937 BLAKE2B 04722fb717fcf971cfad08599681619a1f003ef487ba73dded68aa1661a8ad64369f30844379750045e81df0959d5d3b2416e9fbe4b2f7faf7043456ed913abe SHA512 ae21926685648e200c8ad649d7172c70962b17fc447a6c5b0d7979d31a7fd3428f54ed43efb24ee1af1868ef059d7519a886b427b5cd18ce0489d7b3dee3cd04 +EBUILD libcxx-14.0.3.ebuild 6955 BLAKE2B ae137995613e1805f7ebbb2240e7b925ba8571c28a023294134e3609e7bb721839d96680bdff63ee7ae1ab03ca82b3bb19e291b33d16493fb73e490ba170ce79 SHA512 ef1a30de8f760b53f6aacc9f09a7bf69142868b5df59e095b728ca334c7153122be581bd9b0c96c2e36cedbdc6d017eb7ea4caee86c21cdf711aa37d929a2caf +EBUILD libcxx-15.0.0.9999.ebuild 6915 BLAKE2B 57856c3d8585b4661c87e41f73d033d6060ea8d9ee8adf6f0892bd88ed0d4aa5600f71fa59f4f4094103d8ed58a67ced6b245d11aefbc8c8d68b066fabde40c7 SHA512 c373d2052b681063a7939066866a2d52213626f588c022876dc8f36da5d37f0ddb87a31ae93708043d8a95b88a9e8f101e9c2a507a606b82fe507d1adc8f20ae MISC metadata.xml 622 BLAKE2B 33ff3f89844694f08cdcdb12d7098ad937041c31aa6f453fbd887bfebec688bc05552f9a39431daccd2b309a58c2fb75b04a6350410f90beb96f32c14ab3ca95 SHA512 8b3d12f8904c336cc35f31352014ffe247dd4475f143921cdd56e5396590ebd64fb700df64f76e83aece127d8ed39af5f45da086fa75fca841c9a5ad767cbed2 diff --git a/sys-libs/libcxx/libcxx-11.1.0.ebuild b/sys-libs/libcxx/libcxx-11.1.0.ebuild deleted file mode 100644 index a976ee77c535..000000000000 --- a/sys-libs/libcxx/libcxx-11.1.0.ebuild +++ /dev/null @@ -1,211 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -CMAKE_ECLASS=cmake -PYTHON_COMPAT=( python3_{7..9} ) -inherit cmake-multilib llvm llvm.org python-any-r1 toolchain-funcs - -DESCRIPTION="New implementation of the C++ standard library, targeting C++11" -HOMEPAGE="https://libcxx.llvm.org/" - -LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" -SLOT="0" -KEYWORDS="amd64 arm arm64 ~riscv x86 ~x64-macos" -IUSE="+libcxxabi +libunwind static-libs test" -REQUIRED_USE="libunwind? ( libcxxabi )" -RESTRICT="!test? ( test )" - -RDEPEND=" - libcxxabi? ( ~sys-libs/libcxxabi-${PV}[libunwind=,static-libs?,${MULTILIB_USEDEP}] ) - !libcxxabi? ( >=sys-devel/gcc-4.7:=[cxx] )" -# llvm-6 for new lit options -# clang-3.9.0 installs necessary target symlinks unconditionally -# which removes the need for MULTILIB_USEDEP -DEPEND="${RDEPEND} - >=sys-devel/llvm-6" -BDEPEND=" - test? ( - >=dev-util/cmake-3.16 - >=sys-devel/clang-3.9.0 - $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]') - )" - -DOCS=( CREDITS.TXT ) - -LLVM_COMPONENTS=( libcxx{,abi} llvm/{cmake/modules,utils/llvm-lit} ) -LLVM_PATCHSET=11.1.0-1 -llvm.org_set_globals - -python_check_deps() { - has_version "dev-python/lit[${PYTHON_USEDEP}]" -} - -pkg_setup() { - # Darwin Prefix builds do not have llvm installed yet, so rely on - # bootstrap-prefix to set the appropriate path vars to LLVM instead - # of using llvm_pkg_setup. - if [[ ${CHOST} != *-darwin* ]] || has_version dev-lang/llvm; then - llvm_pkg_setup - fi - use test && python-any-r1_pkg_setup - - if ! use libcxxabi && ! tc-is-gcc ; then - eerror "To build ${PN} against libsupc++, you have to use gcc. Other" - eerror "compilers are not supported. Please set CC=gcc and CXX=g++" - eerror "and try again." - die - fi -} - -test_compiler() { - $(tc-getCXX) ${CXXFLAGS} ${LDFLAGS} "${@}" -o /dev/null -x c++ - \ - <<<'int main() { return 0; }' &>/dev/null -} - -src_configure() { - # note: we need to do this before multilib kicks in since it will - # alter the CHOST - local cxxabi cxxabi_incs - if use libcxxabi; then - cxxabi=libcxxabi - cxxabi_incs="${EPREFIX}/usr/include/libcxxabi" - else - local gcc_inc="${EPREFIX}/usr/lib/gcc/${CHOST}/$(gcc-fullversion)/include/g++-v$(gcc-major-version)" - cxxabi=libsupc++ - cxxabi_incs="${gcc_inc};${gcc_inc}/${CHOST}" - fi - - multilib-minimal_src_configure -} - -multilib_src_configure() { - # we want -lgcc_s for unwinder, and for compiler runtime when using - # gcc, clang with gcc runtime (or any unknown compiler) - local extra_libs=() want_gcc_s=ON want_compiler_rt=OFF - if use libunwind; then - # work-around missing -lunwind upstream - extra_libs+=( -lunwind ) - # if we're using libunwind and clang with compiler-rt, we want - # to link to compiler-rt instead of -lgcc_s - if tc-is-clang; then - local compiler_rt=$($(tc-getCC) ${CFLAGS} ${CPPFLAGS} \ - ${LDFLAGS} -print-libgcc-file-name) - if [[ ${compiler_rt} == *libclang_rt* ]]; then - want_gcc_s=OFF - want_compiler_rt=ON - extra_libs+=( "${compiler_rt}" ) - fi - fi - elif [[ ${CHOST} == *-darwin* ]] && tc-is-clang; then - # clang-based darwin prefix disables libunwind useflag during - # bootstrap, because libunwind is not in the prefix yet. - # override the default, though, because clang based libcxx - # should never use gcc_s on Darwin. - want_gcc_s=OFF - # compiler_rt is not available in EPREFIX during bootstrap, - # so we cannot link to it yet anyway, so keep the defaults - # of want_compiler_rt=OFF and extra_libs=() - fi - - # bootstrap: cmake is unhappy if compiler can't link to stdlib - local nolib_flags=( -nodefaultlibs -lc ) - if ! test_compiler; then - if test_compiler "${nolib_flags[@]}"; then - local -x LDFLAGS="${LDFLAGS} ${nolib_flags[*]}" - ewarn "${CXX} seems to lack runtime, trying with ${nolib_flags[*]}" - fi - fi - - local libdir=$(get_libdir) - local mycmakeargs=( - -DLIBCXX_LIBDIR_SUFFIX=${libdir#lib} - -DLIBCXX_ENABLE_SHARED=ON - -DLIBCXX_ENABLE_STATIC=$(usex static-libs) - -DLIBCXX_CXX_ABI=${cxxabi} - -DLIBCXX_CXX_ABI_INCLUDE_PATHS=${cxxabi_incs} - # we're using our own mechanism for generating linker scripts - -DLIBCXX_ENABLE_ABI_LINKER_SCRIPT=OFF - -DLIBCXX_HAS_MUSL_LIBC=$(usex elibc_musl) - -DLIBCXX_HAS_GCC_S_LIB=${want_gcc_s} - -DLIBCXX_INCLUDE_TESTS=$(usex test) - -DLIBCXX_USE_COMPILER_RT=${want_compiler_rt} - -DCMAKE_SHARED_LINKER_FLAGS="${extra_libs[*]} ${LDFLAGS}" - ) - - if use test; then - local clang_path=$(type -P "${CHOST:+${CHOST}-}clang" 2>/dev/null) - [[ -n ${clang_path} ]] || die "Unable to find ${CHOST}-clang for tests" - - mycmakeargs+=( - -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit" - -DLLVM_LIT_ARGS="$(get_lit_flags);--param=cxx_under_test=${clang_path}" - -DPython3_EXECUTABLE="${PYTHON}" - ) - fi - cmake_src_configure -} - -multilib_src_test() { - local -x LIT_PRESERVES_TMP=1 - cmake_build check-cxx -} - -# Usage: deps -gen_ldscript() { - local output_format - output_format=$($(tc-getCC) ${CFLAGS} ${LDFLAGS} -Wl,--verbose 2>&1 | sed -n 's/^OUTPUT_FORMAT("\([^"]*\)",.*/\1/p') - [[ -n ${output_format} ]] && output_format="OUTPUT_FORMAT ( ${output_format} )" - - cat <<-END_LDSCRIPT -/* GNU ld script - Include missing dependencies -*/ -${output_format} -GROUP ( $@ ) -END_LDSCRIPT -} - -gen_static_ldscript() { - local libdir=$(get_libdir) - local cxxabi_lib=$(usex libcxxabi "libc++abi.a" "libsupc++.a") - - # Move it first. - mv "${ED}/usr/${libdir}/libc++.a" "${ED}/usr/${libdir}/libc++_static.a" || die - # Generate libc++.a ldscript for inclusion of its dependencies so that - # clang++ -stdlib=libc++ -static works out of the box. - local deps="libc++_static.a ${cxxabi_lib} $(usex libunwind libunwind.a libgcc_eh.a)" - # On Linux/glibc it does not link without libpthread or libdl. It is - # fine on FreeBSD. - use elibc_glibc && deps+=" libpthread.a libdl.a" - - gen_ldscript "${deps}" > "${ED}/usr/${libdir}/libc++.a" || die -} - -gen_shared_ldscript() { - local libdir=$(get_libdir) - # libsupc++ doesn't have a shared version - local cxxabi_lib=$(usex libcxxabi "libc++abi.so" "libsupc++.a") - - mv "${ED}/usr/${libdir}/libc++.so" "${ED}/usr/${libdir}/libc++_shared.so" || die - local deps="libc++_shared.so ${cxxabi_lib} $(usex libunwind libunwind.so libgcc_s.so)" - - gen_ldscript "${deps}" > "${ED}/usr/${libdir}/libc++.so" || die -} - -multilib_src_install() { - cmake_src_install - if [[ ${CHOST} != *-darwin* ]] ; then - gen_shared_ldscript - use static-libs && gen_static_ldscript - fi -} - -pkg_postinst() { - elog "This package (${PN}) is mainly intended as a replacement for the C++" - elog "standard library when using clang." - elog "To use it, instead of libstdc++, use:" - elog " clang++ -stdlib=libc++" - elog "to compile your C++ programs." -} diff --git a/sys-libs/libcxx/libcxx-13.0.0.ebuild b/sys-libs/libcxx/libcxx-13.0.0.ebuild deleted file mode 100644 index 74bdf451ab48..000000000000 --- a/sys-libs/libcxx/libcxx-13.0.0.ebuild +++ /dev/null @@ -1,214 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -CMAKE_ECLASS=cmake -PYTHON_COMPAT=( python3_{8..10} ) -inherit cmake-multilib llvm llvm.org python-any-r1 toolchain-funcs - -DESCRIPTION="New implementation of the C++ standard library, targeting C++11" -HOMEPAGE="https://libcxx.llvm.org/" - -LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" -SLOT="0" -KEYWORDS="amd64 arm arm64 ~riscv x86 ~x64-macos" -IUSE="+libcxxabi +libunwind static-libs test" -REQUIRED_USE="libunwind? ( libcxxabi )" -RESTRICT="!test? ( test )" - -RDEPEND=" - libcxxabi? ( ~sys-libs/libcxxabi-${PV}[libunwind=,static-libs?,${MULTILIB_USEDEP}] ) - !libcxxabi? ( >=sys-devel/gcc-4.7:=[cxx] )" -# llvm-6 for new lit options -# clang-3.9.0 installs necessary target symlinks unconditionally -# which removes the need for MULTILIB_USEDEP -DEPEND="${RDEPEND} - >=sys-devel/llvm-6" -BDEPEND=" - test? ( - >=dev-util/cmake-3.16 - >=sys-devel/clang-3.9.0 - $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]') - )" - -DOCS=( CREDITS.TXT ) - -LLVM_COMPONENTS=( libcxx{,abi} llvm/{cmake,utils/llvm-lit} ) -LLVM_PATCHSET=${PV/_/-} -llvm.org_set_globals - -python_check_deps() { - has_version "dev-python/lit[${PYTHON_USEDEP}]" -} - -pkg_setup() { - # Darwin Prefix builds do not have llvm installed yet, so rely on - # bootstrap-prefix to set the appropriate path vars to LLVM instead - # of using llvm_pkg_setup. - if [[ ${CHOST} != *-darwin* ]] || has_version dev-lang/llvm; then - llvm_pkg_setup - fi - use test && python-any-r1_pkg_setup - - if ! use libcxxabi && ! tc-is-gcc ; then - eerror "To build ${PN} against libsupc++, you have to use gcc. Other" - eerror "compilers are not supported. Please set CC=gcc and CXX=g++" - eerror "and try again." - die - fi -} - -test_compiler() { - $(tc-getCXX) ${CXXFLAGS} ${LDFLAGS} "${@}" -o /dev/null -x c++ - \ - <<<'int main() { return 0; }' &>/dev/null -} - -src_configure() { - # note: we need to do this before multilib kicks in since it will - # alter the CHOST - local cxxabi cxxabi_incs - if use libcxxabi; then - cxxabi=libcxxabi - cxxabi_incs="${EPREFIX}/usr/include/libcxxabi" - else - local gcc_inc="${EPREFIX}/usr/lib/gcc/${CHOST}/$(gcc-fullversion)/include/g++-v$(gcc-major-version)" - cxxabi=libsupc++ - cxxabi_incs="${gcc_inc};${gcc_inc}/${CHOST}" - fi - - multilib-minimal_src_configure -} - -multilib_src_configure() { - # we want -lgcc_s for unwinder, and for compiler runtime when using - # gcc, clang with gcc runtime (or any unknown compiler) - local extra_libs=() want_gcc_s=ON want_compiler_rt=OFF - if use libunwind; then - # work-around missing -lunwind upstream - extra_libs+=( -lunwind ) - # if we're using libunwind and clang with compiler-rt, we want - # to link to compiler-rt instead of -lgcc_s - if tc-is-clang; then - local compiler_rt=$($(tc-getCC) ${CFLAGS} ${CPPFLAGS} \ - ${LDFLAGS} -print-libgcc-file-name) - if [[ ${compiler_rt} == *libclang_rt* ]]; then - want_gcc_s=OFF - want_compiler_rt=ON - extra_libs+=( "${compiler_rt}" ) - fi - fi - elif [[ ${CHOST} == *-darwin* ]] && tc-is-clang; then - # clang-based darwin prefix disables libunwind useflag during - # bootstrap, because libunwind is not in the prefix yet. - # override the default, though, because clang based libcxx - # should never use gcc_s on Darwin. - want_gcc_s=OFF - # compiler_rt is not available in EPREFIX during bootstrap, - # so we cannot link to it yet anyway, so keep the defaults - # of want_compiler_rt=OFF and extra_libs=() - fi - - # bootstrap: cmake is unhappy if compiler can't link to stdlib - local nolib_flags=( -nodefaultlibs -lc ) - if ! test_compiler; then - if test_compiler "${nolib_flags[@]}"; then - local -x LDFLAGS="${LDFLAGS} ${nolib_flags[*]}" - ewarn "${CXX} seems to lack runtime, trying with ${nolib_flags[*]}" - fi - fi - - local libdir=$(get_libdir) - local mycmakeargs=( - -DLIBCXX_LIBDIR_SUFFIX=${libdir#lib} - -DLIBCXX_ENABLE_SHARED=ON - -DLIBCXX_ENABLE_STATIC=$(usex static-libs) - -DLIBCXX_CXX_ABI=${cxxabi} - -DLIBCXX_CXX_ABI_INCLUDE_PATHS=${cxxabi_incs} - # we're using our own mechanism for generating linker scripts - -DLIBCXX_ENABLE_ABI_LINKER_SCRIPT=OFF - -DLIBCXX_HAS_MUSL_LIBC=$(usex elibc_musl) - -DLIBCXX_HAS_GCC_S_LIB=${want_gcc_s} - -DLIBCXX_INCLUDE_TESTS=$(usex test) - -DLIBCXX_USE_COMPILER_RT=${want_compiler_rt} - -DLIBCXX_HAS_ATOMIC_LIB=${want_gcc_s} - -DLIBCXX_TARGET_TRIPLE="${CHOST}" - -DCMAKE_SHARED_LINKER_FLAGS="${extra_libs[*]} ${LDFLAGS}" - ) - - if use test; then - local clang_path=$(type -P "${CHOST:+${CHOST}-}clang" 2>/dev/null) - [[ -n ${clang_path} ]] || die "Unable to find ${CHOST}-clang for tests" - - mycmakeargs+=( - -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit" - -DLLVM_LIT_ARGS="$(get_lit_flags);--param=cxx_under_test=${clang_path}" - -DLIBCXX_LINK_TESTS_WITH_SHARED_LIBCXXABI=ON - -DPython3_EXECUTABLE="${PYTHON}" - ) - fi - cmake_src_configure -} - -multilib_src_test() { - local -x LIT_PRESERVES_TMP=1 - cmake_build check-cxx -} - -# Usage: deps -gen_ldscript() { - local output_format - output_format=$($(tc-getCC) ${CFLAGS} ${LDFLAGS} -Wl,--verbose 2>&1 | sed -n 's/^OUTPUT_FORMAT("\([^"]*\)",.*/\1/p') - [[ -n ${output_format} ]] && output_format="OUTPUT_FORMAT ( ${output_format} )" - - cat <<-END_LDSCRIPT -/* GNU ld script - Include missing dependencies -*/ -${output_format} -GROUP ( $@ ) -END_LDSCRIPT -} - -gen_static_ldscript() { - local libdir=$(get_libdir) - local cxxabi_lib=$(usex libcxxabi "libc++abi.a" "libsupc++.a") - - # Move it first. - mv "${ED}/usr/${libdir}/libc++.a" "${ED}/usr/${libdir}/libc++_static.a" || die - # Generate libc++.a ldscript for inclusion of its dependencies so that - # clang++ -stdlib=libc++ -static works out of the box. - local deps="libc++_static.a ${cxxabi_lib} $(usex libunwind libunwind.a libgcc_eh.a)" - # On Linux/glibc it does not link without libpthread or libdl. It is - # fine on FreeBSD. - use elibc_glibc && deps+=" libpthread.a libdl.a" - - gen_ldscript "${deps}" > "${ED}/usr/${libdir}/libc++.a" || die -} - -gen_shared_ldscript() { - local libdir=$(get_libdir) - # libsupc++ doesn't have a shared version - local cxxabi_lib=$(usex libcxxabi "libc++abi.so" "libsupc++.a") - - mv "${ED}/usr/${libdir}/libc++.so" "${ED}/usr/${libdir}/libc++_shared.so" || die - local deps="libc++_shared.so ${cxxabi_lib} $(usex libunwind libunwind.so libgcc_s.so)" - - gen_ldscript "${deps}" > "${ED}/usr/${libdir}/libc++.so" || die -} - -multilib_src_install() { - cmake_src_install - if [[ ${CHOST} != *-darwin* ]] ; then - gen_shared_ldscript - use static-libs && gen_static_ldscript - fi -} - -pkg_postinst() { - elog "This package (${PN}) is mainly intended as a replacement for the C++" - elog "standard library when using clang." - elog "To use it, instead of libstdc++, use:" - elog " clang++ -stdlib=libc++" - elog "to compile your C++ programs." -} diff --git a/sys-libs/libcxx/libcxx-13.0.1.ebuild b/sys-libs/libcxx/libcxx-13.0.1.ebuild index 15d5fa2f2dfc..9720629f1aff 100644 --- a/sys-libs/libcxx/libcxx-13.0.1.ebuild +++ b/sys-libs/libcxx/libcxx-13.0.1.ebuild @@ -12,7 +12,7 @@ HOMEPAGE="https://libcxx.llvm.org/" LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" SLOT="0" -KEYWORDS="amd64 arm arm64 ~riscv ~x86 ~x64-macos" +KEYWORDS="amd64 arm arm64 ~riscv x86 ~x64-macos" IUSE="+libcxxabi +libunwind static-libs test" REQUIRED_USE="libunwind? ( libcxxabi )" RESTRICT="!test? ( test )" diff --git a/sys-libs/libcxx/libcxx-14.0.1.ebuild b/sys-libs/libcxx/libcxx-14.0.1.ebuild index 60e533aec52c..ddd39dc817b6 100644 --- a/sys-libs/libcxx/libcxx-14.0.1.ebuild +++ b/sys-libs/libcxx/libcxx-14.0.1.ebuild @@ -35,7 +35,7 @@ BDEPEND=" )" LLVM_COMPONENTS=( runtimes libcxx{,abi} llvm/{cmake,utils/llvm-lit} cmake ) -LLVM_PATCHSET=9999-1 +LLVM_PATCHSET=${PV/_/-} llvm.org_set_globals python_check_deps() { diff --git a/sys-libs/libcxx/libcxx-14.0.0.ebuild b/sys-libs/libcxx/libcxx-14.0.3.ebuild index ddd39dc817b6..4d6be5bcc7f2 100644 --- a/sys-libs/libcxx/libcxx-14.0.0.ebuild +++ b/sys-libs/libcxx/libcxx-14.0.3.ebuild @@ -1,7 +1,7 @@ # Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=7 +EAPI=8 CMAKE_ECLASS=cmake PYTHON_COMPAT=( python3_{8..10} ) @@ -14,28 +14,36 @@ LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" SLOT="0" KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86 ~x64-macos" IUSE="+libcxxabi +libunwind static-libs test" -REQUIRED_USE="libunwind? ( libcxxabi )" RESTRICT="!test? ( test )" +REQUIRED_USE="libunwind? ( libcxxabi )" RDEPEND=" - libcxxabi? ( ~sys-libs/libcxxabi-${PV}[libunwind=,static-libs?,${MULTILIB_USEDEP}] ) - !libcxxabi? ( >=sys-devel/gcc-4.7:=[cxx] )" + libcxxabi? ( + ~sys-libs/libcxxabi-${PV}[libunwind=,static-libs?,${MULTILIB_USEDEP}] + ) + !libcxxabi? ( >=sys-devel/gcc-4.7:=[cxx] ) +" # llvm-6 for new lit options # clang-3.9.0 installs necessary target symlinks unconditionally # which removes the need for MULTILIB_USEDEP -DEPEND="${RDEPEND} - >=sys-devel/llvm-6" +DEPEND=" + ${RDEPEND} + >=sys-devel/llvm-6 +" BDEPEND=" - ${PYTHON_DEPS} + !test? ( + ${PYTHON_DEPS} + ) test? ( >=dev-util/cmake-3.16 >=sys-devel/clang-3.9.0 sys-devel/gdb[python] $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]') - )" + ) +" LLVM_COMPONENTS=( runtimes libcxx{,abi} llvm/{cmake,utils/llvm-lit} cmake ) -LLVM_PATCHSET=${PV/_/-} +LLVM_PATCHSET=${PV} llvm.org_set_globals python_check_deps() { diff --git a/sys-libs/libcxx/libcxx-15.0.0.9999.ebuild b/sys-libs/libcxx/libcxx-15.0.0.9999.ebuild index 0562667b5a4b..dcdce79b90b2 100644 --- a/sys-libs/libcxx/libcxx-15.0.0.9999.ebuild +++ b/sys-libs/libcxx/libcxx-15.0.0.9999.ebuild @@ -1,7 +1,7 @@ # Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=7 +EAPI=8 CMAKE_ECLASS=cmake PYTHON_COMPAT=( python3_{8..10} ) @@ -14,25 +14,33 @@ LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" SLOT="0" KEYWORDS="" IUSE="+libcxxabi +libunwind static-libs test" -REQUIRED_USE="libunwind? ( libcxxabi )" RESTRICT="!test? ( test )" +REQUIRED_USE="libunwind? ( libcxxabi )" RDEPEND=" - libcxxabi? ( ~sys-libs/libcxxabi-${PV}[libunwind=,static-libs?,${MULTILIB_USEDEP}] ) - !libcxxabi? ( >=sys-devel/gcc-4.7:=[cxx] )" + libcxxabi? ( + ~sys-libs/libcxxabi-${PV}[libunwind=,static-libs?,${MULTILIB_USEDEP}] + ) + !libcxxabi? ( >=sys-devel/gcc-4.7:=[cxx] ) +" # llvm-6 for new lit options # clang-3.9.0 installs necessary target symlinks unconditionally # which removes the need for MULTILIB_USEDEP -DEPEND="${RDEPEND} - >=sys-devel/llvm-6" +DEPEND=" + ${RDEPEND} + >=sys-devel/llvm-6 +" BDEPEND=" - ${PYTHON_DEPS} + !test? ( + ${PYTHON_DEPS} + ) test? ( >=dev-util/cmake-3.16 >=sys-devel/clang-3.9.0 sys-devel/gdb[python] $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]') - )" + ) +" LLVM_COMPONENTS=( runtimes libcxx{,abi} llvm/{cmake,utils/llvm-lit} cmake ) LLVM_PATCHSET=9999-1 diff --git a/sys-libs/libcxxabi/Manifest b/sys-libs/libcxxabi/Manifest index b393215a0153..9104ad483782 100644 --- a/sys-libs/libcxxabi/Manifest +++ b/sys-libs/libcxxabi/Manifest @@ -1,14 +1,10 @@ -DIST llvmorg-11.1.0.tar.gz 122776532 BLAKE2B ca842ff4afff8f44c82b5e7383962a9c45ca1c93b64fa4c6ebcd70a1d3849dbad2b8e4e24fba02d144c6266d7fab3607ebc6999b28c229cb35256cf40f26a985 SHA512 9a8ce022a935eed42fa71a224f2a207122aadcbef58ee855fdb4825f879e7d028e4dcff22c19b9d336db1c8bf63fb84372d44981acf84615f757e54306c92b81 DIST llvmorg-12.0.1.tar.gz 134259748 BLAKE2B f41de787bc73ff2edfda1b22cc8602be6f65f37dd9e4c8888533cfa8c3ccdcf4f108aaab9de23ab0ab987966eb160f2a553a0bdff99461e71ddd5bfcd086090d SHA512 6eb0dc18e2c25935fabfdfc48b0114be0939158dfdef7b85b395fe2e71042672446af0e68750aae003c9847d10d1f63316fe95d3df738d18f249174292b1b9e1 -DIST llvmorg-13.0.0.tar.gz 147270176 BLAKE2B 628f316b580e1edf3a58d4825b724df759e6ed2a4116802470c04562caefc392fa325c91f388036365a2e45a9595cca6d3557fab12984fc8bcfef29c9116d822 SHA512 8004c05d32b9720fb3391783621690c1df9bd1e97e72cbff9192ed88a84b0acd303b61432145fa917b5b5e548c8cee29b24ef8547dcc8677adf4816e7a8a0eb2 DIST llvmorg-13.0.1.tar.gz 147290251 BLAKE2B 2a44b012a672501761d0c27c6b3a315b69bfef0cd13b078a7e7d2fccc4a9c8c0f2bee0f164c4271c9106b0a99cb06e8b64986f66253b613336719fb86b82541b SHA512 9a8cb5d11964ba88b7624f19ec861fb28701f23956ea3c92f6ac644332d5f41fde97bd8933dd3ee70ed378058c252fa3a3887c8d1af90d219970c2b27691166f -DIST llvmorg-14.0.0.tar.gz 158057350 BLAKE2B 7052684c620a5eaf52beeee4591adf58cfec9e64a5ee0b24f3d5849fd4df5b006e2906a839cb806ac69c33fab6013c58589b1d74e4fb8558758edcb7d5065064 SHA512 eb5acf96b5e2c59bd07579f7ebe73018b0dd6e2f2d9a5a3c7986320e88febd837d1084b9e5313a2264310342193044629d228337cc76dd2b8527dc0a8bdda999 DIST llvmorg-14.0.1.tar.gz 158074615 BLAKE2B bf80366461580058494eb101646efcd1a8b55a66818a710c2eb8c649bf88c02fe4552cecf4c1c8637a64e7cee8d644bca31aafc804765ed18f2b5e2975dd6c92 SHA512 0a15aa9cfc978a7b03a1659a2affad65ede66d280f5c12bf0beaaf194cd7bdd57ff438b5f40e64c1e1b88f368de99be349e9d30b544d2bbe4a50f0ebed3307f2 -EBUILD libcxxabi-11.1.0.ebuild 3548 BLAKE2B 322a3306a33c720fd242b6dc69c233562f24c373c76b13d7a41332b26e668b7742c33550fd41fd3f2f0965390ed0cc3185b05d36908e434067f94f353b27e2e3 SHA512 40b2755e57c13a6473a53da14c257d73a4e9d13ea4ed08d23957d15892d3a702f705d294059f0dc13320930214da7793037cd94715f64ebfebbfc2da8f23321a +DIST llvmorg-14.0.3.tar.gz 158092596 BLAKE2B ef901df510ec6bc1242595ec330e9c9ee76e696b077d67a8d62b53608c3d18b2f2d7ea3150864e13d9b37a8ce899ebca946ebe72cbc4538700176e20859ddec2 SHA512 511e93fd9b1c414c38fe9e2649679ac0b16cb04f7f7838569d187b04c542a185e364d6db73e96465026e3b2533649eb75ac95507d12514af32b28bdfb66f2646 EBUILD libcxxabi-12.0.1.ebuild 3532 BLAKE2B 87f97e6d1d5c222b1a421bc7ee0fb1e9f0156c5f34888456dc265356fd2ae5e1b22343cd8970acf2820852f9be12d48006dee1d9493972b5761781156393735d SHA512 6369fbc69360eb0bb25e49d4fc554b897a86c7ac081c99cdc97bf61ddfa6cfe75c297afb91fa3c8fb6f24db67cc326a5ee3de74e10fdab1702d1894b3a5ba8a3 -EBUILD libcxxabi-13.0.0.ebuild 3605 BLAKE2B 7bdc8ecd9c35cdc247f08f9d5687d7362013be7c9c5afe006817cb5a384d4dd272bc686c6fe2ddf2a9bde5be8d1fa185ae60da940fded833a356f76e6105feb8 SHA512 69c4564fc68e3037620de0ce0cda29093bff9eb919f48f4760558edd1031c0d198991e6346774244701679aa0619d6afd814ec80d0d66265418408416621d9d0 -EBUILD libcxxabi-13.0.1.ebuild 3606 BLAKE2B e81a4b8b3f179d70f5e54b311c6298c427505945ba53ae7f9e42c0113e7dbd3e5178ff1e9f0bd2ba27e491ca252efdcc337e572cc722d27912231ca3eee45687 SHA512 36cca18b3f083205d486fe07d78ce8d0cc79b1af59f8289731d5615591fe98d67ae3f48012d8a19c2e87a3a38c7118feaed44a60d132323b90e376c76d0a14f2 -EBUILD libcxxabi-14.0.0.ebuild 3500 BLAKE2B ae2784bce2de92f63f5a0c30a74738ec77e80c69b59d976deca43442a70fa3b0c82eb1d3ea0ece17e317806c8a3f5a88729ed4fe8e7eb4af1602874d848e9400 SHA512 80b46ae415783bb1b64613d144530d0dda03114fb732ccbe3cce10996ca29fb11418f9c06912f64ba4657ff123ebe22d94acadf0628e6f19cb25a42b80b752b7 +EBUILD libcxxabi-13.0.1.ebuild 3605 BLAKE2B 7bdc8ecd9c35cdc247f08f9d5687d7362013be7c9c5afe006817cb5a384d4dd272bc686c6fe2ddf2a9bde5be8d1fa185ae60da940fded833a356f76e6105feb8 SHA512 69c4564fc68e3037620de0ce0cda29093bff9eb919f48f4760558edd1031c0d198991e6346774244701679aa0619d6afd814ec80d0d66265418408416621d9d0 EBUILD libcxxabi-14.0.1.ebuild 3500 BLAKE2B ae2784bce2de92f63f5a0c30a74738ec77e80c69b59d976deca43442a70fa3b0c82eb1d3ea0ece17e317806c8a3f5a88729ed4fe8e7eb4af1602874d848e9400 SHA512 80b46ae415783bb1b64613d144530d0dda03114fb732ccbe3cce10996ca29fb11418f9c06912f64ba4657ff123ebe22d94acadf0628e6f19cb25a42b80b752b7 -EBUILD libcxxabi-15.0.0.9999.ebuild 3459 BLAKE2B e154cf8ad9a7055fb941d4b2cdc78ce87286f3ae648f37170606775c791ff2b69b5b421a9cc716fa12aa86ec9b0a48643e78aab0a7b372d4f79cf362bc4b9a8b SHA512 79b43fd3cecec2393431df7d9a6720a4cff5ef24977b579dc815120262ba2a860df06ceb7e93f9c8df578fd5737a02abad4c737774cc7b9d4983567aa9ef6b3e +EBUILD libcxxabi-14.0.3.ebuild 3519 BLAKE2B a697541ba82ecf955b816ee75be0f1607cbe37d7cb8372aca749b0c42f6e3a247591cace54ab010de166a1167ba5448c5e3ae1f8d585a8b6080fa0adaaedd243 SHA512 0f296a7b432f6e5a657ad54b5062b8aeb9a814da36021a4b5a0b7455f3d5c2fd69dc854203a388d016bff89e063426fea7b81f6b5d0f57bfa1f09cf9d48c3665 +EBUILD libcxxabi-15.0.0.9999.ebuild 3478 BLAKE2B 4a9508f17dbf7f1587915b565d9a572b20762c75dd1d89472df2ff4c01cb06b02c9d48bfa0a636b187d943fce1cfe3c826445ebd34657dcbe3b2314287fafc2d SHA512 79d6e8b143d1d4f8e08634eea94c5c02f175aca3f330ef008a95377dc03dc33fe8a9c36a77e7e636f74a365954020a57853a241b52ee246681703ae61f4bcadb MISC metadata.xml 351 BLAKE2B 9071a2cbb0eee25e4396bd720f39cd09b011e70fa4a2a87bab63801fa54d307304219a6bddc9b6fb8d0e3b32b07ea09d0419b8ea74af25d601505c3b577c656a SHA512 096b95417b8cdaeed177108ac27e54cd44c4488e8dd3b6ca0aa07f2c70fc59d42343c926d44adf54349e3f9791b9151293383e471df1282678a3c60031184d13 diff --git a/sys-libs/libcxxabi/libcxxabi-11.1.0.ebuild b/sys-libs/libcxxabi/libcxxabi-11.1.0.ebuild deleted file mode 100644 index 60fed4fd01c8..000000000000 --- a/sys-libs/libcxxabi/libcxxabi-11.1.0.ebuild +++ /dev/null @@ -1,123 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -CMAKE_ECLASS=cmake -PYTHON_COMPAT=( python3_{7..9} ) -inherit cmake-multilib llvm llvm.org python-any-r1 toolchain-funcs - -DESCRIPTION="Low level support for a standard C++ library" -HOMEPAGE="https://libcxxabi.llvm.org/" - -LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" -SLOT="0" -KEYWORDS="amd64 arm arm64 ~riscv x86 ~x64-macos" -IUSE="+libunwind static-libs test" -RESTRICT="!test? ( test )" - -RDEPEND=" - libunwind? ( - || ( - >=sys-libs/libunwind-1.0.1-r1[static-libs?,${MULTILIB_USEDEP}] - >=sys-libs/llvm-libunwind-3.9.0-r1[static-libs?,${MULTILIB_USEDEP}] - ) - )" -# llvm-6 for new lit options -DEPEND="${RDEPEND} - >=sys-devel/llvm-6" -BDEPEND=" - test? ( >=sys-devel/clang-3.9.0 - $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]') - )" - -# libcxx is needed uncondtionally for the headers -LLVM_COMPONENTS=( libcxx{abi,} ) -LLVM_TEST_COMPONENTS=( llvm/cmake ) -llvm.org_set_globals - -python_check_deps() { - has_version "dev-python/lit[${PYTHON_USEDEP}]" -} - -pkg_setup() { - # darwin prefix builds do not have llvm installed yet, so rely on bootstrap-prefix - # to set the appropriate path vars to LLVM instead of using llvm_pkg_setup. - if [[ ${CHOST} != *-darwin* ]] || has_version dev-lang/llvm; then - llvm_pkg_setup - fi - use test && python-any-r1_pkg_setup -} - -multilib_src_configure() { - # link against compiler-rt instead of libgcc if we are using clang with libunwind - local want_compiler_rt=OFF - if use libunwind && tc-is-clang; then - local compiler_rt=$($(tc-getCC) ${CFLAGS} ${CPPFLAGS} \ - ${LDFLAGS} -print-libgcc-file-name) - if [[ ${compiler_rt} == *libclang_rt* ]]; then - want_compiler_rt=ON - fi - fi - - local libdir=$(get_libdir) - local mycmakeargs=( - -DLIBCXXABI_LIBDIR_SUFFIX=${libdir#lib} - -DLIBCXXABI_ENABLE_SHARED=ON - -DLIBCXXABI_ENABLE_STATIC=$(usex static-libs) - -DLIBCXXABI_USE_LLVM_UNWINDER=$(usex libunwind) - -DLIBCXXABI_INCLUDE_TESTS=$(usex test) - -DLIBCXXABI_USE_COMPILER_RT=${want_compiler_rt} - - -DLIBCXXABI_LIBCXX_INCLUDES="${WORKDIR}"/libcxx/include - # upstream is omitting standard search path for this - # probably because gcc & clang are bundling their own unwind.h - -DLIBCXXABI_LIBUNWIND_INCLUDES="${EPREFIX}"/usr/include - ) - if use test; then - local clang_path=$(type -P "${CHOST:+${CHOST}-}clang" 2>/dev/null) - [[ -n ${clang_path} ]] || die "Unable to find ${CHOST}-clang for tests" - - mycmakeargs+=( - -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit" - -DLLVM_LIT_ARGS="$(get_lit_flags);--param=cxx_under_test=${clang_path}" - -DPython3_EXECUTABLE="${PYTHON}" - ) - fi - cmake_src_configure -} - -build_libcxx() { - local -x LDFLAGS="${LDFLAGS} -L${BUILD_DIR}/$(get_libdir)" - local CMAKE_USE_DIR=${WORKDIR}/libcxx - local BUILD_DIR=${BUILD_DIR}/libcxx - local mycmakeargs=( - -DLIBCXX_LIBDIR_SUFFIX= - -DLIBCXX_ENABLE_SHARED=OFF - -DLIBCXX_ENABLE_STATIC=ON - -DLIBCXX_ENABLE_EXPERIMENTAL_LIBRARY=OFF - -DLIBCXX_CXX_ABI=libcxxabi - -DLIBCXX_CXX_ABI_INCLUDE_PATHS="${S}"/include - -DLIBCXX_ENABLE_ABI_LINKER_SCRIPT=OFF - -DLIBCXX_HAS_MUSL_LIBC=$(usex elibc_musl) - -DLIBCXX_HAS_GCC_S_LIB=OFF - -DLIBCXX_INCLUDE_TESTS=OFF - ) - - cmake_src_configure - cmake_src_compile -} - -multilib_src_test() { - # build a local copy of libc++ for testing to avoid circular dep - build_libcxx - mv "${BUILD_DIR}"/libcxx/lib/libc++* "${BUILD_DIR}/$(get_libdir)/" || die - - local -x LIT_PRESERVES_TMP=1 - cmake_build check-cxxabi -} - -multilib_src_install_all() { - insinto /usr/include/libcxxabi - doins -r include/. -} diff --git a/sys-libs/libcxxabi/libcxxabi-13.0.0.ebuild b/sys-libs/libcxxabi/libcxxabi-13.0.0.ebuild deleted file mode 100644 index 690b4d4e2681..000000000000 --- a/sys-libs/libcxxabi/libcxxabi-13.0.0.ebuild +++ /dev/null @@ -1,125 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -CMAKE_ECLASS=cmake -PYTHON_COMPAT=( python3_{8..10} ) -inherit cmake-multilib llvm llvm.org python-any-r1 toolchain-funcs - -DESCRIPTION="Low level support for a standard C++ library" -HOMEPAGE="https://libcxxabi.llvm.org/" - -LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" -SLOT="0" -KEYWORDS="amd64 arm arm64 ~riscv x86 ~x64-macos" -IUSE="+libunwind static-libs test" -RESTRICT="!test? ( test )" - -RDEPEND=" - libunwind? ( - || ( - >=sys-libs/libunwind-1.0.1-r1[static-libs?,${MULTILIB_USEDEP}] - >=sys-libs/llvm-libunwind-3.9.0-r1[static-libs?,${MULTILIB_USEDEP}] - ) - )" -# llvm-6 for new lit options -DEPEND="${RDEPEND} - >=sys-devel/llvm-6" -BDEPEND=" - test? ( >=sys-devel/clang-3.9.0 - $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]') - )" - -LLVM_COMPONENTS=( libcxx{abi,} llvm/cmake ) -llvm.org_set_globals - -python_check_deps() { - has_version "dev-python/lit[${PYTHON_USEDEP}]" -} - -pkg_setup() { - # darwin prefix builds do not have llvm installed yet, so rely on bootstrap-prefix - # to set the appropriate path vars to LLVM instead of using llvm_pkg_setup. - if [[ ${CHOST} != *-darwin* ]] || has_version dev-lang/llvm; then - llvm_pkg_setup - fi - use test && python-any-r1_pkg_setup -} - -multilib_src_configure() { - # we need a configured libc++ for __config_site - wrap_libcxx cmake_src_configure - wrap_libcxx cmake_build generate-cxx-headers - - # link against compiler-rt instead of libgcc if we are using clang with libunwind - local want_compiler_rt=OFF - if use libunwind && tc-is-clang; then - local compiler_rt=$($(tc-getCC) ${CFLAGS} ${CPPFLAGS} \ - ${LDFLAGS} -print-libgcc-file-name) - if [[ ${compiler_rt} == *libclang_rt* ]]; then - want_compiler_rt=ON - fi - fi - - local libdir=$(get_libdir) - local mycmakeargs=( - -DLIBCXXABI_LIBDIR_SUFFIX=${libdir#lib} - -DLIBCXXABI_ENABLE_SHARED=ON - -DLIBCXXABI_ENABLE_STATIC=$(usex static-libs) - -DLIBCXXABI_USE_LLVM_UNWINDER=$(usex libunwind) - -DLIBCXXABI_INCLUDE_TESTS=$(usex test) - -DLIBCXXABI_USE_COMPILER_RT=${want_compiler_rt} - - -DLIBCXXABI_LIBCXX_INCLUDES="${BUILD_DIR}"/libcxx/include/c++/v1 - # upstream is omitting standard search path for this - # probably because gcc & clang are bundling their own unwind.h - -DLIBCXXABI_LIBUNWIND_INCLUDES="${EPREFIX}"/usr/include - -DLIBCXXABI_TARGET_TRIPLE="${CHOST}" - ) - if use test; then - local clang_path=$(type -P "${CHOST:+${CHOST}-}clang" 2>/dev/null) - [[ -n ${clang_path} ]] || die "Unable to find ${CHOST}-clang for tests" - - mycmakeargs+=( - -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit" - -DLLVM_LIT_ARGS="$(get_lit_flags);--param=cxx_under_test=${clang_path}" - -DPython3_EXECUTABLE="${PYTHON}" - ) - fi - cmake_src_configure -} - -wrap_libcxx() { - local -x LDFLAGS="${LDFLAGS} -L${BUILD_DIR}/$(get_libdir)" - local CMAKE_USE_DIR=${WORKDIR}/libcxx - local BUILD_DIR=${BUILD_DIR}/libcxx - local mycmakeargs=( - -DLIBCXX_LIBDIR_SUFFIX= - -DLIBCXX_ENABLE_SHARED=OFF - -DLIBCXX_ENABLE_STATIC=ON - -DLIBCXX_ENABLE_EXPERIMENTAL_LIBRARY=OFF - -DLIBCXX_CXX_ABI=libcxxabi - -DLIBCXX_CXX_ABI_INCLUDE_PATHS="${S}"/include - -DLIBCXX_ENABLE_ABI_LINKER_SCRIPT=OFF - -DLIBCXX_HAS_MUSL_LIBC=$(usex elibc_musl) - -DLIBCXX_HAS_GCC_S_LIB=OFF - -DLIBCXX_INCLUDE_TESTS=OFF - -DLIBCXX_TARGET_TRIPLE="${CHOST}" - ) - - "${@}" -} - -multilib_src_test() { - wrap_libcxx cmake_src_compile - mv "${BUILD_DIR}"/libcxx/lib/libc++* "${BUILD_DIR}/$(get_libdir)/" || die - - local -x LIT_PRESERVES_TMP=1 - cmake_build check-cxxabi -} - -multilib_src_install_all() { - insinto /usr/include/libcxxabi - doins -r include/. -} diff --git a/sys-libs/libcxxabi/libcxxabi-13.0.1.ebuild b/sys-libs/libcxxabi/libcxxabi-13.0.1.ebuild index 804671c1526e..690b4d4e2681 100644 --- a/sys-libs/libcxxabi/libcxxabi-13.0.1.ebuild +++ b/sys-libs/libcxxabi/libcxxabi-13.0.1.ebuild @@ -12,7 +12,7 @@ HOMEPAGE="https://libcxxabi.llvm.org/" LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" SLOT="0" -KEYWORDS="amd64 arm arm64 ~riscv ~x86 ~x64-macos" +KEYWORDS="amd64 arm arm64 ~riscv x86 ~x64-macos" IUSE="+libunwind static-libs test" RESTRICT="!test? ( test )" diff --git a/sys-libs/libcxxabi/libcxxabi-14.0.0.ebuild b/sys-libs/libcxxabi/libcxxabi-14.0.3.ebuild index 1598ec8868a1..7d864cba3621 100644 --- a/sys-libs/libcxxabi/libcxxabi-14.0.0.ebuild +++ b/sys-libs/libcxxabi/libcxxabi-14.0.3.ebuild @@ -1,7 +1,7 @@ # Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=7 +EAPI=8 CMAKE_ECLASS=cmake PYTHON_COMPAT=( python3_{8..10} ) @@ -22,16 +22,22 @@ RDEPEND=" >=sys-libs/libunwind-1.0.1-r1[static-libs?,${MULTILIB_USEDEP}] >=sys-libs/llvm-libunwind-3.9.0-r1[static-libs?,${MULTILIB_USEDEP}] ) - )" + ) +" # llvm-6 for new lit options -DEPEND="${RDEPEND} - >=sys-devel/llvm-6" +DEPEND=" + ${RDEPEND} + >=sys-devel/llvm-6 +" BDEPEND=" - ${PYTHON_DEPS} + !test? ( + ${PYTHON_DEPS} + ) test? ( >=sys-devel/clang-3.9.0 $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]') - )" + ) +" LLVM_COMPONENTS=( runtimes libcxx{abi,} llvm/cmake cmake ) LLVM_TEST_COMPONENTS=( llvm/utils/llvm-lit ) diff --git a/sys-libs/libcxxabi/libcxxabi-15.0.0.9999.ebuild b/sys-libs/libcxxabi/libcxxabi-15.0.0.9999.ebuild index 577953191e5d..15858fc7fc75 100644 --- a/sys-libs/libcxxabi/libcxxabi-15.0.0.9999.ebuild +++ b/sys-libs/libcxxabi/libcxxabi-15.0.0.9999.ebuild @@ -1,7 +1,7 @@ # Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=7 +EAPI=8 CMAKE_ECLASS=cmake PYTHON_COMPAT=( python3_{8..10} ) @@ -22,16 +22,22 @@ RDEPEND=" >=sys-libs/libunwind-1.0.1-r1[static-libs?,${MULTILIB_USEDEP}] >=sys-libs/llvm-libunwind-3.9.0-r1[static-libs?,${MULTILIB_USEDEP}] ) - )" + ) +" # llvm-6 for new lit options -DEPEND="${RDEPEND} - >=sys-devel/llvm-6" +DEPEND=" + ${RDEPEND} + >=sys-devel/llvm-6 +" BDEPEND=" - ${PYTHON_DEPS} + !test? ( + ${PYTHON_DEPS} + ) test? ( >=sys-devel/clang-3.9.0 $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]') - )" + ) +" LLVM_COMPONENTS=( runtimes libcxx{abi,} llvm/cmake cmake ) LLVM_TEST_COMPONENTS=( llvm/utils/llvm-lit ) diff --git a/sys-libs/libhugetlbfs/Manifest b/sys-libs/libhugetlbfs/Manifest index 4fb4b9fbcbe5..e1d8b6a02139 100644 --- a/sys-libs/libhugetlbfs/Manifest +++ b/sys-libs/libhugetlbfs/Manifest @@ -2,5 +2,5 @@ AUX libhugetlbfs-2.23-allow-building-against-glibc-2.34.patch 10055 BLAKE2B 38b3 AUX libhugetlbfs-2.23-uncompressed-man-pages.patch 1515 BLAKE2B b43415a3059f1071f0fc04ec834cd51d87a8bd93f2df6b428a33296b1b55745f23861415a463d5899b12699c5f4a3e5bdd837a8ec2894d1fc89039924330d77d SHA512 ea3ef19a688866676315af59422233681a41338fd049cfa50ed91f660f0baf1950ba056b9fcd540e6694b8ec348c0d1fbb3aa6b8c1840e22a77634e26555c9bc AUX libhugetlbfs-2.6-fixup-testsuite.patch 1231 BLAKE2B e49ac448b4ac17a6ce9c32543e3ad7391bc8525e147d7a5100ef7ae15e4b0cf48b58ff1fe62d9a0fa61f142b7b8366228974c6628999edaa61d96114371bc09d SHA512 af9ee541ac4a30260e17baab1616cee13fdcc679ae3fdceed29ca6282c12a6b60d24b04bb61e3aa5f42092e017eb3bae59a56fd2b03954e40803f9f6f2cc4f80 DIST libhugetlbfs-2.23.tar.gz 175459 BLAKE2B f469ff9a65364e9f0e04c11c8010c958855ebd4d50e1dd719576cda7c280586623404304be64a794907a5fb1d97bd9c0620a91d7a2492577e04fa40ff432b4c7 SHA512 fc9a7d59bcda9d3ca9c9e43a3a348f989c9cbdbbb77f21a43a06e71eacd05bbe5a7b2b51e20ae9ea00da9f1c4d1130da529bbfb702e8c9d11cab6efadd3dc168 -EBUILD libhugetlbfs-2.23.ebuild 4291 BLAKE2B dd55d833b540fce08d40672ce2ec9f43dd3e94559b60d03835240818aa6a0b55d20a2e6c58de9d49c95d820e5044aa883350143276c132440afd2f2774849d32 SHA512 c556504423ad39891bdc4622bd93a0b3d08ccf1603f5292419f2c91a961d372352e4cd519205c2b31dda3e12232764128f58d78b829b3ab0342c8a27a7c5d338 +EBUILD libhugetlbfs-2.23.ebuild 4291 BLAKE2B 7fd9c794f8c8051db041246397bb26cbb6d1501f23e21837442164ef1dfdf705dbd41ec26455e305a6515fd5280c95fbe04a5888637220e36b6f349f761a09c8 SHA512 b40f615e1cde2caa08bcbb5f10a36f5031f132abf5145725524fe76051766b5f27dbe81d18dcdadb6c010356afaa6ba95f9b42a38844ee13cd477313b0de94d4 MISC metadata.xml 397 BLAKE2B 7b521a2822a494f6a2b7a85420a38edd396ca0e3856faeb682378c48eda3d1932788af7ac7bbb4e07cae37b2119afd386f75c5dc0ab1f69c8e4630be16cc549e SHA512 96065769a7893c1e05bc3ab9396eb01a60a293dac9b090419087a9bb5a152b2f291a950e8217ffcb7bed34262a5369119da469e22cc3171fdc0ad2b87ae6d698 diff --git a/sys-libs/libhugetlbfs/libhugetlbfs-2.23.ebuild b/sys-libs/libhugetlbfs/libhugetlbfs-2.23.ebuild index b20145724f82..f31724207108 100644 --- a/sys-libs/libhugetlbfs/libhugetlbfs-2.23.ebuild +++ b/sys-libs/libhugetlbfs/libhugetlbfs-2.23.ebuild @@ -3,7 +3,7 @@ EAPI=7 -PYTHON_COMPAT=( python3_{7,8,9} ) +PYTHON_COMPAT=( python3_{8..10} ) inherit toolchain-funcs python-any-r1 @@ -49,17 +49,6 @@ src_prepare() { [[ -f version ]] || echo "${PV}" > version } -src_compile() { - tc-export AR - emake CC="$(tc-getCC)" libs tools -} - -src_install() { - default - - use static-libs || rm -f "${ED}"/usr/$(get_libdir)/*.a -} - src_test_alloc_one() { hugeadm="${1}" sign="${2}" @@ -169,3 +158,14 @@ src_test() { return ${rc} } + +src_compile() { + tc-export AR + emake CC="$(tc-getCC)" libs tools +} + +src_install() { + default + + use static-libs || rm -f "${ED}"/usr/$(get_libdir)/*.a +} diff --git a/sys-libs/libomp/Manifest b/sys-libs/libomp/Manifest index e3c90d151c7f..d2d91badefba 100644 --- a/sys-libs/libomp/Manifest +++ b/sys-libs/libomp/Manifest @@ -1,17 +1,12 @@ DIST llvm-gentoo-patchset-12.0.1.tar.xz 5280 BLAKE2B 963d005bc7b636570be90eb841ac5bcaeb927538cc7de27683167111a17d6496677c7517de2ecfaf14b5d8ac22bad357be490b8a2ed9aba502fd5f447ecc99e9 SHA512 fc7c38e671555751650299c3a8bee44d5c7f26e11b68d5538c507fb7fe9ff2d349bdcd43bce90a448a747f082d523b3849d6bcda5e3ae2e998edcb926d6aa249 -DIST llvm-gentoo-patchset-13.0.0-r2.tar.xz 6500 BLAKE2B 0ce8d0c4a5508f70c8ec49dbc03dfbfc6371ac224bc5dfc9a39f71def0f574405a06df5666baf6159afafd83a8028c5ea6cb369f22a06f927f3ce6795e96994d SHA512 800d44b382c03b673b43965d80d6ed1b7e8e4ced8d066183b9b8df722b2cc002a6aa54092e600f0d77611be581d312f8886ce8af25b23ff818115a209ec21312 DIST llvm-gentoo-patchset-13.0.1.tar.xz 6288 BLAKE2B 899222b962486e924e4f8a2b574d285531a3f87af9385ff68c81db92aa224a0cde6d4ee049b5405056bedb4b232b50e1d5840024071a4a215f6311853304c92d SHA512 b2805337f1deca626768a44c5e7ac9ed16e0c31bead1647d44a493a8123c1b8e8f1c8ceee3536bcc6fa87fdd3fcec408229f701adf30eff07e7ef9889b847b01 -DIST llvmorg-11.1.0.tar.gz 122776532 BLAKE2B ca842ff4afff8f44c82b5e7383962a9c45ca1c93b64fa4c6ebcd70a1d3849dbad2b8e4e24fba02d144c6266d7fab3607ebc6999b28c229cb35256cf40f26a985 SHA512 9a8ce022a935eed42fa71a224f2a207122aadcbef58ee855fdb4825f879e7d028e4dcff22c19b9d336db1c8bf63fb84372d44981acf84615f757e54306c92b81 DIST llvmorg-12.0.1.tar.gz 134259748 BLAKE2B f41de787bc73ff2edfda1b22cc8602be6f65f37dd9e4c8888533cfa8c3ccdcf4f108aaab9de23ab0ab987966eb160f2a553a0bdff99461e71ddd5bfcd086090d SHA512 6eb0dc18e2c25935fabfdfc48b0114be0939158dfdef7b85b395fe2e71042672446af0e68750aae003c9847d10d1f63316fe95d3df738d18f249174292b1b9e1 -DIST llvmorg-13.0.0.tar.gz 147270176 BLAKE2B 628f316b580e1edf3a58d4825b724df759e6ed2a4116802470c04562caefc392fa325c91f388036365a2e45a9595cca6d3557fab12984fc8bcfef29c9116d822 SHA512 8004c05d32b9720fb3391783621690c1df9bd1e97e72cbff9192ed88a84b0acd303b61432145fa917b5b5e548c8cee29b24ef8547dcc8677adf4816e7a8a0eb2 DIST llvmorg-13.0.1.tar.gz 147290251 BLAKE2B 2a44b012a672501761d0c27c6b3a315b69bfef0cd13b078a7e7d2fccc4a9c8c0f2bee0f164c4271c9106b0a99cb06e8b64986f66253b613336719fb86b82541b SHA512 9a8cb5d11964ba88b7624f19ec861fb28701f23956ea3c92f6ac644332d5f41fde97bd8933dd3ee70ed378058c252fa3a3887c8d1af90d219970c2b27691166f -DIST llvmorg-14.0.0.tar.gz 158057350 BLAKE2B 7052684c620a5eaf52beeee4591adf58cfec9e64a5ee0b24f3d5849fd4df5b006e2906a839cb806ac69c33fab6013c58589b1d74e4fb8558758edcb7d5065064 SHA512 eb5acf96b5e2c59bd07579f7ebe73018b0dd6e2f2d9a5a3c7986320e88febd837d1084b9e5313a2264310342193044629d228337cc76dd2b8527dc0a8bdda999 DIST llvmorg-14.0.1.tar.gz 158074615 BLAKE2B bf80366461580058494eb101646efcd1a8b55a66818a710c2eb8c649bf88c02fe4552cecf4c1c8637a64e7cee8d644bca31aafc804765ed18f2b5e2975dd6c92 SHA512 0a15aa9cfc978a7b03a1659a2affad65ede66d280f5c12bf0beaaf194cd7bdd57ff438b5f40e64c1e1b88f368de99be349e9d30b544d2bbe4a50f0ebed3307f2 -EBUILD libomp-11.1.0.ebuild 2888 BLAKE2B fa9005fa8b8d26e264ac7555ab755fe0402c93c82205dbcc1802ac0ae54b245f33ebef8aa7d17c125652acd08f59bcd1efaca169e28fd5e5fcf266c4cbf0d1ba SHA512 24e44ea53c7b6238f3de78088076b3c4d426cc6039dbac5c2bbb1694f9b1e4088b7bf8ada2ad51eca525c4f6fff772178511fe07f449c200e95206c828a2095a +DIST llvmorg-14.0.3.tar.gz 158092596 BLAKE2B ef901df510ec6bc1242595ec330e9c9ee76e696b077d67a8d62b53608c3d18b2f2d7ea3150864e13d9b37a8ce899ebca946ebe72cbc4538700176e20859ddec2 SHA512 511e93fd9b1c414c38fe9e2649679ac0b16cb04f7f7838569d187b04c542a185e364d6db73e96465026e3b2533649eb75ac95507d12514af32b28bdfb66f2646 EBUILD libomp-12.0.1.ebuild 2955 BLAKE2B 731a206c38d7c982b1b746517061de539c64e1d3bd5afd24c2e1d441bbcd7e91d80e6b20920d64eabaf0c3de85d5e269ef59c17ebdbe30c8808f1deeff495b88 SHA512 0d27c7374062a9831edcadbbea0787998184fca979637da1bab9b8848b3c7165e5e558fc9ef388a1f8d9e20e913b61e7fd19c3e9f2ecf885990a041a0f436156 -EBUILD libomp-13.0.0-r2.ebuild 3808 BLAKE2B a24b4436e0547b1f7d7becb8866288c19da6e345f0fd8b5ffb6c016634f3891833de79864bc85f0e310c48ab1eada3d3d59cc7658ef8c96995fd8340a0a1b179 SHA512 decaeeda70320eee804dd6d2320e464d3d4b744c4c5a8ee9bf9a191e80f72ca1e97a1251d0ef69a6608740da2706dc1eea8a379b1e3b0ef06858dc043a2529c7 -EBUILD libomp-13.0.1.ebuild 3837 BLAKE2B c18ab3b04b0fe3d04d28e71be8f53c4b3f0b8aca9d5632cbca832d4e42f78d8d7c145ad70f01eef5ce6b77b0f7ffe9d0821b39cc8f60c9690cceb5c44bd7a277 SHA512 9ce2f9f1f9c9a847945c72ff3a8f47ec5743d2e5cdc9f40dcdd66493450a6d30d7be39cd1e290793317c7395a8342d3380a9c05dcd43d7adb0a4df94f957c4be -EBUILD libomp-14.0.0.ebuild 3817 BLAKE2B 7f5c80c1a8e6995b58576911a3ab73a3dd1b66338889ab5b6396589aae574aae1cd85529ff9a5baa1dd565f2c260964445062a7575e3bfb8ff74b8f1b92a57e7 SHA512 2bc2897f6e6863d9a4d1e18d09b253d918fe8353e2af094995bef4d86880d1b85377d882782c6e84223ca19ebe93108f380ac602e3b6680d2927f6874bb3e1b5 +EBUILD libomp-13.0.1.ebuild 3836 BLAKE2B bfecc3ecb5928ba0c4f1e79baf7108705b33b654631ebc05a52bebab494eebefe6ec1f7403170f5e0b541942618a88ebad52f5ba80bf185a2544170df3c84bcc SHA512 97a257c4e40440c83dc72d76f67d5b4b49ea74b138e541163c3bc938a50052fae3ae988c60a290c1b0051efc623f9be464c1801b5b7569a8cbb446724fe8267b EBUILD libomp-14.0.1.ebuild 3817 BLAKE2B 7f5c80c1a8e6995b58576911a3ab73a3dd1b66338889ab5b6396589aae574aae1cd85529ff9a5baa1dd565f2c260964445062a7575e3bfb8ff74b8f1b92a57e7 SHA512 2bc2897f6e6863d9a4d1e18d09b253d918fe8353e2af094995bef4d86880d1b85377d882782c6e84223ca19ebe93108f380ac602e3b6680d2927f6874bb3e1b5 -EBUILD libomp-15.0.0.9999.ebuild 3751 BLAKE2B 849748f2a27549b150afbff92be3279dbf67c8d8e3d7fa1460c9693bc8ae9e684d737e6a1ae79ee4a351759b6c1523ebaab7a17889e58c7328180344492572c8 SHA512 bb4a8c5512249ad1553b0c849882865c98482859eab81f17702283b27253fdc079ee32864af617817c1e13e717b78df39814b4d7b48db0b208e2d8b55e18e216 +EBUILD libomp-14.0.3.ebuild 3828 BLAKE2B 0887d1ac8543821e06bb09a1c3b3331c7d727fc9101232893f19270a7bdc0092c9be0c85e5a9976450e7c131fff8918346515fbf880c700ebd113a5c399948a8 SHA512 d82f5e9129e7515cbf2d836519de4b7ddecc14ed9948584f3a49ea58d6dbd27a0b90a88d5329a9bc568e4063daf0c9ce8755c6c9ddcadad1a56a1f7142511721 +EBUILD libomp-15.0.0.9999.ebuild 3762 BLAKE2B ec449c1019da76ad9d1835e9a86f776e97a83740da240a2e98221d3f5d5eff7911b894584bb37da8fe2375670d5a6a67e41a5523f957694cd3e138543b5ba925 SHA512 643d3c43a9fba97ea44b94d3edd07ffbb487aa8260856fed8a158646873a7e45797c11aed020b224642db7e90da0fb705cd10f69fd0da5139d42b9560b9f2542 MISC metadata.xml 826 BLAKE2B 94bad2982b52156c2755f4fcdc534648e30b45b514f486028d7beba9af050c3c6847a33fdc11cbf26195794b8e8a7cbeb4e110b8b4398f784c7b7c3edeea02ca SHA512 60de2890b1edc3d60feb5b04dbce840b17e0812ff301f00fd7c12242d3b81cdb3b8ad7afeb3624d70526a93cf8285c96a65b5fcd0384dd093b722c1ae645fa2f diff --git a/sys-libs/libomp/libomp-11.1.0.ebuild b/sys-libs/libomp/libomp-11.1.0.ebuild deleted file mode 100644 index 5c983795cfff..000000000000 --- a/sys-libs/libomp/libomp-11.1.0.ebuild +++ /dev/null @@ -1,105 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -CMAKE_ECLASS=cmake -PYTHON_COMPAT=( python3_{7..9} ) -inherit cmake-multilib linux-info llvm.org python-any-r1 - -DESCRIPTION="OpenMP runtime library for LLVM/clang compiler" -HOMEPAGE="https://openmp.llvm.org" - -LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" -SLOT="0" -KEYWORDS="amd64 arm arm64 ppc64 ~riscv x86 ~amd64-linux ~x64-macos" -IUSE="cuda hwloc offload ompt test" -# CUDA works only with the x86_64 ABI -REQUIRED_USE="offload? ( cuda? ( abi_x86_64 ) )" -RESTRICT="!test? ( test )" - -RDEPEND=" - hwloc? ( sys-apps/hwloc:0=[${MULTILIB_USEDEP}] ) - offload? ( - virtual/libelf:=[${MULTILIB_USEDEP}] - dev-libs/libffi:=[${MULTILIB_USEDEP}] - cuda? ( dev-util/nvidia-cuda-toolkit:= ) - )" -# tests: -# - dev-python/lit provides the test runner -# - sys-devel/llvm provide test utils (e.g. FileCheck) -# - sys-devel/clang provides the compiler to run tests -DEPEND="${RDEPEND}" -BDEPEND="dev-lang/perl - offload? ( virtual/pkgconfig ) - test? ( - $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]') - >=sys-devel/clang-6 - )" - -LLVM_COMPONENTS=( openmp ) -llvm.org_set_globals - -python_check_deps() { - has_version "dev-python/lit[${PYTHON_USEDEP}]" -} - -kernel_pds_check() { - if use kernel_linux && kernel_is -lt 4 15 && kernel_is -ge 4 13; then - local CONFIG_CHECK="~!SCHED_PDS" - local ERROR_SCHED_PDS="\ -PDS scheduler versions >= 0.98c < 0.98i (e.g. used in kernels >= 4.13-pf11 -< 4.14-pf9) do not implement sched_yield() call which may result in horrible -performance problems with libomp. If you are using one of the specified -kernel versions, you may want to disable the PDS scheduler." - - check_extra_config - fi -} - -pkg_pretend() { - kernel_pds_check -} - -pkg_setup() { - use test && python-any-r1_pkg_setup -} - -multilib_src_configure() { - local libdir="$(get_libdir)" - local mycmakeargs=( - -DOPENMP_LIBDIR_SUFFIX="${libdir#lib}" - - -DLIBOMP_USE_HWLOC=$(usex hwloc) - -DLIBOMP_OMPT_SUPPORT=$(usex ompt) - - -DOPENMP_ENABLE_LIBOMPTARGET=$(usex offload) - - # do not install libgomp.so & libiomp5.so aliases - -DLIBOMP_INSTALL_ALIASES=OFF - # disable unnecessary hack copying stuff back to srcdir - -DLIBOMP_COPY_EXPORTS=OFF - ) - use offload && mycmakeargs+=( - # this is non-fatal and libomp checks for CUDA conditionally - # to ABI, so we can just ignore passing the wrong value - # on non-amd64 ABIs - -DCMAKE_DISABLE_FIND_PACKAGE_CUDA=$(usex !cuda) - ) - use test && mycmakeargs+=( - # this project does not use standard LLVM cmake macros - -DOPENMP_LLVM_LIT_EXECUTABLE="${EPREFIX}/usr/bin/lit" - -DOPENMP_LIT_ARGS="$(get_lit_flags)" - - -DOPENMP_TEST_C_COMPILER="$(type -P "${CHOST}-clang")" - -DOPENMP_TEST_CXX_COMPILER="$(type -P "${CHOST}-clang++")" - ) - cmake_src_configure -} - -multilib_src_test() { - # respect TMPDIR! - local -x LIT_PRESERVES_TMP=1 - - cmake_build check-libomp -} diff --git a/sys-libs/libomp/libomp-13.0.0-r2.ebuild b/sys-libs/libomp/libomp-13.0.0-r2.ebuild deleted file mode 100644 index 725187193ff6..000000000000 --- a/sys-libs/libomp/libomp-13.0.0-r2.ebuild +++ /dev/null @@ -1,131 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -CMAKE_ECLASS=cmake -PYTHON_COMPAT=( python3_{8..10} ) -inherit cmake-multilib linux-info llvm llvm.org python-any-r1 - -DESCRIPTION="OpenMP runtime library for LLVM/clang compiler" -HOMEPAGE="https://openmp.llvm.org" - -LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" -SLOT="0" -KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86 ~amd64-linux ~x64-macos" -IUSE="cuda debug hwloc offload ompt test - llvm_targets_AMDGPU llvm_targets_NVPTX" -# CUDA works only with the x86_64 ABI -REQUIRED_USE=" - cuda? ( llvm_targets_NVPTX ) - offload? ( cuda? ( abi_x86_64 ) )" -RESTRICT="!test? ( test )" - -RDEPEND=" - hwloc? ( >=sys-apps/hwloc-2.5:0=[${MULTILIB_USEDEP}] ) - offload? ( - virtual/libelf:=[${MULTILIB_USEDEP}] - dev-libs/libffi:=[${MULTILIB_USEDEP}] - ~sys-devel/llvm-${PV}[${MULTILIB_USEDEP}] - cuda? ( dev-util/nvidia-cuda-toolkit:= ) - )" -# tests: -# - dev-python/lit provides the test runner -# - sys-devel/llvm provide test utils (e.g. FileCheck) -# - sys-devel/clang provides the compiler to run tests -DEPEND="${RDEPEND}" -BDEPEND="dev-lang/perl - offload? ( - llvm_targets_AMDGPU? ( sys-devel/clang ) - llvm_targets_NVPTX? ( sys-devel/clang ) - virtual/pkgconfig - ) - test? ( - $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]') - sys-devel/clang - )" - -LLVM_COMPONENTS=( openmp llvm/include ) -LLVM_PATCHSET=${PV/_/-}-r2 -llvm.org_set_globals - -python_check_deps() { - has_version "dev-python/lit[${PYTHON_USEDEP}]" -} - -kernel_pds_check() { - if use kernel_linux && kernel_is -lt 4 15 && kernel_is -ge 4 13; then - local CONFIG_CHECK="~!SCHED_PDS" - local ERROR_SCHED_PDS="\ -PDS scheduler versions >= 0.98c < 0.98i (e.g. used in kernels >= 4.13-pf11 -< 4.14-pf9) do not implement sched_yield() call which may result in horrible -performance problems with libomp. If you are using one of the specified -kernel versions, you may want to disable the PDS scheduler." - - check_extra_config - fi -} - -pkg_pretend() { - kernel_pds_check -} - -pkg_setup() { - use offload && LLVM_MAX_SLOT=${PV%%.*} llvm_pkg_setup - use test && python-any-r1_pkg_setup -} - -multilib_src_configure() { - # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844 - use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG" - - local libdir="$(get_libdir)" - local mycmakeargs=( - -DOPENMP_LIBDIR_SUFFIX="${libdir#lib}" - - -DLIBOMP_USE_HWLOC=$(usex hwloc) - -DLIBOMP_OMPT_SUPPORT=$(usex ompt) - - -DOPENMP_ENABLE_LIBOMPTARGET=$(usex offload) - - # do not install libgomp.so & libiomp5.so aliases - -DLIBOMP_INSTALL_ALIASES=OFF - # disable unnecessary hack copying stuff back to srcdir - -DLIBOMP_COPY_EXPORTS=OFF - ) - if use offload && has "${CHOST%%-*}" aarch64 powerpc64le x86_64; then - mycmakeargs+=( - -DCMAKE_DISABLE_FIND_PACKAGE_CUDA=$(usex !cuda) - -DLIBOMPTARGET_BUILD_AMDGCN_BCLIB=$(usex llvm_targets_AMDGPU) - -DLIBOMPTARGET_BUILD_NVPTX_BCLIB=$(usex llvm_targets_NVPTX) - # a cheap hack to force clang - -DLIBOMPTARGET_NVPTX_CUDA_COMPILER="$(type -P "${CHOST}-clang")" - # upstream defaults to looking for it in clang dir - # this fails when ccache is being used - -DLIBOMPTARGET_NVPTX_BC_LINKER="$(type -P llvm-link)" - ) - else - mycmakeargs+=( - -DCMAKE_DISABLE_FIND_PACKAGE_CUDA=ON - -DLIBOMPTARGET_BUILD_AMDGCN_BCLIB=OFF - -DLIBOMPTARGET_BUILD_NVPTX_BCLIB=OFF - ) - fi - use test && mycmakeargs+=( - # this project does not use standard LLVM cmake macros - -DOPENMP_LLVM_LIT_EXECUTABLE="${EPREFIX}/usr/bin/lit" - -DOPENMP_LIT_ARGS="$(get_lit_flags)" - - -DOPENMP_TEST_C_COMPILER="$(type -P "${CHOST}-clang")" - -DOPENMP_TEST_CXX_COMPILER="$(type -P "${CHOST}-clang++")" - ) - addpredict /dev/nvidiactl - cmake_src_configure -} - -multilib_src_test() { - # respect TMPDIR! - local -x LIT_PRESERVES_TMP=1 - - cmake_build check-libomp -} diff --git a/sys-libs/libomp/libomp-13.0.1.ebuild b/sys-libs/libomp/libomp-13.0.1.ebuild index 082d9ba15a2b..f9268fab32f5 100644 --- a/sys-libs/libomp/libomp-13.0.1.ebuild +++ b/sys-libs/libomp/libomp-13.0.1.ebuild @@ -12,7 +12,7 @@ HOMEPAGE="https://openmp.llvm.org" LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" SLOT="0" -KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv ~x86 ~amd64-linux ~x64-macos" +KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86 ~amd64-linux ~x64-macos" IUSE="cuda debug hwloc offload ompt test llvm_targets_AMDGPU llvm_targets_NVPTX" # CUDA works only with the x86_64 ABI diff --git a/sys-libs/libomp/libomp-14.0.0.ebuild b/sys-libs/libomp/libomp-14.0.3.ebuild index eac03ceafd28..987d01113d97 100644 --- a/sys-libs/libomp/libomp-14.0.0.ebuild +++ b/sys-libs/libomp/libomp-14.0.3.ebuild @@ -1,7 +1,7 @@ # Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=7 +EAPI=8 CMAKE_ECLASS=cmake PYTHON_COMPAT=( python3_{8..10} ) @@ -13,13 +13,16 @@ HOMEPAGE="https://openmp.llvm.org" LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" SLOT="0" KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86 ~amd64-linux ~x64-macos" -IUSE="cuda debug hwloc offload ompt test - llvm_targets_AMDGPU llvm_targets_NVPTX" +IUSE=" + cuda debug hwloc offload ompt test + llvm_targets_AMDGPU llvm_targets_NVPTX +" +RESTRICT="!test? ( test )" # CUDA works only with the x86_64 ABI REQUIRED_USE=" cuda? ( llvm_targets_NVPTX ) - offload? ( cuda? ( abi_x86_64 ) )" -RESTRICT="!test? ( test )" + offload? ( cuda? ( abi_x86_64 ) ) +" RDEPEND=" hwloc? ( >=sys-apps/hwloc-2.5:0=[${MULTILIB_USEDEP}] ) @@ -28,13 +31,17 @@ RDEPEND=" dev-libs/libffi:=[${MULTILIB_USEDEP}] ~sys-devel/llvm-${PV}[${MULTILIB_USEDEP}] cuda? ( dev-util/nvidia-cuda-toolkit:= ) - )" + ) +" # tests: # - dev-python/lit provides the test runner # - sys-devel/llvm provide test utils (e.g. FileCheck) # - sys-devel/clang provides the compiler to run tests -DEPEND="${RDEPEND}" -BDEPEND="dev-lang/perl +DEPEND=" + ${RDEPEND} +" +BDEPEND=" + dev-lang/perl offload? ( llvm_targets_AMDGPU? ( sys-devel/clang ) llvm_targets_NVPTX? ( sys-devel/clang ) @@ -43,7 +50,8 @@ BDEPEND="dev-lang/perl test? ( $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]') sys-devel/clang - )" + ) +" LLVM_COMPONENTS=( openmp llvm/include ) llvm.org_set_globals diff --git a/sys-libs/libomp/libomp-15.0.0.9999.ebuild b/sys-libs/libomp/libomp-15.0.0.9999.ebuild index dbee89f1997c..52f9f5285f11 100644 --- a/sys-libs/libomp/libomp-15.0.0.9999.ebuild +++ b/sys-libs/libomp/libomp-15.0.0.9999.ebuild @@ -1,7 +1,7 @@ # Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=7 +EAPI=8 CMAKE_ECLASS=cmake PYTHON_COMPAT=( python3_{8..10} ) @@ -13,13 +13,16 @@ HOMEPAGE="https://openmp.llvm.org" LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" SLOT="0" KEYWORDS="" -IUSE="cuda debug hwloc offload ompt test - llvm_targets_AMDGPU llvm_targets_NVPTX" +IUSE=" + cuda debug hwloc offload ompt test + llvm_targets_AMDGPU llvm_targets_NVPTX +" +RESTRICT="!test? ( test )" # CUDA works only with the x86_64 ABI REQUIRED_USE=" cuda? ( llvm_targets_NVPTX ) - offload? ( cuda? ( abi_x86_64 ) )" -RESTRICT="!test? ( test )" + offload? ( cuda? ( abi_x86_64 ) ) +" RDEPEND=" hwloc? ( >=sys-apps/hwloc-2.5:0=[${MULTILIB_USEDEP}] ) @@ -28,13 +31,17 @@ RDEPEND=" dev-libs/libffi:=[${MULTILIB_USEDEP}] ~sys-devel/llvm-${PV}[${MULTILIB_USEDEP}] cuda? ( dev-util/nvidia-cuda-toolkit:= ) - )" + ) +" # tests: # - dev-python/lit provides the test runner # - sys-devel/llvm provide test utils (e.g. FileCheck) # - sys-devel/clang provides the compiler to run tests -DEPEND="${RDEPEND}" -BDEPEND="dev-lang/perl +DEPEND=" + ${RDEPEND} +" +BDEPEND=" + dev-lang/perl offload? ( llvm_targets_AMDGPU? ( sys-devel/clang ) llvm_targets_NVPTX? ( sys-devel/clang ) @@ -43,7 +50,8 @@ BDEPEND="dev-lang/perl test? ( $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]') sys-devel/clang - )" + ) +" LLVM_COMPONENTS=( openmp llvm/include ) llvm.org_set_globals diff --git a/sys-libs/libseccomp/Manifest b/sys-libs/libseccomp/Manifest index fbf8d4f53afe..a7aa5dcfdf56 100644 --- a/sys-libs/libseccomp/Manifest +++ b/sys-libs/libseccomp/Manifest @@ -1,11 +1,11 @@ AUX libseccomp-2.5.3-skip-valgrind.patch 516 BLAKE2B d5dc87fcca8e20b7edd427c434d875c9c3c7aa130a651dbe06c2c648825312e330400f89177afcfe4985fa48e0f95de9937773deb6d3d83da9b2351e6e0488fc SHA512 96053f8ca6abc97ea7c5565c3c25563881e8c0363e9c38fa05836d59b5d9ea1a375f9e072bd5f89a67ddac159c1219be7ed829facd651b3fb8bd5071c89bddcb AUX libseccomp-python-shared.patch 759 BLAKE2B e2c42e18ca93fe5fddbc3a5b47ac0e6a29e566292fd62b87e6b45f6cb230570a2d1907a8b192e80b32c1900d069a4f10a866fa50bd9b88f5b78abff4206bd4cb SHA512 74548c7969869ff8f937a75eac720f1c654fad87dc17aed1c041bcb765586b4ee978a3ff7c6281be03277f6c74f2ec32624f91beb55afec3066a06a9e51483e2 DIST libseccomp-2.5.1.tar.gz 638811 BLAKE2B 683ae7536c0cba36f4d30640b42361171fc34b7cb04985ea56e64369df29c440361a0205385b14580cc0e481e0f9ffd0b0e8ebd4ac98817ed59298db6b274c35 SHA512 2be80a6323f9282dbeae8791724e5778b32e2382b2a3d1b0f77366371ec4072ea28128204f675cce101c091c0420d12c497e1a9ccbb7dc5bcbf61bfd777160af -DIST libseccomp-2.5.2.tar.gz 640305 BLAKE2B b61214cb9a9a793d1f04ae1de3f62c578cfaec54fcc355947b4c71efb75072bf60497db8c8a0fd34a46764952349027df3f025ddbd276d58be93209170950e89 SHA512 b2a95152cb274d6b35753596fd825406dae20c4a48b2f4076f835f977ecf324de38a3fe02e789dc20b49ecf6b4eb67f03e7733e92d40f5e20f25874307f1c2ac DIST libseccomp-2.5.3.tar.gz 637572 BLAKE2B cedf04b3a926f9fe5202e6169ddac6b983e755009c14fc1d645157b9c0bcdf65d4085f8ea7abad90f3a0c13ae4d66b5d8306e725168490863aad15976de1eae7 SHA512 00170fe2360f0c0b33293dccfcc33e98fabb99619f34ecefbcc92bfdaa249ba91e7433226545b842b71542a3b224b6e980ea2ae656c4addf07e84a0def1870a0 +DIST libseccomp-2.5.4-loongarch64-20220425.patch.xz 132768 BLAKE2B f3ab165b028b5f8b4c16574936b915595807ebeb49ef7365d6051f3dfafa7da46ef2a9de458e0a268298cb340152abe1f3c0c293446462a06696bc9ce92d2f72 SHA512 94f23c7a2cc2ea8acb01fef00ef184295c276b14b2b3ba0c65687fd72081df8478f3f04c51b0b391ba44529c4f914e6edbb4132af935e3be55902f641d478780 +DIST libseccomp-2.5.4.tar.gz 637228 BLAKE2B 38b134cb578f9355667546f92950ebcf8c53ccaf98db568db9aadfa9629c054136849e03d4bf9f09f73998fe66a5e8a9038573d19740b2bddf5518a8a0119229 SHA512 92650bd7d1d48b383f402a536b97a017fd0f6ad1234daf4b938d01c92e8d134a01d2f2dd45fd9e2d025d7556bd1386ec360402145a87f20580c85949d62cea0e EBUILD libseccomp-2.5.1-r1.ebuild 2301 BLAKE2B a4d466901b4a8175108e3c0cf8a14c3987e74ce3272f3fd60177a912a2eafb8bfd997f7aa7a90f68c05cfbebc17a4096b50f31bba57f44753659db6368d51656 SHA512 56bf4ebf83113cc8407bb8e8bdcc42ea90d041f2590fa53b320836b5538af03d130bb0092996abd6d20cefeaad4cecaf213845772a22c13efcf0754e1473171e -EBUILD libseccomp-2.5.1.ebuild 1987 BLAKE2B af2f16371d2053acc196f25e655e9ffc839114de5f3283128db57c36a04c528085502970b01cadf9434537c9e6a7d7dd869ef879cff321e352b0caea59b5962b SHA512 9b256b7f42bb28697edbd44613718c152d0f6bb4a6072748ecf873ce7ed4f44def744a465efbcdd6dd29f599a57ec3f13fe68b09357d92ac82525c798dbe4a74 -EBUILD libseccomp-2.5.2.ebuild 2308 BLAKE2B 22a4b45f0133337b26c6d10391a1276ef1ca06ea4f3d1e3573b9922ca80485c4e7e16f5174d62059c9f6979b6a1cc267b7f5e0a56a2206951ebee9f2f62dbd0b SHA512 21c514240acebb47e708d716627816b861bbbdc7cb1201f4234758db163cbfcfb96a14c317476ff2002c04f68c40f579ae4dcd6a21c0870a731fac40b1d7977b EBUILD libseccomp-2.5.3.ebuild 2401 BLAKE2B bf3340e3ad81d5e399ba8d30fc9c7c599794e63885199bb16105013de2ff3910d363806086778e22da54132f19fce06b90468ec9e4b4eeaf06fe469d82ddf6d6 SHA512 6ba4926dc3cd97ba46f33cf22d512ed084a72b360410e55ab1c746a75f3f7136dca13015bf6d5ab9d688b17b3828fd4b96f71cbea5b477ac0602e20ffaea3500 -EBUILD libseccomp-9999.ebuild 2408 BLAKE2B 26e9c336ef7d21c77e262afaa9c7068d432082d5e8367d86cef5405aca357f55dcb84a331e7dc87db0589d049d3ea5ba32aab373118ca09e0a93f2f5fbf986f1 SHA512 d20261580d5c7999fe220dda0f9f7f55fdd0acf81babd1919df6bd5d09aedd2047747c2aaff3cdd541245dc8fb94d27a290d90fb76c8048a201777e4330e5b43 -MISC metadata.xml 469 BLAKE2B 6dcc08de3598cce61438d1d0e6c35197159458a43a60c436d33a9f8a32acd3c132da2c76f8d79c5fbe1967b572759d21b5cd17d8e15c54528b5457e1e30aa3ac SHA512 153c1e0171b15997df762d353c1f5acae8f9c80e87a81d1fcd588ababa203279f08e4f82c5fab25e5e4c4ee28d4b208d40577b91749d57fc49dc557767d3ee92 +EBUILD libseccomp-2.5.4.ebuild 2876 BLAKE2B 957c42a44d162a6607b5fc555203b4f48cb56d725ef780d407c6843b052b266346c6072d0ed0fff473b7982b170fad4b7c40d0c1ef13b3948160e88659e24dcd SHA512 e48ccc952d97a7e94276aef32c23e6303cad4c2bbae9c525cd9e03a4332a45f266ee70887b8e0ebb2cc82199a4bf262d3e5bf9c94ca4966714393106fe79b9bd +EBUILD libseccomp-9999.ebuild 2382 BLAKE2B ecad29840736e18f35e0470a20674fe9aa0996bbf0a14c2297fda4b8873eaa028a8b0537bfd7cb64f67eeaa094ce7a4e981a94eb5a6008a771832931694cf1da SHA512 f41729b208db944ceddab46aba24d59a850a28379e11c1ac7405e82477bffe13050158c2bdf52ffc51f78d001f8ac320e4a27f1b876f9f3cc9c60c0f3513f2b3 +MISC metadata.xml 561 BLAKE2B 48e95fec426ff6123ed948660b9e88aa9e2ecd5f8cc51b6e13d0034c4f3fff988ce2bcb2a9b73557fe5c15065ee09d14c4c4b4bbce488bbf9bd54138b0d6750e SHA512 b45ed0989e466fc27998553f584fdcbd33a9a57c31774f062508eabc834848c7776e91d3ae854707523958282822499e030b785b018c356fdf3590a5a8dc6090 diff --git a/sys-libs/libseccomp/libseccomp-2.5.1.ebuild b/sys-libs/libseccomp/libseccomp-2.5.1.ebuild deleted file mode 100644 index bf83271b3fde..000000000000 --- a/sys-libs/libseccomp/libseccomp-2.5.1.ebuild +++ /dev/null @@ -1,84 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python3_{8..9} ) -DISTUTILS_OPTIONAL=1 - -inherit distutils-r1 multilib-minimal - -DESCRIPTION="high level interface to Linux seccomp filter" -HOMEPAGE="https://github.com/seccomp/libseccomp" - -if [[ ${PV} == *9999 ]] ; then - EGIT_REPO_URI="https://github.com/seccomp/libseccomp.git" - PRERELEASE="2.6.0" - inherit autotools git-r3 -else - SRC_URI="https://github.com/seccomp/libseccomp/releases/download/v${PV}/${P}.tar.gz" - KEYWORDS="-* amd64 arm arm64 hppa ~mips ppc ppc64 ~riscv ~s390 x86 ~amd64-linux ~x86-linux" -fi - -LICENSE="LGPL-2.1" -SLOT="0" -IUSE="python static-libs" - -REQUIRED_USE=" - python? ( - static-libs - ${PYTHON_REQUIRED_USE} - )" - -DEPEND="python? ( ${PYTHON_DEPS} )" -RDEPEND="${DEPEND}" -BDEPEND="${DEPEND} - dev-util/gperf - python? ( dev-python/cython[${PYTHON_USEDEP}] ) -" -# We need newer kernel headers; we don't keep strict control of the exact -# version here, just be safe and pull in the latest stable ones. #551248 -DEPEND="${DEPEND} >=sys-kernel/linux-headers-4.3" - -src_prepare() { - default - if [[ "${PV}" == *9999 ]] ; then - sed -i -e "s/0.0.0/${PRERELEASE}/" configure.ac - eautoreconf - fi -} - -multilib_src_configure() { - local myeconfargs=( - $(use_enable static-libs static) - --disable-python - ) - ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" -} - -multilib_src_compile() { - emake - - if multilib_is_native_abi && use python ; then - cd "${S}/src/python" || die - sed -i -e "s/=.*VERSION_RELEASE.*,/=\"${PRERELEASE}\",/" \ - -e "/extra_objects/s,\.\.,${OLDPWD}/src," \ - setup.py || die - local -x CPPFLAGS="-I${OLDPWD}/include -I../../include" - distutils-r1_src_compile - fi -} - -multilib_src_install() { - emake DESTDIR="${D}" install - - if multilib_is_native_abi && use python ; then - cd "${S}/src/python" || die - distutils-r1_src_install - fi -} - -multilib_src_install_all() { - find "${ED}" -type f -name "${PN}.la" -delete || die - einstalldocs -} diff --git a/sys-libs/libseccomp/libseccomp-2.5.2.ebuild b/sys-libs/libseccomp/libseccomp-2.5.4.ebuild index eea16fa2bbf5..09258b43b977 100644 --- a/sys-libs/libseccomp/libseccomp-2.5.2.ebuild +++ b/sys-libs/libseccomp/libseccomp-2.5.4.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2021 Gentoo Authors +# Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 -PYTHON_COMPAT=( python3_{8..9} ) +PYTHON_COMPAT=( python3_{8..10} ) DISTUTILS_OPTIONAL=1 inherit distutils-r1 multilib-minimal @@ -16,33 +16,49 @@ if [[ ${PV} == *9999 ]] ; then PRERELEASE="2.6.0" inherit autotools git-r3 else - SRC_URI="https://github.com/seccomp/libseccomp/releases/download/v${PV}/${P}.tar.gz" - KEYWORDS="-* ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~riscv ~s390 ~x86 ~amd64-linux ~x86-linux" + SRC_URI="https://github.com/seccomp/libseccomp/releases/download/v${PV}/${P}.tar.gz + experimental-loong? ( https://dev.gentoo.org/~xen0n/distfiles/${P}-loongarch64-20220425.patch.xz )" + KEYWORDS="-* ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~x86 ~amd64-linux ~x86-linux" fi LICENSE="LGPL-2.1" SLOT="0" -IUSE="python static-libs" +IUSE="experimental-loong python static-libs test" +RESTRICT="!test? ( test )" REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" -DEPEND="python? ( ${PYTHON_DEPS} )" +# We need newer kernel headers; we don't keep strict control of the exact +# version here, just be safe and pull in the latest stable ones. bug #551248 +DEPEND=">=sys-kernel/linux-headers-5.15 + python? ( ${PYTHON_DEPS} )" RDEPEND="${DEPEND}" BDEPEND="${DEPEND} dev-util/gperf - python? ( dev-python/cython[${PYTHON_USEDEP}] ) -" -# We need newer kernel headers; we don't keep strict control of the exact -# version here, just be safe and pull in the latest stable ones. #551248 -DEPEND="${DEPEND} >=sys-kernel/linux-headers-4.3" + python? ( dev-python/cython[${PYTHON_USEDEP}] )" + +PATCHES=( + "${FILESDIR}"/libseccomp-python-shared.patch + "${FILESDIR}"/libseccomp-2.5.3-skip-valgrind.patch +) src_prepare() { - local PATCHES=( - "${FILESDIR}/libseccomp-python-shared.patch" - ) + if use experimental-loong; then + PATCHES+=( "${WORKDIR}/${P}-loongarch64-20220425.patch" ) + fi + default - if [[ "${PV}" == *9999 ]] ; then - sed -i -e "s/0.0.0/${PRERELEASE}/" configure.ac + + if use experimental-loong; then + # touch generated files to avoid activating maintainer mode + # remove when loong-fix-build.patch is no longer necessary + touch ./aclocal.m4 ./configure ./configure.h.in || die + find . -name Makefile.in -exec touch {} + || die + fi + + if [[ ${PV} == *9999 ]] ; then + sed -i -e "s/0.0.0/${PRERELEASE}/" configure.ac || die + eautoreconf fi } @@ -52,12 +68,14 @@ multilib_src_configure() { $(use_enable static-libs static) --disable-python ) + ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" } do_python() { # setup.py reads VERSION_RELEASE from the environment local -x VERSION_RELEASE=${PRERELEASE-${PV}} + pushd "${BUILD_DIR}/src/python" >/dev/null || die "$@" popd >/dev/null || die @@ -69,9 +87,10 @@ multilib_src_compile() { if multilib_is_native_abi && use python ; then # setup.py expects libseccomp.so to live in "../.libs" # Copy the python files to the right place for this. - rm -r "${BUILD_DIR}/src/python" || die - cp -r "${S}/src/python" "${BUILD_DIR}/src/python" || die + rm -r "${BUILD_DIR}"/src/python || die + cp -r "${S}"/src/python "${BUILD_DIR}"/src/python || die local -x CPPFLAGS="-I\"${BUILD_DIR}/include\" -I\"${S}/include\" ${CPPFLAGS}" + do_python distutils-r1_src_compile fi } @@ -86,5 +105,6 @@ multilib_src_install() { multilib_src_install_all() { find "${ED}" -type f -name "${PN}.la" -delete || die + einstalldocs } diff --git a/sys-libs/libseccomp/libseccomp-9999.ebuild b/sys-libs/libseccomp/libseccomp-9999.ebuild index 847d2ce335b0..fed0b3c8f425 100644 --- a/sys-libs/libseccomp/libseccomp-9999.ebuild +++ b/sys-libs/libseccomp/libseccomp-9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2021 Gentoo Authors +# Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -27,25 +27,24 @@ RESTRICT="!test? ( test )" REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" -DEPEND="python? ( ${PYTHON_DEPS} )" +# We need newer kernel headers; we don't keep strict control of the exact +# version here, just be safe and pull in the latest stable ones. bug #551248 +DEPEND=">=sys-kernel/linux-headers-5.15 + python? ( ${PYTHON_DEPS} )" RDEPEND="${DEPEND}" BDEPEND="${DEPEND} dev-util/gperf - python? ( dev-python/cython[${PYTHON_USEDEP}] ) -" -# We need newer kernel headers; we don't keep strict control of the exact -# version here, just be safe and pull in the latest stable ones. #551248 -DEPEND="${DEPEND} >=sys-kernel/linux-headers-4.3" + python? ( dev-python/cython[${PYTHON_USEDEP}] )" -src_prepare() { - local PATCHES=( - "${FILESDIR}/libseccomp-python-shared.patch" - "${FILESDIR}/libseccomp-2.5.3-skip-valgrind.patch" - ) +PATCHES=( + "${FILESDIR}"/libseccomp-python-shared.patch + "${FILESDIR}"/libseccomp-2.5.3-skip-valgrind.patch +) +src_prepare() { default - if [[ "${PV}" == *9999 ]] ; then + if [[ ${PV} == *9999 ]] ; then sed -i -e "s/0.0.0/${PRERELEASE}/" configure.ac || die eautoreconf @@ -76,8 +75,8 @@ multilib_src_compile() { if multilib_is_native_abi && use python ; then # setup.py expects libseccomp.so to live in "../.libs" # Copy the python files to the right place for this. - rm -r "${BUILD_DIR}/src/python" || die - cp -r "${S}/src/python" "${BUILD_DIR}/src/python" || die + rm -r "${BUILD_DIR}"/src/python || die + cp -r "${S}"/src/python "${BUILD_DIR}"/src/python || die local -x CPPFLAGS="-I\"${BUILD_DIR}/include\" -I\"${S}/include\" ${CPPFLAGS}" do_python distutils-r1_src_compile diff --git a/sys-libs/libseccomp/metadata.xml b/sys-libs/libseccomp/metadata.xml index dd20dd0473ec..75b652d43244 100644 --- a/sys-libs/libseccomp/metadata.xml +++ b/sys-libs/libseccomp/metadata.xml @@ -5,6 +5,9 @@ <email>base-system@gentoo.org</email> <name>Gentoo Base System</name> </maintainer> + <use> + <flag name="experimental-loong">Add experimental LoongArch patchset</flag> + </use> <upstream> <remote-id type="github">seccomp/libseccomp</remote-id> <remote-id type="sourceforge">libseccomp</remote-id> diff --git a/sys-libs/libsmbios/Manifest b/sys-libs/libsmbios/Manifest index 7c82f012113f..9b2cd1f99bcf 100644 --- a/sys-libs/libsmbios/Manifest +++ b/sys-libs/libsmbios/Manifest @@ -1,5 +1,5 @@ AUX libsmbios-2.2.28-cppunit-tests.patch 350 BLAKE2B c735096c5fe0e33eec728e280097f9d1e97aca8942cda80d0d574f24f71f25245714dc4bf99d5b53a9613cbbf4b33d5a50cfa9482be5a2dd601b9b9a03be3940 SHA512 51cfb62fce69afaf73659a2c4c819aa3554831b48d69bc35c1b299cd2e0b4d3be7f156a2cb57912cf10f21182e49fd5ce17aad0205a25d151f55ab3e0e58ddd7 AUX libsmbios-2.4.3-avoid_bashisms.patch 2909 BLAKE2B 426ca128f142307ea89cc5003c298518115805a518b348345f154094e34be932721aa6c880612fa7fe3473bc1156bf7c2dc1ce085dd9511ddeaf58e54d2464e1 SHA512 d2199481d87527ce7e90ca355cdfaf48a859982e67090e248034139b19ce2d61717e9887d246c7bd6b1e46f3f97cf6ec6bbdf04e3091c513221cb42d0f1431b3 DIST libsmbios-2.4.3.tar.gz 644140 BLAKE2B 684bff4f6cf755796f785e9a93d4ddbe2a1af52082cdebc27d203772a6a2a0259edb4b9d19921f90fc78b48d54700223fbc2628665b963ebcb601010ff4340ab SHA512 7f6fb36fa9653e123b416b275953fb5652025e76dac3b4ec5600168e193ea56f8ac3ea1a3b5db29d2770e73d88152d712a35bf77a9b3fc5596570fae885585ad -EBUILD libsmbios-2.4.3.ebuild 1795 BLAKE2B 0a0f2e53325888c4db7adcdab9cca25b91088987ab07055c882d82ba70e233c05d342f918a3a748a802ee4546ff3dd7bf35422318e65107e41cba4afda7198a9 SHA512 6b5a69e5f43a4adff45b67a3d4e4d738a4ab8462f76bf987d98bda9e5b3519cfa0cb373073fde0c0910c7ac19270a6f66945b977476e9cb54ce1c3e8c7b3dcf2 +EBUILD libsmbios-2.4.3.ebuild 1795 BLAKE2B 2bed26164e37fa3d2ea31b22df2740cf76580e90c615ab4fe6dd3f1487cec01225880dbefe9c1b462be33a04a1e51fcf06bea32624142ade712c980fb96d53f9 SHA512 a7a7f8399dec2c3b9158d13b0213e32ec9e3c16de53824d9e8d14d1543b2c1f6fa549e9452708c5bfa3aa537b1dda360b8a4e0ff30a983f11e7c50ac80a84605 MISC metadata.xml 683 BLAKE2B c1ce05b96d532d18aa93942f30d9f499c0196ab42510c196a73d8b0ce4d7d05920e9b5cb8d6b343b8a29fc3813d33e110233303ad17594ea1f729e210576c72b SHA512 e6adf717c5ecfaf17d88ff77afbcf6f3c93ee018dd3a07edc057d1009f39422f89de47eb9252c8363005de3fc8297abe342e8b652af5a90e044c0c378dd1e365 diff --git a/sys-libs/libsmbios/libsmbios-2.4.3.ebuild b/sys-libs/libsmbios/libsmbios-2.4.3.ebuild index 56a475848ec4..f982ee3c0391 100644 --- a/sys-libs/libsmbios/libsmbios-2.4.3.ebuild +++ b/sys-libs/libsmbios/libsmbios-2.4.3.ebuild @@ -1,8 +1,8 @@ -# Copyright 1999-2021 Gentoo Authors +# Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 -PYTHON_COMPAT=( python3_{7,8,9} ) +PYTHON_COMPAT=( python3_{8..10} ) inherit autotools flag-o-matic python-single-r1 diff --git a/sys-libs/libstdc++-v3/Manifest b/sys-libs/libstdc++-v3/Manifest index eb5e7631add0..626d62ad5293 100644 --- a/sys-libs/libstdc++-v3/Manifest +++ b/sys-libs/libstdc++-v3/Manifest @@ -1,6 +1,4 @@ -DIST gcc-3.3.6-patches-1.10.tar.bz2 53739 BLAKE2B d22772d30c432669299e3e6df350920408c510a241a20e6795dcc680227342a16c3b6d2e477a17d6c49794005b42972ed30b4efe5b2d69398d283f50efdeb459 SHA512 be6cc8fae217f789982e324e0d3ad12d527e43ca4c168bce613397aaf3d86219b125e7b39c2b236638a68112cfee0e06c1b297fead712d92b3923b7195299d0a DIST gcc-3.3.6-patches-4.tar.bz2 53437 BLAKE2B 372ff1fcfcfacca43b420d2cda7fccb2ede4917408e1fcceb6c094694de8ae21148fa9c5ab8663cf6fb9ad858e3d0cbb3f20c91020db7b627828403444c2fd66 SHA512 1ff4563956d2f3af1240a14cd1ec126ff75dcf24e1cec39d32a17d6be92b94aeb081605ceb04b138ba905cea8ccbe204dce4b42a02ef55383fcfa91643f73faf DIST gcc-3.3.6.tar.bz2 23972413 BLAKE2B e7b33edcdbbb13b0be41a41156bf6fb6dcfe4f5ad75c41de86cb37f854be6b7a6a8dda0e65d331461469848cd912e25920e8aa2dcb142cb661731ba571cb5de1 SHA512 576b88e2fa675314a79a85f180684fe5af370c596476a0bf02e33e8ae0e2be838417ea80675ce4194a8213792cf7ada50cae5131149e4b890ab61e0b8d50d0ed -EBUILD libstdc++-v3-3.3.6-r3.ebuild 5062 BLAKE2B 149fc4eb76a0e3e3c163e21fd09bd375cc53232f05f039e4dd005d833f2f7b47b03652dea58574cf77db38d7013aa329858d0ef694362ffa891fe71095527714 SHA512 4dbf4e4ffda9ee85ec09ccce5888600aa6c07f78b189c55d97b5f1f2b8d2032a69a2b315bb242d4bfeb32895111e7fc9d74337a706726a1a57016ca16b95c4d5 EBUILD libstdc++-v3-3.3.6-r4.ebuild 5074 BLAKE2B dba892d8d6b5b417fbee033157f33f491c4843685b3a97d815858aa45770cad2eb9348b2c9c5a347cb055a6bc8ef3034a38f9d49706d162a93ca07fa2d8b683c SHA512 0ebb18227f908002f4baf9e8bceab5a3bb4812839b0186b0d5f0b7acf9cfe3d5dfd087fac124698cbada78fc32931720ad2e5ffb693e1c39a8b965000e3dbb07 MISC metadata.xml 258 BLAKE2B f45bf60ab247635720461e6f8028b41d748c2c0fecea4d5b6eb29a9f532de573e8054773a084b99b2a6a040e980cfc41c8839b13bdeb8ebe6e1de12a1492873b SHA512 2cd16eedd80ae476d1611112f620d3d5eee88fd181fe635d9f9235ac312e24bf8eac5b44f54ff55806ee7a03aaf1d1382a734f7b3496814853d238b9a7b6ee1e diff --git a/sys-libs/libstdc++-v3/libstdc++-v3-3.3.6-r3.ebuild b/sys-libs/libstdc++-v3/libstdc++-v3-3.3.6-r3.ebuild deleted file mode 100644 index 0bf6a4ade8c8..000000000000 --- a/sys-libs/libstdc++-v3/libstdc++-v3-3.3.6-r3.ebuild +++ /dev/null @@ -1,201 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -inherit epatch flag-o-matic libtool multilib toolchain-funcs - -PATCH_VER="1.10" - -DESCRIPTION="Compatibility package for binaries linked against a pre gcc 3.4 libstdc++" -HOMEPAGE="https://gcc.gnu.org/libstdc++/" -SRC_URI="ftp://gcc.gnu.org/pub/gcc/releases/gcc-${PV}/gcc-${PV}.tar.bz2 - mirror://gentoo/gcc-${PV}-patches-${PATCH_VER}.tar.bz2" - -LICENSE="GPL-2 LGPL-2.1" -SLOT="5" -KEYWORDS="~amd64 ~x86" -IUSE="multilib nls" - -RDEPEND="sys-libs/zlib" -DEPEND=" - ${RDEPEND} - sys-devel/bison" - -transform_known_flags() { - declare setting - - # and on x86, we just need to filter the 3.4 specific amd64 -marchs - replace-cpu-flags k8 athlon64 opteron x86-64 - - # gcc 3.3 doesn't support -march=pentium-m - replace-cpu-flags pentium-m pentium3m pentium3 - - #GCC 3.3 does not understand G3, G4, G5 on ppc - replace-cpu-flags G3 750 - replace-cpu-flags G4 7400 - replace-cpu-flags G5 7400 - - filter-flags -fdiagnostics-show-option -} - -is_arch_allowed() { - i386_processor_table="i386 i486 i586 pentium pentium-mmx winchip-c6 \ - winchip2 c3 i686 pentiumpro pentium2 pentium3 pentium4 prescott \ - nocona k6 k6-2 k6-3 athlon athlon-tbird x86-64 athlon-4 athlon-xp \ - athlon-mp" - - for proc in ${i386_processor_table} ; do - [ "${proc}" == "${1}" ] && return 0 - done - - mips_processor_table="mips1 mips2 mips3 mips4 mips32 mips64 r3000 r2000 \ - r3900 r6000 r4000 vr4100 vr4111 vr4120 vr4300 r4400 r4600 orion \ - r4650 r8000 vr5000 vr5400 vr5500 4kc 4kp 5kc 20kc sr71000 sb1" - - for proc in ${mips_processor_table} ; do - [ "${proc}" == "${1}" ] && return 0 - done - - rs6000_processor_table="common power power2 power3 power4 powerpc \ - powerpc64 rios rios1 rsc rsc1 rios2 rs64a 401 403 405 505 601 602 \ - 603 603e ec603e 604 604e 620 630 740 750 7400 7450 8540 801 821 823 \ - 860" - - for proc in ${rs6000_processor_table} ; do - [ "${proc}" == "${1}" ] && return 0 - done - - return 1 -} - -do_filter_flags() { - declare setting - - # In general gcc does not like optimization, and add -O2 where - # it is safe. This is especially true for gcc 3.3 + 3.4 - replace-flags -O? -O2 - - # gcc 3.3 doesn't support -mtune on numerous archs, so xgcc will fail - setting="`get-flag mtune`" - [ ! -z "${setting}" ] && filter-flags -mtune="${setting}" - - # in gcc 3.3 there is a bug on ppc64 where if -mcpu is used - # the compiler incorrectly assumes the code you are about to build - # is 32 bit - use ppc64 && setting="`get-flag mcpu`" - [ ! -z "${setting}" ] && filter-flags -mcpu="${setting}" - - # only allow the flags that we -know- are supported - transform_known_flags - setting="`get-flag march`" - if [ ! -z "${setting}" ] ; then - is_arch_allowed "${setting}" || filter-flags -march="${setting}" - fi - setting="`get-flag mcpu`" - if [ ! -z "${setting}" ] ; then - is_arch_allowed "${setting}" || filter-flags -mcpu="${setting}" - fi - - # xgcc wont understand gcc 3.4 flags... - filter-flags -fno-unit-at-a-time - filter-flags -funit-at-a-time - filter-flags -fweb - filter-flags -fno-web - filter-flags -mno-tls-direct-seg-refs - - # xgcc isnt patched with propolice - filter-flags -fstack-protector-all - filter-flags -fno-stack-protector-all - filter-flags -fstack-protector - filter-flags -fno-stack-protector - - # xgcc isnt patched with the gcc symbol visibility patch - filter-flags -fvisibility-inlines-hidden - filter-flags -fvisibility=hidden - - # Bug #269433 & #290202 - filter-flags -fno-strict-overflow - filter-flags -fstrict-overflow - - # Bug #442784 - filter-flags '-W*' - - filter-flags -frecord-gcc-switches - filter-flags '-fdiagnostics-color*' - - # Bug #610064 - filter-flags '-fstack-check*' - - # ...sure, why not? - strip-unsupported-flags - - strip-flags -} - -S=${WORKDIR}/gcc-${PV} - -src_prepare() { - EPATCH_SUFFIX="patch" epatch "${WORKDIR}"/patch - - default - - elibtoolize --portage --shallow - ./contrib/gcc_update --touch - - if use multilib && [[ ${SYMLINK_LIB} == "yes" ]] ; then - # ugh, this shit has to match the way we've hacked gcc else - # the build falls apart #259215 - sed -i \ - -e 's:\(MULTILIB_OSDIRNAMES = \).*:\1../lib64 ../lib32:' \ - "${S}"/gcc/config/i386/t-linux64 \ - || die "sed failed!" - fi - - tc-export AR CC RANLIB NM -} - -src_configure() { - mkdir -p "${WORKDIR}"/build - cd "${WORKDIR}"/build - do_filter_flags - ECONF_SOURCE=${S} \ - econf \ - --enable-shared \ - --with-system-zlib \ - --enable-languages=c++ \ - --enable-threads=posix \ - --enable-long-long \ - --disable-checking \ - --enable-cstdio=stdio \ - --enable-__cxa_atexit \ - $(use_enable multilib) \ - $(use_enable nls) \ - $(use_with !nls included-gettext) - - touch "${S}"/gcc/c-gperf.h -} - -src_compile() { - emake \ - -C "${WORKDIR}"/build all-target-libstdc++-v3 \ - AR="$(tc-getAR)" \ - NM="$(tc-getNM)" -} - -src_install() { - emake -j1 \ - -C "${WORKDIR}"/build \ - AR="$(tc-getAR)" \ - NM="$(tc-getNM)" \ - DESTDIR="${D}" \ - install-target-libstdc++-v3 - - # scrub everything but the library we care about - pushd "${D}" >/dev/null - mv usr/lib* . || die - rm -rf usr - rm -f lib*/*.{a,la,so} || die - dodir /usr - mv lib* usr/ || die -} diff --git a/sys-libs/libucontext/Manifest b/sys-libs/libucontext/Manifest index 62aef2d8e282..271d66958c40 100644 --- a/sys-libs/libucontext/Manifest +++ b/sys-libs/libucontext/Manifest @@ -1,4 +1,6 @@ AUX libucontext-1.1-respect-CFLAGS.patch 368 BLAKE2B b04163e9e75ad3f8704d85d78091a41957cb072edd3ecbe58dbf45bf59c5ffb3662b5f96bf413eaaa5e328c964cbe99a70c6f8f23f4f8bc74bfdda7a0e45c54d SHA512 889b67269066ccdf84221dd1a636d4f6782f4c5f6800828f4068f3764b7e9d1797614d9f07f81864bc720f415c475c1b78aba38dd35355a54fcbf2f7a64a57ff DIST libucontext-1.1.tar.gz 25261 BLAKE2B 269b3899657779bc2c6a2f1c365242f0ee936afeb0acf74e48af5c1e6b96918bbaa239039508e7b1b1f7b358679fb4a222311b761223b69b9a3e7a9be2d0bc40 SHA512 05aed6f82a2b3d9dba896423335a7fc2fc5eddc87ed725f05e14488c6ddfcef10b835c928619439c7783e052baff7ef2dc162b6e06aa78992f6f611ca13c2e39 +DIST libucontext-1.2.tar.gz 29073 BLAKE2B 378816376877729776c41515ad1c3da36c24528bcdcf5272c4df2029b5273cf90228c163e87bd1af558129b1274d0b22632c4fa8ad2a0f37ac7014dae527a48e SHA512 f47b776517fa9e3fe48b762b11ae580c28bd7646f9e3ab843141d3e203f886326e68dd8040852ab1cb92dbd09d821161660c4be44e3025448d90131e74a4cf51 EBUILD libucontext-1.1-r1.ebuild 1227 BLAKE2B 80165906c3525c3a1d8cd1079a509ff11cb8ec92833ea493e03103c775f99c4f303d86c33ee4fb921cb9c1dcdfc9e06b031e2c6158c1547a99a86edf7b4ff9ab SHA512 accd79cbc600ca4f02dcdc76f6ed7a964b8714238dfe2d5d44734ef3be472a998a6d04afa196c9a086e58ca18138c80b64973b4caa870ffe7e1ba5e579220ede +EBUILD libucontext-1.2.ebuild 1370 BLAKE2B b7a8af9afd2dec3988699e500395a206eb628994d9f7bf50547ae44ae9204850ef1cba637c87a9235a0896a5ebe0785350fa573e0615ba781723d2a7fcd7b739 SHA512 966f7bf60091d9af0d7bb8bed9fabf0fba82087a3d091da79c0b19983d8d2b80ffe67381baab2de3f4dc9c113865ed157377007c9cc85f5c23f331417ae1a31c MISC metadata.xml 329 BLAKE2B 8958a3567263e9f2fc2409c2cd5858ca3e68659a45f67e5132fca640c6ffe05cac8810436f334b5c775ed049709f43aaf366cfecc97bc732a0917bb47aa5c34d SHA512 7b5d5832b22828f6a0600e3be45ff1da8ff340481a3602db6f5b8540373ff0ac3c72f0de64f00a1691598bbd9cea0128eb869cda67d8ac4894e3a51a7009a730 diff --git a/sys-libs/libucontext/libucontext-1.2.ebuild b/sys-libs/libucontext/libucontext-1.2.ebuild new file mode 100644 index 000000000000..7120a14d92cb --- /dev/null +++ b/sys-libs/libucontext/libucontext-1.2.ebuild @@ -0,0 +1,69 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit toolchain-funcs + +DESCRIPTION="ucontext implementation featuring glibc-compatible ABI" +HOMEPAGE="https://github.com/kaniini/libucontext" +SRC_URI="https://github.com/kaniini/libucontext/archive/refs/tags/${P}.tar.gz" +S="${WORKDIR}"/${PN}-${P} + +LICENSE="ISC" +SLOT="0" +KEYWORDS="~amd64" +IUSE="+man" + +BDEPEND="man? ( app-text/scdoc )" + +# segfault needs investigation +# 1.2 eems ok? +#RESTRICT="test" + +src_compile() { + tc-export AR CC + + arch= + + # Override arch detection + # https://github.com/kaniini/libucontext/blob/master/Makefile#L3 + if use x86 ; then + arch="x86" + elif use arm ; then + arch="arm" + elif use arm64 ; then + arch="aarch64" + elif use ppc64 ; then + arch="ppc64" + else + arch="$(uname -m)" + fi + + emake \ + ARCH="${arch}" \ + LDFLAGS="${LDFLAGS}" \ + LIBDIR="/usr/$(get_libdir)" \ + PKGCONFIGDIR="/usr/$(get_libdir)/pkgconfig" \ + all $(usev man 'docs') +} + +src_test() { + emake \ + ARCH="${arch}" \ + LDFLAGS="${LDFLAGS}" \ + LIBDIR="/usr/$(get_libdir)" \ + PKGCONFIGDIR="/usr/$(get_libdir)/pkgconfig" \ + check +} + +src_install() { + emake \ + ARCH="${arch}" \ + DESTDIR="${ED}" \ + LIBDIR="/usr/$(get_libdir)" \ + PKGCONFIGDIR="/usr/$(get_libdir)/pkgconfig" \ + install $(usev man 'install_docs') + + find "${ED}" -name '*.a' -delete || die +} diff --git a/sys-libs/libunwind/Manifest b/sys-libs/libunwind/Manifest index f3ab7cbcb568..d1d9f9f29efd 100644 --- a/sys-libs/libunwind/Manifest +++ b/sys-libs/libunwind/Manifest @@ -1,10 +1,3 @@ -AUX libunwind-1.2-coredump-regs.patch 619 BLAKE2B b901d50cb7fa4ab372da26120e512da0ca506322130583623eebe31548a65f5a53249b632d71409d77a6dc00eb002beddd44f8a5d11dc82bf8450b812770a023 SHA512 48536ef54590221b42a3ca568ec781e526807b3d8aed3e33e19e6efacfa05a428a6101d3a51e79ea5d3e1d783bcba9acb92f7623c121d3e00cd3e1a17d13e282 -AUX libunwind-1.2-ia64-missing.patch 3863 BLAKE2B 384d2afd7d725f0730207b5b32ff4ffcedd852043af83b1884c7dc95116298eff41bd7f997e0ad51c9912b59e36b439eb524d3d4786f2a0a19dff32437e62003 SHA512 e8f65d706839770d993f9801371e1e294a0231c4bfe29b497e4a859567b7f5b6561b0a15d59b1626311e549fe57149046f5a76424a2ad69c521610aaa3019c17 -AUX libunwind-1.2-ia64-ptrace-coredump.patch 1445 BLAKE2B 0b4b6b5d7b3cfc8be58c3973b096ceeb19faa84f175a23f2130588351e40f94abf5c53a4eb5813d8b9da7762f032671031d2d637bd2ec445f7e4f9ea9d276773 SHA512 0bab310ff16294d7617077ffa1261fe9c1a6aaeb4339c96918869c4dd9a2b1b73fbe2ebb5c895f1a420ff7922da85cbb44ccfcd69df6e2518c1f2ff64b7b2d76 -AUX libunwind-1.2.1-only-include-execinfo_h-if-avaliable.patch 1378 BLAKE2B f343464943d1689e379b702baa63f7c0f198421c124354af035b100a25d8bf1a2c493e09517c27a1abbdc6064cbf1d6ecf8cbb88bb377921277e8c9979c40921 SHA512 7de66bc7a107ada353cc50992fc141bc87b927d55d8df113d5ecea90b27f5518cc6f6aafa19ea7f7f85719a6b48610f9029ba88c2a84d4950c05e1fa37f9ef57 -AUX libunwind-1.5.0-x32.patch 596 BLAKE2B dc032ca1b2c3e21595239954252a41676c07451e1b8a4759b64a0341e0392bd7ff0046cfde53bbd9bffc4f044221d6172b127a8cffa50dfd137930ea7b2b0ec5 SHA512 e3ccd5458ec4247d4d162bd730823483711dc958a51eaf4062b2385c67205c7998255eee33fbeb2cdc32bcc34f5ab27bbdcfb9f66b0a2144650e4a84893a652f -DIST libunwind-1.5.0.tar.gz 878355 BLAKE2B ee35441289926ac22a58bedb9f831d8e13bacd663a99b3ce25eed229f25f0423bbbd90e09e3d62b003518d7a620aa6d15b0dd5b93632736a89fa0667b35d5fc2 SHA512 1df20ca7a8cee2f2e61294fa9b677e88fec52e9d5a329f88d05c2671c69fa462f6c18808c97ca9ff664ef57292537a844f00b18d142b1938c9da701ca95a4bab DIST libunwind-1.6.2.tar.gz 901392 BLAKE2B 3d0313f7e92cbc3e1a84ad3831a5170f21cdf772f1697ca0a59dea63cdd47da382e9f1fd77325d9ff8bcd47559a425dc883a820c646c628cd00faed82cb0f83f SHA512 1d17dfb14f99a894a6cda256caf9ec481c14068aaf8f3a85fa3befa7c7cca7fca0f544a91a3a7c2f2fc55bab19b06a67ca79f55ac9081151d94478c7f611f8f7 -EBUILD libunwind-1.5.0-r1.ebuild 3276 BLAKE2B 0a0ab57f71c05521de552b6a9e7530258e6390e64a33bb09f1751ede229abf5ec0d70537321ff77a80946abb1d3d8b6b5517fe17648231e7a5f4b14032870636 SHA512 48aa9c88e5d535bff85cad52fe7ef2b9d854d4adbdb9249430932458cbf5918ce7d4cd29330882577a1acfc85f06efe6adfe669093c8a7cdc3b0ec61f1459a04 -EBUILD libunwind-1.6.2.ebuild 2704 BLAKE2B 9aeabebd03199541b2923c87fa0f5268b5a7e4472f62e59ed3b777d7e29ed6403d533dd76323e27bd291fe75fd07893c32d0fed6ba2a7f27039cd5042428217c SHA512 245400b0698b1675de30bb2ce28f7bb4ca4262aeac303a09878c7a7f41b3fefcb44a72d6cb9a7d7756d655ac2032ea6dbb3a93bb0c39110acc8d49d7941add10 +EBUILD libunwind-1.6.2.ebuild 2680 BLAKE2B 686f5fa9f0362c6669e9195e84f5f35546da5a6d8f66bdf0e9b91a580e1e20b9da4025718ed2f960dff7cbd66d325cb5aec6868b1147bed013486d9ebf4d6b16 SHA512 c44f75111e3a5f97aa85e6124c007c6216445d9ee3cff8418153229a2d97b83b5d97895576993a9c91a457e67f47d74ea50ac755fbbd55f7492a1cbf690ac263 MISC metadata.xml 574 BLAKE2B cf49536a68a838e39d6c67191eff496d8910f1d58cd7830546e519af38972db7cf7add177a6e5902202d2a66bc6b3dadcd261505b3bb61f285f0be10a0db42e7 SHA512 bf5fd787ae0b233c7fe5e8f4b987c472a03b93c07adebf35ce27c7b6759b9ac239296d5ede6725ac11f5030365199533389e51ced10dc6a20bb5aa74baf34ab0 diff --git a/sys-libs/libunwind/files/libunwind-1.2-coredump-regs.patch b/sys-libs/libunwind/files/libunwind-1.2-coredump-regs.patch deleted file mode 100644 index 3ddc610d4afc..000000000000 --- a/sys-libs/libunwind/files/libunwind-1.2-coredump-regs.patch +++ /dev/null @@ -1,16 +0,0 @@ -https://bugs.gentoo.org/586092 - -this might not be correct, but at least it builds, and doesn't crash - ---- a/src/coredump/_UCD_access_reg_linux.c -+++ b/src/coredump/_UCD_access_reg_linux.c -@@ -51,6 +51,9 @@ _UCD_access_reg (unw_addr_space_t as, - #elif defined(UNW_TARGET_TILEGX) - if (regnum < 0 || regnum > UNW_TILEGX_CFA) - goto badreg; -+#elif defined(UNW_TARGET_IA64) || defined(UNW_TARGET_HPPA) || defined(UNW_TARGET_PPC32) || defined(UNW_TARGET_PPC64) -+ if (regnum < 0 || regnum >= ARRAY_SIZE(ui->prstatus->pr_reg)) -+ goto badreg; - #else - #if defined(UNW_TARGET_MIPS) - static const uint8_t remap_regs[] = diff --git a/sys-libs/libunwind/files/libunwind-1.2-ia64-missing.patch b/sys-libs/libunwind/files/libunwind-1.2-ia64-missing.patch deleted file mode 100644 index e15250b4c61f..000000000000 --- a/sys-libs/libunwind/files/libunwind-1.2-ia64-missing.patch +++ /dev/null @@ -1,93 +0,0 @@ -Original libunwind release is missing a few ia64-specific files in tarball. -diff --git a/src/ia64/mk_Gcursor_i.c b/src/ia64/mk_Gcursor_i.c -new file mode 100644 -index 0000000..67b14d5 ---- /dev/null -+++ b/src/ia64/mk_Gcursor_i.c -@@ -0,0 +1,65 @@ -+/* libunwind - a platform-independent unwind library -+ Copyright (C) 2003 Hewlett-Packard Co -+ Contributed by David Mosberger-Tang <davidm@hpl.hp.com> -+ -+This file is part of libunwind. -+ -+Permission is hereby granted, free of charge, to any person obtaining -+a copy of this software and associated documentation files (the -+"Software"), to deal in the Software without restriction, including -+without limitation the rights to use, copy, modify, merge, publish, -+distribute, sublicense, and/or sell copies of the Software, and to -+permit persons to whom the Software is furnished to do so, subject to -+the following conditions: -+ -+The above copyright notice and this permission notice shall be -+included in all copies or substantial portions of the Software. -+ -+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ -+ -+/* Utility to generate cursor_i.h. */ -+ -+#include "libunwind_i.h" -+ -+#ifdef offsetof -+# undef offsetof -+#endif -+ -+#define offsetof(type,field) ((char *) &((type *) 0)->field - (char *) 0) -+ -+#define OFFSET(sym, offset) \ -+ asm volatile("\n->" #sym " %0" : : "i" (offset)) -+ -+int -+main (void) -+{ -+ OFFSET("IP_OFF", offsetof (struct cursor, ip)); -+ OFFSET("PR_OFF", offsetof (struct cursor, pr)); -+ OFFSET("BSP_OFF", offsetof (struct cursor, bsp)); -+ OFFSET("PSP_OFF", offsetof (struct cursor, psp)); -+ OFFSET("PFS_LOC_OFF", offsetof (struct cursor, loc[IA64_REG_PFS])); -+ OFFSET("RNAT_LOC_OFF", offsetof (struct cursor, loc[IA64_REG_RNAT])); -+ OFFSET("UNAT_LOC_OFF", offsetof (struct cursor, loc[IA64_REG_UNAT])); -+ OFFSET("LC_LOC_OFF", offsetof (struct cursor, loc[IA64_REG_LC])); -+ OFFSET("FPSR_LOC_OFF", offsetof (struct cursor, loc[IA64_REG_FPSR])); -+ OFFSET("B1_LOC_OFF", offsetof (struct cursor, loc[IA64_REG_B1])); -+ OFFSET("B2_LOC_OFF", offsetof (struct cursor, loc[IA64_REG_B2])); -+ OFFSET("B3_LOC_OFF", offsetof (struct cursor, loc[IA64_REG_B3])); -+ OFFSET("B4_LOC_OFF", offsetof (struct cursor, loc[IA64_REG_B4])); -+ OFFSET("B5_LOC_OFF", offsetof (struct cursor, loc[IA64_REG_B5])); -+ OFFSET("F2_LOC_OFF", offsetof (struct cursor, loc[IA64_REG_F2])); -+ OFFSET("F3_LOC_OFF", offsetof (struct cursor, loc[IA64_REG_F3])); -+ OFFSET("F4_LOC_OFF", offsetof (struct cursor, loc[IA64_REG_F4])); -+ OFFSET("F5_LOC_OFF", offsetof (struct cursor, loc[IA64_REG_F5])); -+ OFFSET("FR_LOC_OFF", offsetof (struct cursor, loc[IA64_REG_F16])); -+ OFFSET("LOC_SIZE", -+ (offsetof (struct cursor, loc[1]) - offsetof (struct cursor, loc[0]))); -+ OFFSET("SIGCONTEXT_ADDR_OFF", offsetof (struct cursor, sigcontext_addr)); -+ return 0; -+} -diff --git a/src/ia64/mk_Lcursor_i.c b/src/ia64/mk_Lcursor_i.c -new file mode 100644 -index 0000000..aee2e7e ---- /dev/null -+++ b/src/ia64/mk_Lcursor_i.c -@@ -0,0 +1,2 @@ -+#define UNW_LOCAL_ONLY -+#include "mk_Gcursor_i.c" -diff --git a/src/ia64/mk_cursor_i b/src/ia64/mk_cursor_i -new file mode 100755 -index 0000000..9211f91 ---- /dev/null -+++ b/src/ia64/mk_cursor_i -@@ -0,0 +1,7 @@ -+#!/bin/sh -+test -z "$1" && exit 1 -+echo "/* GENERATED */" -+echo "#ifndef cursor_i_h" -+echo "#define cursor_i_h" -+sed -ne 's/^->"\(\S*\)" \(\d*\)/#define \1 \2/p' < $1 || exit $? -+echo "#endif" diff --git a/sys-libs/libunwind/files/libunwind-1.2-ia64-ptrace-coredump.patch b/sys-libs/libunwind/files/libunwind-1.2-ia64-ptrace-coredump.patch deleted file mode 100644 index 3785d8820cd9..000000000000 --- a/sys-libs/libunwind/files/libunwind-1.2-ia64-ptrace-coredump.patch +++ /dev/null @@ -1,34 +0,0 @@ -Fix build failure on ia64. - coredump/_UPT_get_dyn_info_list_addr.c -is almost identical to - ptrace/_UPT_get_dyn_info_list_addr.c -It's clearly an __ia64 implementation copy. -diff --git a/src/coredump/_UPT_get_dyn_info_list_addr.c b/src/coredump/_UPT_get_dyn_info_list_addr.c -index 0d11905..176b146 100644 ---- a/src/coredump/_UPT_get_dyn_info_list_addr.c -+++ b/src/coredump/_UPT_get_dyn_info_list_addr.c -@@ -31,2 +31,3 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ - # include "os-linux.h" -+# include "../ptrace/_UPT_internal.h" - -@@ -40,3 +41,2 @@ get_list_addr (unw_addr_space_t as, unw_word_t *dil_addr, void *arg, - char path[PATH_MAX]; -- unw_dyn_info_t *di; - unw_word_t res; -@@ -50,5 +50,5 @@ get_list_addr (unw_addr_space_t as, unw_word_t *dil_addr, void *arg, - -- invalidate_edi (&ui->edi); -+ invalidate_edi(&ui->edi); - -- if (elf_map_image (&ui->ei, path) < 0) -+ if (elf_map_image (&ui->edi.ei, path) < 0) - /* ignore unmappable stuff like "/SYSV00001b58 (deleted)" */ -@@ -58,6 +58,5 @@ get_list_addr (unw_addr_space_t as, unw_word_t *dil_addr, void *arg, - -- di = tdep_find_unwind_table (&ui->edi, as, path, lo, off); -- if (di) -+ if (tdep_find_unwind_table (&ui->edi, as, path, lo, off, 0) > 0) - { -- res = _Uia64_find_dyn_list (as, di, arg); -+ res = _Uia64_find_dyn_list (as, &ui->edi.di_cache, arg); - if (res && count++ == 0) diff --git a/sys-libs/libunwind/files/libunwind-1.2.1-only-include-execinfo_h-if-avaliable.patch b/sys-libs/libunwind/files/libunwind-1.2.1-only-include-execinfo_h-if-avaliable.patch deleted file mode 100644 index b6ba0028c80f..000000000000 --- a/sys-libs/libunwind/files/libunwind-1.2.1-only-include-execinfo_h-if-avaliable.patch +++ /dev/null @@ -1,53 +0,0 @@ -https://github.com/libunwind/libunwind/commit/6382d6f5c9d4d149989e47b20446f794365137c1 - -From 0f3f41a86842f2b19aa07af5242cb775ef9b20d3 Mon Sep 17 00:00:00 2001 -From: "Jory A. Pratt" <anarchy@gentoo.org> -Date: Sat, 30 Jun 2018 22:44:22 -0500 -Subject: [PATCH] Only include execinfo.h where avaliable - -Signed-off-by: Jory A. Pratt <anarchy@gentoo.org> ---- - tests/test-coredump-unwind.c | 8 ++++++-- - 1 file changed, 6 insertions(+), 2 deletions(-) - -diff --git a/tests/test-coredump-unwind.c b/tests/test-coredump-unwind.c -index 5254708..33f92b0 100644 ---- a/tests/test-coredump-unwind.c -+++ b/tests/test-coredump-unwind.c -@@ -57,7 +57,9 @@ - #include <grp.h> - - /* For SIGSEGV handler code */ -+#if HAVE_EXECINFO_H - #include <execinfo.h> -+#endif - #include <sys/ucontext.h> - - #include <libunwind-coredump.h> -@@ -202,7 +204,7 @@ void die_out_of_memory(void) - /* End of utility logging functions */ - - -- -+#if HAVE_EXECINFO_H - static - void handle_sigsegv(int sig, siginfo_t *info, void *ucontext) - { -@@ -249,12 +251,14 @@ void handle_sigsegv(int sig, siginfo_t *info, void *ucontext) - - _exit(1); - } -- -+#endif - static void install_sigsegv_handler(void) - { - struct sigaction sa; - memset(&sa, 0, sizeof(sa)); -+#if HAVE_EXECINFO_H - sa.sa_sigaction = handle_sigsegv; -+#endif - sa.sa_flags = SA_SIGINFO; - sigaction(SIGSEGV, &sa, NULL); - sigaction(SIGILL, &sa, NULL); --- -2.18.0 diff --git a/sys-libs/libunwind/files/libunwind-1.5.0-x32.patch b/sys-libs/libunwind/files/libunwind-1.5.0-x32.patch deleted file mode 100644 index a3bbc81f45b5..000000000000 --- a/sys-libs/libunwind/files/libunwind-1.5.0-x32.patch +++ /dev/null @@ -1,17 +0,0 @@ -https://bugs.gentoo.org/614374 - -From: kasperk81 <83082615+kasperk81@users.noreply.github.com> -Date: Wed, 30 Jun 2021 23:23:22 +0000 -Subject: [PATCH] Fix -mx32 compilation error - ---- a/src/x86_64/Gos-linux.c -+++ b/src/x86_64/Gos-linux.c -@@ -149,7 +149,7 @@ x86_64_sigreturn (unw_cursor_t *cursor) - __asm__ __volatile__ ("mov %0, %%rsp;" - "mov %1, %%rax;" - "syscall" -- :: "r"(sc), "i"(SYS_rt_sigreturn) -+ :: "r"((uint64_t)sc), "i"(SYS_rt_sigreturn) - : "memory"); - abort(); - } diff --git a/sys-libs/libunwind/libunwind-1.5.0-r1.ebuild b/sys-libs/libunwind/libunwind-1.5.0-r1.ebuild deleted file mode 100644 index 082fdab6ed88..000000000000 --- a/sys-libs/libunwind/libunwind-1.5.0-r1.ebuild +++ /dev/null @@ -1,108 +0,0 @@ -# Copyright 2005-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -MY_PV=${PV/_/-} -MY_P=${PN}-${MY_PV} -inherit autotools flag-o-matic libtool multilib-minimal - -DESCRIPTION="Portable and efficient API to determine the call-chain of a program" -HOMEPAGE="https://savannah.nongnu.org/projects/libunwind" -SRC_URI="mirror://nongnu/libunwind/${MY_P}.tar.gz" - -LICENSE="MIT" -SLOT="0/8" # libunwind.so.8 -KEYWORDS="amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 -riscv -sparc x86 ~amd64-linux ~x86-linux" -IUSE="debug debug-frame doc libatomic lzma static-libs zlib" - -RESTRICT="test" # some tests are broken (toolchain version dependent, rely on external binaries) - -# We just use the header from libatomic. -RDEPEND=" - lzma? ( app-arch/xz-utils[static-libs?,${MULTILIB_USEDEP}] ) - zlib? ( sys-libs/zlib[static-libs?,${MULTILIB_USEDEP}] ) -" -DEPEND="${RDEPEND} - libatomic? ( dev-libs/libatomic_ops[${MULTILIB_USEDEP}] )" - -S="${WORKDIR}/${MY_P}" - -MULTILIB_WRAPPED_HEADERS=( - /usr/include/libunwind.h - - # see libunwind.h for the full list of arch-specific headers - /usr/include/libunwind-aarch64.h - /usr/include/libunwind-arm.h - /usr/include/libunwind-hppa.h - /usr/include/libunwind-ia64.h - /usr/include/libunwind-mips.h - /usr/include/libunwind-ppc32.h - /usr/include/libunwind-ppc64.h - /usr/include/libunwind-sh.h - /usr/include/libunwind-tilegx.h - /usr/include/libunwind-x86.h - /usr/include/libunwind-x86_64.h -) - -PATCHES=( - "${FILESDIR}"/${PN}-1.2-coredump-regs.patch #586092 - "${FILESDIR}"/${PN}-1.2-ia64-ptrace-coredump.patch - "${FILESDIR}"/${PN}-1.2-ia64-missing.patch - "${FILESDIR}"/${PN}-1.5.0-x32.patch - # needs refresh: - #"${FILESDIR}"/${PN}-1.2.1-only-include-execinfo_h-if-avaliable.patch -) - -src_prepare() { - default - chmod +x src/ia64/mk_cursor_i || die - # Since we have tests disabled via RESTRICT, disable building in the subdir - # entirely. This works around some build errors too. #484846 - sed -i -e '/^SUBDIRS/s:tests::' Makefile.in || die - - elibtoolize - eautoreconf - - # Let's wait for proper fix upstream in https://github.com/libunwind/libunwind/issues/154 - # Meanwhile workaround for gcc-10 with -fcommon, bug #706560 - append-cflags -fcommon -} - -multilib_src_configure() { - # --enable-cxx-exceptions: always enable it, headers provide the interface - # and on some archs it is disabled by default causing a mismatch between the - # API and the ABI, bug #418253 - # conservative-checks: validate memory addresses before use; as of 1.0.1, - # only x86_64 supports this, yet may be useful for debugging, couple it with - # debug useflag. - ECONF_SOURCE="${S}" \ - ac_cv_header_atomic_ops_h=$(usex libatomic) \ - econf \ - --enable-cxx-exceptions \ - --enable-coredump \ - --enable-ptrace \ - --enable-setjmp \ - $(use_enable debug-frame) \ - $(use_enable doc documentation) \ - $(use_enable lzma minidebuginfo) \ - $(use_enable static-libs static) \ - $(use_enable zlib zlibdebuginfo) \ - $(use_enable debug conservative_checks) \ - $(use_enable debug) -} - -multilib_src_compile() { - # Bug 586208 - CCACHE_NODIRECT=1 default -} - -multilib_src_test() { - # Explicitly allow parallel build of tests. - # Sandbox causes some tests to freak out. - SANDBOX_ON=0 emake check -} - -multilib_src_install_all() { - find "${D}" -name "*.la" -type f -delete || die -} diff --git a/sys-libs/libunwind/libunwind-1.6.2.ebuild b/sys-libs/libunwind/libunwind-1.6.2.ebuild index f67ca2db225d..3c8d7610772f 100644 --- a/sys-libs/libunwind/libunwind-1.6.2.ebuild +++ b/sys-libs/libunwind/libunwind-1.6.2.ebuild @@ -5,7 +5,7 @@ EAPI=7 MY_PV=${PV/_/-} MY_P=${PN}-${MY_PV} -inherit autotools multilib-minimal +inherit multilib-minimal DESCRIPTION="Portable and efficient API to determine the call-chain of a program" HOMEPAGE="https://savannah.nongnu.org/projects/libunwind" @@ -49,8 +49,6 @@ src_prepare() { default chmod +x src/ia64/mk_cursor_i || die - - eautoreconf } multilib_src_configure() { diff --git a/sys-libs/libutempter/Manifest b/sys-libs/libutempter/Manifest index 1ddd948d4d3f..0ea557d3a39b 100644 --- a/sys-libs/libutempter/Manifest +++ b/sys-libs/libutempter/Manifest @@ -1,3 +1,3 @@ DIST libutempter-1.2.1.tar.gz 17429 BLAKE2B 88ae0a03a8a614b960082ce4d4006ec4e3eb8148b319ae964ac3ba3f684f08f5dd670e693f25d52d04a280f7b2aed6d2894cbbc0e2db3f71ab68e6910ffb58d1 SHA512 d3a3bab7d2c2a68534c5ad41dd02bde849eb08df5dbb895a79b50b74d269c48c4cfcd12c4654941ccb7cdd43f486cfdc19148fa470870562f5cd324ce9782429 -EBUILD libutempter-1.2.1.ebuild 1506 BLAKE2B 385cc330aafa7e66addd3310d515e212e3a1a3bc6d9c8ec9c174eace2dc1248b2b90a1009544357d8fa2026f229ed69605d0aa527976721dce9d34f1e2fa1db2 SHA512 8df583c0ca496cbfdb8cf53524e81330d873473dc2aed0d6a52f1c55ddc1acd8fd0159033f2a6e7481e3fd4ae51c3f8af7e8034b4c7fe923b004e3fa999e85cc +EBUILD libutempter-1.2.1.ebuild 1513 BLAKE2B ff05b6ac70a441e46d0e0824b62fcd576e6762c22cfcc000f6339e6b6d93de338335d1aee5bec1ceb2e520fc514d4af2ff954c1baefca7162120882e945c7a8b SHA512 fe198624e34027f92c0b7c9ee0ac131ec6015f6195efbc74f0c1bd73810d9e5b53b4302fb583305b887501fdc8c46774f50e97019a990c6c048ceddee1e4ea4f MISC metadata.xml 254 BLAKE2B f3a9f843cf94243d1129711770df727fcdc8808bca829ef784819cab6f5410dfa463cfed85182f8228c7de796a674dd602653ad3ef817a62c0c3e7198b23befe SHA512 b9fcd3084a7e197f6138e1ce8b0eff99c4c203c37a7d5c40de207040ba1501ef0e5b2f4e00216a567037bcd6d3394fdec6ff587484c9ba2fca9d04f431733b7c diff --git a/sys-libs/libutempter/libutempter-1.2.1.ebuild b/sys-libs/libutempter/libutempter-1.2.1.ebuild index 1fcbf2b7f88b..953cc42fcc2d 100644 --- a/sys-libs/libutempter/libutempter-1.2.1.ebuild +++ b/sys-libs/libutempter/libutempter-1.2.1.ebuild @@ -11,7 +11,7 @@ SRC_URI="ftp://ftp.altlinux.org/pub/people/ldv/${PN}/${P}.tar.gz" LICENSE="LGPL-2.1" SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux" IUSE="static-libs" RDEPEND=" diff --git a/sys-libs/libxcrypt/Manifest b/sys-libs/libxcrypt/Manifest index 7004e3b6c94c..726c91142a7f 100644 --- a/sys-libs/libxcrypt/Manifest +++ b/sys-libs/libxcrypt/Manifest @@ -1,12 +1,8 @@ AUX libxcrypt-4.4.19-multibuild.patch 303 BLAKE2B cd342eef2a8ce3e305e544d37373370748690878b4171709028b7b894ad2c76c9188496ab089a46645ad6f9fca09fa4f89cdcb444e1400747ee358c079441661 SHA512 3cbd4bbd0827801faaaa2198eccccb285100cdfc43525b70816121aa70b32dc2c8479c53e16b9e99920926b1b11014dcc19909c4f72a09d9d19fcdb0fa6350cd DIST libxcrypt-4.4.20-autotools.tar.xz 628688 BLAKE2B 4c23af2a765495758e52c8e95d53d1c1d911fea011375160c4f10e468939734fcc7198cc327fafa4d5c90afa6d4c56dfe6d1b56c2c17bbc015b44cffcd7bcc8b SHA512 5b7504e9d83df12af7d11864e88d1034ed9ce0a837ef061044c5c7fe603d7f3e5613ddf20b30613a7943735120cd058f2117401d59879afcba34ce0e48ae62ee -DIST libxcrypt-4.4.25-autotools.tar.xz 614652 BLAKE2B f0f4fbf92585fdd8d328aaa68811ea15bdf75778363ea4bc46a75fb76bb065f044708446d655356ebbf2834f8b14bac40fbe700b510b09ce101f750667a04298 SHA512 30f38a54c8e5cbd31c463223913079f9869d38ed38a2f64c57778ac4cf1b6f557caa527073df54ca8396bb7220807b84afcae2f9790f6604af1561a4b277874e -DIST libxcrypt-4.4.26-autotools.tar.xz 617808 BLAKE2B 9fb8e31b22a085c0d0d5ab2ee3fb69fbebaccee2281e9be7d745218b5b92d949ffd3aa9c385671d58c93a654e16b943a33284b0b4737d52d26e43e2f7840fe74 SHA512 22c72cacd87c5751c4160413738fdf52c8fee300dcad01b289a6eaf892439883b9478103f791f5f53c8e5e2f2dd81057e5fda45e7cf7fdfd3ba93dd811bc01e3 DIST libxcrypt-4.4.27-autotools.tar.xz 619240 BLAKE2B 13dd5730fded0684c8e7321fee8a786663ff1080a6ca248bd718c4f6c9f6bd2853689c347be9f9ae51ebc1281aaa2143dfc020149382d259e7eefe66ac8b675e SHA512 f13ae1e69bf5850abb47a28f9ac3e3b0a8b3123adc53d39fd39a26d53847bf6e3fdca751e086cd80ce4e5d9ee419b09148c247cbe5f663b3019b66f82cdc5f5c DIST libxcrypt-4.4.28-autotools.tar.xz 618560 BLAKE2B c56d510201651e36cbd950b5a0a32273fdbce1f053109aa5867b2c6a57e2a896c34c981c1a2e732a8f34539b754ebe7f50d1b5bf59f9549a75ad6420921f3e1d SHA512 3c60fd32dea308152c4272522c29668c83e88bea47c98b9fe796ed70f5460ad2a9616ffbe789c03e417b28d3c792361b16031bda3d8bc5b6c06f0ebdc66c8217 EBUILD libxcrypt-4.4.20.ebuild 5797 BLAKE2B 888564715e7df7e8d19461ec5e9654ec6b0423148bfd6c9169d61cd12ebe30a6c8384092748bc5459be370b7bad0d615883dbfc51a5dff28abbd43ad57e79199 SHA512 dde0ff01e886294442779aea22148a8ccf17c47357b379f7d3c93ea49412233536a61972197909759b4957deac66afd703056a8c658f6b40fe78b85b85d0c930 -EBUILD libxcrypt-4.4.25-r1.ebuild 6394 BLAKE2B eb7f84bae0267f33a4f3ea17af79891802395eb361cf04565de6d9fafd31f8ca58bada24cb9c54bbae5ef171b822f4a63c94d777a8f81b69369faf40cc1ae2d0 SHA512 415b9151344e36ea65262fcdf51e3dd37c6e3ab11a2ecf15a575b2cf18740aee168c61f4502409d5d7617b8bc17f38c5decacc013125018ec72841f094b63fc6 -EBUILD libxcrypt-4.4.26-r1.ebuild 6402 BLAKE2B 72b434330bc6e591fb053fa472a64e40c45fa34a5c8c355fd3236f62a024c36bd49bb7420239f559cd3fce87931551d2c5340c705e91a6219d0e0c9f3e976041 SHA512 01fced1a1a1cf6838cd8b57ed141a1df3c30843e29b6b4b93bc1656cb729d79882a2d28916e917aa8c0b687bd6c8d6aab51cfc5e3d0b744a74ba59430049fba3 EBUILD libxcrypt-4.4.27.ebuild 6394 BLAKE2B eb7f84bae0267f33a4f3ea17af79891802395eb361cf04565de6d9fafd31f8ca58bada24cb9c54bbae5ef171b822f4a63c94d777a8f81b69369faf40cc1ae2d0 SHA512 415b9151344e36ea65262fcdf51e3dd37c6e3ab11a2ecf15a575b2cf18740aee168c61f4502409d5d7617b8bc17f38c5decacc013125018ec72841f094b63fc6 -EBUILD libxcrypt-4.4.28.ebuild 6402 BLAKE2B 72b434330bc6e591fb053fa472a64e40c45fa34a5c8c355fd3236f62a024c36bd49bb7420239f559cd3fce87931551d2c5340c705e91a6219d0e0c9f3e976041 SHA512 01fced1a1a1cf6838cd8b57ed141a1df3c30843e29b6b4b93bc1656cb729d79882a2d28916e917aa8c0b687bd6c8d6aab51cfc5e3d0b744a74ba59430049fba3 +EBUILD libxcrypt-4.4.28.ebuild 7323 BLAKE2B f8732eb91bbc1dad9592e7440acac3e47ac18521fd39bfe47a6addde931fda3062cacb78a0993e7c1048b811b59f2f65055dbff9840b29e20ac40a6934fc1658 SHA512 4d68220f64b061a51644f7f35f2be09857d5ece5e2a0a4e18d2a35a270feb59b7794b7d161d7241d826ad7abeff1ca12ad03d73b827fc5c9fcfd2ec9cc70cbb1 MISC metadata.xml 831 BLAKE2B f8761f3758acf79afea36926a6488afb73c433a8faa599aa09a3bbc01b6c733d7264d7b584606158312825f099a1176623c70625a317a837de5bb20501f5ed22 SHA512 826ea578d9d3e651767e8f670d2bbb918c11e26ca5dc1c52ff7fbd513c39bee2d9423ecf16e47e2603f5a8c7b6979fd27eacde84182deb5a67004c9a3be281cb diff --git a/sys-libs/libxcrypt/libxcrypt-4.4.25-r1.ebuild b/sys-libs/libxcrypt/libxcrypt-4.4.25-r1.ebuild deleted file mode 100644 index c9559428437e..000000000000 --- a/sys-libs/libxcrypt/libxcrypt-4.4.25-r1.ebuild +++ /dev/null @@ -1,225 +0,0 @@ -# Copyright 2004-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python3_{8..10} ) -# NEED_BOOTSTRAP is for developers to quickly generate a tarball -# for publishing to the tree. -NEED_BOOTSTRAP="no" -inherit multibuild multilib python-any-r1 toolchain-funcs multilib-minimal - -DESCRIPTION="Extended crypt library for descrypt, md5crypt, bcrypt, and others" -HOMEPAGE="https://github.com/besser82/libxcrypt" -if [[ ${NEED_BOOTSTRAP} == "yes" ]] ; then - inherit autotools - SRC_URI="https://github.com/besser82/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" -else - SRC_URI="https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}-autotools.tar.xz" -fi - -LICENSE="LGPL-2.1+ public-domain BSD BSD-2" -SLOT="0/1" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86" -IUSE="+compat split-usr static-libs system test" -REQUIRED_USE="split-usr? ( system )" -RESTRICT="!test? ( test )" - -DEPEND="system? ( - elibc_glibc? ( - sys-libs/glibc[-crypt(+)] - !sys-libs/glibc[crypt(+)] - ) - !sys-libs/musl - ) -" -RDEPEND="${DEPEND}" -BDEPEND="dev-lang/perl - test? ( $(python_gen_any_dep 'dev-python/passlib[${PYTHON_USEDEP}]') )" - -python_check_deps() { - has_version -b "dev-python/passlib[${PYTHON_USEDEP}]" -} - -pkg_pretend() { - if has "distcc" ${FEATURES} ; then - ewarn "Please verify all distcc nodes are using the same versions of GCC (>= 10) and Binutils!" - ewarn "Older/mismatched versions of GCC may lead to a misbehaving library: bug #823179." - - if [[ ${BUILD_TYPE} != "binary" ]] && tc-is-gcc && [[ $(gcc-major-version) -lt 10 ]] ; then - die "libxcrypt is known to fail to build or be broken at runtime with < GCC 10 (bug #823179)!" - fi - fi -} - -pkg_setup() { - MULTIBUILD_VARIANTS=( - $(usex compat 'xcrypt_compat' '') - xcrypt_nocompat - ) - - use test && python-any-r1_pkg_setup -} - -src_prepare() { - default - - # WARNING: Please read on bumping or applying patches! - # - # There are two circular dependencies to be aware of: - # 1) - # if we're bootstrapping configure and makefiles: - # libxcrypt -> automake -> perl -> libxcrypt - # - # mitigation: - # toolchain@ manually runs `make dist` after running autoconf + `./configure` - # and the ebuild uses that. - # (Don't include the pre-generated Perl artefacts.) - # - # solution for future: - # Upstream are working on producing `make dist` tarballs. - # https://github.com/besser82/libxcrypt/issues/134#issuecomment-871833573 - # - # 2) - # configure *unconditionally* needs Perl at build time to generate - # a list of enabled algorithms based on the set passed to `configure`: - # libxcrypt -> perl -> libxcrypt - # - # mitigation: - # None at the moment. - # - # solution for future: - # Not possible right now. Upstream intend on depending on Perl for further - # configuration options. - # https://github.com/besser82/libxcrypt/issues/134#issuecomment-871833573 - # - # Therefore, on changes (inc. bumps): - # * You must check whether upstream have started providing tarballs with bootstrapped - # auto{conf,make}; - # - # * diff the build system changes! - # - if [[ ${NEED_BOOTSTRAP} == "yes" ]] ; then - # Facilitate our split variant build for compat + non-compat - eapply "${FILESDIR}"/${PN}-4.4.19-multibuild.patch - eautoreconf - fi -} - -src_configure() { - # Avoid possible "illegal instruction" errors with gold - # bug #821496 - tc-ld-disable-gold - - multibuild_foreach_variant multilib-minimal_src_configure -} - -get_xclibdir() { - printf -- "%s/%s/%s\n" \ - "$(usex split-usr '' '/usr')" \ - "$(get_libdir)" \ - "$(usex system '' 'xcrypt')" -} - -multilib_src_configure() { - local -a myconf=( - --disable-werror - --libdir="${EPREFIX}"$(get_xclibdir) - --with-pkgconfigdir="${EPREFIX}/usr/$(get_libdir)/pkgconfig" - --includedir="${EPREFIX}/usr/include/$(usex system '' 'xcrypt')" - ) - - case "${MULTIBUILD_ID}" in - xcrypt_compat-*) - myconf+=( - --disable-static - --disable-xcrypt-compat-files - --enable-obsolete-api=yes - ) - ;; - xcrypt_nocompat-*) - myconf+=( - --enable-obsolete-api=no - $(use_enable static-libs static) - ) - ;; - *) die "Unexpected MULTIBUILD_ID: ${MULTIBUILD_ID}";; - esac - - ECONF_SOURCE="${S}" econf "${myconf[@]}" -} - -src_compile() { - multibuild_foreach_variant multilib-minimal_src_compile -} - -multilib_src_test() { - emake check -} - -src_test() { - multibuild_foreach_variant multilib-minimal_src_test -} - -src_install() { - multibuild_foreach_variant multilib-minimal_src_install - - ( - shopt -s failglob || die "failglob failed" - - # Make sure our man pages do not collide with glibc or man-pages. - for manpage in "${ED}"/usr/share/man/man3/crypt{,_r}.?*; do - mv -n "${manpage}" "$(dirname "${manpage}")/xcrypt_$(basename "${manpage}")" \ - || die "mv failed" - done - ) || die "failglob error" - - # Remove useless stuff from installation - find "${ED}"/usr/share/doc/${PF} -type l -delete || die - find "${ED}" -name '*.la' -delete || die -} - -multilib_src_install() { - emake DESTDIR="${D}" install - - # Don't install the libcrypt.so symlink for the "compat" version - case "${MULTIBUILD_ID}" in - xcrypt_compat-*) - rm "${ED}"$(get_xclibdir)/libcrypt$(get_libname) \ - || die "failed to remove extra compat libraries" - ;; - xcrypt_nocompat-*) - if use split-usr; then - ( - if use static-libs; then - # .a files are installed to /$(get_libdir) by default - # Move static libraries to /usr prefix or portage will abort - shopt -s nullglob || die "failglob failed" - static_libs=( "${ED}"/$(get_xclibdir)/*.a ) - - if [[ -n ${static_libs[*]} ]]; then - dodir "/usr/$(get_xclibdir)" - mv "${static_libs[@]}" "${ED}/usr/$(get_xclibdir)" \ - || die "Moving static libs failed" - fi - fi - - if use system; then - # Move versionless .so symlinks from /$(get_libdir) to /usr/$(get_libdir) - # to allow linker to correctly find shared libraries. - shopt -s failglob || die "failglob failed" - - for lib_file in "${ED}"$(get_xclibdir)/*$(get_libname); do - lib_file_basename="$(basename "${lib_file}")" - lib_file_target="$(basename "$(readlink -f "${lib_file}")")" - dosym "../../$(get_libdir)/${lib_file_target}" "/usr/$(get_xclibdir)/${lib_file_basename}" - done - - rm "${ED}"$(get_xclibdir)/*$(get_libname) || die "Removing symlinks in incorrect location failed" - fi - ) - fi - ;; - *) die "Unexpected MULTIBUILD_ID: ${MULTIBUILD_ID}";; - esac -} diff --git a/sys-libs/libxcrypt/libxcrypt-4.4.26-r1.ebuild b/sys-libs/libxcrypt/libxcrypt-4.4.26-r1.ebuild deleted file mode 100644 index 9bebb1243fee..000000000000 --- a/sys-libs/libxcrypt/libxcrypt-4.4.26-r1.ebuild +++ /dev/null @@ -1,225 +0,0 @@ -# Copyright 2004-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python3_{8..10} ) -# NEED_BOOTSTRAP is for developers to quickly generate a tarball -# for publishing to the tree. -NEED_BOOTSTRAP="no" -inherit multibuild multilib python-any-r1 toolchain-funcs multilib-minimal - -DESCRIPTION="Extended crypt library for descrypt, md5crypt, bcrypt, and others" -HOMEPAGE="https://github.com/besser82/libxcrypt" -if [[ ${NEED_BOOTSTRAP} == "yes" ]] ; then - inherit autotools - SRC_URI="https://github.com/besser82/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" -else - SRC_URI="https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}-autotools.tar.xz" -fi - -LICENSE="LGPL-2.1+ public-domain BSD BSD-2" -SLOT="0/1" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" -IUSE="+compat split-usr static-libs system test" -REQUIRED_USE="split-usr? ( system )" -RESTRICT="!test? ( test )" - -DEPEND="system? ( - elibc_glibc? ( - sys-libs/glibc[-crypt(+)] - !sys-libs/glibc[crypt(+)] - ) - !sys-libs/musl - ) -" -RDEPEND="${DEPEND}" -BDEPEND="dev-lang/perl - test? ( $(python_gen_any_dep 'dev-python/passlib[${PYTHON_USEDEP}]') )" - -python_check_deps() { - has_version -b "dev-python/passlib[${PYTHON_USEDEP}]" -} - -pkg_pretend() { - if has "distcc" ${FEATURES} ; then - ewarn "Please verify all distcc nodes are using the same versions of GCC (>= 10) and Binutils!" - ewarn "Older/mismatched versions of GCC may lead to a misbehaving library: bug #823179." - - if [[ ${BUILD_TYPE} != "binary" ]] && tc-is-gcc && [[ $(gcc-major-version) -lt 10 ]] ; then - die "libxcrypt is known to fail to build or be broken at runtime with < GCC 10 (bug #823179)!" - fi - fi -} - -pkg_setup() { - MULTIBUILD_VARIANTS=( - $(usex compat 'xcrypt_compat' '') - xcrypt_nocompat - ) - - use test && python-any-r1_pkg_setup -} - -src_prepare() { - default - - # WARNING: Please read on bumping or applying patches! - # - # There are two circular dependencies to be aware of: - # 1) - # if we're bootstrapping configure and makefiles: - # libxcrypt -> automake -> perl -> libxcrypt - # - # mitigation: - # toolchain@ manually runs `make dist` after running autoconf + `./configure` - # and the ebuild uses that. - # (Don't include the pre-generated Perl artefacts.) - # - # solution for future: - # Upstream are working on producing `make dist` tarballs. - # https://github.com/besser82/libxcrypt/issues/134#issuecomment-871833573 - # - # 2) - # configure *unconditionally* needs Perl at build time to generate - # a list of enabled algorithms based on the set passed to `configure`: - # libxcrypt -> perl -> libxcrypt - # - # mitigation: - # None at the moment. - # - # solution for future: - # Not possible right now. Upstream intend on depending on Perl for further - # configuration options. - # https://github.com/besser82/libxcrypt/issues/134#issuecomment-871833573 - # - # Therefore, on changes (inc. bumps): - # * You must check whether upstream have started providing tarballs with bootstrapped - # auto{conf,make}; - # - # * diff the build system changes! - # - if [[ ${NEED_BOOTSTRAP} == "yes" ]] ; then - # Facilitate our split variant build for compat + non-compat - eapply "${FILESDIR}"/${PN}-4.4.19-multibuild.patch - eautoreconf - fi -} - -src_configure() { - # Avoid possible "illegal instruction" errors with gold - # bug #821496 - tc-ld-disable-gold - - multibuild_foreach_variant multilib-minimal_src_configure -} - -get_xclibdir() { - printf -- "%s/%s/%s\n" \ - "$(usex split-usr '' '/usr')" \ - "$(get_libdir)" \ - "$(usex system '' 'xcrypt')" -} - -multilib_src_configure() { - local -a myconf=( - --disable-werror - --libdir="${EPREFIX}"$(get_xclibdir) - --with-pkgconfigdir="${EPREFIX}/usr/$(get_libdir)/pkgconfig" - --includedir="${EPREFIX}/usr/include/$(usex system '' 'xcrypt')" - ) - - case "${MULTIBUILD_ID}" in - xcrypt_compat-*) - myconf+=( - --disable-static - --disable-xcrypt-compat-files - --enable-obsolete-api=yes - ) - ;; - xcrypt_nocompat-*) - myconf+=( - --enable-obsolete-api=no - $(use_enable static-libs static) - ) - ;; - *) die "Unexpected MULTIBUILD_ID: ${MULTIBUILD_ID}";; - esac - - ECONF_SOURCE="${S}" econf "${myconf[@]}" -} - -src_compile() { - multibuild_foreach_variant multilib-minimal_src_compile -} - -multilib_src_test() { - emake check -} - -src_test() { - multibuild_foreach_variant multilib-minimal_src_test -} - -src_install() { - multibuild_foreach_variant multilib-minimal_src_install - - ( - shopt -s failglob || die "failglob failed" - - # Make sure our man pages do not collide with glibc or man-pages. - for manpage in "${ED}"/usr/share/man/man3/crypt{,_r}.?*; do - mv -n "${manpage}" "$(dirname "${manpage}")/xcrypt_$(basename "${manpage}")" \ - || die "mv failed" - done - ) || die "failglob error" - - # Remove useless stuff from installation - find "${ED}"/usr/share/doc/${PF} -type l -delete || die - find "${ED}" -name '*.la' -delete || die -} - -multilib_src_install() { - emake DESTDIR="${D}" install - - # Don't install the libcrypt.so symlink for the "compat" version - case "${MULTIBUILD_ID}" in - xcrypt_compat-*) - rm "${ED}"$(get_xclibdir)/libcrypt$(get_libname) \ - || die "failed to remove extra compat libraries" - ;; - xcrypt_nocompat-*) - if use split-usr; then - ( - if use static-libs; then - # .a files are installed to /$(get_libdir) by default - # Move static libraries to /usr prefix or portage will abort - shopt -s nullglob || die "failglob failed" - static_libs=( "${ED}"/$(get_xclibdir)/*.a ) - - if [[ -n ${static_libs[*]} ]]; then - dodir "/usr/$(get_xclibdir)" - mv "${static_libs[@]}" "${ED}/usr/$(get_xclibdir)" \ - || die "Moving static libs failed" - fi - fi - - if use system; then - # Move versionless .so symlinks from /$(get_libdir) to /usr/$(get_libdir) - # to allow linker to correctly find shared libraries. - shopt -s failglob || die "failglob failed" - - for lib_file in "${ED}"$(get_xclibdir)/*$(get_libname); do - lib_file_basename="$(basename "${lib_file}")" - lib_file_target="$(basename "$(readlink -f "${lib_file}")")" - dosym "../../$(get_libdir)/${lib_file_target}" "/usr/$(get_xclibdir)/${lib_file_basename}" - done - - rm "${ED}"$(get_xclibdir)/*$(get_libname) || die "Removing symlinks in incorrect location failed" - fi - ) - fi - ;; - *) die "Unexpected MULTIBUILD_ID: ${MULTIBUILD_ID}";; - esac -} diff --git a/sys-libs/libxcrypt/libxcrypt-4.4.28.ebuild b/sys-libs/libxcrypt/libxcrypt-4.4.28.ebuild index 9bebb1243fee..50aec10c1952 100644 --- a/sys-libs/libxcrypt/libxcrypt-4.4.28.ebuild +++ b/sys-libs/libxcrypt/libxcrypt-4.4.28.ebuild @@ -20,17 +20,29 @@ fi LICENSE="LGPL-2.1+ public-domain BSD BSD-2" SLOT="0/1" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" IUSE="+compat split-usr static-libs system test" REQUIRED_USE="split-usr? ( system )" RESTRICT="!test? ( test )" +export CTARGET=${CTARGET:-${CHOST}} +if [[ ${CTARGET} == ${CHOST} ]] ; then + if [[ ${CATEGORY/cross-} != ${CATEGORY} ]] ; then + export CTARGET=${CATEGORY/cross-} + fi +fi + +is_cross() { + local enabled_abis=( $(multilib_get_enabled_abis) ) + [[ "${#enabled_abis[@]}" -le 1 ]] && [[ ${CHOST} != ${CTARGET} ]] +} + DEPEND="system? ( elibc_glibc? ( - sys-libs/glibc[-crypt(+)] - !sys-libs/glibc[crypt(+)] + ${CATEGORY}/glibc[-crypt(+)] + !${CATEGORY}/glibc[crypt(+)] ) - !sys-libs/musl + !${CATEGORY}/musl ) " RDEPEND="${DEPEND}" @@ -114,19 +126,46 @@ src_configure() { multibuild_foreach_variant multilib-minimal_src_configure } +get_xcprefix() { + if is_cross; then + echo "${EPREFIX}/usr/${CTARGET}" + else + echo "${EPREFIX}" + fi +} + get_xclibdir() { - printf -- "%s/%s/%s\n" \ + printf -- "%s/%s/%s/%s\n" \ + "$(get_xcprefix)" \ "$(usex split-usr '' '/usr')" \ "$(get_libdir)" \ "$(usex system '' 'xcrypt')" } +get_xcincludedir() { + printf -- "%s/usr/include/%s\n" \ + "$(get_xcprefix)" \ + "$(usex system '' 'xcrypt')" +} + +get_xcmandir() { + printf -- "%s/usr/share/man\n" \ + "$(get_xcprefix)" +} + +get_xcpkgconfigdir() { + printf -- "%s/usr/%s/pkgconfig\n" \ + "$(get_xcprefix)" \ + "$(get_libdir)" +} + multilib_src_configure() { local -a myconf=( --disable-werror - --libdir="${EPREFIX}"$(get_xclibdir) - --with-pkgconfigdir="${EPREFIX}/usr/$(get_libdir)/pkgconfig" - --includedir="${EPREFIX}/usr/include/$(usex system '' 'xcrypt')" + --libdir=$(get_xclibdir) + --with-pkgconfigdir=$(get_xcpkgconfigdir) + --includedir=$(get_xcincludedir) + --mandir="$(get_xcmandir)" ) case "${MULTIBUILD_ID}" in @@ -168,7 +207,7 @@ src_install() { shopt -s failglob || die "failglob failed" # Make sure our man pages do not collide with glibc or man-pages. - for manpage in "${ED}"/usr/share/man/man3/crypt{,_r}.?*; do + for manpage in "${D}$(get_xcmandir)"/man3/crypt{,_r}.?*; do mv -n "${manpage}" "$(dirname "${manpage}")/xcrypt_$(basename "${manpage}")" \ || die "mv failed" done @@ -177,6 +216,13 @@ src_install() { # Remove useless stuff from installation find "${ED}"/usr/share/doc/${PF} -type l -delete || die find "${ED}" -name '*.la' -delete || die + + # workaround broken upstream cross-* --docdir by installing files in proper locations + if is_cross; then + insinto "$(get_xcprefix)"/usr/share + doins -r "${ED}"/usr/share/doc + rm -r "${ED}"/usr/share/doc || die + fi } multilib_src_install() { @@ -185,7 +231,7 @@ multilib_src_install() { # Don't install the libcrypt.so symlink for the "compat" version case "${MULTIBUILD_ID}" in xcrypt_compat-*) - rm "${ED}"$(get_xclibdir)/libcrypt$(get_libname) \ + rm "${D}"$(get_xclibdir)/libcrypt$(get_libname) \ || die "failed to remove extra compat libraries" ;; xcrypt_nocompat-*) @@ -195,7 +241,7 @@ multilib_src_install() { # .a files are installed to /$(get_libdir) by default # Move static libraries to /usr prefix or portage will abort shopt -s nullglob || die "failglob failed" - static_libs=( "${ED}"/$(get_xclibdir)/*.a ) + static_libs=( "${D}"/$(get_xclibdir)/*.a ) if [[ -n ${static_libs[*]} ]]; then dodir "/usr/$(get_xclibdir)" @@ -209,13 +255,13 @@ multilib_src_install() { # to allow linker to correctly find shared libraries. shopt -s failglob || die "failglob failed" - for lib_file in "${ED}"$(get_xclibdir)/*$(get_libname); do + for lib_file in "${D}"$(get_xclibdir)/*$(get_libname); do lib_file_basename="$(basename "${lib_file}")" lib_file_target="$(basename "$(readlink -f "${lib_file}")")" dosym "../../$(get_libdir)/${lib_file_target}" "/usr/$(get_xclibdir)/${lib_file_basename}" done - rm "${ED}"$(get_xclibdir)/*$(get_libname) || die "Removing symlinks in incorrect location failed" + rm "${D}"$(get_xclibdir)/*$(get_libname) || die "Removing symlinks in incorrect location failed" fi ) fi diff --git a/sys-libs/llvm-libunwind/Manifest b/sys-libs/llvm-libunwind/Manifest index dee8fc546cd9..6315cf0cdab4 100644 --- a/sys-libs/llvm-libunwind/Manifest +++ b/sys-libs/llvm-libunwind/Manifest @@ -1,15 +1,11 @@ DIST llvm-gentoo-patchset-13.0.1.tar.xz 6288 BLAKE2B 899222b962486e924e4f8a2b574d285531a3f87af9385ff68c81db92aa224a0cde6d4ee049b5405056bedb4b232b50e1d5840024071a4a215f6311853304c92d SHA512 b2805337f1deca626768a44c5e7ac9ed16e0c31bead1647d44a493a8123c1b8e8f1c8ceee3536bcc6fa87fdd3fcec408229f701adf30eff07e7ef9889b847b01 -DIST llvmorg-11.1.0.tar.gz 122776532 BLAKE2B ca842ff4afff8f44c82b5e7383962a9c45ca1c93b64fa4c6ebcd70a1d3849dbad2b8e4e24fba02d144c6266d7fab3607ebc6999b28c229cb35256cf40f26a985 SHA512 9a8ce022a935eed42fa71a224f2a207122aadcbef58ee855fdb4825f879e7d028e4dcff22c19b9d336db1c8bf63fb84372d44981acf84615f757e54306c92b81 DIST llvmorg-12.0.1.tar.gz 134259748 BLAKE2B f41de787bc73ff2edfda1b22cc8602be6f65f37dd9e4c8888533cfa8c3ccdcf4f108aaab9de23ab0ab987966eb160f2a553a0bdff99461e71ddd5bfcd086090d SHA512 6eb0dc18e2c25935fabfdfc48b0114be0939158dfdef7b85b395fe2e71042672446af0e68750aae003c9847d10d1f63316fe95d3df738d18f249174292b1b9e1 -DIST llvmorg-13.0.0.tar.gz 147270176 BLAKE2B 628f316b580e1edf3a58d4825b724df759e6ed2a4116802470c04562caefc392fa325c91f388036365a2e45a9595cca6d3557fab12984fc8bcfef29c9116d822 SHA512 8004c05d32b9720fb3391783621690c1df9bd1e97e72cbff9192ed88a84b0acd303b61432145fa917b5b5e548c8cee29b24ef8547dcc8677adf4816e7a8a0eb2 DIST llvmorg-13.0.1.tar.gz 147290251 BLAKE2B 2a44b012a672501761d0c27c6b3a315b69bfef0cd13b078a7e7d2fccc4a9c8c0f2bee0f164c4271c9106b0a99cb06e8b64986f66253b613336719fb86b82541b SHA512 9a8cb5d11964ba88b7624f19ec861fb28701f23956ea3c92f6ac644332d5f41fde97bd8933dd3ee70ed378058c252fa3a3887c8d1af90d219970c2b27691166f -DIST llvmorg-14.0.0.tar.gz 158057350 BLAKE2B 7052684c620a5eaf52beeee4591adf58cfec9e64a5ee0b24f3d5849fd4df5b006e2906a839cb806ac69c33fab6013c58589b1d74e4fb8558758edcb7d5065064 SHA512 eb5acf96b5e2c59bd07579f7ebe73018b0dd6e2f2d9a5a3c7986320e88febd837d1084b9e5313a2264310342193044629d228337cc76dd2b8527dc0a8bdda999 DIST llvmorg-14.0.1.tar.gz 158074615 BLAKE2B bf80366461580058494eb101646efcd1a8b55a66818a710c2eb8c649bf88c02fe4552cecf4c1c8637a64e7cee8d644bca31aafc804765ed18f2b5e2975dd6c92 SHA512 0a15aa9cfc978a7b03a1659a2affad65ede66d280f5c12bf0beaaf194cd7bdd57ff438b5f40e64c1e1b88f368de99be349e9d30b544d2bbe4a50f0ebed3307f2 -EBUILD llvm-libunwind-11.1.0.ebuild 3222 BLAKE2B e9f47dd9859691d9c629b0eee62cf4e6d9a41e6f74b991410ee4cb1c647c828388a2ea7c1806df7350dcefff9a8178021956f85c7ec2aeb11d702a17e3b32132 SHA512 fc85afa5f560b2e7ad28c1e7d7b0d36b7bc0be408817b66f0d9afb3a811b94c24a282cbb13400685a2ffb00dbf620eb0c94d66fddfe27c9cffc2108f71c11a32 +DIST llvmorg-14.0.3.tar.gz 158092596 BLAKE2B ef901df510ec6bc1242595ec330e9c9ee76e696b077d67a8d62b53608c3d18b2f2d7ea3150864e13d9b37a8ce899ebca946ebe72cbc4538700176e20859ddec2 SHA512 511e93fd9b1c414c38fe9e2649679ac0b16cb04f7f7838569d187b04c542a185e364d6db73e96465026e3b2533649eb75ac95507d12514af32b28bdfb66f2646 EBUILD llvm-libunwind-12.0.1.ebuild 3656 BLAKE2B cdf5e4e4f39ce47ac57ac43f287b5d6a42a61a79d988cdcd52823aadb0c1950abc85f5c1ba8276198e46357fc27f3ab7d06c0e7e9279a9a40e4dc7f4b936aac5 SHA512 c6477d4837e8e0d3ee6c035e0462e0a817752af214ff20ace3b8c3e377c749351cf78bf2ffec3d95085334f6b9a0a23e311f5a50109c390ad5bec60a0bef2dd5 -EBUILD llvm-libunwind-13.0.0.ebuild 3781 BLAKE2B 08d2c7ea77679aa9ea06997ce86d8c8c6c073ae3b8a1ff94be33c6dd5904425ae75632bf8ea3bd00825941e6c7a6fb4879693f33a94b54b9fe054a8ec61eeaec SHA512 b83af0f0a6d45e618d70fd59c7e4ff7dfa815c8eca650a65a4c892756197bc34ea389150bd65f01c6243ea54b0cfac476d5095f657f6a34e72d92967af600aeb -EBUILD llvm-libunwind-13.0.1.ebuild 3811 BLAKE2B e26f6847c6366294a28924e456cb4a0a23955d71f2351e6a05e8784e830f4c76a1313b83c89cdac20c857218a71848eb85438d261d573b2b3aa9f7955a0e36ba SHA512 58510628813825e4dd9dd75f6a49095636085be26ae77d84b3a418f7412c4a03049891a33e5ae319225a5218f49eb07483a1646b115c0cea0d46d53cfdefb9c5 -EBUILD llvm-libunwind-14.0.0.ebuild 3179 BLAKE2B 5e7cf67a48f80e4b7faae2095063d76865892e1547b76488d9f127f51e8407950842ee156fc7ed132f01b9b3b918b0d450b475a725daf70addc832ba61740449 SHA512 fe6efe833c3f7c5482aa8238393f94803344c67d28927b26946eefa6ad53dd5ebdfd23280d56f531c1821e4f9bb259d831c97ad3f269c8a194da3332d67e7083 -EBUILD llvm-libunwind-14.0.1.ebuild 3179 BLAKE2B 5e7cf67a48f80e4b7faae2095063d76865892e1547b76488d9f127f51e8407950842ee156fc7ed132f01b9b3b918b0d450b475a725daf70addc832ba61740449 SHA512 fe6efe833c3f7c5482aa8238393f94803344c67d28927b26946eefa6ad53dd5ebdfd23280d56f531c1821e4f9bb259d831c97ad3f269c8a194da3332d67e7083 -EBUILD llvm-libunwind-15.0.0.9999.ebuild 3126 BLAKE2B c5f745f265c39e9d4686ac99fe5893b27d2e156208c92d127ddbcfb93aad9e12ed596d5d29774722db6117b3db4962be9a9d355cd2cc7d3f04efe78b2a2ed891 SHA512 dfe17e8eb6fb8b03e25c1662a209530cc4bf6c3d31adeb5dc1a57cc0bead836c60babb027809f5d1b3119d7a7bbcf538ec449b0f766763806c17c351fd775807 +EBUILD llvm-libunwind-13.0.1.ebuild 3810 BLAKE2B c215ba47340bda6a466f6ffcdf978d0d3ab4f4f1f456114f854f53dd3dd04d197ee235c4623d0a3d6e0f26022fef909be2ad04e93679ce357c396c94dc7d3a49 SHA512 96827c5f5838898ac368b79677b6e17fb0545a6a5239f8262622034843777ad4f071f9f80e3c33e0e1a2df334abcefbd7e867c5957d2bf72a1b8416b5b7ac714 +EBUILD llvm-libunwind-14.0.1.ebuild 3186 BLAKE2B e5412e6d38ce37d72640805ee3befc88ea3c0f8ae58e5f2dd2a779ac02cd51e55efe2392d3f7fc9ff1f9b2f135018527fa8e24504910c42e47d2186fa70375fb SHA512 7dc577c803526d2b6180bd1e2364789cf8ace3a7c121be1c38053f8505372b76ede20b97649aafd7ad1ebbc06c0dea405c40b0e39cb5dab139a045e047959e5d +EBUILD llvm-libunwind-14.0.3.ebuild 3205 BLAKE2B 94ee3640bf57770f52d8bf0adb53ac5eec90884af970ad72e23d0208986a3801bb327a8cf791bd97c2e9414710201e7b61cc5d1d5aef16233b015bf9c4630b4a SHA512 46e2f37981fb1e6e454da41fdeba5d9c3a97173631caf4b619756a1b3bed6b3f4904a73d799ec5fc21a96b4cd46a92033d5fdc113a9be9707c2e1dbc2237b8c6 +EBUILD llvm-libunwind-15.0.0.9999.ebuild 3145 BLAKE2B 37362f37ade47d59ebee5c65337768677a280379541c8468fdd7b31927b4eb93c2576a46838bb320bd526aa2191828cd8f7ae502adafec594b172065f5b90c35 SHA512 132b91d72b419267ef51ef5be15393a882897587f6190d62a3c39b091ef97eaef06e8f1fe62e3d8303c0f23581604357a10bc7b958b5b71ec3316c1a1dcc5e54 MISC metadata.xml 303 BLAKE2B ed0dbe1165e30ee5c3556aaf467abf212e198590a06c70f0de4e2c12060644df928c8f388fadfe776249a77dc000b40881d7254cfdc30f7a41209e2524136adb SHA512 5a69c07b9b1b37646d29a7287f1ba1c9150a5fae60df644266232871b5e4db41c0e8d102e8b873af2bdbf814935e8f8479e1534b8aa47d0ee31e971e2fa4dc50 diff --git a/sys-libs/llvm-libunwind/llvm-libunwind-11.1.0.ebuild b/sys-libs/llvm-libunwind/llvm-libunwind-11.1.0.ebuild deleted file mode 100644 index 98002383aafb..000000000000 --- a/sys-libs/llvm-libunwind/llvm-libunwind-11.1.0.ebuild +++ /dev/null @@ -1,124 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -CMAKE_ECLASS=cmake -PYTHON_COMPAT=( python3_{7..9} ) -inherit cmake-multilib llvm llvm.org python-any-r1 - -DESCRIPTION="C++ runtime stack unwinder from LLVM" -HOMEPAGE="https://github.com/llvm-mirror/libunwind" - -LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" -SLOT="0" -KEYWORDS="amd64 arm arm64 ~ppc64 ~riscv x86 ~x64-macos" -IUSE="debug static-libs test" -RESTRICT="!test? ( test )" - -RDEPEND="!sys-libs/libunwind" -# llvm-6 for new lit options -DEPEND=" - >=sys-devel/llvm-6" -BDEPEND=" - test? ( >=sys-devel/clang-3.9.0 - $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]') - )" - -LLVM_COMPONENTS=( libunwind ) -LLVM_TEST_COMPONENTS=( libcxx{,abi} llvm/cmake ) -llvm.org_set_globals - -python_check_deps() { - has_version "dev-python/lit[${PYTHON_USEDEP}]" -} - -pkg_setup() { - use test && python-any-r1_pkg_setup -} - -multilib_src_configure() { - local libdir=$(get_libdir) - - local mycmakeargs=( - -DLLVM_LIBDIR_SUFFIX=${libdir#lib} - -DLIBUNWIND_ENABLE_ASSERTIONS=$(usex debug) - -DLIBUNWIND_ENABLE_STATIC=$(usex static-libs) - -DLLVM_INCLUDE_TESTS=$(usex test) - - # support non-native unwinding; given it's small enough, - # enable it unconditionally - -DLIBUNWIND_ENABLE_CROSS_UNWINDING=ON - ) - if use test; then - local clang_path=$(type -P "${CHOST:+${CHOST}-}clang" 2>/dev/null) - [[ -n ${clang_path} ]] || die "Unable to find ${CHOST}-clang for tests" - - mycmakeargs+=( - -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit" - -DLLVM_LIT_ARGS="$(get_lit_flags);--param=cxx_under_test=${clang_path}" - -DLIBUNWIND_LIBCXX_PATH="${WORKDIR}/libcxx" - ) - fi - - cmake_src_configure -} - -build_libcxxabi() { - local -x LDFLAGS="${LDFLAGS} -L${BUILD_DIR}/$(get_libdir)" - local CMAKE_USE_DIR=${WORKDIR}/libcxxabi - local BUILD_DIR=${BUILD_DIR}/libcxxabi - local mycmakeargs=( - -DLIBCXXABI_LIBDIR_SUFFIX= - -DLIBCXXABI_ENABLE_SHARED=OFF - -DLIBCXXABI_ENABLE_STATIC=ON - -DLIBCXXABI_USE_LLVM_UNWINDER=ON - -DLIBCXXABI_INCLUDE_TESTS=OFF - - -DLIBCXXABI_LIBCXX_INCLUDES="${WORKDIR}"/libcxx/include - -DLIBCXXABI_LIBUNWIND_INCLUDES="${S}"/include - ) - - cmake_src_configure - cmake_src_compile -} - -build_libcxx() { - local -x LDFLAGS="${LDFLAGS} -L${BUILD_DIR}/libcxxabi/lib -L${BUILD_DIR}/$(get_libdir)" - local CMAKE_USE_DIR=${WORKDIR}/libcxx - local BUILD_DIR=${BUILD_DIR}/libcxx - local mycmakeargs=( - -DLIBCXX_LIBDIR_SUFFIX= - -DLIBCXX_ENABLE_SHARED=OFF - -DLIBCXX_ENABLE_STATIC=ON - -DLIBCXX_ENABLE_EXPERIMENTAL_LIBRARY=OFF - -DLIBCXXABI_USE_LLVM_UNWINDER=ON - -DLIBCXX_CXX_ABI=libcxxabi - -DLIBCXX_CXX_ABI_INCLUDE_PATHS="${WORKDIR}"/libcxxabi/include - -DLIBCXX_ENABLE_ABI_LINKER_SCRIPT=OFF - -DLIBCXX_HAS_MUSL_LIBC=$(usex elibc_musl) - -DLIBCXX_HAS_GCC_S_LIB=OFF - -DLIBCXX_INCLUDE_TESTS=OFF - ) - - cmake_src_configure - cmake_src_compile -} - -multilib_src_test() { - # build local copies of libc++ & libc++abi for testing to avoid - # circular deps - build_libcxxabi - build_libcxx - mv "${BUILD_DIR}"/libcxx*/lib/libc++* "${BUILD_DIR}/$(get_libdir)/" || die - - local -x LIT_PRESERVES_TMP=1 - cmake_build check-unwind -} - -multilib_src_install() { - cmake_src_install - - # install headers like sys-libs/libunwind - doheader "${S}"/include/*.h -} diff --git a/sys-libs/llvm-libunwind/llvm-libunwind-13.0.0.ebuild b/sys-libs/llvm-libunwind/llvm-libunwind-13.0.0.ebuild deleted file mode 100644 index 607404341462..000000000000 --- a/sys-libs/llvm-libunwind/llvm-libunwind-13.0.0.ebuild +++ /dev/null @@ -1,142 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -CMAKE_ECLASS=cmake -PYTHON_COMPAT=( python3_{8..10} ) -inherit cmake-multilib llvm llvm.org python-any-r1 toolchain-funcs - -DESCRIPTION="C++ runtime stack unwinder from LLVM" -HOMEPAGE="https://github.com/llvm-mirror/libunwind" - -LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" -SLOT="0" -KEYWORDS="amd64 arm arm64 ppc64 ~riscv x86 ~x64-macos" -IUSE="debug static-libs test" -RESTRICT="!test? ( test )" - -RDEPEND="!sys-libs/libunwind" -# llvm-6 for new lit options -DEPEND=" - >=sys-devel/llvm-6" -BDEPEND=" - test? ( >=sys-devel/clang-3.9.0 - $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]') - )" - -LLVM_COMPONENTS=( libunwind libcxx llvm/cmake ) -LLVM_TEST_COMPONENTS=( libcxxabi ) -llvm.org_set_globals - -python_check_deps() { - has_version "dev-python/lit[${PYTHON_USEDEP}]" -} - -pkg_setup() { - use test && python-any-r1_pkg_setup -} - -multilib_src_configure() { - local use_compiler_rt=OFF - local libdir=$(get_libdir) - - # link to compiler-rt - # https://github.com/gentoo/gentoo/pull/21516 - if tc-is-clang; then - local compiler_rt=$($(tc-getCC) ${CFLAGS} ${CPPFLAGS} \ - ${LD_FLAGS} -print-libgcc-file-name) - if [[ ${compiler_rt} == *libclang_rt* ]]; then - use_compiler_rt=ON - fi - fi - - local mycmakeargs=( - -DLLVM_LIBDIR_SUFFIX=${libdir#lib} - -DLIBUNWIND_ENABLE_ASSERTIONS=$(usex debug) - -DLIBUNWIND_ENABLE_STATIC=$(usex static-libs) - -DLIBUNWIND_TARGET_TRIPLE="${CHOST}" - -DLLVM_INCLUDE_TESTS=$(usex test) - - # support non-native unwinding; given it's small enough, - # enable it unconditionally - -DLIBUNWIND_ENABLE_CROSS_UNWINDING=ON - - # avoid dependency on libgcc_s if compiler-rt is used - -DLIBUNWIND_USE_COMPILER_RT=${use_compiler_rt} - ) - if use test; then - local clang_path=$(type -P "${CHOST:+${CHOST}-}clang" 2>/dev/null) - [[ -n ${clang_path} ]] || die "Unable to find ${CHOST}-clang for tests" - - mycmakeargs+=( - -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit" - -DLLVM_LIT_ARGS="$(get_lit_flags);--param=cxx_under_test=${clang_path}" - -DLIBUNWIND_LIBCXX_PATH="${WORKDIR}/libcxx" - ) - fi - - cmake_src_configure -} - -wrap_libcxxabi() { - local mycmakeargs=( - -DLIBCXXABI_LIBDIR_SUFFIX= - -DLIBCXXABI_ENABLE_SHARED=OFF - -DLIBCXXABI_ENABLE_STATIC=ON - -DLIBCXXABI_USE_LLVM_UNWINDER=ON - -DLIBCXXABI_INCLUDE_TESTS=OFF - - -DLIBCXXABI_LIBCXX_INCLUDES="${BUILD_DIR}"/libcxx/include/c++/v1 - -DLIBCXXABI_LIBUNWIND_INCLUDES="${S}"/include - ) - - local -x LDFLAGS="${LDFLAGS} -L${BUILD_DIR}/$(get_libdir)" - local CMAKE_USE_DIR=${WORKDIR}/libcxxabi - local BUILD_DIR=${BUILD_DIR}/libcxxabi - - "${@}" -} - -wrap_libcxx() { - local mycmakeargs=( - -DLIBCXX_LIBDIR_SUFFIX= - -DLIBCXX_ENABLE_SHARED=OFF - -DLIBCXX_ENABLE_STATIC=ON - -DLIBCXX_ENABLE_EXPERIMENTAL_LIBRARY=OFF - -DLIBCXXABI_USE_LLVM_UNWINDER=ON - -DLIBCXX_CXX_ABI=libcxxabi - -DLIBCXX_CXX_ABI_INCLUDE_PATHS="${WORKDIR}"/libcxxabi/include - -DLIBCXX_ENABLE_ABI_LINKER_SCRIPT=OFF - -DLIBCXX_HAS_MUSL_LIBC=$(usex elibc_musl) - -DLIBCXX_HAS_GCC_S_LIB=OFF - -DLIBCXX_INCLUDE_TESTS=OFF - ) - - local -x LDFLAGS="${LDFLAGS} -L${BUILD_DIR}/libcxxabi/lib -L${BUILD_DIR}/$(get_libdir)" - local CMAKE_USE_DIR=${WORKDIR}/libcxx - local BUILD_DIR=${BUILD_DIR}/libcxx - - "${@}" -} - -multilib_src_test() { - # build local copies of libc++ & libc++abi for testing to avoid - # circular deps - wrap_libcxx cmake_src_configure - wrap_libcxx cmake_build generate-cxx-headers - wrap_libcxxabi cmake_src_configure - wrap_libcxxabi cmake_src_compile - wrap_libcxx cmake_src_compile - mv "${BUILD_DIR}"/libcxx*/lib/libc++* "${BUILD_DIR}/$(get_libdir)/" || die - - local -x LIT_PRESERVES_TMP=1 - cmake_build check-unwind -} - -multilib_src_install() { - cmake_src_install - - # install headers like sys-libs/libunwind - doheader "${S}"/include/*.h -} diff --git a/sys-libs/llvm-libunwind/llvm-libunwind-13.0.1.ebuild b/sys-libs/llvm-libunwind/llvm-libunwind-13.0.1.ebuild index 94f7700fd9ca..56489f0dfe52 100644 --- a/sys-libs/llvm-libunwind/llvm-libunwind-13.0.1.ebuild +++ b/sys-libs/llvm-libunwind/llvm-libunwind-13.0.1.ebuild @@ -12,7 +12,7 @@ HOMEPAGE="https://github.com/llvm-mirror/libunwind" LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" SLOT="0" -KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv ~x86 ~x64-macos" +KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86 ~x64-macos" IUSE="debug static-libs test" RESTRICT="!test? ( test )" diff --git a/sys-libs/llvm-libunwind/llvm-libunwind-14.0.1.ebuild b/sys-libs/llvm-libunwind/llvm-libunwind-14.0.1.ebuild index 5c46a2ae1249..ad5504a093ce 100644 --- a/sys-libs/llvm-libunwind/llvm-libunwind-14.0.1.ebuild +++ b/sys-libs/llvm-libunwind/llvm-libunwind-14.0.1.ebuild @@ -12,7 +12,7 @@ HOMEPAGE="https://github.com/llvm-mirror/libunwind" LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86 ~x64-macos" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~x64-macos" IUSE="debug static-libs test" RESTRICT="!test? ( test )" diff --git a/sys-libs/llvm-libunwind/llvm-libunwind-14.0.0.ebuild b/sys-libs/llvm-libunwind/llvm-libunwind-14.0.3.ebuild index 5c46a2ae1249..b1b3c2dc140d 100644 --- a/sys-libs/llvm-libunwind/llvm-libunwind-14.0.0.ebuild +++ b/sys-libs/llvm-libunwind/llvm-libunwind-14.0.3.ebuild @@ -1,7 +1,7 @@ # Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=7 +EAPI=8 CMAKE_ECLASS=cmake PYTHON_COMPAT=( python3_{8..10} ) @@ -12,20 +12,26 @@ HOMEPAGE="https://github.com/llvm-mirror/libunwind" LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86 ~x64-macos" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~x64-macos" IUSE="debug static-libs test" RESTRICT="!test? ( test )" -RDEPEND="!sys-libs/libunwind" +RDEPEND=" + !sys-libs/libunwind +" # llvm-6 for new lit options DEPEND=" - >=sys-devel/llvm-6" + >=sys-devel/llvm-6 +" BDEPEND=" - ${PYTHON_DEPS} + !test? ( + ${PYTHON_DEPS} + ) test? ( >=sys-devel/clang-3.9.0 $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]') - )" + ) +" LLVM_COMPONENTS=( runtimes libunwind libcxx llvm/cmake cmake ) LLVM_TEST_COMPONENTS=( libcxxabi llvm/utils/llvm-lit ) diff --git a/sys-libs/llvm-libunwind/llvm-libunwind-15.0.0.9999.ebuild b/sys-libs/llvm-libunwind/llvm-libunwind-15.0.0.9999.ebuild index 377022eb4033..6d871c89b6b1 100644 --- a/sys-libs/llvm-libunwind/llvm-libunwind-15.0.0.9999.ebuild +++ b/sys-libs/llvm-libunwind/llvm-libunwind-15.0.0.9999.ebuild @@ -1,7 +1,7 @@ # Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=7 +EAPI=8 CMAKE_ECLASS=cmake PYTHON_COMPAT=( python3_{8..10} ) @@ -16,16 +16,22 @@ KEYWORDS="" IUSE="debug static-libs test" RESTRICT="!test? ( test )" -RDEPEND="!sys-libs/libunwind" +RDEPEND=" + !sys-libs/libunwind +" # llvm-6 for new lit options DEPEND=" - >=sys-devel/llvm-6" + >=sys-devel/llvm-6 +" BDEPEND=" - ${PYTHON_DEPS} + !test? ( + ${PYTHON_DEPS} + ) test? ( >=sys-devel/clang-3.9.0 $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]') - )" + ) +" LLVM_COMPONENTS=( runtimes libunwind libcxx llvm/cmake cmake ) LLVM_TEST_COMPONENTS=( libcxxabi llvm/utils/llvm-lit ) diff --git a/sys-libs/mtdev/Manifest b/sys-libs/mtdev/Manifest index 7796d08b38c4..24ad454a8199 100644 --- a/sys-libs/mtdev/Manifest +++ b/sys-libs/mtdev/Manifest @@ -1,3 +1,3 @@ DIST mtdev-1.1.6.tar.bz2 295965 BLAKE2B 212cf0f0bea0fc295528c90c6685770e88cb135a714cbf21e53b75ab2eaedd210269d073520e44c5bffafe8a5ecca521221061193725cba916bc2cf703fd5166 SHA512 859fb0803f330ecaae69f80713ff5a5235c0cb00de6d5ac2717ad82cea856a92b866f0c272ecfe743186abcf925f95585149ba4828b4c91555cfeb2f2a1c98f1 -EBUILD mtdev-1.1.6.ebuild 539 BLAKE2B ed8b6f9a950a7cdc582608e278d4e9f7466913be22f898bbfc6220ce75fe284807b4883d67302bf537240c8913fc0b1640dba48d666f44eb47f6a6ffe2e5cac5 SHA512 ad853de1913e8e9746f29f4d97bcf3e9b5a50a6f99ede232d7987a876cb2c934b13d27f38b2abb99c4bba55fe0210b74b4f56dfe54c6a5f8ffb60086208c076d +EBUILD mtdev-1.1.6.ebuild 546 BLAKE2B 8a6c844e3c94bd879a155c4c3f5807bb304cf52d0e5bbd8bb9d343e6873bd9423c895d357bdc9cc616be68a9b5c6f057722eeab3af28b4d64dd51d0ea686fa07 SHA512 479c9824f71fc5b21c82a7fe025a9cc62376cac9b7ee86bae185edca06e1e1580cebcf6c6a09adb3f4799b505bdb26703139cb2dc55bb545859df6701feb6dde MISC metadata.xml 340 BLAKE2B ae387fc6a24b33ac775c764ad49e0989d359142010160bb61838392ee2995f994ec33db4c7952e02eb2df135cbf77e4b1fa1c1314668f07d0451234508103586 SHA512 e5b0a64cefc456ffc0403751f70a97761c8de396430256d168ab946788de18edb1bb4bb23a8d529b12d7246562b03f6ea73a618d9d136c0002f3ff7c54ef9a74 diff --git a/sys-libs/mtdev/mtdev-1.1.6.ebuild b/sys-libs/mtdev/mtdev-1.1.6.ebuild index abbd8dd4b15f..e427325f3747 100644 --- a/sys-libs/mtdev/mtdev-1.1.6.ebuild +++ b/sys-libs/mtdev/mtdev-1.1.6.ebuild @@ -9,7 +9,7 @@ SRC_URI="https://bitmath.org/code/mtdev/${P}.tar.bz2" LICENSE="MIT" SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86" IUSE="" DEPEND=">=sys-kernel/linux-headers-2.6.31" diff --git a/sys-libs/musl/Manifest b/sys-libs/musl/Manifest index b0c202750245..8352de4eb2b5 100644 --- a/sys-libs/musl/Manifest +++ b/sys-libs/musl/Manifest @@ -1,5 +1,3 @@ -AUX ldconfig.in 2552 BLAKE2B c94f9900e8582d707519171c4b61079c801b60c555677b1740b04adbdec9645578b9a8fc91f11413072568f316c795e46a332970f3d2dde5272b0c49a5d60a78 SHA512 59f1b57361196363d3f127366764f05d26c23dbe3d3dbcdba9bd3c8ca26a671fd713b96d31c509d22805c57ada2b596d979a3f5795bcf0a4d3ac7d168f3bf377 -AUX ldconfig.in-r1 2930 BLAKE2B a0b0d4715d9b4c83c4e7036d466dae854c2da1e2393a48cf1c05789a59426f6809118d5ac266a7eb558010c8c47d344b93c8c86847d9d0158d3885b6076e3bf6 SHA512 7e5b5e396965c7e677168f0974460565dd0302639835ca7b0fbf1198e911dc2818dd64424e0e217a710545cbeeb4c31877f05034f16737a822eb02520c258c4e AUX ldconfig.in-r2 2970 BLAKE2B a6b93ebbbe0caa07a1d32af07d810e1d95d47f2246573e77dfd14edba4403a9d90fd92a7428754c68036ffdbc7e82b926d95538f6617a76a247ab5c9a3c3ba1b SHA512 5b97f473ead0def43656b42511af77c427237e6c36f8d2afad8241ef4e948ed5f0a58dc9e65205c393b530ac810ee1e9f2db008534707283bca0fac2951fe4f9 AUX ldconfig.in-r3 3093 BLAKE2B 146374fe711c660a61e4a23f89ae066e78b8bca6884719c058981069ab92833d7f660b7bd78e7c8b86112944706823f0260d7c63f19d64960f27f44b4e95a6a3 SHA512 ba021cf7d52c001d6ef9a54a91de93240cd7eef9f7a6d7a48ae0c58f934aaea6796979ce80e1cfa9bdc6008023108f3c226440360f8e3134fc23f7fdac0e55b1 AUX musl-1.2.2-gethostid.patch 1028 BLAKE2B fbe554e681c8f0e4bff6ec6fe97c88fd3c7f84ac07580b5f6cfef13b6b27c985f4f0e1d7722f397c59e655b8cd864fa845f9af2aa0eaa9287349f41e71f7a257 SHA512 d2959ef272e3a2742efec3983a41705cfa6424110dbc1eb53a912492cf067881cdbcb8cd864757e6450dda9b47e0cca7dbe3a86d3e6e74e7f33fb7d1723edfde @@ -11,11 +9,8 @@ DIST musl-1.2.2.tar.gz.asc 490 BLAKE2B 8eb21bcfcbaf9d567c0a2bba468055d4ed86a9fb3 DIST musl-1.2.3.tar.gz 1058642 BLAKE2B b7f667eeb6b9f612c086cb44e69b34da4361b8cb76819fb65f10ef7dd55f48d2f37a32d698dcada965c7c76c3c1cd5621447c4240b6ab2e5b39b2d214e7e302b SHA512 9332f713d3eb7de4369bc0327d99252275ee52abf523ee34b894b24a387f67579787f7c72a46cf652e090cffdb0bc3719a4e7b84dca66890b6a37f12e8ad089c DIST musl-1.2.3.tar.gz.asc 490 BLAKE2B 4de3d2b2f4e748795b71e144df3ac073c68b0b1b5d40c7a4c3507cc3700c1f47a4ec745f644fa78d82de4cd1915b80be7ac1071fdfd6d468e01361c49ded065d SHA512 01a857dbc3981c90244d4d1d883efe51986652ca5734a741c9d1a4d06c5a22831e85520ac67212268b70c22049317a8f39b3219be182e7e67741add428ac5bc6 DIST musl-getent-93a08815f8598db442d8b766b463d0150ed8e2ab.c 11656 BLAKE2B 1b7bf7102a1eb91a8cb881ed8ca65eb8eed911dd50238e97dc2952d89d4c6ebed6bfd046a2b38776c550b2872ab54ced8cb452fcc2ad56e5616f722debda761f SHA512 7f5b9d934d82deb5f8b23e16169a5d9b99ccab3a4708df06a95d685e1b24a3a3e69b3dcf4942f2f66c12a3d4bf0c5827e2ee2e8c4d7b1997359fccc2ac212dee -EBUILD musl-1.2.2-r3.ebuild 3814 BLAKE2B 037af7d810ace77441369b4dc9a8513298167bbe7af7a010ad22f6ff7e99aba2cac0b6b8befd51f080fb3c695452ec7a3cecbdeb46cbfd06d2aef2415a96c28e SHA512 48cb68039a1cc61b230d2c9b549f01c40607ef2a0726589e558e412311f7e1ae988c7328f86b61b148ba88f2f107c72b2829ccd8ba16567a52a3840f2286d477 -EBUILD musl-1.2.2-r4.ebuild 4442 BLAKE2B 1cfdf66f7c975e164161cb90d98f20187c2d3ae0a24914206222c7255714a2cd10c4034a6b34018e3c79a2ec6385012c29f39d525ab83ab9b737a04453232e65 SHA512 340f60f7f73702510251a1df1af6a38af715678bad3606aab1e29c132bf5bb5805c39d916a1ff95c5e492a38b1d9a2ba3ae24560287d2fca647aa338eede2de7 -EBUILD musl-1.2.2-r6.ebuild 4457 BLAKE2B 9fde176fc9b78c29480eb8aa85a1b9decd777976c6c44ca298762fb1dd71ee8144a6dede69d82b69eebad48990b8da4522df2818370aac5dc8c7a1436172154c SHA512 fedb1929ffd0f6282c9103567b1f7813b4da523fdfe678cdce3792c8bdb2b866decccb57c4850eb92e6161894ad9409fb3b9b0fe477f8520cefecb3844bbc5b3 -EBUILD musl-1.2.2-r7.ebuild 4457 BLAKE2B 377ee3688dcd2d84bc6d3fc951e5cf158db7a90199a539ecabfc3a5e74294251903ee0097473ad778578bf9e4157e1339dd6955934f78e99b638049380b5cd92 SHA512 95c9be188d0bdb1a550d0b99b36075d67d989211a4890486a60b88becbe30f03cf45102d3e5172a38246c12c9878b90e145438f9f2cddc8a0e61e535935488ca -EBUILD musl-1.2.2-r8.ebuild 4770 BLAKE2B 9370f99e4dd0a9269787e2daa1749cb1d39b1d2833887d9b69909185f378e8ef5f04f436103e22e3d93b0c233634f479f7530735cdd01c21ac49807c78e59b22 SHA512 3cb5199c935725f56f8a4425114ab766514d61a9c37d5043fe9474e2bc8e5f2ab52a84c8ea0b229059227df8f0bb0e0700ea2b0f2810f4df7f1c461b6fdd5ed7 -EBUILD musl-1.2.3.ebuild 4771 BLAKE2B d6fd446c557bd0e5c776a45aecbca6ad7f290138ad7cc55c93e6beab24fbe01b6ba78294ad94a8f70bc8e72400b79fc292547da8c3c8b7637f25ef5367b1de18 SHA512 e9843b04a7b02d0bc1ed0dcc25d5fe20da15ba3d5165ea7603e187945a6a334a4201c11bfc0e5889723f427efad3910e75bc3ece7f993f292c225306a10d042c -EBUILD musl-9999.ebuild 4771 BLAKE2B d6fd446c557bd0e5c776a45aecbca6ad7f290138ad7cc55c93e6beab24fbe01b6ba78294ad94a8f70bc8e72400b79fc292547da8c3c8b7637f25ef5367b1de18 SHA512 e9843b04a7b02d0bc1ed0dcc25d5fe20da15ba3d5165ea7603e187945a6a334a4201c11bfc0e5889723f427efad3910e75bc3ece7f993f292c225306a10d042c +EBUILD musl-1.2.2-r7.ebuild 4453 BLAKE2B 83ec6285f4249b59c69527d09366a7d64a92b571f81a414867ec3693a6901b9bd8a3bb0f7bdfac176c02447836e5ad18dc5ee7a2baa89cc66848bfb8db26dab1 SHA512 ab2f45a6990f29df081136e2dd16da78e9b96a6382daab9743448537ec7039b86f9c720364aefacc82675751147d5cb568ac1e3320c08555202561dfda65b481 +EBUILD musl-1.2.2-r8.ebuild 4766 BLAKE2B 1e9150602dc0a85f6315f4a3590ab18ecb71eeb970dfa5eb586f4922923ca119a9096fdd72bb758cf7d66bcdf7e0df3b2f6d3278a254c452d82e76a4446db59f SHA512 a92051a1bfde9f45b593d4651927255a42f85af4f5271359b933eba46317c0edd5744b63e1c0b1f775c00008979e7473ea029895d1c11ec9a683a2f45a89e389 +EBUILD musl-1.2.3.ebuild 4767 BLAKE2B d4de42b424cf647216c05f629b2aa5958ddfbb9d03c70b7b41277d4879d3e13b8e3a740d1fa30c4ecc773f5084a35868b0e938877497864080bb5e6e3dcee12c SHA512 2bc3fe1994254d28219f32ce96be8ac1f26e8f837569f98ea6a3f414cd1eb07aae4dec41c796374c1e12a262e377129668d47e32351d6ada89aa0e263cba9dd7 +EBUILD musl-9999.ebuild 4767 BLAKE2B d4de42b424cf647216c05f629b2aa5958ddfbb9d03c70b7b41277d4879d3e13b8e3a740d1fa30c4ecc773f5084a35868b0e938877497864080bb5e6e3dcee12c SHA512 2bc3fe1994254d28219f32ce96be8ac1f26e8f837569f98ea6a3f414cd1eb07aae4dec41c796374c1e12a262e377129668d47e32351d6ada89aa0e263cba9dd7 MISC metadata.xml 559 BLAKE2B 8b1093a5278f716b8e21467b325e373a790f54c8ab71b92adc4c87dd569a92b20e08009372065f0f27ced39e3361c9e5e5a2e1bff271753d280439fabbddd3a4 SHA512 a35c13ea32ac8f26984bdb0d70d28a4285f34e32a2b0b17ad98fe3f357fb46c87a1e853377630d4da58fd5953de3fdeb02ee89181394e1815f5e0bbba4cd9f92 diff --git a/sys-libs/musl/files/ldconfig.in b/sys-libs/musl/files/ldconfig.in deleted file mode 100644 index 19c94d85353a..000000000000 --- a/sys-libs/musl/files/ldconfig.in +++ /dev/null @@ -1,144 +0,0 @@ -#!/bin/bash -e -# Copyright 1999-2015 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -ROOT="/" - -LDSO_CONF="/etc/ld.so.conf" -if [[ ! -e $LDSO_CONF ]]; then - echo "$LDSO_CONF not found" >&2 - exit 1 -fi - -LDSO_CONF_DIR=$(dirname $LDSO_CONF) - -VERBOSE=0 - -UPDATE_LINKS=1 - -get_options() { - while getopts "vnNXf:C:r:p" opt "$@"; do - case $opt in - v) - echo "ldconfig for musl in Gentoo" - VERBOSE=1 - ;; - r) - ROOT=$OPTARG - ;; - f) - LDSO_CONF=$OPTARG - ;; - X) - UPDATE_LINKS=0 - ;; - \?) - echo "Invalid option: -$opt" >&2 - exit 1 - ;; - n|N|C|p) - echo "Unimplemented option: -$opt" >&2 - exit 1 - ;; - esac - done - - if [[ $UPDATE_LINKS == 1 ]]; then - echo "Updating links is not implemented." - fi -} - - -repeated() { - local l=$1 - local drs="${@:2}" - for m in $drs; do - [[ $m == $l ]] && return 0 - done - return 1 -} - -expand() { - # We are assuming the ld.so.conf's 'include' is not recursive - local f line l - local glob="$LDSO_CONF_DIR/$1" - local drs="${@:2} " - - for f in $glob; do - [[ ! -f $f ]] && continue - while read line; do - line=${line%%#*} - line=${line//:/ } - line=${line//,/ } - for l in $line; do - #We must add this whether or not the directory exists - repeated $l $drs && continue - drs+=" $l " - done - done < $f - done - - echo $drs -} - -read_ldso_conf() { - local drs=" " - - while read line; do - # Sanitize the line - see ldconfig(8) for delimiters - # Note: bash read turns tabs into spaces and read already - # delimits on newlines with the default $IFS - line=${line%%#*} # Remove comments - line=${line//:/ } # Change colon delimiter to space - line=${line//,/ } # Change comma delimiter to space - - next=0 - for l in $line; do - if [[ $next == 1 ]]; then - next=0 - drs=$(expand $l $drs) - elif [[ $l == "include" ]]; then - next=1 - else - # glibc's ldconfig silently skips non directories - if [[ -d $l ]]; then - repeated $l $drs && continue - drs+=" $l " - fi - fi - done - done < $1 - - echo $drs -} - -sanitize() { - local drs=$@ - - repeated "/lib" $drs || drs="/lib $drs" - repeated "/usr/lib" $drs || drs="/usr/lib $drs" - - echo $drs -} - -get_options "$@" -drs=$(read_ldso_conf "$LDSO_CONF") -drs=$(sanitize $drs) - -ARCH=@@ARCH@@ -LDSO_PATH="/lib/ld-musl-${ARCH}.so.1" -if [[ ! -e $LDSO_PATH ]]; then - echo "$LDSO_PATH not found" >&2 - exit 1 -fi - -LDSO_ARCH=$(basename $LDSO_PATH) -LDSO_NAME=${LDSO_ARCH%.so.1} -ETC_LDSO_PATH=/etc/${LDSO_NAME}.path - -X=$(mktemp -p /tmp ${LDSO_NAME}.XXXXXX) -for d in $drs; do - echo $d >> $X -done -chmod 644 $X -mv $X $ETC_LDSO_PATH diff --git a/sys-libs/musl/files/ldconfig.in-r1 b/sys-libs/musl/files/ldconfig.in-r1 deleted file mode 100644 index 7bf254dfd91c..000000000000 --- a/sys-libs/musl/files/ldconfig.in-r1 +++ /dev/null @@ -1,155 +0,0 @@ -#!/bin/bash -e -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -ROOT="/" -LDSO_CONF="/etc/ld.so.conf" - -VERBOSE=0 - -UPDATE_LINKS=1 - -get_options() { - while getopts "vnNXf:C:r:p" opt "$@"; do - case $opt in - v) - echo "ldconfig for musl in Gentoo" - VERBOSE=1 - ;; - r) - ROOT=${OPTARG} - LDSO_CONF=${ROOT}${LDSO_CONF} - LDSO_CONF_DIR=$(dirname ${LDSO_CONF}) - ;; - f) - LDSO_CONF=${OPTARG} - ;; - X) - UPDATE_LINKS=0 - ;; - \?) - echo "Invalid option: -${opt}" >&2 - exit 1 - ;; - n|N|C|p) - echo "Unimplemented option: -${opt}" >&2 - exit 1 - ;; - esac - done - - if [[ ${UPDATE_LINKS} == 1 ]]; then - echo "Updating links is not implemented." - fi -} - - -repeated() { - local l=${1} - local drs="${@:2}" - for m in ${drs}; do - [[ ${m} == ${l} ]] && return 0 - done - return 1 -} - -expand() { - # We are assuming the ld.so.conf's 'include' is not recursive - local f line l - local glob="${LDSO_CONF_DIR}/${1}" - local drs="${@:2} " - - for f in ${glob}; do - [[ ! -f ${f} ]] && continue - while read line; do - line=${line%%#*} - line=${line//:/ } - line=${line//,/ } - for l in ${line}; do - # We must add this whether or not the directory exists - repeated ${l} ${drs} && continue - drs+=" ${l} " - done - done < ${f} - done - - echo ${drs} -} - -read_ldso_conf() { - local drs=" " - - while read line; do - # Sanitize the line - see ldconfig(8) for delimiters - # Note: bash read turns tabs into spaces and read already - # delimits on newlines with the default $IFS - line=${line%%#*} # Remove comments - line=${line//:/ } # Change colon delimiter to space - line=${line//,/ } # Change comma delimiter to space - - next=0 - for l in ${line}; do - if [[ ${next} == 1 ]]; then - next=0 - drs=$(expand ${l} ${drs}) - elif [[ ${l} == "include" ]]; then - next=1 - else - # glibc's ldconfig silently skips non directories - if [[ -d ${l} ]]; then - repeated ${l} ${drs} && continue - drs+=" ${l} " - fi - fi - done - done < ${1} - - echo ${drs} -} - -sanitize() { - local drs=$@ - - repeated "/lib" ${drs} || drs="/lib ${drs}" - repeated "/usr/lib" ${drs} || drs="/usr/lib ${drs}" - - echo ${drs} -} - -changed() { - [[ -f ${ETC_LDSO_PATH} ]] || return 0 - local current=$(<${ETC_LDSO_PATH}) - current=${current//$'\n'/ } - [[ ${current} != ${drs} ]] || return 1 -} - -get_options "$@" - -if [[ ! -e ${LDSO_CONF} ]]; then - echo "${LDSO_CONF} not found" >&2 - exit 1 -fi - -LDSO_CONF_DIR=$(dirname ${LDSO_CONF}) - -drs=$(read_ldso_conf "${LDSO_CONF}") -drs=$(sanitize ${drs}) - -ARCH=@@ARCH@@ -LDSO_PATH="${ROOT}/lib/ld-musl-${ARCH}.so.1" -if [[ ! -e ${LDSO_PATH} ]]; then - echo "${LDSO_PATH} not found" >&2 - exit 1 -fi - -LDSO_ARCH=$(basename ${LDSO_PATH}) -LDSO_NAME=${LDSO_ARCH%.so.1} -ETC_LDSO_PATH="${ROOT}/etc/${LDSO_NAME}.path" - -changed || exit 0 -X=$(mktemp -p /tmp ${LDSO_NAME}.XXXXXX) -for d in ${drs}; do - echo ${d} >> ${X} -done -chmod 644 ${X} -mv ${X} ${ETC_LDSO_PATH} diff --git a/sys-libs/musl/musl-1.2.2-r3.ebuild b/sys-libs/musl/musl-1.2.2-r3.ebuild deleted file mode 100644 index 5d2851eac250..000000000000 --- a/sys-libs/musl/musl-1.2.2-r3.ebuild +++ /dev/null @@ -1,151 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit flag-o-matic toolchain-funcs -if [[ ${PV} == "9999" ]] ; then - EGIT_REPO_URI="git://git.musl-libc.org/musl" - inherit git-r3 -else - SRC_URI="http://www.musl-libc.org/releases/${P}.tar.gz" - KEYWORDS="-* amd64 arm arm64 ~mips ppc ppc64 x86" -fi -GETENT_COMMIT="93a08815f8598db442d8b766b463d0150ed8e2ab" -GETENT_FILE="musl-getent-${GETENT_COMMIT}.c" -SRC_URI+=" - https://dev.gentoo.org/~blueness/musl-misc/getconf.c - https://gitlab.alpinelinux.org/alpine/aports/-/raw/${GETENT_COMMIT}/main/musl/getent.c -> ${GETENT_FILE} - https://dev.gentoo.org/~blueness/musl-misc/iconv.c -" - -export CBUILD=${CBUILD:-${CHOST}} -export CTARGET=${CTARGET:-${CHOST}} -if [[ ${CTARGET} == ${CHOST} ]] ; then - if [[ ${CATEGORY} == cross-* ]] ; then - export CTARGET=${CATEGORY#cross-} - fi -fi - -DESCRIPTION="Light, fast and simple C library focused on standards-conformance and safety" -HOMEPAGE="https://musl.libc.org" -LICENSE="MIT LGPL-2 GPL-2" -SLOT="0" -IUSE="headers-only" - -QA_SONAME="/usr/lib/libc.so" -QA_DT_NEEDED="/usr/lib/libc.so" - -is_crosscompile() { - [[ ${CHOST} != ${CTARGET} ]] -} - -just_headers() { - use headers-only && is_crosscompile -} - -pkg_setup() { - if [ ${CTARGET} == ${CHOST} ] ; then - case ${CHOST} in - *-musl*) ;; - *) die "Use sys-devel/crossdev to build a musl toolchain" ;; - esac - fi - - # fix for #667126, copied from glibc ebuild - # make sure host make.conf doesn't pollute us - if is_crosscompile || tc-is-cross-compiler ; then - CHOST=${CTARGET} strip-unsupported-flags - fi -} - -src_unpack() { - if [[ ${PV} == 9999 ]]; then - git-r3_src_unpack - else - unpack "${P}.tar.gz" - fi - mkdir misc || die - cp "${DISTDIR}"/getconf.c misc/getconf.c || die - cp "${DISTDIR}/${GETENT_FILE}" misc/getent.c || die - cp "${DISTDIR}"/iconv.c misc/iconv.c || die -} - -src_prepare() { - default - - # Expand gethostid instead of being just a stub - eapply "${FILESDIR}/${PN}-1.2.2-gethostid.patch" -} - -src_configure() { - tc-getCC ${CTARGET} - just_headers && export CC=true - - local sysroot - is_crosscompile && sysroot="${EPREFIX}"/usr/${CTARGET} - ./configure \ - --target=${CTARGET} \ - --prefix=${sysroot}/usr \ - --syslibdir=${sysroot}/lib \ - --disable-gcc-wrapper || die -} - -src_compile() { - emake obj/include/bits/alltypes.h - just_headers && return 0 - - emake - if [[ ${CATEGORY} != cross-* ]] ; then - emake -C "${T}" getconf getent iconv \ - CC="$(tc-getCC)" \ - CFLAGS="${CFLAGS}" \ - CPPFLAGS="${CPPFLAGS}" \ - LDFLAGS="${LDFLAGS}" \ - VPATH="${WORKDIR}/misc" - fi - - $(tc-getCC) ${CFLAGS} -c -o libssp_nonshared.o "${FILESDIR}"/stack_chk_fail_local.c || die - $(tc-getAR) -rcs libssp_nonshared.a libssp_nonshared.o || die -} - -src_install() { - local target="install" - just_headers && target="install-headers" - emake DESTDIR="${D}" ${target} - just_headers && return 0 - - # musl provides ldd via a sym link to its ld.so - local sysroot - is_crosscompile && sysroot=/usr/${CTARGET} - local ldso=$(basename "${D}"${sysroot}/lib/ld-musl-*) - dosym ${sysroot}/lib/${ldso} ${sysroot}/usr/bin/ldd - - if [[ ${CATEGORY} != cross-* ]] ; then - # Fish out of config: - # ARCH = ... - # SUBARCH = ... - # and print $(ARCH)$(SUBARCH). - local arch=$(awk '{ k[$1] = $3 } END { printf("%s%s", k["ARCH"], k["SUBARCH"]); }' config.mak) - [[ -e "${D}"/lib/ld-musl-${arch}.so.1 ]] || die - cp "${FILESDIR}"/ldconfig.in "${T}" || die - sed -e "s|@@ARCH@@|${arch}|" "${T}"/ldconfig.in > "${T}"/ldconfig || die - into / - dosbin "${T}"/ldconfig - into /usr - dobin "${T}"/getconf - dobin "${T}"/getent - dobin "${T}"/iconv - echo 'LDPATH="include ld.so.conf.d/*.conf"' > "${T}"/00musl || die - doenvd "${T}"/00musl - dolib.a libssp_nonshared.a - fi -} - -pkg_postinst() { - is_crosscompile && return 0 - - [ "${ROOT}" != "/" ] && return 0 - - ldconfig || die -} diff --git a/sys-libs/musl/musl-1.2.2-r4.ebuild b/sys-libs/musl/musl-1.2.2-r4.ebuild deleted file mode 100644 index 868577f61ad2..000000000000 --- a/sys-libs/musl/musl-1.2.2-r4.ebuild +++ /dev/null @@ -1,167 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit eapi8-dosym flag-o-matic toolchain-funcs -if [[ ${PV} == "9999" ]] ; then - EGIT_REPO_URI="git://git.musl-libc.org/musl" - inherit git-r3 -else - SRC_URI="http://www.musl-libc.org/releases/${P}.tar.gz" - KEYWORDS="-* amd64 arm arm64 ~mips ppc ppc64 x86" -fi -GETENT_COMMIT="93a08815f8598db442d8b766b463d0150ed8e2ab" -GETENT_FILE="musl-getent-${GETENT_COMMIT}.c" -SRC_URI+=" - https://dev.gentoo.org/~blueness/musl-misc/getconf.c - https://gitlab.alpinelinux.org/alpine/aports/-/raw/${GETENT_COMMIT}/main/musl/getent.c -> ${GETENT_FILE} - https://dev.gentoo.org/~blueness/musl-misc/iconv.c -" - -export CBUILD=${CBUILD:-${CHOST}} -export CTARGET=${CTARGET:-${CHOST}} -if [[ ${CTARGET} == ${CHOST} ]] ; then - if [[ ${CATEGORY} == cross-* ]] ; then - export CTARGET=${CATEGORY#cross-} - fi -fi - -DESCRIPTION="Light, fast and simple C library focused on standards-conformance and safety" -HOMEPAGE="https://musl.libc.org" -LICENSE="MIT LGPL-2 GPL-2" -SLOT="0" -IUSE="headers-only" - -QA_SONAME="/usr/lib/libc.so" -QA_DT_NEEDED="/usr/lib/libc.so" - -is_crosscompile() { - [[ ${CHOST} != ${CTARGET} ]] -} - -just_headers() { - use headers-only && is_crosscompile -} - -pkg_setup() { - if [ ${CTARGET} == ${CHOST} ] ; then - case ${CHOST} in - *-musl*) ;; - *) die "Use sys-devel/crossdev to build a musl toolchain" ;; - esac - fi - - # fix for #667126, copied from glibc ebuild - # make sure host make.conf doesn't pollute us - if is_crosscompile || tc-is-cross-compiler ; then - CHOST=${CTARGET} strip-unsupported-flags - fi -} - -src_unpack() { - if [[ ${PV} == 9999 ]]; then - git-r3_src_unpack - else - unpack "${P}.tar.gz" - fi - mkdir misc || die - cp "${DISTDIR}"/getconf.c misc/getconf.c || die - cp "${DISTDIR}/${GETENT_FILE}" misc/getent.c || die - cp "${DISTDIR}"/iconv.c misc/iconv.c || die -} - -src_prepare() { - default - - # Expand gethostid instead of being just a stub - eapply "${FILESDIR}/${PN}-1.2.2-gethostid.patch" -} - -src_configure() { - tc-getCC ${CTARGET} - just_headers && export CC=true - - local sysroot - is_crosscompile && sysroot="${EPREFIX}"/usr/${CTARGET} - ./configure \ - --target=${CTARGET} \ - --prefix=${sysroot}/usr \ - --syslibdir=${sysroot}/lib \ - --disable-gcc-wrapper || die -} - -src_compile() { - emake obj/include/bits/alltypes.h - just_headers && return 0 - - emake - if [[ ${CATEGORY} != cross-* ]] ; then - emake -C "${T}" getconf getent iconv \ - CC="$(tc-getCC)" \ - CFLAGS="${CFLAGS}" \ - CPPFLAGS="${CPPFLAGS}" \ - LDFLAGS="${LDFLAGS}" \ - VPATH="${WORKDIR}/misc" - fi - - $(tc-getCC) ${CFLAGS} -c -o libssp_nonshared.o "${FILESDIR}"/stack_chk_fail_local.c || die - $(tc-getAR) -rcs libssp_nonshared.a libssp_nonshared.o || die -} - -src_install() { - local target="install" - just_headers && target="install-headers" - emake DESTDIR="${D}" ${target} - just_headers && return 0 - - # musl provides ldd via a sym link to its ld.so - local sysroot - is_crosscompile && sysroot=/usr/${CTARGET} - local ldso=$(basename "${D}"${sysroot}/lib/ld-musl-*) - dosym ${sysroot}/lib/${ldso} ${sysroot}/usr/bin/ldd - - if [[ ${CATEGORY} != cross-* ]] ; then - # Fish out of config: - # ARCH = ... - # SUBARCH = ... - # and print $(ARCH)$(SUBARCH). - local arch=$(awk '{ k[$1] = $3 } END { printf("%s%s", k["ARCH"], k["SUBARCH"]); }' config.mak) - - if [[ ! -e "${ED}"/lib/ld-musl-${arch}.so.1 ]] ; then - # During cross (using crossdev), when emerging sys-libs/musl, - # if /usr/lib/libc.so.1 doesn't exist on the system, installation - # would fail. - # - # The musl build system seems to create a symlink: - # ${D}/lib/ld-musl-${arch}.so.1 -> /usr/lib/libc.so.1 (absolute) - # During cross, there's no guarantee that the host is using musl - # so that file may not exist. Use a relative symlink within ${D} - # instead. - dosym8 -r /usr/lib/libc.so /lib/ld-musl-${arch}.so.1 - - # If it's still a dead symlnk, OK, we really do need to abort. - [[ -e "${ED}"/lib/ld-musl-${arch}.so.1 ]] || die - fi - - cp "${FILESDIR}"/ldconfig.in "${T}" || die - sed -e "s|@@ARCH@@|${arch}|" "${T}"/ldconfig.in > "${T}"/ldconfig || die - into / - dosbin "${T}"/ldconfig - into /usr - dobin "${T}"/getconf - dobin "${T}"/getent - dobin "${T}"/iconv - echo 'LDPATH="include ld.so.conf.d/*.conf"' > "${T}"/00musl || die - doenvd "${T}"/00musl - dolib.a libssp_nonshared.a - fi -} - -pkg_postinst() { - is_crosscompile && return 0 - - [ "${ROOT}" != "/" ] && return 0 - - ldconfig || die -} diff --git a/sys-libs/musl/musl-1.2.2-r6.ebuild b/sys-libs/musl/musl-1.2.2-r6.ebuild deleted file mode 100644 index 79a60682c79f..000000000000 --- a/sys-libs/musl/musl-1.2.2-r6.ebuild +++ /dev/null @@ -1,167 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit eapi8-dosym flag-o-matic toolchain-funcs -if [[ ${PV} == "9999" ]] ; then - EGIT_REPO_URI="git://git.musl-libc.org/musl" - inherit git-r3 -else - SRC_URI="http://www.musl-libc.org/releases/${P}.tar.gz" - KEYWORDS="-* amd64 arm arm64 ~mips ppc ppc64 x86" -fi -GETENT_COMMIT="93a08815f8598db442d8b766b463d0150ed8e2ab" -GETENT_FILE="musl-getent-${GETENT_COMMIT}.c" -SRC_URI+=" - https://dev.gentoo.org/~blueness/musl-misc/getconf.c - https://gitlab.alpinelinux.org/alpine/aports/-/raw/${GETENT_COMMIT}/main/musl/getent.c -> ${GETENT_FILE} - https://dev.gentoo.org/~blueness/musl-misc/iconv.c -" - -export CBUILD=${CBUILD:-${CHOST}} -export CTARGET=${CTARGET:-${CHOST}} -if [[ ${CTARGET} == ${CHOST} ]] ; then - if [[ ${CATEGORY} == cross-* ]] ; then - export CTARGET=${CATEGORY#cross-} - fi -fi - -DESCRIPTION="Light, fast and simple C library focused on standards-conformance and safety" -HOMEPAGE="https://musl.libc.org" -LICENSE="MIT LGPL-2 GPL-2" -SLOT="0" -IUSE="headers-only" - -QA_SONAME="/usr/lib/libc.so" -QA_DT_NEEDED="/usr/lib/libc.so" - -is_crosscompile() { - [[ ${CHOST} != ${CTARGET} ]] -} - -just_headers() { - use headers-only && is_crosscompile -} - -pkg_setup() { - if [ ${CTARGET} == ${CHOST} ] ; then - case ${CHOST} in - *-musl*) ;; - *) die "Use sys-devel/crossdev to build a musl toolchain" ;; - esac - fi - - # fix for #667126, copied from glibc ebuild - # make sure host make.conf doesn't pollute us - if is_crosscompile || tc-is-cross-compiler ; then - CHOST=${CTARGET} strip-unsupported-flags - fi -} - -src_unpack() { - if [[ ${PV} == 9999 ]]; then - git-r3_src_unpack - else - unpack "${P}.tar.gz" - fi - mkdir misc || die - cp "${DISTDIR}"/getconf.c misc/getconf.c || die - cp "${DISTDIR}/${GETENT_FILE}" misc/getent.c || die - cp "${DISTDIR}"/iconv.c misc/iconv.c || die -} - -src_prepare() { - default - - # Expand gethostid instead of being just a stub - eapply "${FILESDIR}/${PN}-1.2.2-gethostid.patch" -} - -src_configure() { - tc-getCC ${CTARGET} - just_headers && export CC=true - - local sysroot - is_crosscompile && sysroot="${EPREFIX}"/usr/${CTARGET} - ./configure \ - --target=${CTARGET} \ - --prefix=${sysroot}/usr \ - --syslibdir=${sysroot}/lib \ - --disable-gcc-wrapper || die -} - -src_compile() { - emake obj/include/bits/alltypes.h - just_headers && return 0 - - emake - if [[ ${CATEGORY} != cross-* ]] ; then - emake -C "${T}" getconf getent iconv \ - CC="$(tc-getCC)" \ - CFLAGS="${CFLAGS}" \ - CPPFLAGS="${CPPFLAGS}" \ - LDFLAGS="${LDFLAGS}" \ - VPATH="${WORKDIR}/misc" - fi - - $(tc-getCC) ${CFLAGS} -c -o libssp_nonshared.o "${FILESDIR}"/stack_chk_fail_local.c || die - $(tc-getAR) -rcs libssp_nonshared.a libssp_nonshared.o || die -} - -src_install() { - local target="install" - just_headers && target="install-headers" - emake DESTDIR="${D}" ${target} - just_headers && return 0 - - # musl provides ldd via a sym link to its ld.so - local sysroot - is_crosscompile && sysroot=/usr/${CTARGET} - local ldso=$(basename "${D}"${sysroot}/lib/ld-musl-*) - dosym ${sysroot}/lib/${ldso} ${sysroot}/usr/bin/ldd - - if [[ ${CATEGORY} != cross-* ]] ; then - # Fish out of config: - # ARCH = ... - # SUBARCH = ... - # and print $(ARCH)$(SUBARCH). - local arch=$(awk '{ k[$1] = $3 } END { printf("%s%s", k["ARCH"], k["SUBARCH"]); }' config.mak) - - if [[ ! -e "${ED}"/lib/ld-musl-${arch}.so.1 ]] ; then - # During cross (using crossdev), when emerging sys-libs/musl, - # if /usr/lib/libc.so.1 doesn't exist on the system, installation - # would fail. - # - # The musl build system seems to create a symlink: - # ${D}/lib/ld-musl-${arch}.so.1 -> /usr/lib/libc.so.1 (absolute) - # During cross, there's no guarantee that the host is using musl - # so that file may not exist. Use a relative symlink within ${D} - # instead. - dosym8 -r /usr/lib/libc.so /lib/ld-musl-${arch}.so.1 - - # If it's still a dead symlnk, OK, we really do need to abort. - [[ -e "${ED}"/lib/ld-musl-${arch}.so.1 ]] || die - fi - - cp "${FILESDIR}"/ldconfig.in-r1 "${T}"/ldconfig.in || die - sed -e "s|@@ARCH@@|${arch}|" "${T}"/ldconfig.in > "${T}"/ldconfig || die - into / - dosbin "${T}"/ldconfig - into /usr - dobin "${T}"/getconf - dobin "${T}"/getent - dobin "${T}"/iconv - echo 'LDPATH="include ld.so.conf.d/*.conf"' > "${T}"/00musl || die - doenvd "${T}"/00musl - dolib.a libssp_nonshared.a - fi -} - -pkg_postinst() { - is_crosscompile && return 0 - - [ "${ROOT}" != "/" ] && return 0 - - ldconfig || die -} diff --git a/sys-libs/musl/musl-1.2.2-r7.ebuild b/sys-libs/musl/musl-1.2.2-r7.ebuild index e03ad57480ff..de91db9af87b 100644 --- a/sys-libs/musl/musl-1.2.2-r7.ebuild +++ b/sys-libs/musl/musl-1.2.2-r7.ebuild @@ -161,7 +161,7 @@ src_install() { pkg_postinst() { is_crosscompile && return 0 - [ "${ROOT}" != "/" ] && return 0 + [ -n "${ROOT}" ] && return 0 ldconfig || die } diff --git a/sys-libs/musl/musl-1.2.2-r8.ebuild b/sys-libs/musl/musl-1.2.2-r8.ebuild index c83d3cbb6c04..ee20a7659de3 100644 --- a/sys-libs/musl/musl-1.2.2-r8.ebuild +++ b/sys-libs/musl/musl-1.2.2-r8.ebuild @@ -167,7 +167,7 @@ src_install() { pkg_postinst() { is_crosscompile && return 0 - [ "${ROOT}" != "/" ] && return 0 + [ -n "${ROOT}" ] && return 0 ldconfig || die } diff --git a/sys-libs/musl/musl-1.2.3.ebuild b/sys-libs/musl/musl-1.2.3.ebuild index 26ac4bb3ec3b..07ab1388cef8 100644 --- a/sys-libs/musl/musl-1.2.3.ebuild +++ b/sys-libs/musl/musl-1.2.3.ebuild @@ -167,7 +167,7 @@ src_install() { pkg_postinst() { is_crosscompile && return 0 - [ "${ROOT}" != "/" ] && return 0 + [ -n "${ROOT}" ] && return 0 ldconfig || die } diff --git a/sys-libs/musl/musl-9999.ebuild b/sys-libs/musl/musl-9999.ebuild index 26ac4bb3ec3b..07ab1388cef8 100644 --- a/sys-libs/musl/musl-9999.ebuild +++ b/sys-libs/musl/musl-9999.ebuild @@ -167,7 +167,7 @@ src_install() { pkg_postinst() { is_crosscompile && return 0 - [ "${ROOT}" != "/" ] && return 0 + [ -n "${ROOT}" ] && return 0 ldconfig || die } diff --git a/sys-libs/ncurses/Manifest b/sys-libs/ncurses/Manifest index f38467f98052..33bdfaa809e2 100644 --- a/sys-libs/ncurses/Manifest +++ b/sys-libs/ncurses/Manifest @@ -6,11 +6,65 @@ AUX ncurses-6.2_p20210123-cppflags-cross.patch 1246 BLAKE2B f2e6d5b3f106639435f1 DIST ncurses-6.2-20210619-patch.sh.bz2 836967 BLAKE2B f210bf25c33f11d67e54a6f416aae75f0a976880ea543408780fd3a8dc992ee8d9999bf15c925c79504be0f30ade4bbfaed763abedd2b2d6b35de65b353a6314 SHA512 b8392bf6c0b7570766ae31a043df311660201265dfe3e2e49425b1e2aa08c72030b5f5b6c7871532897596262c88a7192e3ff2adfdc618f1b9c13c22c373eeb3 DIST ncurses-6.2.tar.gz 3425862 BLAKE2B 6680cd7a369a4cb8234442a70869c283f0db6db9d7da1da2a7a5c519eb862a2c9b9411957d99f9ebb5089cad00b42e1ca6bc0784327461113df2eeaec695913c SHA512 4c1333dcc30e858e8a9525d4b9aefb60000cfc727bc4a1062bace06ffc4639ad9f6e54f6bdda0e3a0e5ea14de995f96b52b3327d9ec633608792c99a1e8d840d DIST ncurses-6.3-20211026.patch.gz 117363 BLAKE2B 74c6c80271edc3b69d17c891436e48ee0579b3d16dd1bbd42f953be5b6ef07596343abd34f4d508b0cb371c1c0febfec12d65e938739892a617c8b141f599753 SHA512 25a99bc9cb7a18eb8fd16a0f887bae90c2551e0228b077d28f7217e58190f4b19a526350c999922f7394a1b749e834643c1bf5f339248b842717c146a3ec1df4 +DIST ncurses-6.3-20211026.patch.gz.asc 729 BLAKE2B 470aa4aad00d0dfa9924ca3247d720b720563bfe5a3b5c9571acb4c74a7b3fb55adbae6b0aa854eb0e29c56d7949fa1e3b6d959c25681f1b46c23c96a3c0e054 SHA512 276e8a09ee6fddf20be38b9d8a6f93cbafcec51ed17de375b9d2f4f6c34ff546fdbd81083f54aba1a5aaea5c2c691c25754dfca47568c5b70197437420dd2581 DIST ncurses-6.3-20211030.patch.gz 46304 BLAKE2B 6fa0f5223c97dc045117c208b92e75aad61638585506aeed0fa5cd6b215f67d212fc780e527f1281ae77063edb1ef9b3a3671b00d306fe322c3ca1b34c1d4d81 SHA512 90440af3959a17388999f07a3b40f770c5511bceda6a39d4c56f867dc5ae8494e49cfb700eb79e31422ebfd1b1990f6d7912083c688963139446f1e43e9d08c8 +DIST ncurses-6.3-20211030.patch.gz.asc 729 BLAKE2B af1715038a877ebe10660872bed82d536df410f8987508aca7ffed6d19fcdc95a2f5bd8f527b5a30580b07d7c770fade7bac2cfce3e20315faf472eaeb075d5f SHA512 526ff0ff7030cef711e92150fe0f2be7076bf8fe8c7b5fff9ee709c202e747c921479bf3efc2c3da8df2f0d7926de6b1571d03270e49bf64bc539193b0a3020d DIST ncurses-6.3-20211106.patch.gz 3995 BLAKE2B fbacfd6bfbf64b2935d47f648bd74c93136ea8d17b51e218b80a24695b52246ce8ec01704a0636692bae72815c8b93dec8573570dfd126b19645ec90926e818a SHA512 799819ed01967387fdca4755ab44401f0dc90306f6f771c894ce6702c929e2ff87f45d3e1c2e683cc32bb01553f3332c3a7591a00b7a4bdff93da25307379bdc +DIST ncurses-6.3-20211106.patch.gz.asc 729 BLAKE2B a60360000338be6f19e9769d901b03917a632d2da961523ea81191b44b04430d757ba0dea30a6b02e29b324dffdc447cf1fe729428138e0e71b138d84aed26b4 SHA512 3902c88633078ccfebda4ce67dbf6e4ccf0e8be296a0193d07ccf51b56dd75c34f326f885330c90d81aa0d487aad513eb797c3916aba682a8ed6673b51483c84 +DIST ncurses-6.3-20211113.patch.gz 116573 BLAKE2B 5c0926fa97628e1e15f10f47e3c668d5867c066b03b80ec1be2cada6a48ec02aca81dbf997718fc1d9bbdd36016de62981eb19e875aac4b4c531c90c0a2f1c48 SHA512 2225859cb6770d31cd5d147f1b767c61ad28534542b64e3e22a9630977f2cabcdad11313d533c0c462f53a6e0dc17cd80985ca759d796658775676720e50998a +DIST ncurses-6.3-20211113.patch.gz.asc 729 BLAKE2B 16e9645ea71db7afa7b3a52831b04920e9d7d960bfef074361ac77264a28b9bd95a6240e1e3e2e96373615f2915a35acf6d3c21b63a6c4130fd35bf3c65dbbe2 SHA512 7d5b8740512b31bc5b6ace1cc9ebbdf36f2092bc88aa3994f757085ac2add814648daa70c18410a4433fb6327115d9b1762eaf93f9d337de3e10a9707f411f1f +DIST ncurses-6.3-20211115.patch.gz 2259 BLAKE2B bf3ecd64919707bdf25b1db20d99c68d47d122406bcc4884c370d9b13c3df4bd8fd5e913d3f5ac7dcfbec58f4910d2d42176c32d879095c45e2513cc4c933a22 SHA512 7571da910f51152200d2fa76659d1a253ceb7022c00bfa587188c7ad1f6896ed836eafa3e724933fe3c4bfc03aaf6ac1d51102c5db1a3e37f944f3b15d50f9db +DIST ncurses-6.3-20211115.patch.gz.asc 729 BLAKE2B 8b853439790674b22029d4d71a65b29019bfc1d2109b44cc2d08a08cc396bd5b784ca8169e4a8edc1fc4e9a08611b89c50f9e3a18781aef0b5a56ea20b335117 SHA512 5427ac588426bba6e9b579faa6c1e1b17839fe2e3327dcd76ac187a46792693da327b279eef35c43e39b08f755cf930e7efe03a753d8b8ba326c039408131d60 +DIST ncurses-6.3-20211120.patch.gz 122226 BLAKE2B 390bb1bee13b83d282ce31a26327bf46000d74851f5d2a363e04915ef73ca5ffaf365255d6696b0c4d10fbb1fb124baa07fa0b841f378b018a37ac1a741aa579 SHA512 37eca2eb6478332e095c139eaa0ff740b8bdf82da4a1c0e990010ffaa3385b38a1c6956ff3f1dc182894384d9face8c265d35faa3ffd0a517c404890b51d177e +DIST ncurses-6.3-20211120.patch.gz.asc 729 BLAKE2B dd03ec2ae80bfb83ebce5b55410914ce3d5015da2933984b04d2e4d6170b42cccf109bbe2312b4d77c83933f9bad9af7f19e8b1ff23f3791b99238c2d0834891 SHA512 5693a92e631718c6f2bc791e994f5e225a70cd6eab9df5b5da2c180b96480e77c0e5485f48653cffdfe267048175523b7dc42414083500310fb87554043dd19c +DIST ncurses-6.3-20211127.patch.gz 38780 BLAKE2B b9e6e1c065c7aa97809e65a0af2bb398e7d2ed17c95c35bc4320451ad47efd1a292dfb74d2ff53ff12a68c9cabd6464fe7be40e389c35c4f99ebdc66ec7ad77f SHA512 e2971c8606173da0e044630622506fdef4b83e968b2c501c4e1db9b0b4e54cf93d76570fdacf0edeff986d9cdd728471050c9365881092817b54bd83917fdb25 +DIST ncurses-6.3-20211127.patch.gz.asc 729 BLAKE2B 11ccba2a3310a70b228d0df1b088501ba30f159878662791ce3a294b48e0819c6619dff8763590cdfd74d6e2dc24a5897705808e6da64510d49eea7889e3b1a0 SHA512 8949ab4d8e6b124769bac40becf2853bc0f370814fdd013c7b0c638b9008c1628e5b7cc372f95731549a5cb184ac6d80172f985e114d186a30cebd67268dae61 +DIST ncurses-6.3-20211204.patch.gz 29875 BLAKE2B ce2c8ada23ea01d22baa8d68bb34bfebd3913ce8dd787f1a3825eb07c7a8d83dfe4317e755fc2a16469f6936022a2c45155ea5e3aaf9d01a5caaf124cf1eede2 SHA512 30454d917631cfad474191dbb7e1318e5370e829cab4b63470f51e9c13c953975d999a41cb10a35dfabcf038fe666247d32659f597a6e8a8bac572a4fe6b3fd6 +DIST ncurses-6.3-20211204.patch.gz.asc 729 BLAKE2B b6cc88dd5ac8edc1afa60baccb8af84daf00d8806822f04284c78f0ed132f7fcd839f4d39bc62ff58d48bd3fbf504baab9bb9815a4c236f0bbdbcf23798be71e SHA512 5dbbd09311d4f5bcf1697373945db190925c0d7d1e0aa3d65f83608e34a9c407a74df8553581ec5a49d634e94261ba8f5fac26dbe9718177df173fc4e52543e2 +DIST ncurses-6.3-20211211.patch.gz 5277 BLAKE2B be82f85d49e28a25ef8c26dda4355ac111fab68917d157af05289b518a669e7e42a1f6bf65a813bb3d0747e56cd2723ee1dfa28dc02501ae8350ac74e01c1b39 SHA512 c57157bc401190867aad64f4503e438777606786814de32b38e44df6d73733b91b5c5ca4e173035dd5ccfddbdca2814fdad7a1781f6a144adae4d96d2c6e7e78 +DIST ncurses-6.3-20211211.patch.gz.asc 729 BLAKE2B 01ba5f095250a316fdf30f3f15032804db351c5995dda85820e67cacbb62a0d8a750c4bdfbe6deb9654f01ef124a78ef89b9fe41e4b494561ffa5a79f243c72e SHA512 17973f01a765d121597b3cff6fed2feffe5ff895c4589ea08a86134ba3b9913742f740deba9369d2e7aa89aa033c1925b4d49518d188cae57ba83ff5a3668225 +DIST ncurses-6.3-20211219.patch.gz 6874 BLAKE2B a5b98f1a0fc7b31340713f5aa2a0106184e270ac2312851a5a92ff6947d70d86e9af849a3830f5306c17bad58fbda4640b4cc15715b23cb6e2411b7f86ba0282 SHA512 c38b31e133d336fb50936cc176a04fa076c197c6e6fe56beb840002d6ac65c76c4a3d1f2506122b1095d680ce254a886b52c56194f2fe586edf69355d68f2a45 +DIST ncurses-6.3-20211219.patch.gz.asc 729 BLAKE2B 2ff431a67bf8ac671ec330c8ea7c61e6467cf2c7acb7760ebe035b72a05e675b1945e891d55943f1dfe0fed0c29f91731094ae5d198e11af6d9d0a21534282ed SHA512 7d6a3a0e4a51c885fa2ef37c71f089b7493daa57a59cb02188bef64597657fabb7dc20fce1d55bbd4c368987becdc1dcb89cdce14b45576ce7657522046d8b2b +DIST ncurses-6.3-20211225.patch.gz 205972 BLAKE2B 34ea7243f7f8ecff69e60a90fc1a0a9b9d69b4e87227714d7ae8f603c3b16f82466c96987e7696fbb45005dbaa2c732f85a79b4fc39a61f8555bac661f27ba53 SHA512 1c2c1687233cfc72cf050883bbee60d88ed179e0fa865dd752985e83add68b5278e498b2e9bd2658b00ef7791e04fc456f43e82fcbb8cb4ed46365bff3c336d8 +DIST ncurses-6.3-20211225.patch.gz.asc 729 BLAKE2B efc0b1a5cf93c71912ab6a7232ddc7c50d2369a955992e6e60f8d86e56aee3cf539c82e082951d5b6215bbde835219588619ae95525b08a54486d3c75ffe3658 SHA512 f2bb524f604883858015a23fbeb698db8483afb88012b3271bfa10935fc71845088b7b5c9fcf950ea9fc2aaa0e2baa4147a8d9f4e42902d3be9f424ce01f7ad4 +DIST ncurses-6.3-20220101.patch.gz 11576 BLAKE2B 76b2ff3bb028bd6ebbcfd0f79e20aa5fd06806279c569e2640e9b6de83899913ef8755c37888a65cdce3ee701db2ef704181de6d36417abfc158fe651d5c0e68 SHA512 07dbf0def9d21a6b701f4f3d18a8f82d5115f8e4d826a57bf5914534029c79aad2b539f60ab5b1795886894f490a9f604acddce3a77cdd474d80db5428568b97 +DIST ncurses-6.3-20220101.patch.gz.asc 729 BLAKE2B c86a9999b42fb312c1452f619269bdc5c1293c19cb8adb2436b5670acf706800a951d266f2c1b78caf1ab10608933e99fc49e761eaef1a658b0ed35fc4816ea9 SHA512 1ddbcdef1e7b5a04dbf0a7b371cd775337ca3ac39247f5215e5c6d099d4758367b98c28a6d5568a08bdcdcb7ff29a7ef2936b12b431d9a0e00eaad2cc78976d4 +DIST ncurses-6.3-20220115.patch.gz 294400 BLAKE2B 97293251ae0c6322df5e4663fca4991e5a1978ad63f1d7d015027dfd6e5dc5e1a52d46683199da2efb5f7f18e7b5424ff7702d34d0dba5eb4ba83dbd85039078 SHA512 0e42e298fa22bf2a463870576ac697ae71320eacfd3ee41bc4b41a229f05603cbdf52bd4e7b724de83c41c2587469deb1e2f876a5e6eabe1df1799263f5c1a87 +DIST ncurses-6.3-20220115.patch.gz.asc 729 BLAKE2B d1288c86c4fdd9890dc8654f81e2e8c956412173a03f26f0018234d6bad6fae6043df8f65d1bf1942c8ea8de68f631d6cd6e8741c932277b85fe9735ec9414a7 SHA512 cf3aafd09105362d8c896d3de73a49ed1f19818a78bd2f2a9f1f8ece218dc01159e65793ef4010d5f5a850fa9057f4f2723d745e6fbca7530a4e8c468005bd41 +DIST ncurses-6.3-20220122.patch.gz 106624 BLAKE2B 33d12cec7df1553cd2c4c3e09152f53ef5b8e86a4cf9bb5afadcc92065f93bd0734f761be088f13f150ec9e8e4d7d8159ea22b2c2bf0bec824e25078d2ea9251 SHA512 c585ba9f3c27314cfb9097d8cf9feb1653014d676670f1644cefffb347ef70a7172ca56c20015531c7117eb23909d55815a295850738499e58c4d5306ec5d747 +DIST ncurses-6.3-20220122.patch.gz.asc 729 BLAKE2B fb8f0e236ec7582b1adfa9c7facb959fe1b88ffcee494308dec6fb4ece6e518d1aae3af5c52e0b82f59660e60c3c01dd56037e1b107e25240a12a03f4300f91a SHA512 609c55b3028a89d4ff09774279435bad58d8d0e179042dafe2c61092f32b5edcad2397cdd8a6eeb7ab61322064fd1b24d8b6b960adc6ede0b7254c3b12284fe1 +DIST ncurses-6.3-20220129.patch.gz 117854 BLAKE2B 1dce0288609407e6bc803ffc8f61b0c33f8a1dcf1c6c4303cd4c730741e4f0b68b7fb7e7b79c1a29dc1c7cde7f2e5aa7b615402b13ee3af7a7c28cae1ce804d0 SHA512 3f573b645f67279e0394352456d844d289be89e2ca70d832d24fe945ce2e6b017273eb305171e5a704492ac3d600de05e5e6c1e268a939bea4b5cfd74b292753 +DIST ncurses-6.3-20220129.patch.gz.asc 729 BLAKE2B a6b8fa01d3a5c8c3f4055757ac23a2700e5b8627214f8606f25c82f560f1637ff2db70a872f43a9aa25b64e3efb3c98bb9980b0673a35ca13073c4f9d5063fa4 SHA512 b2906c5d27312df3c6e79ab486753420ab83e9562d1b3d35971b5ed7f6d15a1ad7f8a3b18bafe3e5e8c6ef9b09d32dade373269ebfbbe9ce5d2b417e0848a5d9 +DIST ncurses-6.3-20220205.patch.gz 48085 BLAKE2B 1d1bd94138379e1947941c87c1ef6cb76e1e5dcf49e04985b59f1d111a524976629f94ece79f9ec93a2c773f8dda9bde0b90b1d34ed1ec51a573d4f1587cad86 SHA512 166f3f6687f52c18169d67e5cd7338aee7ec283898c522e964a4d9f59b20a5754d6865e0268c5297ef7c4b7fc34b8607f00129aecb5b7ab616788a0b98f674b2 +DIST ncurses-6.3-20220205.patch.gz.asc 729 BLAKE2B cace085a89847d3d19eab5049c64afb187b1419dd7ea6ac1e9cd8c037aa83897788cbddc3e97ebe15d32f09e1c5156664e5d3af5727edf6ba6b739025582f984 SHA512 c2176c35fe7044ba82869a928c614faec3a894521b3becbe37277ab95cc5615fb1b33b935d6394a4f75dad15015e5203bcb29001f68fa05420289145729638b3 +DIST ncurses-6.3-20220212.patch.gz 41501 BLAKE2B a0257b9a740a14090e46e85b67a59e754018e77d6484b30eec6f5a3fa84dddf329078b94d4425800ee45a85a31a9c47b1ccc25ed32fdc2f433465c3238e3c8e7 SHA512 1f596ad2f806411a2e89ebc8b74e9d44754fcdd3baa0c727fe610121fe64eb27e1c35871545dd7ab743930e1c49c2d96581aed0a0b37d0a33d2ee7c590c0c42e +DIST ncurses-6.3-20220212.patch.gz.asc 729 BLAKE2B ed7466b3294baeda59fdd56df93583662a257efb3434ff2817d31994cd5218605ccd535e95ce668f741693fec9fcc5f39223dd67884668aee777bfc9eeff55ce SHA512 3394f9c37a0a1d7e19becb023542534c734f15f030ff725ba54ae010417898be2935d6820f7f7f6d76a0abc3663a9a7f4ccf98a9571c03123f4ba8321ea5c9c1 +DIST ncurses-6.3-20220219.patch.gz 6845 BLAKE2B 660191d5561af0ca763ba8377899ae5793a48e73fec27ef5d9ae00e28cb53edbe96c6ee0480bc1de321ec19cbc8c02f7330861811f3a000b603ce6bdd9921070 SHA512 41d9e29f4f673a6c930f8637dbbf7c55f427aad28088f96ddab824b560b462015dcc21a371551a087adb44dde4797abe9cde2ea07e2537e81216b17b330a14e7 +DIST ncurses-6.3-20220219.patch.gz.asc 729 BLAKE2B e216aa89dbe7d7ea0bafa6d91aca090ac316844ec6d1b1d36da8452bc623e3897722f19b3fb1cc89174ad1aa41a6e8fab4d1b761081090c2bbf338fa027a534d SHA512 555f22dfb585e7b93727f20e46fb6fa77cb633bafdfe6ca3cf3bfabd462a4761f23bb341fbb25c1518b8d9652388f23d671e15f7acecd01755c55d5fa48d3e67 +DIST ncurses-6.3-20220226.patch.gz 5429 BLAKE2B fd0b50218992daf8e5228cf77fe72db651bba494d9699d0057e0e676fc01b699ff4d8f0fb9636faac5ea3fc1936d59d27403a5a5e89f6aa3c42f7c101d9dcb35 SHA512 0d77a955c1f24b7ba58d830cf5c256bcf5946f535b29077484e4ce4ae871a0803fc0db70c66d177ad427da797f7ae30b9a08ff56cd6d0b5f37dd3f231bd67b35 +DIST ncurses-6.3-20220226.patch.gz.asc 729 BLAKE2B e1b83208bf9e9ca9558b3e93f824766765159fcf3b5b4c7a4d92415229a8ef653eb1503446cc5fc8088a354e08cf6fbefb5fcc28e995c8c1718dc77b59552267 SHA512 972f65a645490ef425a6f7314f859cbf8d1aefe5ce6b0847adad3a457d8fd5634af64becb6542e477d14bdacc72aca00fef213c3d5b51f68258ebaef876aec86 +DIST ncurses-6.3-20220305.patch.gz 3732 BLAKE2B b756ad0d8831c2f0eff78dabf1b45adec7888dedc846a91a94cef739c10057f87bbbe7984a4758aa82a8c146d7cc9eeb356b7321bf529fd54480fe334e0ec608 SHA512 4ced572ac32afc2676896e79acac9145c7b138dafa8ebe0c29b2355bf65169a68df3be8fd273b7b957931f98f39ab0f20ada6081be5e11045d32f91f055116c6 +DIST ncurses-6.3-20220305.patch.gz.asc 729 BLAKE2B ef22a7429cffe8dcfebdbd6e339684b7a96c437e3d0bc3ba3eb02c4e8a537909f14306a4d7ce2d0f0752e1a02975b11ad04aabf27a6ba0aa99f4f486b1fe4826 SHA512 68a73ba690722ecca38099521fd9396e7c46dfab9c1a090f0cb7d1a18480bf027a6b7a5e3f1b0ab92a7ad29b05df1c9f7d4c197e13b9e916b6fcb0c54a472e4e +DIST ncurses-6.3-20220312.patch.gz 3659 BLAKE2B 8ec667f1a615b7fdaf7aeef1c14145ce4c90ad75c8acc474d160c61bf85b13a10fbb6c248a2659dba94db50a9db866c002c2ff429a3bdab8124b1d9b28031364 SHA512 1565f364fa694e2b84f73e9d6ad716b18cdde4f18aeb9bcee8d78d59ed9e995968f7ecea7d307e6738943208ed17bcd459b6b30cc85fa0f7e8ff2c64e2a7b385 +DIST ncurses-6.3-20220312.patch.gz.asc 729 BLAKE2B e5b4cd10b313c7d7f61e3251fddc2c85fbd920b2855d8b9ecb585a1d3acbd5b1bb3a1dcf5043bcb807ab9ecb03c9e711e1625a86ae6adcf6f41b37f8b71b0d21 SHA512 ca819f78d6b5b4c9bfd9e536c6e8ec4ccd9d6c3ad3f00e1e85f5e646e2e5d2b30e8c72ffe91f789a9b8f2268b89f4fbc07798b433a202b263673a187c74774c9 +DIST ncurses-6.3-20220319.patch.gz 3975 BLAKE2B eb9a9896704463e64c0b46721322190cdaaf1bf6d30f3a8b4ef2d815a5cba5dc0ca84674404ef720d0d861cf724b265988e187fec94096f6926633da62933829 SHA512 f642180bc13bc26d8befa48145a66d36f064cd5a4c5891e0eb5e9e463cd7a446280040ce04aa8d7bedacb06d060916fc32ca7f6f66010ee6fbf95c4a367e2c1f +DIST ncurses-6.3-20220319.patch.gz.asc 729 BLAKE2B e6f763a035db48bdfb1bb7c05aa30f91c0e693efebb0f74eebc696a0f5b4acba3655112af6bf9b0d5bb502a5d67dd3416b4f26dc3be5cb775692f1c958aaa911 SHA512 e07dce52dc16d73dcddfcb982b40cb9fb4ff60097e704e9dc56604262cb30eabf2283a4b436e78a8ddf6abca69cc3fef5a2d93d9145658ad4a36022e2b053406 +DIST ncurses-6.3-20220326.patch.gz 4163 BLAKE2B 20f83d6491dfe4c6833c72582dbddc5f69f4356f78251989afc7e689a2f261f477a8db17cea7c084ab798d3ead34dd1204a595e4718255a6c4a3a9735c36b217 SHA512 62210e6bdf5577fea31e2d793d15ba55bf1c89a855e02ebfe82bc918dec3423f70c49756b08a8fbf1a7cd4311ff09a2751f76a4bb7b2924a3eacc96c2ea25634 +DIST ncurses-6.3-20220326.patch.gz.asc 729 BLAKE2B 65254b2f56dd831be92fa8e89359bd52252dc7959a16d99888c372722bf533a7c2cc3b285452af5bc33f0478bb2f143ed74b5f0b57ad9cc74626b4902f0ccdbc SHA512 a60b780f39424b3f712e5fd81fe397b1eaa476026b497c50edd5c6e460eaf320ea9412a0d0ce122bb7bb3cdfe2f473bad5a0bbf923a22cc1bcd04c621aa5c023 +DIST ncurses-6.3-20220402.patch.gz 11483 BLAKE2B 3210094fb4be4d7c2b751ce3d7b4efee71db0c420f0159db846efcd0ae6e85673069b7c39b943346a3b1a1aeda247493aba6bf832eb192fd3729a9585d0c9a66 SHA512 f8ce6ab6ef5df746ecbc6286c5b46ec53ab0f3fed831878f693c8afe49b34f3f2769f2d3078b81799952f7905bf18217069fce7dd52d3126b7e4dc2ae84f5443 +DIST ncurses-6.3-20220402.patch.gz.asc 729 BLAKE2B 0ab44b4bbf10aa0c67dc1022012b1e156c9ce9c57214c5f92e7b3714cdccead69e0a869b9247b799797680f896dd8e86b3a2ca2e9587f5cc11250711ab36006f SHA512 299b5b7c337f95b0621571261b23d3110c963ed0f584f145238049caad52ba325d6982e138545d02041e297cf78f3f1a0f8d08f9162bb7b61885870382df2e06 +DIST ncurses-6.3-20220409.patch.gz 22728 BLAKE2B 7b8514a9fc8b8ddbf5cbf1f6b0cb45895808f6226db726c206ed8490c3abccbf8a8d49e6bcfdcad806414d8aa0d4fce89faac43c60a38ecf71e613ff01f67224 SHA512 1dde730b7fa12efeb2bc7b98012f3e5529630f0aabde2d877046ef85d541dafb5d64488747ddb559f97a3f25d1ec5f716815f9e6c1ce100f4f308bfa86501d20 +DIST ncurses-6.3-20220409.patch.gz.asc 729 BLAKE2B 9d5321cd1990c68ac812691713d941d467dcd2f95c93f2488cf212d4162415b615397546bc397a2907f1b6ae38907dea6f72e3012ecdafa0054a91d59a94ca64 SHA512 8db2631d35ee1d7d07d906fa194e499ed8239acfbfd215e192a2382b1cd998a9ee3d0ad971aab43edb5e91cdbb2a772835a42cf0645b2541c5c7dab9bf4adf74 +DIST ncurses-6.3-20220416.patch.gz 67896 BLAKE2B c95a993f51beb87bb9891bd0eee08729795a583df50c66df8265cdd5c4adbef83b9fc0339c71aa5137408fe10fa15b0ba4028d5539a0ac66df06c0c1d72e8359 SHA512 2686ed16f5103d76c92cfa4943a8f82d8bc414db074c1c7fb73810b49c6d1d0103988611edf36715d5be24891d0bb2c97ceb08dc4111d0900b5dba6fac12af0a +DIST ncurses-6.3-20220416.patch.gz.asc 729 BLAKE2B 52ab1bfcac4b5d7b3733c399509ba4c0a6b9531c02a05846d39344488ba3a9196326a8126db225845a3ff1ca3fdd609fa1d9264583e7e57e28d2f4e3b58b4389 SHA512 c5a60d2ef9996c02264e6656a966f4be910a3acbee777a4ff2a5131efd156bdf1d32418a39d6e3c07fcbb59c75554d4cc1e7e9f84f5b59f69e7e4c17fafc749f +DIST ncurses-6.3-20220423.patch.gz 3394 BLAKE2B ac93810f1e826fc82de72a85effe5479576af14fa86e0dd08b8823b6f4652922f79242e9c867b1c864f0049c9e6d9864d6efc9282ab1e734dc316cac05655f4c SHA512 5dc87f70793d8319c5ee2f07c7f9432b1128e05f3aa2841a74deeaf294e46859f4198483dc783bb80e5e98f81f05cfef148df75a5abc5acfa69a9d6ad3abb702 +DIST ncurses-6.3-20220423.patch.gz.asc 729 BLAKE2B 7225d28f7e61ae584183e98d8c93c7d470e96984aea4e462333f115c329a8c187927196447b8368949986d4b8c96086f5839fde5b442936e76ac797685ee109b SHA512 b0eecbdad448f193fb255bec2fa458d3fea972c181891882d8dc1e09cc325ecda38e98f2d410993f768f513f3a48b9be4b36dbb2919d82a778496b8ef2051565 DIST ncurses-6.3.tar.gz 3583550 BLAKE2B b2c174ac48d587b4d3aa054f04e4ec8bffd8a657a4aff5f090104965c741901e600712c8f8e5e98f3b8a26bc558996a1e14a746f113854832853b855e9d406c3 SHA512 5373f228cba6b7869210384a607a2d7faecfcbfef6dbfcd7c513f4e84fbd8bcad53ac7db2e7e84b95582248c1039dcfc7c4db205a618f7da22a166db482f0105 +DIST ncurses-6.3.tar.gz.sig 438 BLAKE2B d7f9852292110fe7a048a9e38611ea06564b5142cb4cbeb8d99bba752d5df8eeffa3b57e5ca315c14024520bc008b30650e99669c995dca05a798399a0c85d39 SHA512 b9a2a25e0b1854c272bf89c610c81fc0ba061f0296eca5c0079a79cfe310e44eb16c46eb5a0dd018f1ca9114d569c9d5087a2b8e60b0344f1eb97f7c5addafc6 EBUILD ncurses-6.2_p20210619.ebuild 9938 BLAKE2B e051c20b6dc781586bbb7de7986983c33c1c74df8599148b23bf7e82754c696bd814b5e95e77e4cf346dcd08c507fa9d2e90898f4f77921379bfa155f9a2d9aa SHA512 dec3574e7afc360b2bb165c923b8ea27edd30269dbab96027ad4966b16f2a80aca8d677afbac01cbd0c215459d84d9c239fb03a684771485d3d9e0be0430cc45 EBUILD ncurses-6.3.ebuild 10059 BLAKE2B 49d54b5c55b66745ad0cb6467a59cad1f3774378ee42cd655d0a94627c5500ea5f045db81f7e774b0afcb966cfaaf8ef106fd081af5a0f83b90ee029ebe2a998 SHA512 5c2388851eb130dcaae8db6f411bfe441a46dc7ca8a5849978edb8d8ea47fb2aa55354ed600c17c01b59acb36c3027bb1c8cb622c8b43e118848de855f3bade6 EBUILD ncurses-6.3_p20211106-r1.ebuild 10864 BLAKE2B bf3eccc36c80765fbaa165ff7c954b4632a1ac48abb0abff29a20d3caa81a69659205930a3d97b1fa78157799918db2bb4fb2f404a613931ac12fc5b8c1d253d SHA512 2a99d0674be5e8b0f2316857ae0abeb1a98ce3d718ffb0e04a2b61eb5733d4d5b0c3b20e806df8cbe0eb7cc8fb6ec8a5817225b3896846dc3c2f801b1b8255e4 -EBUILD ncurses-6.3_p20211106.ebuild 10921 BLAKE2B 0ce736bbe7a3d2a11fcca2be97a0fe04167098b95ddb9529487338cb81370e2b171f49e8c850a6ee9e1a0a80ec84fb854eeddaf0904d6eb97b81868474c44bd4 SHA512 15272a24a0dc190b7be5290412f1bd3c009327ca18f41eac281fb5ebe5923482040fc425a7a58b367e3988bdb448a56886e387bb8e00e1d1a61ff333112245cd +EBUILD ncurses-6.3_p20211106.ebuild 10920 BLAKE2B 582eaa0726501b6b5f6e16e7e2281d773629171c21b137923b29dd4a22aa19044ab637857d1b136fc05264d0782107eee6913ba9b5c72c2ac52e2250fed9a8c3 SHA512 18e7458493d49ccbeb70f63118e673a876f77d64b4ac91dc88f7759861eb8821de658e2fed6a22ec3e21d82238efde2cf00710185ecf9356845256e020d3f158 +EBUILD ncurses-6.3_p20220423-r1.ebuild 11761 BLAKE2B 7329164aed9f787b2d3b09c371285b9f4b547f2376b9117e69b32345cfa4f8c66298efdbdf0e50b0ffe317d0de57c733b6ca6b9208f5f0cd54f2b1b419a30c43 SHA512 5a1be1411093eee58defd01c76a221d96000a26c99f97ffe6097560f1fbe0718c2611fe3c0e6655883aae62163cd2955f7d73191ee25a9579de8c828c63a7b24 +EBUILD ncurses-6.3_p20220423.ebuild 11635 BLAKE2B f5fd585e7e8dc204f553bb96328ca328ec5fac45b3284868a97c0278676326427c88387078c08ad16d066860816f89b37d84adf1316bda1fbdb378c6bbbb49f2 SHA512 424abb69383d9c46d1ac2dcdebfaddc2fa6ee298b5133f273eca7ec04d3bb26594c7b027db97a32b35814f5d41fdfa64e462f2ac555487c4e9dad66eb695d16a MISC metadata.xml 785 BLAKE2B e8c25458707dab787caf921aaa2fc4a6f66a1cc2c7bf23a6dda74bb9d990f92de7507fc81c83858fc55937d044e45523b2c22b65f86a4bb74ae463ead9781493 SHA512 ac0255fbb20bab036908eab351bf6798856e1b97c02258df158650e732d8b367df20bd1e0674b427cb4d9832662cb2cc02b4e77e124388e470b2dd116245cfaf diff --git a/sys-libs/ncurses/ncurses-6.3_p20211106.ebuild b/sys-libs/ncurses/ncurses-6.3_p20211106.ebuild index 6c1bee312825..5794b0aceb63 100644 --- a/sys-libs/ncurses/ncurses-6.3_p20211106.ebuild +++ b/sys-libs/ncurses/ncurses-6.3_p20211106.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2021 Gentoo Authors +# Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -48,7 +48,7 @@ fi LICENSE="MIT" # The subslot reflects the SONAME. SLOT="0/6" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" IUSE="ada +cxx debug doc gpm minimal profile static-libs test tinfo trace" RESTRICT="!test? ( test )" diff --git a/sys-libs/ncurses/ncurses-6.3_p20220423-r1.ebuild b/sys-libs/ncurses/ncurses-6.3_p20220423-r1.ebuild new file mode 100644 index 000000000000..8ef705fe2b52 --- /dev/null +++ b/sys-libs/ncurses/ncurses-6.3_p20220423-r1.ebuild @@ -0,0 +1,395 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/thomasdickey.asc +inherit toolchain-funcs multilib multilib-minimal preserve-libs usr-ldscript verify-sig + +MY_PV="${PV:0:3}" +MY_P="${PN}-${MY_PV}" +DESCRIPTION="Console display library" +HOMEPAGE="https://www.gnu.org/software/ncurses/ https://invisible-island.net/ncurses/" +SRC_URI="mirror://gnu/ncurses/${MY_P}.tar.gz + https://invisible-island.net/archives/${PN}/${MY_P}.tar.gz + verify-sig? ( mirror://gnu/ncurses/${MY_P}.tar.gz.sig )" + +if [[ ${PV} == *_p* ]] ; then + # Sometimes, after releases, there's no megapatch available yet. + # + # From upstream README at e.g. https://invisible-island.net/archives/ncurses/6.3/: + # + # "At times (generally to mark a relatively stable point), I create a rollup + # patch, which consists of all changes from the release through the current date." + # + # This array should contain a list of all the snapshots since the last + # release if there's no megapatch available yet. + PATCH_DATES=( + 20211026 + 20211030 + 20211106 + 20211113 + 20211115 + 20211120 + 20211127 + 20211204 + 20211211 + 20211219 + 20211225 + 20220101 + 20220115 + 20220122 + 20220129 + 20220205 + 20220212 + 20220219 + 20220226 + 20220305 + 20220312 + 20220319 + 20220326 + 20220402 + 20220409 + 20220416 + + # Latest patch is just _pN = $(ver_cut 4) + $(ver_cut 4) + ) + + if [[ -z ${PATCH_DATES[@]} ]] ; then + SRC_URI+=" https://invisible-island.net/archives/${PN}/${PV/_p*}/${P/_p/-}.patch.sh.gz" + SRC_URI+=" verify-sig? ( https://invisible-island.net/archives/${PN}/${PV/_p*}/${P/_p/-}.patch.sh.gz.asc" + else + patch_url= + my_patch_index= + for ((my_patch_index=0; my_patch_index < "${#PATCH_DATES[@]}"; my_patch_index++)); do + patch_url="$(printf "https://invisible-island.net/archives/${PN}/${PV/_p*}/${MY_P}-%s" ${PATCH_DATES[${my_patch_index}]}.patch.gz)" + SRC_URI+=" ${patch_url}" + SRC_URI+=" verify-sig? ( ${patch_url}.asc )" + done + unset patch_url + unset my_patch_index + fi +fi + +LICENSE="MIT" +# The subslot reflects the SONAME. +SLOT="0/6" +#KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +IUSE="ada +cxx debug doc gpm minimal profile static-libs test tinfo trace" +RESTRICT="!test? ( test )" + +DEPEND="gpm? ( sys-libs/gpm[${MULTILIB_USEDEP}] )" +# Block the older ncurses that installed all files w/SLOT=5, bug #557472 +RDEPEND="${DEPEND} + !<=sys-libs/ncurses-5.9-r4:5 + !<sys-libs/slang-2.3.2_pre23 + !<x11-terms/rxvt-unicode-9.06-r3 + !<x11-terms/st-0.6-r1" +BDEPEND="verify-sig? ( sec-keys/openpgp-keys-thomasdickey )" + +S="${WORKDIR}/${MY_P}" + +PATCHES=( + "${FILESDIR}/${PN}-5.7-nongnu.patch" + "${FILESDIR}/${PN}-6.0-rxvt-unicode-9.15.patch" # bug #192083, bug #383871 + "${FILESDIR}/${PN}-6.0-pkg-config.patch" + "${FILESDIR}/${PN}-6.0-ticlib.patch" # bug #557360 + "${FILESDIR}/${PN}-6.2_p20210123-cppflags-cross.patch" # bug #601426 +) + +src_prepare() { + if [[ ${PV} == *_p* ]] ; then + if [[ -z ${PATCH_DATES[@]} ]] ; then + # If we have a rollup patch, use that instead of the individual ones. + eapply "${WORKDIR}"/${P/_p/-}-patch.sh + else + eapply "${WORKDIR}"/ + fi + fi + + default +} + +src_configure() { + # bug #115036 + unset TERMINFO + + tc-export_build_env BUILD_{CC,CPP} + + # bug #214642 + BUILD_CPPFLAGS+=" -D_GNU_SOURCE" + + # Build the various variants of ncurses -- narrow, wide, and threaded. #510440 + # Order matters here -- we want unicode/thread versions to come last so that the + # binaries in /usr/bin support both wide and narrow. + # The naming is also important as we use these directly with filenames and when + # checking configure flags. + NCURSES_TARGETS=( + ncurses + ncursesw + ncursest + ncursestw + ) + + # When installing ncurses, we have to use a compatible version of tic. + # This comes up when cross-compiling, doing multilib builds, upgrading, + # or installing for the first time. Build a local copy of tic whenever + # the host version isn't available. bug #249363, bug #557598 + if ! has_version -b "~sys-libs/${P}:0" ; then + local lbuildflags="-static" + + # some toolchains don't quite support static linking + local dbuildflags="-Wl,-rpath,${WORKDIR}/lib" + case ${CHOST} in + *-darwin*) dbuildflags= ;; + *-solaris*) dbuildflags="-Wl,-R,${WORKDIR}/lib" ;; + esac + echo "int main() {}" | \ + $(tc-getCC) -o x -x c - ${lbuildflags} -pipe >& /dev/null \ + || lbuildflags="${dbuildflags}" + + # We can't re-use the multilib BUILD_DIR because we run outside of it. + BUILD_DIR="${WORKDIR}" \ + CC=${BUILD_CC} \ + CHOST=${CBUILD} \ + CFLAGS=${BUILD_CFLAGS} \ + CXXFLAGS=${BUILD_CXXFLAGS} \ + CPPFLAGS=${BUILD_CPPFLAGS} \ + LDFLAGS="${BUILD_LDFLAGS} ${lbuildflags}" \ + do_configure cross --without-shared --with-normal --with-progs + fi + multilib-minimal_src_configure +} + +multilib_src_configure() { + local t + for t in "${NCURSES_TARGETS[@]}" ; do + do_configure "${t}" + done +} + +do_configure() { + local target=$1 + shift + + mkdir "${BUILD_DIR}/${target}" || die + cd "${BUILD_DIR}/${target}" || die + + local conf=( + # We need the basic terminfo files in /etc, bug #37026. We will + # add '--with-terminfo-dirs' and then populate /etc/terminfo in + # src_install() ... + --with-terminfo-dirs="${EPREFIX}/etc/terminfo:${EPREFIX}/usr/share/terminfo" + + # Enable installation of .pc files. + --enable-pc-files + # This path is used to control where the .pc files are installed. + --with-pkg-config-libdir="${EPREFIX}/usr/$(get_libdir)/pkgconfig" + + # Now the rest of the various standard flags. + --with-shared + # (Originally disabled until bug #245417 is sorted out, but now + # just keeping it off for good, given nobody needed it until now + # (2022) and we're trying to phase out bdb.) + --without-hashed-db + $(use_with ada) + $(use_with cxx) + $(use_with cxx cxx-binding) + --with-cxx-shared + $(use_with debug) + $(use_with profile) + # The configure script uses ldd to parse the linked output which + # is flaky for cross-compiling/multilib/ldd versions/etc... + $(use_with gpm gpm libgpm.so.1) + # Required for building on mingw-w64, and possibly other windows + # platforms, bug #639670 + $(use_enable kernel_Winnt term-driver) + --disable-termcap + --enable-symlinks + --with-rcs-ids + --with-manpage-format=normal + --enable-const + --enable-colorfgbg + --enable-hard-tabs + --enable-echo + $(use_enable !ada warnings) + $(use_with debug assertions) + $(use_enable !debug leaks) + $(use_with debug expanded) + $(use_with !debug macros) + $(multilib_native_with progs) + $(use_with test tests) + $(use_with trace) + $(use_with tinfo termlib) + --disable-stripping + --disable-pkg-ldflags + ) + + if [[ ${target} == ncurses*w ]] ; then + conf+=( --enable-widec ) + else + conf+=( --disable-widec ) + fi + if [[ ${target} == ncursest* ]] ; then + conf+=( --with-{pthread,reentrant} ) + else + conf+=( --without-{pthread,reentrant} ) + fi + + # Make sure each variant goes in a unique location. + if [[ ${target} == "ncurses" ]] ; then + # "ncurses" variant goes into "${EPREFIX}"/usr/include + # It is needed on Prefix because the configure script appends + # "ncurses" to "${prefix}/include" if "${prefix}" is not /usr. + conf+=( --enable-overwrite ) + else + conf+=( --includedir="${EPREFIX}"/usr/include/${target} ) + fi + # See comments in src_configure. + if [[ ${target} != "cross" ]] ; then + local cross_path="${WORKDIR}/cross" + [[ -d ${cross_path} ]] && export TIC_PATH="${cross_path}/progs/tic" + fi + + # Force bash until upstream rebuilds the configure script with a newer + # version of autotools. bug #545532 + #CONFIG_SHELL=${EPREFIX}/bin/bash \ + ECONF_SOURCE="${S}" \ + econf "${conf[@]}" "$@" +} + +src_compile() { + # See comments in src_configure. + if ! has_version -b "~sys-libs/${P}:0" ; then + # We could possibly merge these two branches but opting to be + # conservative when merging some of the Prefix changes. + + if [[ ${CHOST} == *-cygwin* ]] && ! multilib_is_native_abi ; then + # We make 'tic$(x)' here, for Cygwin having x=".exe". + BUILD_DIR="${WORKDIR}" \ + do_compile cross -C progs all PROGS='tic$(x)' + else + BUILD_DIR="${WORKDIR}" \ + do_compile cross -C progs tic + fi + fi + + multilib-minimal_src_compile +} + +multilib_src_compile() { + local t + for t in "${NCURSES_TARGETS[@]}" ; do + do_compile "${t}" + done +} + +do_compile() { + local target=$1 + shift + + cd "${BUILD_DIR}/${target}" || die + + # A little hack to fix parallel builds ... they break when + # generating sources so if we generate the sources first (in + # non-parallel), we can then build the rest of the package + # in parallel. This is not really a perf hit since the source + # generation is quite small. + emake -j1 sources + + # For some reason, sources depends on pc-files which depends on + # compiled libraries which depends on sources which ... + # Manually delete the pc-files file so the install step will + # create the .pc files we want. + rm -f misc/pc-files || die + emake "$@" +} + +multilib_src_install() { + local target + for target in "${NCURSES_TARGETS[@]}" ; do + emake -C "${BUILD_DIR}/${target}" DESTDIR="${D}" install + done + + # Move main libraries into /. + if multilib_is_native_abi ; then + gen_usr_ldscript -a \ + "${NCURSES_TARGETS[@]}" \ + $(usex tinfo 'tinfow tinfo' '') + fi + + # Don't delete '*.dll.a', needed for linking, bug #631468 + if ! use static-libs; then + find "${ED}"/usr/ -name '*.a' ! -name '*.dll.a' -delete || die + fi + + # Build fails to create this ... + # -FIXME- + # Ugly hackaround for riscv having two parts libdir (bug #689240) + # Replace this hack with an official solution once we have one... + # -FIXME- + dosym $(sed 's@[^/]\+@..@g' <<< $(get_libdir))/share/terminfo \ + /usr/$(get_libdir)/terminfo + + # Remove obsolete libcurses symlink that is created by the build + # system. Technically, this could be also achieved + # via --disable-overwrite but it also moves headers implicitly, + # and we do not want to do this yet. + # bug #836696 + rm "${ED}"/usr/$(get_libdir)/libcurses* || die +} + +multilib_src_install_all() { + # We need the basic terminfo files in /etc for embedded/recovery, bug #37026 + einfo "Installing basic terminfo files in /etc..." + local terms=( + # Dumb/simple values that show up when using the in-kernel VT. + ansi console dumb linux + vt{52,100,102,200,220} + # [u]rxvt users used to be pretty common. Probably should drop this + # since upstream is dead and people are moving away from it. + rxvt{,-unicode}{,-256color} + # xterm users are common, as is terminals re-using/spoofing it. + xterm xterm-{,256}color + # screen is common (and reused by tmux). + screen{,-256color} + screen.xterm-256color + ) + local x + for x in "${terms[@]}"; do + local termfile=$(find "${ED}"/usr/share/terminfo/ -name "${x}" 2>/dev/null) + local basedir=$(basename "$(dirname "${termfile}")") + + if [[ -n ${termfile} ]] ; then + dodir "/etc/terminfo/${basedir}" + mv "${termfile}" "${ED}/etc/terminfo/${basedir}/" || die + dosym "../../../../etc/terminfo/${basedir}/${x}" \ + "/usr/share/terminfo/${basedir}/${x}" + fi + done + + echo "CONFIG_PROTECT_MASK=\"/etc/terminfo\"" | newenvd - 50ncurses + + use minimal && rm -r "${ED}"/usr/share/terminfo* + # Because ncurses5-config --terminfo returns the directory we keep it + # bug #245374 + keepdir /usr/share/terminfo + + cd "${S}" || die + dodoc ANNOUNCE MANIFEST NEWS README* TO-DO doc/*.doc + if use doc ; then + docinto html + dodoc -r doc/html/ + fi +} + +pkg_preinst() { + preserve_old_lib /$(get_libdir)/libncurses.so.5 + preserve_old_lib /$(get_libdir)/libncursesw.so.5 +} + +pkg_postinst() { + preserve_old_lib_notify /$(get_libdir)/libncurses.so.5 + preserve_old_lib_notify /$(get_libdir)/libncursesw.so.5 +} diff --git a/sys-libs/ncurses/ncurses-6.3_p20220423.ebuild b/sys-libs/ncurses/ncurses-6.3_p20220423.ebuild new file mode 100644 index 000000000000..d8a998fbddf9 --- /dev/null +++ b/sys-libs/ncurses/ncurses-6.3_p20220423.ebuild @@ -0,0 +1,393 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/thomasdickey.asc +inherit toolchain-funcs multilib multilib-minimal preserve-libs usr-ldscript verify-sig + +MY_PV="${PV:0:3}" +MY_P="${PN}-${MY_PV}" +DESCRIPTION="Console display library" +HOMEPAGE="https://www.gnu.org/software/ncurses/ https://invisible-island.net/ncurses/" +SRC_URI="mirror://gnu/ncurses/${MY_P}.tar.gz + https://invisible-island.net/archives/${PN}/${MY_P}.tar.gz + verify-sig? ( mirror://gnu/ncurses/${MY_P}.tar.gz.sig )" + +if [[ ${PV} == *_p* ]] ; then + # Sometimes, after releases, there's no megapatch available yet. + # + # From upstream README at e.g. https://invisible-island.net/archives/ncurses/6.3/: + # + # "At times (generally to mark a relatively stable point), I create a rollup + # patch, which consists of all changes from the release through the current date." + # + # This array should contain a list of all the snapshots since the last + # release if there's no megapatch available yet. + PATCH_DATES=( + 20211026 + 20211030 + 20211106 + 20211113 + 20211115 + 20211120 + 20211127 + 20211204 + 20211211 + 20211219 + 20211225 + 20220101 + 20220115 + 20220122 + 20220129 + 20220205 + 20220212 + 20220219 + 20220226 + 20220305 + 20220312 + 20220319 + 20220326 + 20220402 + 20220409 + 20220416 + + # Latest patch is just _pN = $(ver_cut 4) + $(ver_cut 4) + ) + + if [[ -z ${PATCH_DATES[@]} ]] ; then + SRC_URI+=" https://invisible-island.net/archives/${PN}/${PV/_p*}/${P/_p/-}.patch.sh.gz" + SRC_URI+=" verify-sig? ( https://invisible-island.net/archives/${PN}/${PV/_p*}/${P/_p/-}.patch.sh.gz.asc" + else + patch_url= + my_patch_index= + for ((my_patch_index=0; my_patch_index < "${#PATCH_DATES[@]}"; my_patch_index++)); do + patch_url="$(printf "https://invisible-island.net/archives/${PN}/${PV/_p*}/${MY_P}-%s" ${PATCH_DATES[${my_patch_index}]}.patch.gz)" + SRC_URI+=" ${patch_url}" + SRC_URI+=" verify-sig? ( ${patch_url}.asc )" + done + unset patch_url + unset my_patch_index + fi +fi + +LICENSE="MIT" +# The subslot reflects the SONAME. +SLOT="0/6" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +IUSE="ada +cxx debug doc gpm minimal profile static-libs test tinfo trace" +RESTRICT="!test? ( test )" + +DEPEND="gpm? ( sys-libs/gpm[${MULTILIB_USEDEP}] )" +# Block the older ncurses that installed all files w/SLOT=5, bug #557472 +RDEPEND="${DEPEND} + !<=sys-libs/ncurses-5.9-r4:5 + !<sys-libs/slang-2.3.2_pre23 + !<x11-terms/rxvt-unicode-9.06-r3 + !<x11-terms/st-0.6-r1" +BDEPEND="verify-sig? ( sec-keys/openpgp-keys-thomasdickey )" + +S="${WORKDIR}/${MY_P}" + +PATCHES=( + "${FILESDIR}/${PN}-5.7-nongnu.patch" + "${FILESDIR}/${PN}-6.0-rxvt-unicode-9.15.patch" # bug #192083, bug #383871 + "${FILESDIR}/${PN}-6.0-pkg-config.patch" + "${FILESDIR}/${PN}-6.0-ticlib.patch" # bug #557360 + "${FILESDIR}/${PN}-6.2_p20210123-cppflags-cross.patch" # bug #601426 +) + +src_prepare() { + if [[ ${PV} == *_p* ]] ; then + if [[ -z ${PATCH_DATES[@]} ]] ; then + # If we have a rollup patch, use that instead of the individual ones. + eapply "${WORKDIR}"/${P/_p/-}-patch.sh + else + eapply "${WORKDIR}"/ + fi + fi + + default +} + +src_configure() { + # bug #115036 + unset TERMINFO + + tc-export_build_env BUILD_{CC,CPP} + + # bug #214642 + BUILD_CPPFLAGS+=" -D_GNU_SOURCE" + + # Build the various variants of ncurses -- narrow, wide, and threaded. #510440 + # Order matters here -- we want unicode/thread versions to come last so that the + # binaries in /usr/bin support both wide and narrow. + # The naming is also important as we use these directly with filenames and when + # checking configure flags. + NCURSES_TARGETS=( + ncurses + ncursesw + ncursest + ncursestw + ) + + # When installing ncurses, we have to use a compatible version of tic. + # This comes up when cross-compiling, doing multilib builds, upgrading, + # or installing for the first time. Build a local copy of tic whenever + # the host version isn't available. bug #249363, bug #557598 + if ! has_version -b "~sys-libs/${P}:0" ; then + local lbuildflags="-static" + + # some toolchains don't quite support static linking + local dbuildflags="-Wl,-rpath,${WORKDIR}/lib" + case ${CHOST} in + *-darwin*) dbuildflags= ;; + *-solaris*) dbuildflags="-Wl,-R,${WORKDIR}/lib" ;; + esac + echo "int main() {}" | \ + $(tc-getCC) -o x -x c - ${lbuildflags} -pipe >& /dev/null \ + || lbuildflags="${dbuildflags}" + + # We can't re-use the multilib BUILD_DIR because we run outside of it. + BUILD_DIR="${WORKDIR}" \ + CC=${BUILD_CC} \ + CHOST=${CBUILD} \ + CFLAGS=${BUILD_CFLAGS} \ + CXXFLAGS=${BUILD_CXXFLAGS} \ + CPPFLAGS=${BUILD_CPPFLAGS} \ + LDFLAGS="${BUILD_LDFLAGS} ${lbuildflags}" \ + do_configure cross --without-shared --with-normal --with-progs + fi + multilib-minimal_src_configure +} + +multilib_src_configure() { + local t + for t in "${NCURSES_TARGETS[@]}" ; do + do_configure "${t}" + done +} + +do_configure() { + local target=$1 + shift + + mkdir "${BUILD_DIR}/${target}" || die + cd "${BUILD_DIR}/${target}" || die + + local conf=( + # We need the basic terminfo files in /etc, bug #37026. We will + # add '--with-terminfo-dirs' and then populate /etc/terminfo in + # src_install() ... + --with-terminfo-dirs="${EPREFIX}/etc/terminfo:${EPREFIX}/usr/share/terminfo" + + # Enable installation of .pc files. + --enable-pc-files + # This path is used to control where the .pc files are installed. + --with-pkg-config-libdir="${EPREFIX}/usr/$(get_libdir)/pkgconfig" + + # Now the rest of the various standard flags. + --with-shared + # (Originally disabled until bug #245417 is sorted out, but now + # just keeping it off for good, given nobody needed it until now + # (2022) and we're trying to phase out bdb.) + --without-hashed-db + $(use_with ada) + $(use_with cxx) + $(use_with cxx cxx-binding) + --with-cxx-shared + $(use_with debug) + $(use_with profile) + # The configure script uses ldd to parse the linked output which + # is flaky for cross-compiling/multilib/ldd versions/etc... + $(use_with gpm gpm libgpm.so.1) + # Required for building on mingw-w64, and possibly other windows + # platforms, bug #639670 + $(use_enable kernel_Winnt term-driver) + --disable-termcap + --enable-symlinks + --with-rcs-ids + --with-manpage-format=normal + --enable-const + --enable-colorfgbg + --enable-hard-tabs + --enable-echo + $(use_enable !ada warnings) + $(use_with debug assertions) + $(use_enable !debug leaks) + $(use_with debug expanded) + $(use_with !debug macros) + $(multilib_native_with progs) + $(use_with test tests) + $(use_with trace) + $(use_with tinfo termlib) + --disable-stripping + --disable-pkg-ldflags + ) + + if [[ ${target} == ncurses*w ]] ; then + conf+=( --enable-widec ) + else + conf+=( --disable-widec ) + fi + if [[ ${target} == ncursest* ]] ; then + conf+=( --with-{pthread,reentrant} ) + else + conf+=( --without-{pthread,reentrant} ) + fi + + # Make sure each variant goes in a unique location. + if [[ ${target} == "ncurses" ]] ; then + # "ncurses" variant goes into "${EPREFIX}"/usr/include + # It is needed on Prefix because the configure script appends + # "ncurses" to "${prefix}/include" if "${prefix}" is not /usr. + conf+=( --enable-overwrite ) + else + conf+=( --includedir="${EPREFIX}"/usr/include/${target} ) + fi + # See comments in src_configure. + if [[ ${target} != "cross" ]] ; then + local cross_path="${WORKDIR}/cross" + [[ -d ${cross_path} ]] && export TIC_PATH="${cross_path}/progs/tic" + fi + + # Force bash until upstream rebuilds the configure script with a newer + # version of autotools. bug #545532 + #CONFIG_SHELL=${EPREFIX}/bin/bash \ + ECONF_SOURCE="${S}" \ + econf "${conf[@]}" "$@" +} + +src_compile() { + # See comments in src_configure. + if ! has_version -b "~sys-libs/${P}:0" ; then + # We could possibly merge these two branches but opting to be + # conservative when merging some of the Prefix changes. + + if [[ ${CHOST} == *-cygwin* ]] && ! multilib_is_native_abi ; then + # We make 'tic$(x)' here, for Cygwin having x=".exe". + BUILD_DIR="${WORKDIR}" \ + do_compile cross -C progs all PROGS='tic$(x)' + else + BUILD_DIR="${WORKDIR}" \ + do_compile cross -C progs tic + fi + fi + + multilib-minimal_src_compile +} + +multilib_src_compile() { + local t + for t in "${NCURSES_TARGETS[@]}" ; do + do_compile "${t}" + done +} + +do_compile() { + local target=$1 + shift + + cd "${BUILD_DIR}/${target}" || die + + # A little hack to fix parallel builds ... they break when + # generating sources so if we generate the sources first (in + # non-parallel), we can then build the rest of the package + # in parallel. This is not really a perf hit since the source + # generation is quite small. + emake -j1 sources + + # For some reason, sources depends on pc-files which depends on + # compiled libraries which depends on sources which ... + # Manually delete the pc-files file so the install step will + # create the .pc files we want. + rm -f misc/pc-files || die + emake "$@" +} + +multilib_src_install() { + local target + for target in "${NCURSES_TARGETS[@]}" ; do + emake -C "${BUILD_DIR}/${target}" DESTDIR="${D}" install + done + + # Move main libraries into /. + if multilib_is_native_abi ; then + gen_usr_ldscript -a \ + "${NCURSES_TARGETS[@]}" \ + $(usex tinfo 'tinfow tinfo' '') + fi + + if ! tc-is-static-only ; then + # Provide a link for -lcurses. + ln -sf libncurses$(get_libname) "${ED}"/usr/$(get_libdir)/libcurses$(get_libname) || die + fi + + # Don't delete '*.dll.a', needed for linking, bug #631468 + if ! use static-libs; then + find "${ED}"/usr/ -name '*.a' ! -name '*.dll.a' -delete || die + fi + + # Build fails to create this ... + # -FIXME- + # Ugly hackaround for riscv having two parts libdir (bug #689240) + # Replace this hack with an official solution once we have one... + # -FIXME- + dosym $(sed 's@[^/]\+@..@g' <<< $(get_libdir))/share/terminfo \ + /usr/$(get_libdir)/terminfo +} + +multilib_src_install_all() { + # We need the basic terminfo files in /etc for embedded/recovery, bug #37026 + einfo "Installing basic terminfo files in /etc..." + local terms=( + # Dumb/simple values that show up when using the in-kernel VT. + ansi console dumb linux + vt{52,100,102,200,220} + # [u]rxvt users used to be pretty common. Probably should drop this + # since upstream is dead and people are moving away from it. + rxvt{,-unicode}{,-256color} + # xterm users are common, as is terminals re-using/spoofing it. + xterm xterm-{,256}color + # screen is common (and reused by tmux). + screen{,-256color} + screen.xterm-256color + ) + local x + for x in "${terms[@]}"; do + local termfile=$(find "${ED}"/usr/share/terminfo/ -name "${x}" 2>/dev/null) + local basedir=$(basename "$(dirname "${termfile}")") + + if [[ -n ${termfile} ]] ; then + dodir "/etc/terminfo/${basedir}" + mv "${termfile}" "${ED}/etc/terminfo/${basedir}/" || die + dosym "../../../../etc/terminfo/${basedir}/${x}" \ + "/usr/share/terminfo/${basedir}/${x}" + fi + done + + echo "CONFIG_PROTECT_MASK=\"/etc/terminfo\"" | newenvd - 50ncurses + + use minimal && rm -r "${ED}"/usr/share/terminfo* + # Because ncurses5-config --terminfo returns the directory we keep it + # bug #245374 + keepdir /usr/share/terminfo + + cd "${S}" || die + dodoc ANNOUNCE MANIFEST NEWS README* TO-DO doc/*.doc + if use doc ; then + docinto html + dodoc -r doc/html/ + fi +} + +pkg_preinst() { + preserve_old_lib /$(get_libdir)/libncurses.so.5 + preserve_old_lib /$(get_libdir)/libncursesw.so.5 +} + +pkg_postinst() { + preserve_old_lib_notify /$(get_libdir)/libncurses.so.5 + preserve_old_lib_notify /$(get_libdir)/libncursesw.so.5 +} diff --git a/sys-libs/obstack-standalone/Manifest b/sys-libs/obstack-standalone/Manifest index ec75f1d30ed6..b8ef5093899d 100644 --- a/sys-libs/obstack-standalone/Manifest +++ b/sys-libs/obstack-standalone/Manifest @@ -1,3 +1,5 @@ DIST obstack-standalone-1.1.tar.gz 11561 BLAKE2B c6eba8ed7e235dcdefcfa7244d6318c6ac4d4b6d12a8f4778753bbc762ec98439724e1e8bbba4b1a04fbbafe56a1634bbb1c604c4d5f30574da39c82d52ca1c1 SHA512 e3a9956133d72a00663cf8d9720e62002142e113e7d67e2338a2bce1bdfac9eefd4290db8add15eabafdf01065f7fe9bb6754faa36b88df819c53d44fa140757 +DIST obstack-standalone-1.2.3.tar.gz 11483 BLAKE2B fa8322c680fed9f876c90e3182271ec0cf45319ae46c5139613ed1c2f1f268c3361654b55a7a28c2043a7365ea89cefcf3eab2190dadbc1f36c20c203fe97945 SHA512 b2bbed19c4ab2714ca794bdcb1a84fad1af964e884d4f3bbe91c9937ca089d92b8472cb05ebe998a9f5c85cb922b9b458db91eff29077bd099942e1ce18e16cc EBUILD obstack-standalone-1.1.ebuild 755 BLAKE2B 2829d3715a8bbd68076e49b602a95d372d6f776db496d4b5c0266ff926edd5debc1bec8d16493537eff311577c3dedde295249d7202399a28eca3f18f836817d SHA512 402294f0f49d9d57ec9e1c0e43445843ed7f66a557d5825a92d94b9ff007e7669e5bf286f75be558ebcf73eb88d5d827e2c8e852e51d002e57e54c8ca6128a7b +EBUILD obstack-standalone-1.2.3.ebuild 789 BLAKE2B 5b45a95c93724cf1a3d1f7945af316a14c4a7290d03b00cbf7a968c87060f4431ea3ce37e0a7cf621368028683019a08e79580a1c373ae732e6f767c4e4e0e3d SHA512 ee71929b63374e5fd8310c069036b344539897c140044787c8aaea18156e555a0b389218f1de8cca4d5a35556969f8123ec376958fa3f6e025e44b58963925bb MISC metadata.xml 339 BLAKE2B c0445ede4840838b57a628ef630bd048863c0e3be6c35587c2e4588d89c972adad634d16db774aff79d01d3f633a8d2831d15a2e32fe8f0d91622250720a98ee SHA512 ed6999db981738a7bd3801e063d403a7149deb67fc09fd7e84c9f126510df7c4c2e2eaa1a237515dca1bd618c773b510ba2f3789c4e2a7415bb186f0c1e0b08a diff --git a/sys-libs/obstack-standalone/obstack-standalone-1.2.3.ebuild b/sys-libs/obstack-standalone/obstack-standalone-1.2.3.ebuild new file mode 100644 index 000000000000..25d82f7cdffc --- /dev/null +++ b/sys-libs/obstack-standalone/obstack-standalone-1.2.3.ebuild @@ -0,0 +1,36 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit autotools + +DESCRIPTION="A standalone library to implement GNU libc's obstack" +HOMEPAGE="https://github.com/void-linux/musl-obstack" +SRC_URI="https://github.com/void-linux/musl-obstack/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz" +S="${WORKDIR}"/musl-obstack-${PV} + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~mips ~ppc ~ppc64 ~x86" +IUSE="static-libs" + +DEPEND="!sys-libs/glibc" +RDEPEND="${DEPEND}" + +src_prepare() { + default + + eautoreconf +} + +src_configure() { + econf $(use_enable static-libs static) +} + +src_install() { + default + + find "${ED}" -name '*.la' -delete || die + mv "${ED}"/usr/$(get_libdir)/pkgconfig/{musl-obstack,obstack-standalone}.pc || die +} diff --git a/sys-libs/pam/Manifest b/sys-libs/pam/Manifest index 8bfb16be5f3c..fd5ab3bf459f 100644 --- a/sys-libs/pam/Manifest +++ b/sys-libs/pam/Manifest @@ -4,5 +4,5 @@ DIST Linux-PAM-1.5.2.tar.xz 988784 BLAKE2B a835034cd239bc9377419c13dda45276e8e64 DIST pam-1.5.1_p20210622.tar.gz 783068 BLAKE2B c8f13c2ccef73ad367d4fac9a7d1d0d3f3d0e4f1c8eea877d2ab467411cf17cc32c6c9c89e98d94090481d7d7746723175031ba8713a8fb0c3e1976e2854e58b SHA512 5b7a84b9de2d0b0c39cb33e9b8d24aeedca670b998536d74dc497eb7af31cb1f3157f196a01712c4ae273634b51ddad2062f207534b35b1d1a1e790816c8dc1b DIST pam-doc-1.5.1_p20210610.tar.xz 62308 BLAKE2B b3311e704ddc840b7fd28ea7764e8a0d3fdf508e2e37405acbfa26462a188c480859b3b21bd4a4b4acea70928e68650c216e8fb2d2b6f11ba33f54c6692cf3a2 SHA512 89b88f8ebf0c46f6b25dc0c5f39383ecbef0b12d6ffab388d92026066ee986f9068819cdbf38baaa1e341cd6cc84b1e8d3ad02db121aaf0ddad27e4e6efe26e7 EBUILD pam-1.5.1_p20210622-r1.ebuild 3657 BLAKE2B 4d7a89405ec69b2d1fbf1adf7b53ed35ffe0b8dc5b596fe3cbe32105ed796a78889a52745cb63c452a4016498121dc8946f2e43f105de53e367fbdf0f78718e7 SHA512 51712d3efa358e5b95ce697093242b43b7a262164151d3625adebaae0bb68ec871930285bdfb9f8fabaa007f8b1e9a4ca8b22168259c0d3635d4db05d8bb946e -EBUILD pam-1.5.2-r1.ebuild 3528 BLAKE2B d289b4b882a814fa43b632c0495a278508f33389c3f76e046ba0dcdabbaf83a857d97da59539589df35bade49cfad21b7f19990225856941a447e5b7c52304c9 SHA512 e59be7b16afd4ccf0ee5745921b3b8cbfc1be2f4fd2c7c032bea60c2dd60facf6b40a6bc26e202fe2d61b6a890b66788c7a21587248e69223232265d081c3d58 +EBUILD pam-1.5.2-r1.ebuild 3535 BLAKE2B 3ad71741e26c68aa88d4603186107bb2ea51a243351e1b9eeed2cd82b83e2c9bf6ec645f7ea046e4b5e6a733ef46403208f306f20006b9aafca9e26aa6d15156 SHA512 95c68bc34697df3f84a60ebbc3f8555f89201f9dc00fe54d2f51a6bf19cd0d440024df7f02f71c3305db732694ea9053d6ebfc6f921e51b5dc58963418c55c7d MISC metadata.xml 754 BLAKE2B 366be10dfcad98d08ea3e307312b9a84804efa6f097f1505907e03fcb5fd0f4a6067d1d85d8dc5fec82c54c2e1fdf76d716d09a45571b0994d96130a2506e1f5 SHA512 b453a62fc3cdc6c0e7cd9c15d1bf72f8641a8eefc3971304ae5f0db3c93b69ca5f9c059e70b94ce799b15b640831c8832707fc1740f1361aca3a28c30ae8f366 diff --git a/sys-libs/pam/pam-1.5.2-r1.ebuild b/sys-libs/pam/pam-1.5.2-r1.ebuild index 41f8b3081e5a..f9e430139fd8 100644 --- a/sys-libs/pam/pam-1.5.2-r1.ebuild +++ b/sys-libs/pam/pam-1.5.2-r1.ebuild @@ -19,7 +19,7 @@ SRC_URI="https://github.com/linux-pam/linux-pam/releases/download/v${PV}/${MY_P} LICENSE="|| ( BSD GPL-2 )" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" IUSE="audit berkdb debug nis selinux" BDEPEND=" diff --git a/sys-libs/pam_wrapper/Manifest b/sys-libs/pam_wrapper/Manifest index 68512bd4f558..c67f180fbbe7 100644 --- a/sys-libs/pam_wrapper/Manifest +++ b/sys-libs/pam_wrapper/Manifest @@ -1,6 +1,6 @@ DIST pam_wrapper-1.1.3.tar.gz 118034 BLAKE2B 3c05e74959f3c6dfd35575cc5f9187f4a328bfd7ce002e327fc135c82a4ff1513add87678360992d2010c124f7fd95e4bdb3c0a4d63418d9711069cbc200e417 SHA512 3b7cbd25ae7dd73f4a0c64a7762cdeb38cc7ba6e8b4e18e79aceffea09241d520aa884de88e4105b5957b2b18ec682be6568a6bfccf82b9354a3510cd2cd98eb DIST pam_wrapper-1.1.4.tar.gz 170882 BLAKE2B fa0a789f6fd6f809c7ef80e354e886b5f1f0b4212060dc0e388a44701e4a1f49635b8f47344156ad65cd273660e3b0a806480c37875a830e2f5d8e56c4ec0818 SHA512 3b68dc6d7815707d74d1340facd9c2de4dff3934402ac2c2632371b39c41a75744434744ed7308e157be03a03a941405638cadb6f34995de56fb1f5f45d37de2 -EBUILD pam_wrapper-1.1.3-r3.ebuild 1553 BLAKE2B a32635c0f16be69ee7dc64470175bae8ff793af6ce2a712e6d81b3d7d81d81ab0ec32eab24b0630b191c51d648fafa22db7e2758a15622d7652d203cf9b633b2 SHA512 7ac097214afb444942597508b80083d6e45f04efed76aa0fb7b36434cab6cf8e6347d61ece14ee3046c050942d81f3e0a3ec38371cc7e72819aaa008def4ee8a +EBUILD pam_wrapper-1.1.3-r3.ebuild 1550 BLAKE2B ad42d928558d3d0a0cd8c55bc4cde8e61440f338b6d2de4156d9f17d8966fc0646f16ce2e3bb088fc2aa3fdb627aa05678f872761bca8d5c954b088331bf2bef SHA512 217fd515e1c8794e985d8c33a508267699daeccc687daafc7fea90b7e091d5c423b2f73eb846f9e6d433e59b15329224625e4514705dc2955c41fda2c2c56d13 EBUILD pam_wrapper-1.1.3.ebuild 1107 BLAKE2B c7c5c853f9a1afb50dbf13cb3ffbce7cf53e8c8dba0bcf18e58ea54357c8e4a34e464e6d920d4d86e28a76b345f350067f7a9392f20f4d07be2fc354a6fb9928 SHA512 565455f3861d0b67f6cf68962816f9059002b37bc66221903f4b5e5555db0d3351323b2de3e5bb372b92ba0c4095a4ab1daf1209234243d93b5c3e8905a8855a EBUILD pam_wrapper-1.1.4-r1.ebuild 1622 BLAKE2B aa09ef9ccb37c088a82f99fb63830f79ae72ac3c4f6237e05e56213bbe2cfa2872ddb1002cf93e556205c81b70a601dfe4d2b5a2b8d812b9df18abcec184d7e7 SHA512 6116461461c5ff46323f712d54718129e466896476f91e5ef339a64294686366d9146b7fb16b5e0ae7d6126907c54e4997008c822d7bb703534acd973628c2fa MISC metadata.xml 250 BLAKE2B e398673dd1a3522ccddb89a82a53fc2578d8e0777ec46f889d01d618609a22958d91699beef513c7912799e0e8ff985200f7c67bba941235da25c24cd4b48f09 SHA512 16834c3cbecd0dd5a9c8c311d2b8ebc63d8cd72c5891498f4f0048988993c104aadd4e24e632bf54071c11f810716432e89e4afab029555875f9f52794daa6e9 diff --git a/sys-libs/pam_wrapper/pam_wrapper-1.1.3-r3.ebuild b/sys-libs/pam_wrapper/pam_wrapper-1.1.3-r3.ebuild index fe217064fb7f..027e3ad09a9b 100644 --- a/sys-libs/pam_wrapper/pam_wrapper-1.1.3-r3.ebuild +++ b/sys-libs/pam_wrapper/pam_wrapper-1.1.3-r3.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2021 Gentoo Authors +# Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -17,7 +17,7 @@ SRC_URI=" LICENSE="GPL-3" SLOT="0" -KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~sparc x86" +KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ppc ~ppc64 ~riscv sparc x86" IUSE="test" RESTRICT="!test? ( test )" REQUIRED_USE="${PYTHON_REQUIRED_USE}" diff --git a/sys-libs/readline/Manifest b/sys-libs/readline/Manifest index 7cf033a65fac..2c8602e69ad3 100644 --- a/sys-libs/readline/Manifest +++ b/sys-libs/readline/Manifest @@ -13,6 +13,7 @@ DIST readline81-001.sig 95 BLAKE2B 7d523d0fc21772cb03aa4b5d66ea58c1a99a6c0e4a862 DIST readline81-002 1242 BLAKE2B 4ef0404561bd8fc5559e8e5f675ae3f12c467178a8954f54f3204c2d09b88ccec960e807c7af0ec3514b489b676e3be51f98351e377fb18e3d7a14d33d4da69d SHA512 e47c029b82cf3a4d44e85c4348f7e059c56726694c190d84186822e1c893e1c006e7ec75f33c36791112f81abd792a2e2fdae9a65cd128f3c89ff4ffd9a9a1ff DIST readline81-002.sig 95 BLAKE2B f85d8a65a7326d6e18b32a603c8082952e4b81c53b6a1bd1668c7b0064ecce6ef04a41e2a042f100424dbf152e4db32c0e07ff166d528aa4ac4a9bd7daf4c7a9 SHA512 9ffb6cc697499f57df133f5ebaa5e43e24d33df5eb450d94a02144e94c833424218594c366f21101bc63331c1d532299c9327bd447d0a9849b0bbedce206a5b7 EBUILD readline-8.1_p1-r1.ebuild 5901 BLAKE2B 4819d05f4e9fd9d9b737eeabf14cedb8e9879f554b5bb3cf2d1635ca2f3e07382e16dec40693aa183d51cd2d362f77942614f5129392363ce5097fd401b59795 SHA512 54c1365e53e218e3a404fffe2343627218b4230db5be183ce7c79c417ae8c083ac00cf5f619c7344284635155ff2dbf6071ba631283c0f3c2ace8aa1cd7b2581 -EBUILD readline-8.1_p2.ebuild 6259 BLAKE2B 98f2c75e62d01f475e327824904d25ee5ae4c0c2641bd9d147198126eb5dd6622b762168a009e3e8030f42e36bcee48a0c5cf47c9a750b2c1d882e4dbe5ce72a SHA512 48d5b71c391211434283fd5dad5330f506464d22f2b3bb6e64a29e0ec63c9469a6e790e2e9e6c8fc0bedb1f9fcbedf99b961aa8f724dbbdae4d16f8ff5af9850 -EBUILD readline-8.2_beta.ebuild 6501 BLAKE2B 87e9dab1a27e47c589d4ff9bc861720fbc74c5f730f43ff4f06569e7d7745faf84cf09eec4251a774ab8cdcae937d2992a691612f10fa9452f961259c419bfd0 SHA512 e5ac37aebbdae6d1d652df580c8ebe2779e6f2da9f92e125e0d701154879567f4df18d905f6d9ebd7424a9a0c1de5228276fa616713fcce126652dbd06589c1e +EBUILD readline-8.1_p2.ebuild 6266 BLAKE2B df1a758c63118e9f8b23bbc6831cc2d3fb975e332fd4212d5b94cb6b43885d4d3713a664d4b11729d6a447b5c57808b07d40a426d1738b85874da7c7d7880006 SHA512 e8a21619d26dd11d4fa0b2d8accb9ba89405a9ae66f6ef7c73a3122bb25b769f013691ff1688583a560911da303c15bd85f2a7863b41ec802607ec5f7df444ae +EBUILD readline-8.2_beta.ebuild 6642 BLAKE2B 641918ea6d996069d0e6e4b88cfedf4e18d5163246933cbbefa0b4cdf175fa268b056d2a5929176894611fd5943a32669466073aad696a117bc7e7a70da691bc SHA512 e2a5aa925cb3d40015d69f501d27a37652752cf57c764a41be5d26193eacdba735be63cddf6701478105258ead8d9df989f43e5f4358082468c90002b230725e +EBUILD readline-9999.ebuild 6642 BLAKE2B 641918ea6d996069d0e6e4b88cfedf4e18d5163246933cbbefa0b4cdf175fa268b056d2a5929176894611fd5943a32669466073aad696a117bc7e7a70da691bc SHA512 e2a5aa925cb3d40015d69f501d27a37652752cf57c764a41be5d26193eacdba735be63cddf6701478105258ead8d9df989f43e5f4358082468c90002b230725e MISC metadata.xml 473 BLAKE2B 95401399d6edc2a1a28f9c0f42123b07568d5c517c49be38eff09e1f23a9b5df4d5b302495db8880c8ed65081ea2920f194e6b32402ab0d6049221e9ee6a4eed SHA512 e54e4ce57f3178aa8646acb6798f46074eb33173ab63d61f62bc9ab1d35ef823ce9ee3e173234f8866e2cb635519869c76a449f5073c3a5b7cfd29cd23c16462 diff --git a/sys-libs/readline/readline-8.1_p2.ebuild b/sys-libs/readline/readline-8.1_p2.ebuild index b611b10b52ad..72ba36ee3ea8 100644 --- a/sys-libs/readline/readline-8.1_p2.ebuild +++ b/sys-libs/readline/readline-8.1_p2.ebuild @@ -46,7 +46,7 @@ esac LICENSE="GPL-3" SLOT="0/8" # subslot matches SONAME major [[ "${PV}" == *_rc* ]] || \ -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" IUSE="static-libs +unicode utils" RDEPEND=">=sys-libs/ncurses-5.9-r3:=[static-libs?,unicode(+)?,${MULTILIB_USEDEP}]" diff --git a/sys-libs/readline/readline-8.2_beta.ebuild b/sys-libs/readline/readline-8.2_beta.ebuild index 82ba899affea..90c2837bb864 100644 --- a/sys-libs/readline/readline-8.2_beta.ebuild +++ b/sys-libs/readline/readline-8.2_beta.ebuild @@ -12,6 +12,12 @@ PLEVEL="${PV##*_p}" MY_PV="${PV/_p*}" MY_PV="${MY_PV/_/-}" MY_P="${PN}-${MY_PV}" +is_release() { + case ${PV} in + 9999|*_alpha*|*_beta*|*_rc*) return 1 ;; + *) return 0 ;; + esac +} [[ ${PV} != *_p* ]] && PLEVEL=0 patches() { [[ ${PLEVEL} -eq 0 ]] && return 1 @@ -32,23 +38,25 @@ patches() { DESCRIPTION="Another cute console display library" HOMEPAGE="https://tiswww.case.edu/php/chet/readline/rltop.html" -case ${PV} in - *_alpha*|*_beta*|*_rc*) - # TODO: check if needed on next alpha/beta - inherit autotools +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://git.savannah.gnu.org/git/readline.git" + EGIT_BRANCH=devel + inherit git-r3 +elif is_release ; then + SRC_URI="mirror://gnu/${PN}/${MY_P}.tar.gz $(patches)" + SRC_URI+=" verify-sig? ( mirror://gnu/${PN}/${MY_P}.tar.gz.sig )" +else + SRC_URI="mirror://gnu/${PN}/${MY_P}.tar.gz ftp://ftp.cwru.edu/pub/bash/${MY_P}.tar.gz" + SRC_URI+=" verify-sig? ( mirror://gnu/${PN}/${MY_P}.tar.gz.sig ftp://ftp.cwru.edu/pub/bash/${MY_P}.tar.gz.sig )" +fi - SRC_URI="mirror://gnu/${PN}/${MY_P}.tar.gz ftp://ftp.cwru.edu/pub/bash/${MY_P}.tar.gz" - SRC_URI+=" verify-sig? ( mirror://gnu/${PN}/${MY_P}.tar.gz.sig ftp://ftp.cwru.edu/pub/bash/${MY_P}.tar.gz.sig )" - ;; - *) - SRC_URI="mirror://gnu/${PN}/${MY_P}.tar.gz $(patches)" - SRC_URI+=" verify-sig? ( mirror://gnu/${PN}/${MY_P}.tar.gz.sig )" - ;; -esac +if ! is_release ; then + inherit autotools +fi LICENSE="GPL-3" SLOT="0/8" # subslot matches SONAME major -if [[ ${PV} != *_alpha* && ${PV} != *_beta* && ${PV} != *_rc* ]] ; then +if is_release ; then KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" fi IUSE="static-libs +unicode utils" @@ -70,19 +78,22 @@ PATCHES=( #"${FILESDIR}"/${PN}-8.0-darwin-shlib-versioning.patch ) -# Needed because we don't want the patches being unpacked -# (which emits annoying and useless error messages) src_unpack() { - verify-sig_src_unpack - - unpack ${MY_P}.tar.gz + if [[ ${PV} == 9999 ]] ; then + git-r3_src_unpack + else + # Needed because we don't want the patches being unpacked + # (which emits annoying and useless error messages) + verify-sig_src_unpack + unpack ${MY_P}.tar.gz + fi } src_prepare() { [[ ${PLEVEL} -gt 0 ]] && eapply -p0 $(patches -s) default - [[ ${PV} == *_alpha* || ${PV} == *_beta* || ${PV} == *_rc* ]] && eautoreconf + is_release || eautoreconf if use prefix && [[ ! -x "${BROOT}"/usr/bin/pkg-config ]] ; then # If we're bootstrapping, make a guess. We don't have pkg-config diff --git a/sys-libs/readline/readline-9999.ebuild b/sys-libs/readline/readline-9999.ebuild new file mode 100644 index 000000000000..90c2837bb864 --- /dev/null +++ b/sys-libs/readline/readline-9999.ebuild @@ -0,0 +1,224 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/chetramey.asc +inherit flag-o-matic multilib multilib-minimal preserve-libs toolchain-funcs usr-ldscript verify-sig + +# Official patches +# See ftp://ftp.cwru.edu/pub/bash/readline-8.1-patches/ +PLEVEL="${PV##*_p}" +MY_PV="${PV/_p*}" +MY_PV="${MY_PV/_/-}" +MY_P="${PN}-${MY_PV}" +is_release() { + case ${PV} in + 9999|*_alpha*|*_beta*|*_rc*) return 1 ;; + *) return 0 ;; + esac +} +[[ ${PV} != *_p* ]] && PLEVEL=0 +patches() { + [[ ${PLEVEL} -eq 0 ]] && return 1 + local opt=$1 + eval set -- {1..${PLEVEL}} + set -- $(printf "${PN}${MY_PV/\.}-%03d " "$@") + if [[ ${opt} == -s ]] ; then + echo "${@/#/${DISTDIR}/}" + else + local u + for u in mirror://gnu/${PN} ftp://ftp.cwru.edu/pub/bash ; do + printf "${u}/${PN}-${MY_PV}-patches/%s " "$@" + printf "${u}/${PN}-${MY_PV}-patches/%s.sig " "$@" + done + fi +} + +DESCRIPTION="Another cute console display library" +HOMEPAGE="https://tiswww.case.edu/php/chet/readline/rltop.html" + +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://git.savannah.gnu.org/git/readline.git" + EGIT_BRANCH=devel + inherit git-r3 +elif is_release ; then + SRC_URI="mirror://gnu/${PN}/${MY_P}.tar.gz $(patches)" + SRC_URI+=" verify-sig? ( mirror://gnu/${PN}/${MY_P}.tar.gz.sig )" +else + SRC_URI="mirror://gnu/${PN}/${MY_P}.tar.gz ftp://ftp.cwru.edu/pub/bash/${MY_P}.tar.gz" + SRC_URI+=" verify-sig? ( mirror://gnu/${PN}/${MY_P}.tar.gz.sig ftp://ftp.cwru.edu/pub/bash/${MY_P}.tar.gz.sig )" +fi + +if ! is_release ; then + inherit autotools +fi + +LICENSE="GPL-3" +SLOT="0/8" # subslot matches SONAME major +if is_release ; then + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +fi +IUSE="static-libs +unicode utils" + +RDEPEND=">=sys-libs/ncurses-5.9-r3:=[static-libs?,unicode(+)?,${MULTILIB_USEDEP}]" +DEPEND="${RDEPEND}" +BDEPEND="virtual/pkgconfig + verify-sig? ( sec-keys/openpgp-keys-chetramey )" + +S="${WORKDIR}/${MY_P}" + +PATCHES=( + "${FILESDIR}"/${PN}-5.0-no_rpath.patch + "${FILESDIR}"/${PN}-6.2-rlfe-tgoto.patch #385091 + "${FILESDIR}"/${PN}-7.0-headers.patch + "${FILESDIR}"/${PN}-8.0-headers.patch + + # TODO: rebase + #"${FILESDIR}"/${PN}-8.0-darwin-shlib-versioning.patch +) + +src_unpack() { + if [[ ${PV} == 9999 ]] ; then + git-r3_src_unpack + else + # Needed because we don't want the patches being unpacked + # (which emits annoying and useless error messages) + verify-sig_src_unpack + unpack ${MY_P}.tar.gz + fi +} + +src_prepare() { + [[ ${PLEVEL} -gt 0 ]] && eapply -p0 $(patches -s) + default + + is_release || eautoreconf + + if use prefix && [[ ! -x "${BROOT}"/usr/bin/pkg-config ]] ; then + # If we're bootstrapping, make a guess. We don't have pkg-config + # around yet. bug #818103. + # Incorrectly populating this leads to underlinked libreadline. + local ncurses_libs + local ncurses_libs_suffix=$(usex unicode w '') + + ncurses_libs="-lncurses${ncurses_libs_suffix}" + + if has_version "sys-libs/ncurses[tinfo(+)]" ; then + ncurses_libs+=" -ltinfo${ncurses_libs_suffix}" + fi + else + # Force ncurses linking. #71420 + # Use pkg-config to get the right values. #457558 + local ncurses_libs=$($(tc-getPKG_CONFIG) ncurses$(usex unicode w '') --libs) + fi + + sed -i \ + -e "/^SHLIB_LIBS=/s:=.*:='${ncurses_libs}':" \ + support/shobj-conf || die + sed -i \ + -e "/^[[:space:]]*LIBS=.-lncurses/s:-lncurses:${ncurses_libs}:" \ + examples/rlfe/configure || die + + # fix building under Gentoo/FreeBSD; upstream FreeBSD deprecated + # objformat for years, so we don't want to rely on that. + sed -i -e '/objformat/s:if .*; then:if true; then:' support/shobj-conf || die + + ln -s ../.. examples/rlfe/readline || die # for local readline headers +} + +src_configure() { + # fix implicit decls with widechar funcs + append-cppflags -D_GNU_SOURCE + # https://lists.gnu.org/archive/html/bug-readline/2010-07/msg00013.html + append-cppflags -Dxrealloc=_rl_realloc -Dxmalloc=_rl_malloc -Dxfree=_rl_free + + # Make sure configure picks a better ar than `ar`. #484866 + export ac_cv_prog_AR=$(tc-getAR) + + # Force the test since we used sed above to force it. + export bash_cv_termcap_lib=ncurses + + # Control cross-compiling cases when we know the right answer. + # In cases where the C library doesn't support wide characters, readline + # itself won't work correctly, so forcing the answer below should be OK. + if tc-is-cross-compiler ; then + use kernel_Winnt || export bash_cv_func_sigsetjmp='present' + export bash_cv_func_ctype_nonascii='yes' + export bash_cv_wcwidth_broken='no' #503312 + fi + + # This is for rlfe, but we need to make sure LDFLAGS doesn't change + # so we can re-use the config cache file between the two. + append-ldflags -L. + + multilib-minimal_src_configure +} + +multilib_src_configure() { + local myeconfargs=( + --cache-file="${BUILD_DIR}"/config.cache + --with-curses + $(use_enable static-libs static) + ) + ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" + + if use utils && multilib_is_native_abi && ! tc-is-cross-compiler ; then + # code is full of AC_TRY_RUN() + mkdir -p examples/rlfe || die + cd examples/rlfe || die + ECONF_SOURCE="${S}"/examples/rlfe \ + econf --cache-file="${BUILD_DIR}"/config.cache + fi +} + +multilib_src_compile() { + emake + + if use utils && multilib_is_native_abi && ! tc-is-cross-compiler ; then + # code is full of AC_TRY_RUN() + cd examples/rlfe || die + local l + for l in readline history ; do + ln -s ../../shlib/lib${l}$(get_libname)* lib${l}$(get_libname) || die + ln -s ../../lib${l}.a lib${l}.a || die + done + emake + fi +} + +multilib_src_install() { + default + + if multilib_is_native_abi ; then + gen_usr_ldscript -a readline history #4411 + + if use utils && ! tc-is-cross-compiler; then + dobin examples/rlfe/rlfe + fi + fi +} + +multilib_src_install_all() { + HTML_DOCS="doc/history.html doc/readline.html doc/rluserman.html" einstalldocs + dodoc USAGE + docinto ps + dodoc doc/*.ps +} +pkg_preinst() { + # bug #29865 + # Reappeared in #595324 with paludis so keeping this for now... + preserve_old_lib \ + /$(get_libdir)/lib{history,readline}$(get_libname 4) \ + /$(get_libdir)/lib{history,readline}$(get_libname 5) \ + /$(get_libdir)/lib{history,readline}$(get_libname 6) \ + /$(get_libdir)/lib{history,readline}$(get_libname 7) +} + +pkg_postinst() { + preserve_old_lib_notify \ + /$(get_libdir)/lib{history,readline}$(get_libname 4) \ + /$(get_libdir)/lib{history,readline}$(get_libname 5) \ + /$(get_libdir)/lib{history,readline}$(get_libname 6) \ + /$(get_libdir)/lib{history,readline}$(get_libname 7) +} diff --git a/sys-libs/slang/Manifest b/sys-libs/slang/Manifest index a2ca1704d6ed..c498da5322ab 100644 --- a/sys-libs/slang/Manifest +++ b/sys-libs/slang/Manifest @@ -1,4 +1,4 @@ AUX slang-2.3.1-slsh-libs.patch 761 BLAKE2B a0bc1a573fa1031e44c998bb75c80113ccd86be47f7d0b80da0ba53c7fa066d780ebb86b9cc5ff503e0d4c99b49fe75cb4c916088cc7b18a5a6c1670cbca4ba3 SHA512 77516f0b0373a08fbf61765e4eb83cbfa91b29a58a41e0006d1041672c6107dc5a2410056d65dd64fe68de40e01c211feb9f748a8238473cd5c98dfe2125f7b2 DIST slang-2.3.2.tar.bz2 1586720 BLAKE2B e923a431e6273f1783c40dc09b2e324ace22e41a163fd46dcb8ab16c9ef27f190651df8da24432edc75890b83cd95051a835d5e582385bb23e36cd8ae18e6d24 SHA512 35cdfe8af66dac62ee89cca60fa87ddbd02cae63b30d5c0e3786e77b1893c45697ace4ac7e82d9832b8a9ac342560bc35997674846c5022341481013e76f74b5 -EBUILD slang-2.3.2.ebuild 2238 BLAKE2B 5fca4f3c84f9a756f22021deb6607eaaec399573da56a0be746254fa852f5616fe804d5737573c26f4b061678106bbaf4843d8f35393b344ad75873ac82ae475 SHA512 e5a79e7165b72310c6fa26db3811d0622d06b2206df9387ba6e0f8ff315df120f49fc0cec0a6fb541956fb2960a092eb7bc2eb2718740910efbf690579b68ee9 +EBUILD slang-2.3.2.ebuild 2245 BLAKE2B ce75e58672dc3e44bf8bbc8e98293bf8903f4b7063f40cb08a7b38bfc17515b76826185ddb1e8e3bf56fcfc013e3da3f846ab700e437e6e420f752daca8304c4 SHA512 226e5e32b38e6328540853fbcf38f00540a7be72bf50353f0be635f3c3d39c845286794479226e565902b265013a473096835f6a92c9d4e146eef199abb6268c MISC metadata.xml 235 BLAKE2B a3e5a3109b59e3f97ef14f8d55ba13b16dc5371a1b7d6f238230aa4494db32dd4a42e3ee012ec8b18fae394feb2b1b56882bc70504aa7c6b969c1b20140f0ece SHA512 7c4e5f5dea465e45c662f5f53513626088aff514e1326593426af227d77e63d8a00d8af05aa208881a399f83dd41e73cd2ef81c8b7f275a2fa891f295231d67c diff --git a/sys-libs/slang/slang-2.3.2.ebuild b/sys-libs/slang/slang-2.3.2.ebuild index 1d8efbe42904..7363d14e688b 100644 --- a/sys-libs/slang/slang-2.3.2.ebuild +++ b/sys-libs/slang/slang-2.3.2.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2021 Gentoo Authors +# Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -14,7 +14,7 @@ if [[ "${PV}" = *_pre* ]] ; then else SRC_URI="http://www.jedsoft.org/releases/${PN}/${P}.tar.bz2 http://www.jedsoft.org/releases/${PN}/old/${P}.tar.bz2" - KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x86-solaris" + KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x86-solaris" fi LICENSE="GPL-2" SLOT="0" diff --git a/sys-libs/tevent/Manifest b/sys-libs/tevent/Manifest index 863c7a0eaa33..7a4111a83610 100644 --- a/sys-libs/tevent/Manifest +++ b/sys-libs/tevent/Manifest @@ -1,6 +1,8 @@ AUX tevent-0.11.0-missing-include.patch 310 BLAKE2B b6c54840d64cec798968e58ee7665a984a948bd0fe4842224229c0650a4a0cd798bda2ac30bb842fabf3e7a0d433ca39ae1209da88eb31f0074361f01daccfce SHA512 53941507bc7852f5b1f5133f10d64927d8ec3a5886f51701f191502bd08bcf16fec1950a7ae6446c67981e8d1dd2e5260d95acb6d44572486f28ec8379dd5fc6 DIST tevent-0.10.2.tar.gz 800731 BLAKE2B 5ea6b83378b04dbe1666432db0dbd4c0df2e6b0bf5ebcc8ec4ec9bdeb834efec75c87b2019dc78c691aba6c4f6467394101febd6010f106046a1fb8848e27405 SHA512 1da8f28898f35daab515892b880d1de601062cc3e2b2570cd62e6913df17b0195a05acb7b484c628cddc0eb8b0cde893105ede3feb32bc5764e7d25684f332ba DIST tevent-0.11.0.tar.gz 866327 BLAKE2B 9e6e958597e21c0d228346aa102987f89bb6630a5661cef21b908735469a59e7b4f46bc4473e9c25fe636913a1eebc1f26234448c09739ad812cd3ce97bf5048 SHA512 740346b19bf290ff31b0c1b36e232021b8ad107c3ce27e0e8b1ec1a77485214b07a9b7837ba57f3650a50e4c04f530674e486b5fa4d118a1778259be63b49790 +DIST tevent-0.12.0.tar.gz 877767 BLAKE2B cbfb823f9a8ce8a9a88964c9daa15643c077163c03a792468836e5bbc7e7500c745e1fc1203063ed01f899cf598794764c6d465afc3ed31cd711f420ebc6ce55 SHA512 ae955b64a683bc6aaba66592ca5d205eb48f62a70bd2674b5b3a0e3b0f4de30c93f400bf183d3bef5993845a3281716584b24cf8a93c849ba4fa7d1fcfb9cc99 EBUILD tevent-0.10.2.ebuild 1591 BLAKE2B 63043bf0d721a46e303bc72f1166470068f57582ea529f8cdcf0dae3228b681c0649d20dab279f0e3a46c85c9ba755ba95bdf3944abd951899715f1c46a504ae SHA512 768d207948ac5a27d1ca62b108e3ee4d91f849b2f887596b469e5338e9e00050d34d518b8adc4e1283f1db9f88e519813dc7aced6df94449b784965fe72c5992 EBUILD tevent-0.11.0.ebuild 1672 BLAKE2B 876840924440fc319c04b0ff51d9cc50fedeaefea973d3117da5ea039e817f61a42f8f4fd1b986594b026ee485927375047c16bf53be0098f1b6133b43ecd7f3 SHA512 f01a7ccb816617fbdd4ea46ee7d99a40b02dadca8759c9c36985cdadce309adec81a1ae47b8cc019a58e661983ecaa179805941e637bc04262401e68fc15040b +EBUILD tevent-0.12.0.ebuild 1650 BLAKE2B e97a67eb78b6ab05e6acf102b037c517abcaed134eb2d94101f0c5b32047ff26f282d998cec379176ab1b7269692c59afd24fb1516e176729e7d317a4eb3fd54 SHA512 460fd4d48232642732f1401dfd78a04517378f5809f596a4a5f34d3e8b5f28bfb833dd299a7522602b884c19accaa6a8e4a5ffb0a67eac1b2a44e34a49735f20 MISC metadata.xml 239 BLAKE2B 7127a2a67e79dc98a78fcaca706fd348389c7f08465112215855afe5978d2932ecbee93944efb1df528fbb6d09e884b277cb1d55a8b3926487b6ca07f9330b8a SHA512 4ea42efe4d083d013b85796ca25a132678bcefe6e3687fd6dd371814fd307118fbc8da8c15ce7f4d956e5f824cd0202f49d3469406c88008e84ff9f4d360f424 diff --git a/sys-libs/tevent/tevent-0.12.0.ebuild b/sys-libs/tevent/tevent-0.12.0.ebuild new file mode 100644 index 000000000000..b56018d2eb11 --- /dev/null +++ b/sys-libs/tevent/tevent-0.12.0.ebuild @@ -0,0 +1,78 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( python3_{8..10} ) +PYTHON_REQ_USE="threads(+)" +inherit waf-utils multilib-minimal python-single-r1 + +DESCRIPTION="Samba tevent library" +HOMEPAGE="https://tevent.samba.org/" +SRC_URI="https://samba.org/ftp/tevent/${P}.tar.gz" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x86-linux" +IUSE="python" + +REQUIRED_USE="${PYTHON_REQUIRED_USE}" +RESTRICT="test" + +RDEPEND=" + dev-libs/libbsd[${MULTILIB_USEDEP}] + >=sys-libs/talloc-2.3.3[${MULTILIB_USEDEP}] + python? ( + ${PYTHON_DEPS} + sys-libs/talloc[python,${PYTHON_SINGLE_USEDEP}] + ) +" +DEPEND="${RDEPEND} + >=dev-util/cmocka-1.1.3 + elibc_glibc? ( + net-libs/libtirpc[${MULTILIB_USEDEP}] + || ( + net-libs/rpcsvc-proto + <sys-libs/glibc-2.26[rpc(+)] + ) + ) +" +BDEPEND="${PYTHON_DEPS} + virtual/pkgconfig +" + +WAF_BINARY="${S}/buildtools/bin/waf" + +pkg_setup() { + python-single-r1_pkg_setup + export PYTHONHASHSEED=1 +} + +src_prepare() { + default + multilib_copy_sources +} + +multilib_src_configure() { + waf-utils_src_configure \ + --bundled-libraries=NONE \ + --builtin-libraries=NONE \ + $(multilib_native_usex python '' '--disable-python') +} + +multilib_src_compile() { + # need to avoid parallel building, this looks like the sanest way with waf-utils/multiprocessing eclasses + unset MAKEOPTS + waf-utils_src_compile +} + +multilib_src_install() { + waf-utils_src_install + + multilib_is_native_abi && use python && python_domodule tevent.py +} + +multilib_src_install_all() { + insinto /usr/include + doins tevent_internal.h +} diff --git a/sys-libs/timezone-data/Manifest b/sys-libs/timezone-data/Manifest index 5882790a2032..40c375cd3b01 100644 --- a/sys-libs/timezone-data/Manifest +++ b/sys-libs/timezone-data/Manifest @@ -6,5 +6,5 @@ DIST tzdata2021e.tar.gz 422509 BLAKE2B e0e1189a1bbfb2ee641b9c4c8d00775372638d46d DIST tzdata2022a.tar.gz 425833 BLAKE2B 0af5b785a6f5d871b017237ad58d3d9bedd0de38cf18ac51b32cd8df9811215af7af913d8cd3966de695ce65df3f49f52e239196e93b953094763814cc56ecd0 SHA512 542e4559beac8fd8c4af7d08d816fd12cfe7ffcb6f20bba4ff1c20eba717749ef96e5cf599b2fe03b5b8469c0467f8cb1c893008160da281055a123dd9e810d9 EBUILD timezone-data-2021a-r1.ebuild 5675 BLAKE2B ebb7b82895a58585f688b164655c2d52dbc54d5c2f7234167fa8bcbe87d1189b88e9449cfec7b80aa46edd8e7d2a29047409b81fbd6c8114546668914e49c362 SHA512 1cee878422e1f7939066b439a987883cfb3a3148ab7aa2218cf4c6b83ba5b7fc12301709862339be283dd2e0e4726ac295aaa19eb526c9fdaf0fc32eadf62434 EBUILD timezone-data-2021e.ebuild 5675 BLAKE2B ebb7b82895a58585f688b164655c2d52dbc54d5c2f7234167fa8bcbe87d1189b88e9449cfec7b80aa46edd8e7d2a29047409b81fbd6c8114546668914e49c362 SHA512 1cee878422e1f7939066b439a987883cfb3a3148ab7aa2218cf4c6b83ba5b7fc12301709862339be283dd2e0e4726ac295aaa19eb526c9fdaf0fc32eadf62434 -EBUILD timezone-data-2022a.ebuild 5683 BLAKE2B d0df561f3b77e8c8cd34e0da49c6ddb6bddf0c870d7505cd966f4637a3190b9d40a387db48a1b4a354279e82393c0e1c3a89722f9e5069869d0ed219012ca63d SHA512 2ae3f0089a8bd16d7d86cabd3ee5e3ec3f3edbccc7876e6c429e533b1bedcf9e2d9e9793faeb4f2df2f487892af98a8416fef0530d4ee332d6864a0c7d33c57d +EBUILD timezone-data-2022a.ebuild 5690 BLAKE2B 802c5353b34a12920ba3a5b0e6a337a6cf7aae917f0535d41a6744c7800b0bb5ed7d2788240a631b6b6510d8d824600d0be901a93671cb8fe3cb7042ed69b53a SHA512 a2ee84a9dfa04aa74de2cff15778ee7629c1f3e76e2944ef69434ca426a50a18a8ad9f940f52b0e9be3342a5a5be04351260d42dc5f45d41dbc1858781c91f16 MISC metadata.xml 729 BLAKE2B 96a262bedf50590ed1325e4856ed58766e359cfba537252b51b172f868dbf6902fd03044bfd1bbbf0b8f5e1db72c2e4f52dbc63557cead2cc865e5fbeb171647 SHA512 1f20b48f5d4054f4f48c33a965992ceaeb43b9919f6b5698b0f6ccc2fa0b0eb677c6ad67cb88c599db4d5f5e3db1cecf87372dc72ff5541a799f0aaae2c2dac1 diff --git a/sys-libs/timezone-data/timezone-data-2022a.ebuild b/sys-libs/timezone-data/timezone-data-2022a.ebuild index 656c7f532b86..c62a2f7c9744 100644 --- a/sys-libs/timezone-data/timezone-data-2022a.ebuild +++ b/sys-libs/timezone-data/timezone-data-2022a.ebuild @@ -14,7 +14,7 @@ SRC_URI="https://www.iana.org/time-zones/repository/releases/tzdata${data_ver}.t LICENSE="BSD public-domain" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" IUSE="nls leaps-timezone zic-slim" DEPEND="nls? ( virtual/libintl )" diff --git a/sys-libs/zlib/Manifest b/sys-libs/zlib/Manifest index 1046c0aac3e8..4ee532660ab8 100644 --- a/sys-libs/zlib/Manifest +++ b/sys-libs/zlib/Manifest @@ -11,6 +11,5 @@ DIST zlib-1.2.12.tar.gz.asc 235 BLAKE2B bb1efc89b10b894ebc8e8008ee3e98104348f197 DIST zlib-1.2.7-cygwin-minizip.patch 2626 BLAKE2B 885f1fda877c0b783618b163702fb46126b7db572767cd4edb86bd92db1f432c887ef1724e70c8319c26886368dba3a962af5284ec0875c20ec8ad2245fd100a SHA512 e372f1e06311e843eca2092e182c41abb009b5e9880b60292d708e4bc0de5a9e4c43d49b25b0c09df4784bc46a1254472bc5cdbdd8d6c762a9f6a145a555bfe7 EBUILD zlib-1.2.11-r4.ebuild 4414 BLAKE2B 28fff60b4ea6e23298dd32bd782c7a174c0c8fac1395f010b3e93769c3de32e7b26cb2a1fdd631c5dafb86d5a2f4f1e87a1833032d2043b629515254eeaccc5f SHA512 eef5a1d3f41a60a672a8432d6ca514d712dbd227c4e74c461193e35482bb47953a905e513f8a67571621e3f68bf12cc201c3a28a6a418f5c8e2b9f3debdc6acb EBUILD zlib-1.2.11-r5.ebuild 4501 BLAKE2B a1162467779ba8a5d0d3f23c95fd7afeddd427ab1c351472bcc6d0f40efab1ff989682f3963f3428fe28ca77f20cb5f19520c85a43025211dfd8de5a2917cf9f SHA512 7dd887d89dd54f6833d31e7de5095c36e9d312a2fed601b077119ee37da5ac53b69ae56755eaed578bb44f2026a34dfcf125d107e7dee311b842bdad0b9992ca -EBUILD zlib-1.2.12-r1.ebuild 4713 BLAKE2B e83aae3a8cb7740767f9aeb5f9a3674be993b3221e1b7c378bf9a31117c065de9a87714caccbd685de4e05bd7c6b2ada0c56128f9d65db0c79d6444a089c6a1c SHA512 796fd9ac95620f09143f78a8f9718efda188020a2c077283cc9885b332578d93f800b39318918525f11ecaad128a69e7f0145f77ba238308361acce24d5b6a50 -EBUILD zlib-1.2.12-r2.ebuild 5152 BLAKE2B 40fdb3b4136568c9452f67a04e4571478d962d34b03ca84c912bc5dddee5d8e59570fa3ee21bb940a0045791c315692c29691af082cac83f9f448f68e31220b1 SHA512 0a8750556f9d96d5eafd79be8062c53a73706cd9bdebf1c9ff09cda22f4e2c47714f7f535c29307c286480d25f9eb99ef6b69a044d7f9b5a4c12a2babaddb608 +EBUILD zlib-1.2.12-r2.ebuild 5159 BLAKE2B fba167fe2108e2c3ff4e8c1ac57bb76da832fdbe8dcb04a662f711a711e59158d049a39118920116bd6c02cec97939e11c379eb640672157f190b7c3a022c4f6 SHA512 e5855acdfcaab403d13d0b2690dc9c2d86c7e49eef5adfd6313e91adfd5703658456a5701486375c91621291a75f09247af46b4e6ff1d7071af9e478c3ef0e31 MISC metadata.xml 494 BLAKE2B a4a57a4153aefc189e407bcb8ce84f7c94581cc66967f69097087da7e6ff48d2de683b919fb00445d095c47ef39d31e01590f8c989ce0e5e01474e73ee2a0565 SHA512 a7e0160c127b3c2a6afe99e95992d9dbd017061303759c299ec38800efd6a9e11a35ae850c23c77c09c8833cd9d61ac1267f6becadf9c22437ee35e4304400c9 diff --git a/sys-libs/zlib/zlib-1.2.12-r1.ebuild b/sys-libs/zlib/zlib-1.2.12-r1.ebuild deleted file mode 100644 index 425c0f30bdb5..000000000000 --- a/sys-libs/zlib/zlib-1.2.12-r1.ebuild +++ /dev/null @@ -1,188 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -AUTOTOOLS_AUTO_DEPEND="no" -VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/madler.asc -inherit autotools multilib-minimal usr-ldscript verify-sig - -CYGWINPATCHES=( - "https://github.com/cygwinports/zlib/raw/22a3462cae33a82ad966ea0a7d6cbe8fc1368fec/1.2.11-gzopen_w.patch -> ${PN}-1.2.11-cygwin-gzopen_w.patch" - "https://github.com/cygwinports/zlib/raw/22a3462cae33a82ad966ea0a7d6cbe8fc1368fec/1.2.7-minizip-cygwin.patch -> ${PN}-1.2.7-cygwin-minizip.patch" -) - -DESCRIPTION="Standard (de)compression library" -HOMEPAGE="https://zlib.net/" -SRC_URI="https://zlib.net/${P}.tar.gz - https://zlib.net/fossils/${P}.tar.gz - https://www.gzip.org/zlib/${P}.tar.gz - https://www.zlib.net/current/beta/${P}.tar.gz - verify-sig? ( https://zlib.net/${P}.tar.gz.asc ) - elibc_Cygwin? ( ${CYGWINPATCHES[*]} )" - -LICENSE="ZLIB" -SLOT="0/1" # subslot = SONAME -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt" -IUSE="minizip static-libs" - -RDEPEND="!sys-libs/zlib-ng[compat]" -DEPEND="${RDEPEND}" -BDEPEND="minizip? ( ${AUTOTOOLS_DEPEND} ) - verify-sig? ( sec-keys/openpgp-keys-madler )" - -PATCHES=( - # bug #658536 - "${FILESDIR}"/${PN}-1.2.11-minizip-drop-crypt-header.patch - - # bug #831628 - "${FILESDIR}"/${PN}-1.2.11-configure-fix-AR-RANLIB-NM-detection.patch - - # Fix broken CC logic - "${FILESDIR}"/${PN}-1.2.12-fix-CC-logic-in-configure.patch -) - -src_prepare() { - default - - if use elibc_Cygwin ; then - local p - for p in "${CYGWINPATCHES[@]}" ; do - # Strip out the "... -> " from the array - eapply -p2 "${DISTDIR}/${p#*> }" - done - fi - - if use minizip ; then - cd contrib/minizip || die - eautoreconf - fi - - case ${CHOST} in - *-cygwin*) - # Do not use _wopen, it's a mingw-only symbol - sed -i -e '/define WIDECHAR/d' "${S}"/gzguts.h || die - - # zlib1.dll is the mingw name, need cygz.dll - # cygz.dll is loaded by toolchain, put into subdir - sed -i -e 's|zlib1.dll|win32/cygz.dll|' win32/Makefile.gcc || die - - ;; - esac - - case ${CHOST} in - *-mingw*|mingw*|*-cygwin*) - # Uses preconfigured Makefile rather than configure script - multilib_copy_sources - - ;; - esac -} - -echoit() { echo "$@"; "$@"; } - -multilib_src_configure() { - case ${CHOST} in - *-mingw*|mingw*|*-cygwin*) - ;; - - *) - # bug #347167 - local uname=$("${BROOT}"/usr/share/gnuconfig/config.sub "${CHOST}" | cut -d- -f3) - - local myconf=( - --shared - --prefix="${EPREFIX}/usr" - --libdir="${EPREFIX}/usr/$(get_libdir)" - ${uname:+--uname=${uname}} - ) - - # Not an autoconf script, so can't use econf - echoit "${S}"/configure "${myconf[@]}" || die - - ;; - esac - - if use minizip ; then - local minizipdir="contrib/minizip" - mkdir -p "${BUILD_DIR}/${minizipdir}" || die - - cd ${minizipdir} || die - ECONF_SOURCE="${S}/${minizipdir}" econf $(use_enable static-libs static) - fi -} - -multilib_src_compile() { - case ${CHOST} in - *-mingw*|mingw*|*-cygwin*) - emake -f win32/Makefile.gcc STRIP=true PREFIX=${CHOST}- - sed \ - -e 's|@prefix@|'"${EPREFIX}"'/usr|g' \ - -e 's|@exec_prefix@|${prefix}|g' \ - -e 's|@libdir@|${exec_prefix}/'$(get_libdir)'|g' \ - -e 's|@sharedlibdir@|${exec_prefix}/'$(get_libdir)'|g' \ - -e 's|@includedir@|${prefix}/include|g' \ - -e 's|@VERSION@|'${PV}'|g' \ - zlib.pc.in > zlib.pc || die - ;; - - *) - emake - - ;; - esac - - use minizip && emake -C contrib/minizip -} - -sed_macros() { - # Clean up namespace a little, bug #383179 - # We do it here so we only have to tweak 2 files - sed -i -r 's:\<(O[FN])\>:_Z_\1:g' "$@" || die -} - -multilib_src_install() { - case ${CHOST} in - *-mingw*|mingw*|*-cygwin*) - emake -f win32/Makefile.gcc install \ - BINARY_PATH="${ED}/usr/bin" \ - LIBRARY_PATH="${ED}/usr/$(get_libdir)" \ - INCLUDE_PATH="${ED}/usr/include" \ - SHARED_MODE=1 - - # Overwrites zlib.pc created from win32/Makefile.gcc, bug #620136 - insinto /usr/$(get_libdir)/pkgconfig - doins zlib.pc - - ;; - - *) - emake install DESTDIR="${D}" LDCONFIG=: - gen_usr_ldscript -a z - - ;; - esac - - sed_macros "${ED}"/usr/include/*.h - - if use minizip ; then - emake -C contrib/minizip install DESTDIR="${D}" - sed_macros "${ED}"/usr/include/minizip/*.h - fi - - if use minizip; then - # This might not exist if slibtool is used. - # bug #816756 - rm -f "${ED}"/usr/$(get_libdir)/libminizip.la || die - fi - - if ! use static-libs ; then - # bug #419645 - rm "${ED}"/usr/$(get_libdir)/libz.a || die - fi -} - -multilib_src_install_all() { - dodoc FAQ README ChangeLog doc/*.txt - use minizip && dodoc contrib/minizip/*.txt -} diff --git a/sys-libs/zlib/zlib-1.2.12-r2.ebuild b/sys-libs/zlib/zlib-1.2.12-r2.ebuild index 166bfbad0465..403a4bf6074b 100644 --- a/sys-libs/zlib/zlib-1.2.12-r2.ebuild +++ b/sys-libs/zlib/zlib-1.2.12-r2.ebuild @@ -24,7 +24,7 @@ SRC_URI="https://zlib.net/${P}.tar.gz LICENSE="ZLIB" SLOT="0/1" # subslot = SONAME -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt" IUSE="minizip static-libs" RDEPEND="!sys-libs/zlib-ng[compat]" |