commit:     2faa09dc23a1bbb9b385afe8bea639da4a18bc73
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Mon Oct 10 20:43:51 2022 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Mon Oct 10 20:52:39 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2faa09dc

sys-libs/libcxxabi: Use tc-get-c-rtlib

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 sys-libs/libcxxabi/libcxxabi-13.0.1.ebuild             |  8 ++------
 sys-libs/libcxxabi/libcxxabi-14.0.6.ebuild             |  8 ++------
 sys-libs/libcxxabi/libcxxabi-15.0.2.ebuild             | 14 ++++----------
 sys-libs/libcxxabi/libcxxabi-15.0.3.9999.ebuild        | 14 ++++----------
 sys-libs/libcxxabi/libcxxabi-16.0.0.9999.ebuild        | 14 ++++----------
 sys-libs/libcxxabi/libcxxabi-16.0.0_pre20221006.ebuild | 14 ++++----------
 sys-libs/libcxxabi/libcxxabi-16.0.0_pre20221010.ebuild | 14 ++++----------
 7 files changed, 24 insertions(+), 62 deletions(-)

diff --git a/sys-libs/libcxxabi/libcxxabi-13.0.1.ebuild 
b/sys-libs/libcxxabi/libcxxabi-13.0.1.ebuild
index b49532e94b6d..b2fcf26fc7f0 100644
--- a/sys-libs/libcxxabi/libcxxabi-13.0.1.ebuild
+++ b/sys-libs/libcxxabi/libcxxabi-13.0.1.ebuild
@@ -53,12 +53,8 @@ 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
+       if use libunwind && [[ $(tc-get-c-rtlib) == compiler-rt ]]; then
+               want_compiler_rt=ON
        fi
 
        local libdir=$(get_libdir)

diff --git a/sys-libs/libcxxabi/libcxxabi-14.0.6.ebuild 
b/sys-libs/libcxxabi/libcxxabi-14.0.6.ebuild
index 1aa08e4c22f1..f88c43716406 100644
--- a/sys-libs/libcxxabi/libcxxabi-14.0.6.ebuild
+++ b/sys-libs/libcxxabi/libcxxabi-14.0.6.ebuild
@@ -59,12 +59,8 @@ 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
+       if use libunwind && [[ $(tc-get-c-rtlib) == compiler-rt ]]; then
+               want_compiler_rt=ON
        fi
 
        local libdir=$(get_libdir)

