From 0ebf740b9c9bc7c10ac41bea315ecc6c01c79166 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Sun, 21 Jan 2018 19:03:35 +0000 Subject: gentoo resync : 21.01.2018 --- sys-libs/Manifest.gz | Bin 15577 -> 15578 bytes sys-libs/compiler-rt-sanitizers/Manifest | 4 +- .../compiler-rt-sanitizers-6.0.9999.ebuild | 4 +- .../compiler-rt-sanitizers-9999.ebuild | 4 +- sys-libs/compiler-rt/Manifest | 4 +- sys-libs/compiler-rt/compiler-rt-6.0.9999.ebuild | 4 +- sys-libs/compiler-rt/compiler-rt-9999.ebuild | 4 +- sys-libs/glibc/Manifest | 4 +- sys-libs/glibc/glibc-2.26-r5.ebuild | 5 - sys-libs/glibc/glibc-9999.ebuild | 222 ++++++++++++--------- sys-libs/libcxx/Manifest | 4 +- sys-libs/libcxx/libcxx-6.0.9999.ebuild | 4 +- sys-libs/libcxx/libcxx-9999.ebuild | 4 +- sys-libs/libcxxabi/Manifest | 4 +- sys-libs/libcxxabi/libcxxabi-6.0.9999.ebuild | 4 +- sys-libs/libcxxabi/libcxxabi-9999.ebuild | 4 +- sys-libs/libomp/Manifest | 6 +- sys-libs/libomp/libomp-6.0.9999.ebuild | 28 ++- sys-libs/libomp/libomp-9999.ebuild | 30 ++- sys-libs/libomp/metadata.xml | 2 + sys-libs/llvm-libunwind/Manifest | 4 +- .../llvm-libunwind/llvm-libunwind-6.0.9999.ebuild | 49 ++++- sys-libs/llvm-libunwind/llvm-libunwind-9999.ebuild | 51 ++++- sys-libs/ncurses/Manifest | 2 +- sys-libs/ncurses/ncurses-6.0-r2.ebuild | 2 + sys-libs/timezone-data/Manifest | 2 +- sys-libs/timezone-data/timezone-data-2017c.ebuild | 2 +- 27 files changed, 304 insertions(+), 153 deletions(-) (limited to 'sys-libs') diff --git a/sys-libs/Manifest.gz b/sys-libs/Manifest.gz index 54b1e6d7afbf..61e7d8cf6efd 100644 Binary files a/sys-libs/Manifest.gz and b/sys-libs/Manifest.gz differ diff --git a/sys-libs/compiler-rt-sanitizers/Manifest b/sys-libs/compiler-rt-sanitizers/Manifest index fadcc8f312b5..4f725bb862af 100644 --- a/sys-libs/compiler-rt-sanitizers/Manifest +++ b/sys-libs/compiler-rt-sanitizers/Manifest @@ -5,6 +5,6 @@ DIST llvm-4.0.1.src.tar.xz 21065652 BLAKE2B 6327eed2d1feb108440f22d2581d1ff86c10 DIST llvm-5.0.1.src.tar.xz 23428720 BLAKE2B 3db4d33df21018d17eef0042c0d8d82a8412bd5daa99cfb5405a6ec83c5774178fa76b220e8731c2a9a64dabf898aa90fe29c685327bd63a4f078e8e94a9a77e SHA512 bee1d45fca15ce725b1f2b1339b13eb6f750a3a321cfd099075477ec25835a8ca55b5366172c4aad46592dfd8afe372349ecf264f581463d017f9cee2d63c1cb EBUILD compiler-rt-sanitizers-4.0.1.ebuild 3840 BLAKE2B 72c9943e4bafed115dabfa2fa33a035af9259bc764e8ac6797a9fc7c62aa60110feba43305b25595b6819e7fab261edc2619113deb5ef5629d0b433fc788717a SHA512 1d0d63f67b71a718bf7ed8bb422659a1b83f7c5dddd7d5cf436d5e7c266eb5ffd9096a2653c18b5272c79d659b898ec9fe489ba94d8786cce7823acea11724a9 EBUILD compiler-rt-sanitizers-5.0.1.ebuild 4067 BLAKE2B fed4fd01744ca37cbe33dbff79475d1465631bda8483ddaf769e7c83e68cc40436f81dcd8ce0333b18ff8df21f0b4b347a1f1a7f50f4fa7c7f3d0f630d69decf SHA512 1c4711e09acf152cc104f2c22a5a415dabbbcb58cca28dc016d0b80ff7bd6d8141fd29f2f967ea17537493b46a70ac310f12b7d850d3dfc581fe84ccc970ca01 -EBUILD compiler-rt-sanitizers-6.0.9999.ebuild 4435 BLAKE2B 6415de19dd1b756f25a0b91dad6cd370d611b0337b3f4f4a710a1c23c5375fcc41fd57f5084a9e9316e7cd694e067e0b34c4e162f57c352a910ba89bd8d33db7 SHA512 226d07235caa4dde5e87d7633f80cc42b5ddbcafab6764a765a785e6f142a1603407228df43b2e878f74187ef9b86360334d9253e164044d47be98046d3ddc65 -EBUILD compiler-rt-sanitizers-9999.ebuild 4410 BLAKE2B 05c9c6f0ebf9e5ce5e492583dc5786fcaeed161e31d6a4c520ea0e229df6b51152144b24b6fd7f1498641bbe970918abdea49cdf27a260884ddc1c5dd6e90531 SHA512 dbc3b90247271197732501f00475e85faa5e9c2f47981d7f9bb42562832800dbd302d7abd6857fa8040a710a081ad6c36ef271bafb40f1b9bc6e869afde96d4b +EBUILD compiler-rt-sanitizers-6.0.9999.ebuild 4433 BLAKE2B e3cb6572ba349e08c5027196af769454dec3b8a9192c4db724fde9aa70dddd104e21b4b0ea39acc161156af0b64f3e3d354ee409240bfc100ae96e0278ad22e3 SHA512 965d0c2bb4bf5f15e71f4d4517c98a7542ed0e07a50d8070b2b97dc23f5910bf0c20b7495b2638c4a8a8ff9388bbff2e13bf62ac88548f507035a7e441286145 +EBUILD compiler-rt-sanitizers-9999.ebuild 4408 BLAKE2B 1fc8eee2b6abfcb8eb044b76514dffce7faed2b9ffe259b532ec7bcf9cd82e6507d2c48677c7483a04c140e9e3739dd01c76df633f949e6b6b450469eb4e9e1f SHA512 cb229dfe2be81f81fccba786ca02a93b59760195b773b8101ad2e9ba9a066b6c98f2c177343fac9fe20ab517ffa2af6b3d50fa59af6ecba475735af82f8496bd MISC metadata.xml 333 BLAKE2B 24e417cb7b8ab7730b18a3e1e5e29d008042e4fd53cf1ba3cc9d18719160b0410854ddfae52315c690138e61fb0196015968fa09b98af6470cd8bdecc09205ef SHA512 97daa7452a696b7297c47f5f637a33425f82b51426060a75b3de6bc812f9ddcd3c70ae068bc3e88ce937ab1eb10d59b0ab48a2d2c0397a112b8b6a754e333bdc diff --git a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-6.0.9999.ebuild b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-6.0.9999.ebuild index 5e10ee47eeb4..b3850e773bed 100644 --- a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-6.0.9999.ebuild +++ b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-6.0.9999.ebuild @@ -25,9 +25,9 @@ IUSE="+clang test" RESTRICT="!test? ( test ) !clang? ( test )" LLVM_SLOT=${SLOT%%.*} -# llvm-4 needed for --cmakedir +# llvm-6 for new lit options DEPEND=" - >=sys-devel/llvm-4 + >=sys-devel/llvm-6 clang? ( sys-devel/clang ) test? ( app-portage/unsandbox diff --git a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-9999.ebuild b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-9999.ebuild index 5821a6f3c0eb..2b85804e799d 100644 --- a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-9999.ebuild +++ b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-9999.ebuild @@ -24,9 +24,9 @@ IUSE="+clang test" RESTRICT="!test? ( test ) !clang? ( test )" LLVM_SLOT=${SLOT%%.*} -# llvm-4 needed for --cmakedir +# llvm-6 for new lit options DEPEND=" - >=sys-devel/llvm-4 + >=sys-devel/llvm-6 clang? ( sys-devel/clang ) test? ( app-portage/unsandbox diff --git a/sys-libs/compiler-rt/Manifest b/sys-libs/compiler-rt/Manifest index bd3dca27d045..00ab356deda6 100644 --- a/sys-libs/compiler-rt/Manifest +++ b/sys-libs/compiler-rt/Manifest @@ -2,6 +2,6 @@ DIST compiler-rt-4.0.1.src.tar.xz 1434100 BLAKE2B ca6bf78fc07f387b7244a52ef648b0 DIST compiler-rt-5.0.1.src.tar.xz 1498220 BLAKE2B 61503df8a4075c2fe1e42d480753b861321b5de127e340f48d648fc38d81c7967cead17e136beaa5235cc92540f158915fccec77cf39aa7c336d106c9d265222 SHA512 61e23775db78bdeed3003a509b45ae609287db31302fed186f3210d481ecf062d1828571e63482215ab00ff732df8f3fa6c77334dfb677e4b76eb555d476b8c4 EBUILD compiler-rt-4.0.1.ebuild 4138 BLAKE2B e13bd10d0709bd482064b110742f7714306116e27c8123a3f61a446dc3a10e5de688c4b0ff0b5e43f392032c05e5abf8b1d429e9351090691e56c204c2341bed SHA512 76e4ca5084fa6c4e909cad6327d8e59a9a5ff8e88f6d7800c65ea0b19e464408598eb3c7e950ddc72b882dcb332f0ac094b15a3081739dfd0873a998e27d9bfb EBUILD compiler-rt-5.0.1.ebuild 2660 BLAKE2B f67e722c35d6d5908c12b175f99aec5899435890d92421d5eaf4bdfd53dc3c335da8904a317c4f937ec281f7f3ec22ca4b3c9c7babd0fa65e6dffcf5456e8f9d SHA512 8a002c63f12f2dc7b6f5cd8052879b4c8c4381f4aa4bfa2e72b931d820ffa353bcc927a46ac7832790d8124d8e6dec23e71c2faf91805c174267f12cfc055f5d -EBUILD compiler-rt-6.0.9999.ebuild 2873 BLAKE2B 419ddb09e6413ac6a8948b7bcf43ecafd6fb822c4d54b74e9197cdcb6998a288d223429c82592fc580b3cc528daec003072523c7a32e3ec97b2ecf1daea42dfa SHA512 2a0814fdb3e2258f13fbc6c8ae1014e09bb6b680f7b784f6071f6edc08a95b5aa3b97abe9e32c83655d6ed590bbf29bd4f8eef8f44fed9ba385264b46bca91d1 -EBUILD compiler-rt-9999.ebuild 2848 BLAKE2B a44e7b05cacef04284cfdb7a1f31c48e85fc726da666479ca222605cb804c24900b0f360de5ef69065d3ddc4bf5d150a86980948d5340aa34b1295358bd2ce7f SHA512 9312c69639d82f59c08ceebbe062d57f12675772e9f3cb980c0328fe185e16300351415f91b12ccd3063c7d61ad739a45d11460e951a7640a07452633406c8dd +EBUILD compiler-rt-6.0.9999.ebuild 2871 BLAKE2B 2e6ce4192a57440b1f837c361fccda045c96c18d7acaef5587830efe5e968f9b5a074b1dffe89d8ea1d3d18f6597f41d8a4a6e3fd03e82119845a74139bfeed1 SHA512 2ee689385da6e2b3cece10118543b5750151cc7b9d44bd1ed28f295416d2eb4828dad7a741c09c59b9c3fa625d4285bc2654e8d7fe684265203af33f594ee863 +EBUILD compiler-rt-9999.ebuild 2846 BLAKE2B 5202a7795e45eae2d703407f12abd4afa8cbb0c3ab7e2dcddf1e6eac4dbfeb36c7186dfe1d3fb200242d6ffc553f50c3b4de1489a4343f5111b1fb6d3b74438a SHA512 f1132c0eed82de808c768336a50f8409738471728043a662ee3fe89e55b2e7b926d52b9d821148ebebdf44adb7d327c4ced798ec9d6fcb2c45e1f780d2438a01 MISC metadata.xml 333 BLAKE2B 24e417cb7b8ab7730b18a3e1e5e29d008042e4fd53cf1ba3cc9d18719160b0410854ddfae52315c690138e61fb0196015968fa09b98af6470cd8bdecc09205ef SHA512 97daa7452a696b7297c47f5f637a33425f82b51426060a75b3de6bc812f9ddcd3c70ae068bc3e88ce937ab1eb10d59b0ab48a2d2c0397a112b8b6a754e333bdc diff --git a/sys-libs/compiler-rt/compiler-rt-6.0.9999.ebuild b/sys-libs/compiler-rt/compiler-rt-6.0.9999.ebuild index 19b4ea1e2fd7..712fe0ab6fd0 100644 --- a/sys-libs/compiler-rt/compiler-rt-6.0.9999.ebuild +++ b/sys-libs/compiler-rt/compiler-rt-6.0.9999.ebuild @@ -25,9 +25,9 @@ IUSE="+clang test" RESTRICT="!test? ( test ) !clang? ( test )" LLVM_SLOT=${SLOT%%.*} -# llvm-4 needed for --cmakedir +# llvm-6 for new lit options DEPEND=" - >=sys-devel/llvm-4 + >=sys-devel/llvm-6 clang? ( sys-devel/clang ) test? ( $(python_gen_any_dep "~dev-python/lit-${PV}[\${PYTHON_USEDEP}]") diff --git a/sys-libs/compiler-rt/compiler-rt-9999.ebuild b/sys-libs/compiler-rt/compiler-rt-9999.ebuild index 4f525a8bc4d4..13a501b66836 100644 --- a/sys-libs/compiler-rt/compiler-rt-9999.ebuild +++ b/sys-libs/compiler-rt/compiler-rt-9999.ebuild @@ -24,9 +24,9 @@ IUSE="+clang test" RESTRICT="!test? ( test ) !clang? ( test )" LLVM_SLOT=${SLOT%%.*} -# llvm-4 needed for --cmakedir +# llvm-6 for new lit options DEPEND=" - >=sys-devel/llvm-4 + >=sys-devel/llvm-6 clang? ( sys-devel/clang ) test? ( $(python_gen_any_dep "~dev-python/lit-${PV}[\${PYTHON_USEDEP}]") diff --git a/sys-libs/glibc/Manifest b/sys-libs/glibc/Manifest index 462043f41f4c..5c5015764cae 100644 --- a/sys-libs/glibc/Manifest +++ b/sys-libs/glibc/Manifest @@ -43,6 +43,6 @@ EBUILD glibc-2.23-r4.ebuild 4975 BLAKE2B 9a0d3a3689896fab9f71fa20a83be5f2563f023 EBUILD glibc-2.24-r4.ebuild 5011 BLAKE2B 71050f0449074652d4fabc709326025b4de2e6642fdde87898acfde6f99cce95f4d7b9e1e7f9eedcdf6d2fd70ebf3c2860599ec36ccf68e0e633ec794f8ce0e8 SHA512 1cb3bcbd7d9d7f7c095bdff7c81d0acc3b4700c0b8a9d4fd0499cbf53abb55c67ca3bc3cce125916d238eb8cf6f6d69989af27defd6f194aaa5ac27cdda94eb9 EBUILD glibc-2.25-r10.ebuild 5012 BLAKE2B 86753e126c049ba2407529668b82094650a718b0abc954a28ee578d331c2ffa5e425ddfff67b7ab4decb91c3b966220eef6cf0247544015c0b3160ccff330576 SHA512 3a06e7d0a949bc7347c37e7b2fe48ad6ed328af9b0c3ca808f5fb50643aec6bd050ff868c926bc6f9aa62f572a2da26527de666a12b9e5ff9cb7cf680547e951 EBUILD glibc-2.25-r9.ebuild 4999 BLAKE2B 6c0784aa614374954c0747deb7a33fdba0f8b1935cc28c62af29880d64991cc93740eddefe8dca971d6c1bbba14161e10db75e00a91d73282e0c0bf094004b94 SHA512 3b5dc2073ae44e6cf5a4f8f64a3c3fd837ebaa222009ee617105259765ff4222fb3960be1c537d4fde6c7e928bd85325d9070cb668b31cb6afb03368c079141f -EBUILD glibc-2.26-r5.ebuild 25543 BLAKE2B d6f427a7c876a264fc7b14516c7e36adf97a594d291ff34b90f69397fa097968a38db2fbfd19854fedf55d59e7d1b8ff757b525cf6f33182cd3633f0044ef254 SHA512 364a561a54f81d4e40298310acec3c7bd976276abae24549d891de58146739964bb73e91b53c193fae8e6328dccbda0b57fbfca2b7e27912d1654c18ab62e13c -EBUILD glibc-9999.ebuild 39783 BLAKE2B 3029010d46b287fc480a67e5ed1ae71c5989e3e47db775888afdf5f44dd9ea21ce61f5d6f28e72ef0d8508cff9c925e2b76d4ac04dc7e700fd054e83148cb1f8 SHA512 d8c95ac974d1efae9f3d17a99a3707fb2a0f767e509256382418d0460364c2730d6318a311183a2c554ff33d4d79c161016e01a9a82787a71b8c9f750d018918 +EBUILD glibc-2.26-r5.ebuild 25380 BLAKE2B b3af0b788b73ede0255c2e5778fe637cd66f11e4912c00ae3e5cca3c65b6fce8f9613ff45768d97369ebfee6d0548bfdf41bb8ed8c4778d13612d9d98cc084c0 SHA512 6953295e4cbaa2f7d7241fe053704b2a949e0ee55515c3357ab3134cdcd6e84a1f00f01549ebf61640c3297814233062929f3bca5f91a5f5868742f5f7e5cb87 +EBUILD glibc-9999.ebuild 40516 BLAKE2B 47efe059c10b70deb5476d2f04b624a130b66a3240ac0d2ac4973884bc4e1bb90ad3ea3840b744c51a44092eaaf0112ca90e1a3b2e186fd02dcb1e08fb32942f SHA512 e9321670cf316b834110b739b93a0bd650e0a639db74c721dd40fb97043f36022bd5d75b55af563a01880c358f13d4d55ebe4006827f46338301ba6b88fc60ee MISC metadata.xml 1054 BLAKE2B dbc091e54130729385bc02aaa1025885f101caa88d601b1f7670974d89e7e24aae5d37fd6699278a37c0064e1f3232c04954dc127869427317b5d80b499f3813 SHA512 65474b7d32ceb6bafe8ae0e18aa0b46b68cefecce5570a0e8d4a0117019e6540f2feae35cecbebad382b4f06d6e5ae1dfa9b8a61889881e8534956dd42df8e4b diff --git a/sys-libs/glibc/glibc-2.26-r5.ebuild b/sys-libs/glibc/glibc-2.26-r5.ebuild index 4eb6b34679f5..ca34027cda76 100644 --- a/sys-libs/glibc/glibc-2.26-r5.ebuild +++ b/sys-libs/glibc/glibc-2.26-r5.ebuild @@ -323,11 +323,6 @@ glibc_do_configure() { popd > /dev/null case ${CTARGET} in - mips*) - # dlopen() detects stack smash on mips n32 ABI. - # Cause is unknown: https://bugs.gentoo.org/640130 - myconf+=( --enable-stack-protector=no ) - ;; powerpc-*) # Currently gcc on powerpc32 generates invalid code for # __builtin_return_address(0) calls. Normally programs diff --git a/sys-libs/glibc/glibc-9999.ebuild b/sys-libs/glibc/glibc-9999.ebuild index f7f93ffbd6ea..cb0e4cb11119 100644 --- a/sys-libs/glibc/glibc-9999.ebuild +++ b/sys-libs/glibc/glibc-9999.ebuild @@ -509,7 +509,53 @@ check_devpts() { fi } -int_to_KV() { +# 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)) @@ -518,7 +564,7 @@ int_to_KV() { } eend_KV() { - [[ $(KV_to_int $1) -ge $(KV_to_int $2) ]] + [[ $(g_KV_to_int $1) -ge $(g_KV_to_int $2) ]] eend $? } @@ -528,51 +574,10 @@ get_kheader_version() { tail -n 1 } -check_nptl_support() { - # We don't care about the compiler here as we aren't using it - just_headers && return - - local run_kv build_kv want_kv - - # TODO: this needs to be replaced somehow - run_kv=$(int_to_KV $(get_KV)) - - build_kv=$(int_to_KV $(get_kheader_version)) - want_kv=${MIN_KERN_VER} - - ebegin "Checking gcc for __thread support" - if ! eend $(want__thread ; echo $?) ; then - echo - eerror "Could not find a gcc that supports the __thread directive!" - eerror "Please update your binutils/gcc and try again." - die "No __thread support in gcc!" - fi - - if ! is_crosscompile && ! tc-is-cross-compiler ; then - # Building fails on an non-supporting kernel - ebegin "Checking 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 -} - -# -# the phases -# - -# pkg_pretend - -pkg_pretend() { +# 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() { # Make sure devpts is mounted correctly for use w/out setuid pt_chown check_devpts @@ -591,9 +596,6 @@ pkg_pretend() { eerror " Downgrading glibc is not supported and a sure way to destruction." die "Aborting to save your system." fi - - # removed check for #262698 since it's about kernel 2.6.18 ... - # removed check for #279260 since it's about kernel <2.6.28 ... fi # Users have had a chance to phase themselves, time to give em the boot @@ -610,6 +612,12 @@ pkg_pretend() { die "Please fix your CHOST" fi + if ! do_run_test '#include \n#include \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() will break. See bug 279260." + die "Old and broken kernel." + 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" @@ -619,30 +627,6 @@ pkg_pretend() { use hardened && ! tc-enables-pie && \ ewarn "PIE hardening not applied, as your compiler doesn't default to PIE" - # Make sure host system is up to date #394453 - if has_version ' "${T}/check-ia32-emulation.c" + "${CC-${CHOST}-gcc}" ${CFLAGS_x86} "${T}/check-ia32-emulation.c" -o "${T}/check-ia32-emulation.elf32" + "${T}/check-ia32-emulation.elf32" + local STAT=$? + 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 ; 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} + + ebegin "Checking gcc for __thread support" + if ! eend $(want__thread ; echo $?) ; then + echo + eerror "Could not find a gcc that supports the __thread directive!" + eerror "Please update your binutils/gcc and try again." + die "No __thread support in gcc!" + fi + + 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 +} + + +# +# the phases +# + +# pkg_pretend + +pkg_pretend() { + # All the checks... + einfo "Checking general environment sanity." + sanity_prechecks } -# todo: shouldn't most of these checks be called also in src_configure again? -# (since consistency is not guaranteed between pkg_ and src_) # src_unpack src_unpack() { + # Consistency is not guaranteed between pkg_ and src_ ... + sanity_prechecks + use multilib && unpack gcc-${GCC_BOOTSTRAP_VER}-multilib-bootstrap.tar.bz2 setup_env - # Check NPTL support _before_ we unpack things to save some time - check_nptl_support - # todo: 1) move this to pkg_pretend? 2) use proper functions for kv - if [[ -n ${EGIT_REPO_URI} ]] ; then git-r3_src_unpack else unpack ${P}.tar.xz fi - cd "${S}" - touch locale/C-translit.h #185476 #218003 + cd "${S}" || die + touch locale/C-translit.h || die #185476 #218003 - cd "${WORKDIR}" + cd "${WORKDIR}" || die unpack glibc-${RELEASE_VER}-patches-${PATCH_VER}.tar.bz2 } @@ -768,11 +813,6 @@ glibc_do_configure() { local myconf=() case ${CTARGET} in - mips*) - # dlopen() detects stack smash on mips n32 ABI. - # Cause is unknown: https://bugs.gentoo.org/640130 - myconf+=( --enable-stack-protector=no ) - ;; powerpc-*) # Currently gcc on powerpc32 generates invalid code for # __builtin_return_address(0) calls. Normally programs @@ -891,16 +931,10 @@ glibc_do_configure() { # is built with MULTILIB_ABIS="amd64 x86" but we want to # add x32 to it, gcc/glibc don't yet support x32. # - # This reqires net-libs/rpcsvc-proto now (which provides - # rpcgen) !!! Needs analysis how to best add to deps. - # if [[ -n ${GCC_BOOTSTRAP_VER} ]] && use multilib ; 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-${GCC_BOOTSTRAP_VER}/${ABI}:" config.make || die - mkdir -p sunrpc - cp $(which rpcgen) sunrpc/cross-rpcgen || die - touch -t 202001010101 sunrpc/cross-rpcgen || die fi fi } diff --git a/sys-libs/libcxx/Manifest b/sys-libs/libcxx/Manifest index a8066ba4c8a0..569ea5f965aa 100644 --- a/sys-libs/libcxx/Manifest +++ b/sys-libs/libcxx/Manifest @@ -10,6 +10,6 @@ EBUILD libcxx-3.7.1.ebuild 5335 BLAKE2B 6f4dbbb8dbc7f6e8b97f05ff3e638bb037bad416 EBUILD libcxx-3.9.1.ebuild 6815 BLAKE2B d15c83602e244f8a50e0a9d15869dbd4c7be226d8b1f93249cb6658149ad2408f0feada97403a0dfa3dcd8ac25b98ae084d1d17c879f67ae24d33f8497aba569 SHA512 9c9632590b49cd01ad324641ee296f08442940ab1dda1f0c7cdc77abe6b653f70d0baa9b796ef7d77e1f4728e96fe27fcd42d79a389cfcf2b2427b087b9985af EBUILD libcxx-4.0.1.ebuild 6301 BLAKE2B d4a17d742479e7532c986046fe12b4aed0d1e59faaebead864f7e3f91c4be82aa5d708a7efe2038a146151d10530b0f31a34006e8af6c4dc24f18537dc8c0feb SHA512 8e4a82071fd5945f7876adc9cd20ed2d35ee952711574e8ac2b735d60299b480e269b07ad829c015377c8042a54b6604ffcfe41f98869b25844c00b62bec3b46 EBUILD libcxx-5.0.1.ebuild 6302 BLAKE2B 5c5f95de295a0e5fd43c33b476432fdb2896ab352d1c14b54abd9996de595587eb7e13f0d780e3b092ffebb0afdd23bd1e0478fc0cf129ee96c7ed8ca3a99a74 SHA512 a2a2707cc8b02601d72a9ae71979e86e9d1de87de635b3b2f18ee98b68fcd5fc9839d01ca4dc4023362d2fc374209df2ff8d259547daabac7f9f0bd7ea6bd359 -EBUILD libcxx-6.0.9999.ebuild 6513 BLAKE2B e5d83e13e2fb47a63b4bbab86d48b00fac3ababf5723ac54d16a1ce6403d4dd1903549301e29d38b848ee46e1e60713287fa26f492d886d01aea9b1803772abe SHA512 7d2650d31f0ee52cd2d3cac8237d50090e3d4465999c228f49dc96d9c7ad2eda57b35d6cf3c29555914ec8fae884fe4a46a1ac8bd38614ea75cfcca2c295fb97 -EBUILD libcxx-9999.ebuild 6485 BLAKE2B 09a9fc6dcf7240816f5a6eeec43446e983749eb5ae97a15f5df752c32c827bc5fef9c3b7cb3ff6b6dc290d8d2f7b00c239a93eec15809e12a0ff04cba2f1130b SHA512 18d69115e73f777ac6b98778bb64ef80da638394271ab71b07838fb7aa80661844829cf724664da4d6e56c1e22f8da6caa351e13d04119ed2c8f96df4c07048a +EBUILD libcxx-6.0.9999.ebuild 6497 BLAKE2B 4a0f126640f78d961579f996c85b41639119f6770d91c094d0037a4f7e7b415b4ecee67bb313287f83850bd180d1082965f40778daee105db9073614ab15949d SHA512 be4e0cd99414f798fe3ed3ba58c048074195a15182520ce26bfc4bd266370312046561a5d276a8c0c927692de58a3f332a91661ef6e6f74006d26b7b9310c866 +EBUILD libcxx-9999.ebuild 6469 BLAKE2B 2d4b1c09cf088780fd83336d949910e94f4d149a2cb53afbad384fdb5bcb8a1b697c803a57e9969f45b5fbd51bd36f32250fea815d1572045c4bf802a8310531 SHA512 395eed9c631daf2dae0a8ff37504bcc0682157817897402717e6a69002808cd89903d5d2ed5c69c2d542a70dc4457420dca8454e1cd54be6570106e4897cdf93 MISC metadata.xml 854 BLAKE2B f731ffbb07722face32cfe5ef0576c572fc45d93e8d78ec4adb46c43b95999dc4eb48f20311517fe08a397f2e5dec56c530bb6787a058358cfd1af8d79ffad90 SHA512 8ef3feab266e09442a42baced2d72667fa8b1290624c2c84bab7b173ead72669568847f6e995388fc1d7bc722381f60805d87b2a0cc2d04ae0c49e36bec3802a diff --git a/sys-libs/libcxx/libcxx-6.0.9999.ebuild b/sys-libs/libcxx/libcxx-6.0.9999.ebuild index 803726e9d93b..55b19b88f38d 100644 --- a/sys-libs/libcxx/libcxx-6.0.9999.ebuild +++ b/sys-libs/libcxx/libcxx-6.0.9999.ebuild @@ -42,14 +42,14 @@ RDEPEND=" libcxxabi? ( ~sys-libs/libcxxabi-${PV}[libunwind=,static-libs?,${MULTILIB_USEDEP}] ) libcxxrt? ( sys-libs/libcxxrt[libunwind=,static-libs?,${MULTILIB_USEDEP}] ) !libcxxabi? ( !libcxxrt? ( >=sys-devel/gcc-4.7:=[cxx] ) )" -# LLVM 4 required for llvm-config --cmakedir +# llvm-6 for new lit options # clang-3.9.0 installs necessary target symlinks unconditionally # which removes the need for MULTILIB_USEDEP DEPEND="${RDEPEND} test? ( >=sys-devel/clang-3.9.0 $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]') ) app-arch/xz-utils - >=sys-devel/llvm-4" + >=sys-devel/llvm-6" DOCS=( CREDITS.TXT ) diff --git a/sys-libs/libcxx/libcxx-9999.ebuild b/sys-libs/libcxx/libcxx-9999.ebuild index cbc6f0f2df65..9ad293ef7869 100644 --- a/sys-libs/libcxx/libcxx-9999.ebuild +++ b/sys-libs/libcxx/libcxx-9999.ebuild @@ -41,14 +41,14 @@ RDEPEND=" libcxxabi? ( ~sys-libs/libcxxabi-${PV}[libunwind=,static-libs?,${MULTILIB_USEDEP}] ) libcxxrt? ( sys-libs/libcxxrt[libunwind=,static-libs?,${MULTILIB_USEDEP}] ) !libcxxabi? ( !libcxxrt? ( >=sys-devel/gcc-4.7:=[cxx] ) )" -# LLVM 4 required for llvm-config --cmakedir +# llvm-6 for new lit options # clang-3.9.0 installs necessary target symlinks unconditionally # which removes the need for MULTILIB_USEDEP DEPEND="${RDEPEND} test? ( >=sys-devel/clang-3.9.0 $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]') ) app-arch/xz-utils - >=sys-devel/llvm-4" + >=sys-devel/llvm-6" DOCS=( CREDITS.TXT ) diff --git a/sys-libs/libcxxabi/Manifest b/sys-libs/libcxxabi/Manifest index ac403b7754d5..d9562e2d18a3 100644 --- a/sys-libs/libcxxabi/Manifest +++ b/sys-libs/libcxxabi/Manifest @@ -9,6 +9,6 @@ DIST libcxxabi-5.0.1.src.tar.xz 521504 BLAKE2B e8263f458545ffb8ec27234e554427696 EBUILD libcxxabi-3.9.1.ebuild 2646 BLAKE2B a1f66067e57f09aca9d2f44735f3c7b01af38b381ecab526f9bae8ffbc5c96856c5a6d8c829b2d95f0a0afffefd319670c8484c826ce81b94a63c51bb53ed114 SHA512 4849fbfe11876cb403d78852abd6df27a0dbeada69c15fd1af6e7a20d742fcca064b227592e3ac69e32546cef94c790f28d63d40c8522213a9910f0b625ea379 EBUILD libcxxabi-4.0.1.ebuild 2491 BLAKE2B 9f0bf316a6c451379291ab2825411f1a11c5924a4b9aa2dc7f742961c15072572240f945583373a3016be4cfde7993c123cb72cc6a93d31a56a7037d126f7df3 SHA512 fea9cfc1ee9389aad2e11a63802de0dd7c2f2e82ccefb5afa25349b64bba296022f293ffc66c5ba7c8e704513b17a77d911b2de7ef800db5f9a484596a9e147e EBUILD libcxxabi-5.0.1.ebuild 2571 BLAKE2B 90268006adecef7d343ab6bfd37cd69f4c97b77a9e18070a04cac33d8f30fc2156bdf265ee8c760a8bada302ef0a5887507637c1620b0fcc40c2cc2e678870f0 SHA512 1b70fd9b00c0c9d70135a31dad317b361f77843faa20f9aa588d6fd469c04a3731e643a2f6a2968701cfbe4f99be46202932428e955c7b32c54e2f1e2590c363 -EBUILD libcxxabi-6.0.9999.ebuild 2563 BLAKE2B dda79ea0e63d161b1bfd7e8cc60f7b9b0afc7c98fcba988a69ea9c8afbdea0630e221e424e00bd8d9f788ad65cc57253f5b5e953b91adc488437507266060469 SHA512 4cbb48b174ff596e4008873b179d7996676f49512657e7874e3f8dc4ef2fb5716f460a6141e7d51fa5d912ea0cb7ee7916bfb1b56054be850d381418bafde005 -EBUILD libcxxabi-9999.ebuild 2538 BLAKE2B df56a395a119b42e7e9bf2e5253187081f9b07cf53a8b94b911e50f25f09895b1e293f57f38c30847132a74b3df5094e06724e418f241b6d38bc94e478e2c31a SHA512 20299a0929507ddde82500c8ae8f972c28c900c62cdbe09e1e329ed2cd1ce0b1c76bf2f9e271a3981616409b26cd96ab2c11123dc397c0b83e9261d3bbf4b187 +EBUILD libcxxabi-6.0.9999.ebuild 2547 BLAKE2B aedf03ba137b00849132ebee2365be2150032f9ee70a797808cf3755ce1269f9619e34d960096e31edcc100140da314bef8332a0b9d6879f63920e838ba9a295 SHA512 c7f2358aa093e545fa6dfd4a2f2b2dd489411abbd2ad2c38423b83cebf6f8079e6c0b69529d70b72d7ce1c0ac2386619f47ff77cddfb6a82f93abb05896bdfda +EBUILD libcxxabi-9999.ebuild 2522 BLAKE2B fb23d54e3810f2bdd0cc39225d63cf02ec116c4ad0b10c6164ca9e53044818dad09ed52e85a646efd82ac89c3f4c349bb684a967a5babb0b3682a1d6529573c4 SHA512 b54d92ec2aa7f6d47dd66c8fca0aa800bd691651c6462f56f9f7b0a1c90ce3ba77212aba47c68c41ad9564fc6b65e406e1927b1ec950a66d808b2a9240c4dad4 MISC metadata.xml 350 BLAKE2B 67b70b8d7292327882a845b76667ce24fee728cd84f27ed7e329bc7963631cba4c28bafce5e6a5fefb4ba1df5c7fd572b3b0d7a2b31ef649496f2f991b691bff SHA512 317dd7b59a711dd0461b5369f7e31ea196882b018e047e1dbae8077274d06cb68542c8762efb852cce0b8021bedea69c19aa0c124b9414a36cf1a9c00e0b9703 diff --git a/sys-libs/libcxxabi/libcxxabi-6.0.9999.ebuild b/sys-libs/libcxxabi/libcxxabi-6.0.9999.ebuild index 8af1083737be..3018d56a299d 100644 --- a/sys-libs/libcxxabi/libcxxabi-6.0.9999.ebuild +++ b/sys-libs/libcxxabi/libcxxabi-6.0.9999.ebuild @@ -30,9 +30,9 @@ RDEPEND=" >=sys-libs/llvm-libunwind-3.9.0-r1[static-libs?,${MULTILIB_USEDEP}] ) )" -# LLVM 4 required for llvm-config --cmakedir +# llvm-6 for new lit options DEPEND="${RDEPEND} - >=sys-devel/llvm-4 + >=sys-devel/llvm-6 test? ( >=sys-devel/clang-3.9.0 ~sys-libs/libcxx-${PV}[libcxxabi(-)] $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]') )" diff --git a/sys-libs/libcxxabi/libcxxabi-9999.ebuild b/sys-libs/libcxxabi/libcxxabi-9999.ebuild index 1b77a1cfce7c..dcf9e5a2123e 100644 --- a/sys-libs/libcxxabi/libcxxabi-9999.ebuild +++ b/sys-libs/libcxxabi/libcxxabi-9999.ebuild @@ -29,9 +29,9 @@ RDEPEND=" >=sys-libs/llvm-libunwind-3.9.0-r1[static-libs?,${MULTILIB_USEDEP}] ) )" -# LLVM 4 required for llvm-config --cmakedir +# llvm-6 for new lit options DEPEND="${RDEPEND} - >=sys-devel/llvm-4 + >=sys-devel/llvm-6 test? ( >=sys-devel/clang-3.9.0 ~sys-libs/libcxx-${PV}[libcxxabi(-)] $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]') )" diff --git a/sys-libs/libomp/Manifest b/sys-libs/libomp/Manifest index 78014cc46ccf..50eae1a05670 100644 --- a/sys-libs/libomp/Manifest +++ b/sys-libs/libomp/Manifest @@ -15,6 +15,6 @@ EBUILD libomp-3.9.0.ebuild 1264 BLAKE2B d47970eb3edd24601f97770c326f9274849425ae EBUILD libomp-3.9.1.ebuild 1326 BLAKE2B 4e1c5178e66a3d4371556bcb26fab5ea84e2bac1ce0abb127d68bbe09f4e735d6d8ed4404f19bb6d8cb4808a782a5b72c9425e4acd2fe2cc97ebc3372de1c72c SHA512 99afa3364dfe73c52792e1f0c4cc19c9beb1fdb28d7fd009a778c351f86fd1759a1c4bfcd46194890b51f227844c063fed53085d78c0b91351858ed517e42794 EBUILD libomp-4.0.1.ebuild 2413 BLAKE2B f0d72a3a85e94a5a92f6ce68dce9a27eef08ef1b10bf6c85b3dc1ac4e4a5831ab6d744e5606cd198a480c373ce67a392fa1f238081a3830de8c01368aecd4f89 SHA512 196bb81a32308109df8485bf5e2eb9a5c5658b069c8c168b193e01839e2b2cad2a147dc0e0af2efd6029784e3a8dc891d1487c17b0e94d73ea634e69a3173928 EBUILD libomp-5.0.1.ebuild 2248 BLAKE2B caa3e0f8bb68db828c06160e705d08379e975d589ca837a25cf762f1e05d55f4e53cce22c27c4457fd112bbe8d74ae521c4c6028ee81acacac53478fa147a783 SHA512 b8f9f43635539891b8de0ecaf8d016ed351e07de4cb03c9420a22741ce20a3a85528318f56c549eb46307bddaa7a4ce55a6d93b99050351d50ba424fa7309bd5 -EBUILD libomp-6.0.9999.ebuild 2425 BLAKE2B 89caec2f5f0e0110b310d3f2da1e0856bda2a4cf5933df589985808e35e437956d62842e22a5a4084da2f943ee040509ca680264a327a8e9eac5309a232d3be9 SHA512 e90f826e26aa8893d41a7a8d566e6fada64c3b2278a3b0f0b943c746f7f6f8e66690cb937811ecd7b7d4e9ac87dd6396ecdc4d91bd2935a59758ab4a376af3b4 -EBUILD libomp-9999.ebuild 2400 BLAKE2B 8cbcf18ff9b9fe8b92ad693282d31a93b54432978021cc6037c63584a050c11a44de385a283a31d0e5379f878eca7c8a24bfc77ca4e0fc4838ecb23263daa47a SHA512 c82f937b54b2b5f2543aa4f260bc5a632d8e5dc9683a05c2f027ffc91aeddbb1ae3f1b6583dc0ba9fe4c85661c01c1d55c32e830e3290711c21f3d11518a7ffc -MISC metadata.xml 670 BLAKE2B e059d444954246af28f1e5fde5a5bcda4662965a09fbe77d852e27ee7017e1723937b693c4e057963b71e32b5492660965a15af60087c540dc1161dc1a349a38 SHA512 d4269bb7192e00feed26327bb2ac36db3b1c4f5d55417c22efb9a64fa5a006c17dd39459ecc305e8a9a3a954271ad10013fe5c9159a30ea609513aabddebf485 +EBUILD libomp-6.0.9999.ebuild 3038 BLAKE2B b06ad6a77f8a897990e4fef2308b00dc967e3e24966b6276b4ab123eea447b1123198738dd2d972288a99031c53f0e305ed9c81f03b616012d11066bcb95d893 SHA512 09675cb136081fbdb872108355162361fca313b222a282a35101e3d942c76927fc000378cf16fc74bd995825514b89fc08f5981d1db496c7c2c647d72063e2f3 +EBUILD libomp-9999.ebuild 3013 BLAKE2B 65ff4c97a543ce3d96bbc83424f331a08ac14ac3c61e7bb30a027cfeed7dd5af53b253b8dd13e329fe0ef418997f45fab7c0315c52cf343aca4007b3cf8f9aa3 SHA512 0c45cf214db76f69582800dedd2c7a26355f07edfe1fdb5fc71cfab1197e3e9261d16790e4b9096df7eae55fa0f6d3e87e2b1252ea1b5a56d5e6f1716c6a984b +MISC metadata.xml 825 BLAKE2B 07802144018f2f74b0927b53a346f99cbc7e36dbf501bb8dfc786f8d549c10eb688afafb1759f13d4d56d10f1bcae67dfa86cc2047cc39a9655a09a22e9a4260 SHA512 de43d5be94a5ea1cdfd3ae747d55b50d5d6ee577743f55d006d585d2d5acd5b3100845486ac415685f07361cd9985bae9347fff9c65417d198c49a61b4f6ba5e diff --git a/sys-libs/libomp/libomp-6.0.9999.ebuild b/sys-libs/libomp/libomp-6.0.9999.ebuild index 5e156aca296c..fe232b72fc87 100644 --- a/sys-libs/libomp/libomp-6.0.9999.ebuild +++ b/sys-libs/libomp/libomp-6.0.9999.ebuild @@ -24,19 +24,27 @@ EGIT_BRANCH="release_60" LICENSE="|| ( UoI-NCSA MIT ) MIT LLVM-Grant" SLOT="0" KEYWORDS="" -IUSE="hwloc ompt test" +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}] )" +RDEPEND=" + hwloc? ( sys-apps/hwloc:0=[${MULTILIB_USEDEP}] ) + offload? ( + virtual/libelf:=[${MULTILIB_USEDEP}] + virtual/libffi:=[${MULTILIB_USEDEP}] + cuda? ( dev-util/nvidia-cuda-sdk:= ) + )" # 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} dev-lang/perl + offload? ( virtual/pkgconfig[${MULTILIB_USEDEP}] ) test? ( $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]') - sys-devel/llvm >=sys-devel/clang-6 )" @@ -69,14 +77,24 @@ multilib_src_configure() { -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+=( - -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit" - -DLLVM_LIT_ARGS="-vv" + # this project does not use standard LLVM cmake macros + -DOPENMP_LLVM_LIT_EXECUTABLE="${EPREFIX}/usr/bin/lit" + -DOPENMP_LIT_ARGS="-vv" -DOPENMP_TEST_C_COMPILER="$(type -P "${CHOST}-clang")" -DOPENMP_TEST_CXX_COMPILER="$(type -P "${CHOST}-clang++")" diff --git a/sys-libs/libomp/libomp-9999.ebuild b/sys-libs/libomp/libomp-9999.ebuild index ad6d62ae7449..d215cbe36384 100644 --- a/sys-libs/libomp/libomp-9999.ebuild +++ b/sys-libs/libomp/libomp-9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2017 Gentoo Foundation +# Copyright 1999-2018 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 EAPI=6 @@ -23,19 +23,27 @@ EGIT_REPO_URI="https://git.llvm.org/git/openmp.git LICENSE="|| ( UoI-NCSA MIT ) MIT LLVM-Grant" SLOT="0" KEYWORDS="" -IUSE="hwloc ompt test" +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}] )" +RDEPEND=" + hwloc? ( sys-apps/hwloc:0=[${MULTILIB_USEDEP}] ) + offload? ( + virtual/libelf:=[${MULTILIB_USEDEP}] + virtual/libffi:=[${MULTILIB_USEDEP}] + cuda? ( dev-util/nvidia-cuda-sdk:= ) + )" # 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} dev-lang/perl + offload? ( virtual/pkgconfig[${MULTILIB_USEDEP}] ) test? ( $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]') - sys-devel/llvm >=sys-devel/clang-6 )" @@ -68,14 +76,24 @@ multilib_src_configure() { -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+=( - -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit" - -DLLVM_LIT_ARGS="-vv" + # this project does not use standard LLVM cmake macros + -DOPENMP_LLVM_LIT_EXECUTABLE="${EPREFIX}/usr/bin/lit" + -DOPENMP_LIT_ARGS="-vv" -DOPENMP_TEST_C_COMPILER="$(type -P "${CHOST}-clang")" -DOPENMP_TEST_CXX_COMPILER="$(type -P "${CHOST}-clang++")" diff --git a/sys-libs/libomp/metadata.xml b/sys-libs/libomp/metadata.xml index ca91e84fce57..58df765860eb 100644 --- a/sys-libs/libomp/metadata.xml +++ b/sys-libs/libomp/metadata.xml @@ -9,7 +9,9 @@ llvm@gentoo.org + Build CUDA offloading plugin (only with USE=offload) Enable CPU affinity support via hwloc + Support offloading OpenMP using libomptarget Enable OpenMP Tools Interface support The OpenMP subproject of LLVM is intended to contain all of the components required to build an executing OpenMP program that are outside the compiler itself. diff --git a/sys-libs/llvm-libunwind/Manifest b/sys-libs/llvm-libunwind/Manifest index 6c04224e3f64..e2ce383bc2ae 100644 --- a/sys-libs/llvm-libunwind/Manifest +++ b/sys-libs/llvm-libunwind/Manifest @@ -10,6 +10,6 @@ EBUILD llvm-libunwind-3.9.0-r1.ebuild 1182 BLAKE2B 8a01875c7c57c4c4052d0bc680794 EBUILD llvm-libunwind-3.9.1.ebuild 1187 BLAKE2B adc3bdff94f0b5a855c4d6eac0ee123dbdc845da541d06fb6f3d533a0375d969427488cbbb4bcef4d545c8e6993ab4c78a8c5f3bca9f06f2b36a84199e471b0c SHA512 bdd65eb012df3af046c71406af02927255f3502aaf92e53fa9dbf2adfa0150b68e4325cfef2f07d1893738ba6ba3f009a89e37861ffe7999752ea77fc3963a0b EBUILD llvm-libunwind-4.0.1.ebuild 1094 BLAKE2B dec5d0847983833e461635ac5711b5d253963650aed87678277bec86d1334ae9348d26605e20acf2a8d2405e891dd10c9303abf7d243ed86e36c8f3e3f12b83b SHA512 3fb7283eea0b4282c549d7cf2cee1aea0f9d28b7689f5b83a32893c32ebfabc703eb0328593109db96a86351b639bc3e60572c7de93fbed18dd359a14b352386 EBUILD llvm-libunwind-5.0.1.ebuild 1095 BLAKE2B 415bd2a215254de93f7de3bbcab1345dfe7e6ed79aa19393d25faa1f73454e4aa3fb9285734805ce53ba16d93df721473580a5cd9455707613fbc54c88f92c72 SHA512 951459c8dc2b1a55a85569edb85fa522ea1128f8bb3d7699153600d8aa5881db64fc9ae8bd312036be01b8d29ec4c34c867d815e7e8bba11f15fc1d0bc5dbaf7 -EBUILD llvm-libunwind-6.0.9999.ebuild 1109 BLAKE2B 9d9760e4296c970b416c237ea5203751a4a17ff94f744779378c986b0315b36ac0a52c317d8f9da75ce314de8fa7cd0380cbeb2c1d9daa16f75dc483c690b8e8 SHA512 6ec698db9f52b427b9bd5bb16fbcb825488a2fcc0b010c45fcecffe522b0b5842ae1b9653a2e45bddfd89ed5d001e554649636fe1fc019cb64b5ac4575f80b01 -EBUILD llvm-libunwind-9999.ebuild 1084 BLAKE2B 549f50753c3ed20954b1fd1260ce1cd216a4e9bf56c23b59e8ac34b9e8163419a76c3634995143fbea2c8f681069944607c823f130235b97985936e1030a4413 SHA512 9393e7fafe3a5b0416c0206a1d25ba9f0601dfc329293c9d4b02d61859aaf7f5b1c1be1fc7e82429f278385f70890f1ab49b8db0785c33ac0d2e193877741cd7 +EBUILD llvm-libunwind-6.0.9999.ebuild 2087 BLAKE2B 6d33b3e80997e3ab3bc661f108508512ff236e624f1dd42d51250d37010e76762dba7b46d2cbe17144b53c32d8d47ce0a9fbff360aa43b4703656586c7b9e102 SHA512 714ae52e1739ff2430e4e901aea3e73d5aa963868f16ae01cc6611a756a055b4d7cab30ce981c5db287e93d9b754aad8ad14ccf0d7b414d2386084fed7a6f5a9 +EBUILD llvm-libunwind-9999.ebuild 2062 BLAKE2B 1a7276785f129d662e77cb8035f33f375ff2c57c8ebb10f04af2637c94af560de20c20b952d8bb815462db16cc9f84de881dcfcbabf44d5035a0f1603ef07a9f SHA512 ad902a7bbf551351aaea5f01cb05b52000c0940be079228962a6e7d89fa03243ed2aae1ebfe401eb770911981c5f8fb6812bb6f9e135be7eaf4f8050a722c35a MISC metadata.xml 302 BLAKE2B 1cdee7813ed9a3766b2eddccd14f9e0576ba5cc7f812d7af4f35c8c2e5991790f3800c6473c37da90d72804832fd9af969a2e3bf7aa625f0d3a32da1dbcefacf SHA512 3afaef82e6a495a81e221524ae7604dc170ef5c103333728674faf0417c45ba7996118c10466eaa24f8feef9ed8f0fc60d535a5195462317d61c61a531c8a285 diff --git a/sys-libs/llvm-libunwind/llvm-libunwind-6.0.9999.ebuild b/sys-libs/llvm-libunwind/llvm-libunwind-6.0.9999.ebuild index 6c50f73f19b4..0be3b4e8c29e 100644 --- a/sys-libs/llvm-libunwind/llvm-libunwind-6.0.9999.ebuild +++ b/sys-libs/llvm-libunwind/llvm-libunwind-6.0.9999.ebuild @@ -6,7 +6,8 @@ EAPI=6 : ${CMAKE_MAKEFILE_GENERATOR:=ninja} # (needed due to CMAKE_BUILD_TYPE != Gentoo) CMAKE_MIN_VERSION=3.7.0-r1 -inherit cmake-multilib git-r3 llvm +PYTHON_COMPAT=( python{2_7,3_4,3_5,3_6} ) +inherit cmake-multilib git-r3 llvm python-any-r1 DESCRIPTION="C++ runtime stack unwinder from LLVM" HOMEPAGE="https://github.com/llvm-mirror/libunwind" @@ -18,15 +19,39 @@ EGIT_BRANCH="release_60" LICENSE="|| ( UoI-NCSA MIT )" SLOT="0" KEYWORDS="" -IUSE="debug +static-libs" +IUSE="debug +static-libs test" +RESTRICT="!test? ( test )" RDEPEND="!sys-libs/libunwind" -# LLVM 4 required for llvm-config --cmakedir -DEPEND=">=sys-devel/llvm-4" +# llvm-6 for new lit options +DEPEND=" + >=sys-devel/llvm-6 + test? ( + sys-libs/libcxx[${MULTILIB_USEDEP}] + $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]') )" # least intrusive of all CMAKE_BUILD_TYPE=RelWithDebInfo +python_check_deps() { + has_version "dev-python/lit[${PYTHON_USEDEP}]" +} + +pkg_setup() { + use test && python-any-r1_pkg_setup +} + +src_unpack() { + # we need headers & test utilities + git-r3_fetch "https://git.llvm.org/git/libcxx.git + https://github.com/llvm-mirror/libcxx.git" + git-r3_fetch + + git-r3_checkout https://llvm.org/git/libcxx.git \ + "${WORKDIR}"/libcxx '' include utils/libcxx + git-r3_checkout +} + multilib_src_configure() { local libdir=$(get_libdir) @@ -34,11 +59,27 @@ multilib_src_configure() { -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 + mycmakeargs+=( + -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit" + -DLLVM_LIT_ARGS="-vv" + -DLIBUNWIND_LIBCXX_PATH="${WORKDIR}"/libcxx + ) + fi cmake-utils_src_configure } +multilib_src_test() { + cmake-utils_src_make check-unwind +} + multilib_src_install() { cmake-utils_src_install diff --git a/sys-libs/llvm-libunwind/llvm-libunwind-9999.ebuild b/sys-libs/llvm-libunwind/llvm-libunwind-9999.ebuild index 88f7a92b6c9c..c10226761668 100644 --- a/sys-libs/llvm-libunwind/llvm-libunwind-9999.ebuild +++ b/sys-libs/llvm-libunwind/llvm-libunwind-9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2017 Gentoo Foundation +# Copyright 1999-2018 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 EAPI=6 @@ -6,7 +6,8 @@ EAPI=6 : ${CMAKE_MAKEFILE_GENERATOR:=ninja} # (needed due to CMAKE_BUILD_TYPE != Gentoo) CMAKE_MIN_VERSION=3.7.0-r1 -inherit cmake-multilib git-r3 llvm +PYTHON_COMPAT=( python{2_7,3_4,3_5,3_6} ) +inherit cmake-multilib git-r3 llvm python-any-r1 DESCRIPTION="C++ runtime stack unwinder from LLVM" HOMEPAGE="https://github.com/llvm-mirror/libunwind" @@ -17,15 +18,39 @@ EGIT_REPO_URI="https://git.llvm.org/git/libunwind.git LICENSE="|| ( UoI-NCSA MIT )" SLOT="0" KEYWORDS="" -IUSE="debug +static-libs" +IUSE="debug +static-libs test" +RESTRICT="!test? ( test )" RDEPEND="!sys-libs/libunwind" -# LLVM 4 required for llvm-config --cmakedir -DEPEND=">=sys-devel/llvm-4" +# llvm-6 for new lit options +DEPEND=" + >=sys-devel/llvm-6 + test? ( + sys-libs/libcxx[${MULTILIB_USEDEP}] + $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]') )" # least intrusive of all CMAKE_BUILD_TYPE=RelWithDebInfo +python_check_deps() { + has_version "dev-python/lit[${PYTHON_USEDEP}]" +} + +pkg_setup() { + use test && python-any-r1_pkg_setup +} + +src_unpack() { + # we need headers & test utilities + git-r3_fetch "https://git.llvm.org/git/libcxx.git + https://github.com/llvm-mirror/libcxx.git" + git-r3_fetch + + git-r3_checkout https://llvm.org/git/libcxx.git \ + "${WORKDIR}"/libcxx '' include utils/libcxx + git-r3_checkout +} + multilib_src_configure() { local libdir=$(get_libdir) @@ -33,11 +58,27 @@ multilib_src_configure() { -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 + mycmakeargs+=( + -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit" + -DLLVM_LIT_ARGS="-vv" + -DLIBUNWIND_LIBCXX_PATH="${WORKDIR}"/libcxx + ) + fi cmake-utils_src_configure } +multilib_src_test() { + cmake-utils_src_make check-unwind +} + multilib_src_install() { cmake-utils_src_install diff --git a/sys-libs/ncurses/Manifest b/sys-libs/ncurses/Manifest index 66ad25471242..8b888d97933f 100644 --- a/sys-libs/ncurses/Manifest +++ b/sys-libs/ncurses/Manifest @@ -14,5 +14,5 @@ DIST ncurses-5.9.tar.gz 2826473 BLAKE2B 91101b049a5eb6a2674fb86b5eba56515207f490 DIST ncurses-6.0.tar.gz 3131891 BLAKE2B 68670ebdaba28c7a750631da01a0e3681b476cc9e9ae6fd9eae5a254f41fab5f1a5df5fa9897a92d1da751f1cc0b72f2ffee4603865900e67fcbb949c102cf78 SHA512 9ec194f4783dae6de8c529cac31b5cfbfcfea212c5d47b1f87cd49df013e38f8580a9e7aa1384918df0921b4ba999d5e73eb6d6362cce2d7287e64308b673963 EBUILD ncurses-5.9-r101.ebuild 5295 BLAKE2B dccde970635c874070f52a3fe1cd49f6f2c21a3360299596d49db2d57ec9be4c9319fe1d38af49949d8528ced9559ffa8d01d339a5f44b3181cf6405f68a0a5b SHA512 e7505e1b91925abed6feb120da09ec578276c467fef6b3e99fa8ebf74e4abecc130507406919ea1c49e7f9e4738e9c0b4dc20f9964b603de50dba2abe637f1ad EBUILD ncurses-6.0-r1.ebuild 8645 BLAKE2B c74fd055fbcdd72c4f3a8d719ef568d015f4edb57ce9167497307689d069148ad4a8789014ae81d7b277c324cbe1189dc0f2205c50b915899b542ef63be875ec SHA512 6eba919e6333c4833455784a377257a6d8dd7d134daf9a536113327487c8f2a191da942f9bea76fb963b0c04a64cd6ac7065b2c32e30fd1e61df302d6d424fdc -EBUILD ncurses-6.0-r2.ebuild 8668 BLAKE2B a6a1229148f506938aacf52ab00b9e81f54e15114c6416b9a1e5ebf55a9eb5987940e4bf1ec1bfbeb054483628f2a159cbe1bc8d26ad27d887230278b7df4779 SHA512 e9f515ff4be96474f1a13da4c6b1eb5ce2afb14dab5b6244fa556f539e465a0813f8d9ec6cbc62d81b6892b851a5cbc3d40725cd647ec99949edd0579882870e +EBUILD ncurses-6.0-r2.ebuild 8778 BLAKE2B d6a032b565271120b83eecf9db92edfa823175ff0839f76af6c81023694234642b305a48d81c43d5b92dd3b9d4ffb779b07fb3b92d2787fb171ae446bf0ca8f5 SHA512 7439f04a0ecca8a87687aa08b1656b5e0eb2a78e37c3340e9ba8e2f40d85fc05a27316909ccc2b803bc98565bce57db35f44b3a23dcdd5c64e298a1bd1633657 MISC metadata.xml 619 BLAKE2B a5b29f22ce491bf7a308673944651ea9d916a6d487a45a2a7ee4a7e8d33f7b3bd398e3edeb830f0b443cb4524c0b73af4d6e1511e8128289a76666acd931d611 SHA512 3f28fd8aee675226f641d72d7437edf4c5840cdac3dca64b6a4c61902d4f4127d86f65acfefb270cba2fcfb0ba9d6ff9d3ca24930825b89c82f0eedc8160f9ef diff --git a/sys-libs/ncurses/ncurses-6.0-r2.ebuild b/sys-libs/ncurses/ncurses-6.0-r2.ebuild index 9051223ca378..250619a40dd6 100644 --- a/sys-libs/ncurses/ncurses-6.0-r2.ebuild +++ b/sys-libs/ncurses/ncurses-6.0-r2.ebuild @@ -116,6 +116,8 @@ do_configure() { # ncurses is dumb and doesn't install .pc files unless pkg-config # is also installed. Force the tests to go our way. Note that it # doesn't actually use pkg-config ... it just looks for set vars. + # This is fixed in newer versions: + # https://lists.gnu.org/archive/html/bug-ncurses/2015-08/msg00026.html --enable-pc-files --with-pkg-config="$(tc-getPKG_CONFIG)" # This path is used to control where the .pc files are installed. diff --git a/sys-libs/timezone-data/Manifest b/sys-libs/timezone-data/Manifest index 1fb4fa02bf3a..554e3af9fcf5 100644 --- a/sys-libs/timezone-data/Manifest +++ b/sys-libs/timezone-data/Manifest @@ -8,5 +8,5 @@ DIST tzdata2017b.tar.gz 324317 BLAKE2B aec4ac18b1ff7435754923c62e424813c975d0e06 DIST tzdata2017c.tar.gz 335571 BLAKE2B 466eefacd5600d15685d973b16d98053b3610efd9a1a9c7c7f1f384dcde8950d037c25ef065a85876433f9e9483fa72c46bb28f9c4225c7fe38a6376ada91132 SHA512 feb5c544e617b30c73a397e5a1c51f9847d0fddf1dfa0f9ace2e6f686786f09b666937b2048e07075c84593fc584bd5a25d639fce70eca9735267df28621ab4c EBUILD timezone-data-2017a.ebuild 4599 BLAKE2B 921bd7e12a9f5e5a0a636f26998c4e7438838d79270a862c64a149d79576ab1b47241d41ffd7dabeb672f14bb288fb0d1ac4d285a3f2e20aa9516c1ab0c0c21e SHA512 0fc13e2b412819126186dc725210069c89864efb01cafbe521a8345788be8ee3d3b1d59a4e0a624fe6919f6b0418947a64ca038cc26a50bd6f12624489ecdd65 EBUILD timezone-data-2017b.ebuild 4676 BLAKE2B 8a32faba541657e795f39e92f67899b5c0b076dc14f5efe21124375bc830c362672a6b1181fdfcb2704ef4e01827a2c75f7de101279925c87246eec499176dea SHA512 f68387320004598e1b55612b6228e21f708581878485f08547ce58d3fbbff456b2d6af3fd3810398308784724430fd64202781d0df88d4a5acc676e56e82c2a9 -EBUILD timezone-data-2017c.ebuild 4662 BLAKE2B 804d4d4e37b2675d89b3099608e3bf34f6999eecde614269afcb9a4fee4c0499e6b8978c4c7f551d5100856a076dee2ae04132c5e9cf5bf13c00462f629d7f9b SHA512 10f3eef4efdd76163bfc32684e707f0a63661ccfdfb1a857e1fbaada77fc1d7ef2c766046a57323cc9b475f07ba8f319b496f780e199bec8ebf81fb3233d461f +EBUILD timezone-data-2017c.ebuild 4655 BLAKE2B 5f97b32bd696e62abc030fbe9ae565cdac3350c3caeb6385f400f0a3e4f612bb05970c375a1342d4d961c2807302849358a7cab6d8c9e832a79697ba490a3123 SHA512 7062692fed5e31c71d15c42d3020b05e6a337c880bfa0ee74d78556c20c0ca0998256eec13f73d239802a3c5058aa8a3c77ad81fb7fd5c2c523d15ffebff71d8 MISC metadata.xml 658 BLAKE2B 75ee5deafa4e9c1336119b2b2b87de6f8520a29f8fa7901c4995bddbb0cb185de9a019ff7703d0a8aa7b2f685a9ec2ca518641ea0c0a1b6123aa05faa04274a1 SHA512 94b68a5195b17cd1a7283a90a42ba9e1dfb0e7dde7c16f48202233cc2fc20ea718a1588b57b2af372e3c35ed403276cdd59456165a225f149a813abff2144c73 diff --git a/sys-libs/timezone-data/timezone-data-2017c.ebuild b/sys-libs/timezone-data/timezone-data-2017c.ebuild index 3db3a5b1d14b..3f327a73d924 100644 --- a/sys-libs/timezone-data/timezone-data-2017c.ebuild +++ b/sys-libs/timezone-data/timezone-data-2017c.ebuild @@ -14,7 +14,7 @@ SRC_URI="http://www.iana.org/time-zones/repository/releases/tzdata${data_ver}.ta LICENSE="BSD public-domain" SLOT="0" -KEYWORDS="~alpha amd64 arm ~arm64 hppa ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris" +KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris" IUSE="nls leaps_timezone elibc_FreeBSD" DEPEND="nls? ( virtual/libintl )" -- cgit v1.2.3