From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 7B4CE158094 for ; Sun, 31 Jul 2022 19:44:22 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 42734E0F64; Sun, 31 Jul 2022 19:44:21 +0000 (UTC) Received: from smtp.gentoo.org (woodpecker.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 2B28DE0F64 for ; Sun, 31 Jul 2022 19:44:21 +0000 (UTC) Received: from oystercatcher.gentoo.org (unknown [IPv6:2a01:4f8:202:4333:225:90ff:fed9:fc84]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 35139340E47 for ; Sun, 31 Jul 2022 19:44:20 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 9725D544 for ; Sun, 31 Jul 2022 19:44:18 +0000 (UTC) From: "Michał Górny" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Michał Górny" Message-ID: <1659296655.e003b23e8ea781f52a1ffeefb00d1fbd49488335.mgorny@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: sys-libs/libcxx/ X-VCS-Repository: repo/gentoo X-VCS-Files: sys-libs/libcxx/libcxx-15.0.0.9999.ebuild X-VCS-Directories: sys-libs/libcxx/ X-VCS-Committer: mgorny X-VCS-Committer-Name: Michał Górny X-VCS-Revision: e003b23e8ea781f52a1ffeefb00d1fbd49488335 X-VCS-Branch: master Date: Sun, 31 Jul 2022 19:44:18 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: 395798d6-c8af-4192-8045-9d3bdd34817a X-Archives-Hash: 1c16e043b3022933f277f25007628faf commit: e003b23e8ea781f52a1ffeefb00d1fbd49488335 Author: Michał Górny gentoo org> AuthorDate: Sun Jul 31 18:18:44 2022 +0000 Commit: Michał Górny gentoo org> CommitDate: Sun Jul 31 19:44:15 2022 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e003b23e sys-libs/libcxx: Remove USE=libunwind Following sys-libs/libcxxabi. Signed-off-by: Michał Górny gentoo.org> sys-libs/libcxx/libcxx-15.0.0.9999.ebuild | 46 +++++++------------------------ 1 file changed, 10 insertions(+), 36 deletions(-) diff --git a/sys-libs/libcxx/libcxx-15.0.0.9999.ebuild b/sys-libs/libcxx/libcxx-15.0.0.9999.ebuild index 3acf567e062b..d95f996ca33b 100644 --- a/sys-libs/libcxx/libcxx-15.0.0.9999.ebuild +++ b/sys-libs/libcxx/libcxx-15.0.0.9999.ebuild @@ -14,16 +14,13 @@ HOMEPAGE="https://libcxx.llvm.org/" LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" SLOT="0" KEYWORDS="" -IUSE="+clang +libcxxabi +libunwind static-libs test" -REQUIRED_USE=" - libunwind? ( libcxxabi ) - test? ( clang ) -" +IUSE="+clang +libcxxabi static-libs test" +REQUIRED_USE="test? ( clang )" RESTRICT="!test? ( test )" RDEPEND=" libcxxabi? ( - ~sys-libs/libcxxabi-${PV}[libunwind=,static-libs?,${MULTILIB_USEDEP}] + ~sys-libs/libcxxabi-${PV}[static-libs?,${MULTILIB_USEDEP}] ) !libcxxabi? ( >=sys-devel/gcc-4.7:=[cxx] ) " @@ -104,32 +101,14 @@ multilib_src_configure() { strip-unsupported-flags fi - # 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 + # link against compiler-rt instead of libgcc if this is what clang does + local want_compiler_rt=OFF + if 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 - 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 @@ -156,12 +135,9 @@ multilib_src_configure() { # 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_BENCHMARKS=OFF -DLIBCXX_INCLUDE_TESTS=$(usex test) -DLIBCXX_USE_COMPILER_RT=${want_compiler_rt} - -DLIBCXX_HAS_ATOMIC_LIB=${want_gcc_s} - -DCMAKE_SHARED_LINKER_FLAGS="${extra_libs[*]} ${LDFLAGS}" ) if use test; then @@ -223,7 +199,6 @@ gen_static_ldscript() { local deps=( libc++_static.a $(usex libcxxabi libc++abi.a libsupc++.a) - $(usex libunwind libunwind.a libgcc_eh.a) ) # On Linux/glibc it does not link without libpthread or libdl. It is # fine on FreeBSD. @@ -239,7 +214,6 @@ gen_shared_ldscript() { libc++_shared.so # libsupc++ doesn't have a shared version $(usex libcxxabi libc++abi.so libsupc++.a) - $(usex libunwind libunwind.so libgcc_s.so) ) gen_ldscript "${deps[*]}" > lib/libc++.so || die