diff --git a/sys-libs/libcxxabi/libcxxabi-15.0.2.ebuild 
b/sys-libs/libcxxabi/libcxxabi-15.0.2.ebuild
index 5665bc0cb12f..d9a53ffa7084 100644
--- a/sys-libs/libcxxabi/libcxxabi-15.0.2.ebuild
+++ b/sys-libs/libcxxabi/libcxxabi-15.0.2.ebuild
@@ -63,15 +63,9 @@ multilib_src_configure() {
                strip-unsupported-flags
        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
-       fi
+       # link to compiler-rt
+       local use_compiler_rt=OFF
+       [[ $(tc-get-c-rtlib) == compiler-rt ]] && use_compiler_rt=ON
 
        local libdir=$(get_libdir)
        local mycmakeargs=(
@@ -83,7 +77,7 @@ multilib_src_configure() {
                -DLIBCXXABI_ENABLE_SHARED=ON
                -DLIBCXXABI_ENABLE_STATIC=$(usex static-libs)
                -DLIBCXXABI_INCLUDE_TESTS=$(usex test)
-               -DLIBCXXABI_USE_COMPILER_RT=${want_compiler_rt}
+               -DLIBCXXABI_USE_COMPILER_RT=${use_compiler_rt}
 
                # upstream is omitting standard search path for this
                # probably because gcc & clang are bundling their own unwind.h

diff --git a/sys-libs/libcxxabi/libcxxabi-15.0.3.9999.ebuild 
b/sys-libs/libcxxabi/libcxxabi-15.0.3.9999.ebuild
index 130101c20cb9..8d8f8212d31e 100644
--- a/sys-libs/libcxxabi/libcxxabi-15.0.3.9999.ebuild
+++ b/sys-libs/libcxxabi/libcxxabi-15.0.3.9999.ebuild
@@ -62,15 +62,9 @@ multilib_src_configure() {
                strip-unsupported-flags
        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
-       fi
+       # link to compiler-rt
+       local use_compiler_rt=OFF
+       [[ $(tc-get-c-rtlib) == compiler-rt ]] && use_compiler_rt=ON
 
        local libdir=$(get_libdir)
        local mycmakeargs=(
@@ -82,7 +76,7 @@ multilib_src_configure() {
                -DLIBCXXABI_ENABLE_SHARED=ON
                -DLIBCXXABI_ENABLE_STATIC=$(usex static-libs)
                -DLIBCXXABI_INCLUDE_TESTS=$(usex test)
-               -DLIBCXXABI_USE_COMPILER_RT=${want_compiler_rt}
+               -DLIBCXXABI_USE_COMPILER_RT=${use_compiler_rt}
 
                # upstream is omitting standard search path for this
                # probably because gcc & clang are bundling their own unwind.h

diff --git a/sys-libs/libcxxabi/libcxxabi-16.0.0.9999.ebuild 
b/sys-libs/libcxxabi/libcxxabi-16.0.0.9999.ebuild
index 130101c20cb9..8d8f8212d31e 100644
--- a/sys-libs/libcxxabi/libcxxabi-16.0.0.9999.ebuild
+++ b/sys-libs/libcxxabi/libcxxabi-16.0.0.9999.ebuild
@@ -62,15 +62,9 @@ multilib_src_configure() {
                strip-unsupported-flags
        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
-       fi
+       # link to compiler-rt
+       local use_compiler_rt=OFF
+       [[ $(tc-get-c-rtlib) == compiler-rt ]] && use_compiler_rt=ON
 
        local libdir=$(get_libdir)
        local mycmakeargs=(
@@ -82,7 +76,7 @@ multilib_src_configure() {
                -DLIBCXXABI_ENABLE_SHARED=ON
                -DLIBCXXABI_ENABLE_STATIC=$(usex static-libs)
                -DLIBCXXABI_INCLUDE_TESTS=$(usex test)
-               -DLIBCXXABI_USE_COMPILER_RT=${want_compiler_rt}
+               -DLIBCXXABI_USE_COMPILER_RT=${use_compiler_rt}
 
                # upstream is omitting standard search path for this
                # probably because gcc & clang are bundling their own unwind.h

diff --git a/sys-libs/libcxxabi/libcxxabi-16.0.0_pre20221006.ebuild 
b/sys-libs/libcxxabi/libcxxabi-16.0.0_pre20221006.ebuild
index 130101c20cb9..8d8f8212d31e 100644
--- a/sys-libs/libcxxabi/libcxxabi-16.0.0_pre20221006.ebuild
+++ b/sys-libs/libcxxabi/libcxxabi-16.0.0_pre20221006.ebuild
@@ -62,15 +62,9 @@ multilib_src_configure() {
                strip-unsupported-flags
        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
-       fi
+       # link to compiler-rt
+       local use_compiler_rt=OFF
+       [[ $(tc-get-c-rtlib) == compiler-rt ]] && use_compiler_rt=ON
 
        local libdir=$(get_libdir)
        local mycmakeargs=(
@@ -82,7 +76,7 @@ multilib_src_configure() {
                -DLIBCXXABI_ENABLE_SHARED=ON
                -DLIBCXXABI_ENABLE_STATIC=$(usex static-libs)
                -DLIBCXXABI_INCLUDE_TESTS=$(usex test)
-               -DLIBCXXABI_USE_COMPILER_RT=${want_compiler_rt}
+               -DLIBCXXABI_USE_COMPILER_RT=${use_compiler_rt}
 
                # upstream is omitting standard search path for this
                # probably because gcc & clang are bundling their own unwind.h

diff --git a/sys-libs/libcxxabi/libcxxabi-16.0.0_pre20221010.ebuild 
b/sys-libs/libcxxabi/libcxxabi-16.0.0_pre20221010.ebuild
index 130101c20cb9..8d8f8212d31e 100644
--- a/sys-libs/libcxxabi/libcxxabi-16.0.0_pre20221010.ebuild
+++ b/sys-libs/libcxxabi/libcxxabi-16.0.0_pre20221010.ebuild
@@ -62,15 +62,9 @@ multilib_src_configure() {
                strip-unsupported-flags
        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
-       fi
+       # link to compiler-rt
+       local use_compiler_rt=OFF
+       [[ $(tc-get-c-rtlib) == compiler-rt ]] && use_compiler_rt=ON
 
        local libdir=$(get_libdir)
        local mycmakeargs=(
@@ -82,7 +76,7 @@ multilib_src_configure() {
                -DLIBCXXABI_ENABLE_SHARED=ON
                -DLIBCXXABI_ENABLE_STATIC=$(usex static-libs)
                -DLIBCXXABI_INCLUDE_TESTS=$(usex test)
-               -DLIBCXXABI_USE_COMPILER_RT=${want_compiler_rt}
+               -DLIBCXXABI_USE_COMPILER_RT=${use_compiler_rt}
 
                # upstream is omitting standard search path for this
                # probably because gcc & clang are bundling their own unwind.h

Reply via email to