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.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 40A81139360 for ; Tue, 3 Aug 2021 15:49:50 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 77934E09F5; Tue, 3 Aug 2021 15:49:49 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 4FFB3E09F5 for ; Tue, 3 Aug 2021 15:49:49 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id EB555335C30 for ; Tue, 3 Aug 2021 15:49:46 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 86E6C63F for ; Tue, 3 Aug 2021 15:49:45 +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: <1628005782.20e30ceb263f76b54978b849e8c4d648d84d7a5a.mgorny@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: sys-libs/libcxxabi/ X-VCS-Repository: repo/gentoo X-VCS-Files: sys-libs/libcxxabi/libcxxabi-13.0.0.9999.ebuild sys-libs/libcxxabi/libcxxabi-13.0.0_rc1.ebuild sys-libs/libcxxabi/libcxxabi-14.0.0.9999.ebuild X-VCS-Directories: sys-libs/libcxxabi/ X-VCS-Committer: mgorny X-VCS-Committer-Name: Michał Górny X-VCS-Revision: 20e30ceb263f76b54978b849e8c4d648d84d7a5a X-VCS-Branch: master Date: Tue, 3 Aug 2021 15:49:45 +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: 7531d69c-f36d-48b0-b129-dceeb546c8ad X-Archives-Hash: 1849838d419779686c3edc46f06d04af commit: 20e30ceb263f76b54978b849e8c4d648d84d7a5a Author: Michał Górny gentoo org> AuthorDate: Tue Aug 3 15:49:18 2021 +0000 Commit: Michał Górny gentoo org> CommitDate: Tue Aug 3 15:49:42 2021 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=20e30ceb sys-libs/libcxxabi: Fix building in 13+ Signed-off-by: Michał Górny gentoo.org> sys-libs/libcxxabi/libcxxabi-13.0.0.9999.ebuild | 16 +++++++++------- sys-libs/libcxxabi/libcxxabi-13.0.0_rc1.ebuild | 16 +++++++++------- sys-libs/libcxxabi/libcxxabi-14.0.0.9999.ebuild | 16 +++++++++------- 3 files changed, 27 insertions(+), 21 deletions(-) diff --git a/sys-libs/libcxxabi/libcxxabi-13.0.0.9999.ebuild b/sys-libs/libcxxabi/libcxxabi-13.0.0.9999.ebuild index 953c0c81796..88b0bb90ab5 100644 --- a/sys-libs/libcxxabi/libcxxabi-13.0.0.9999.ebuild +++ b/sys-libs/libcxxabi/libcxxabi-13.0.0.9999.ebuild @@ -31,7 +31,6 @@ BDEPEND=" $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]') )" -# libcxx is needed uncondtionally for the headers LLVM_COMPONENTS=( libcxx{abi,} llvm/cmake ) llvm.org_set_globals @@ -49,6 +48,11 @@ pkg_setup() { } multilib_src_configure() { + # we need a configured libc++ for __config_site + wrap_libcxx cmake_src_configure + cp -R "${WORKDIR}"/libcxx/include/. \ + "${BUILD_DIR}"/libcxx/include/c++/v1 || die + # 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 @@ -68,7 +72,7 @@ multilib_src_configure() { -DLIBCXXABI_INCLUDE_TESTS=$(usex test) -DLIBCXXABI_USE_COMPILER_RT=${want_compiler_rt} - -DLIBCXXABI_LIBCXX_INCLUDES="${WORKDIR}"/libcxx/include + -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 @@ -86,7 +90,7 @@ multilib_src_configure() { cmake_src_configure } -build_libcxx() { +wrap_libcxx() { local -x LDFLAGS="${LDFLAGS} -L${BUILD_DIR}/$(get_libdir)" local CMAKE_USE_DIR=${WORKDIR}/libcxx local BUILD_DIR=${BUILD_DIR}/libcxx @@ -103,13 +107,11 @@ build_libcxx() { -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 + wrap_libcxx cmake_src_compile mv "${BUILD_DIR}"/libcxx/lib/libc++* "${BUILD_DIR}/$(get_libdir)/" || die local -x LIT_PRESERVES_TMP=1 diff --git a/sys-libs/libcxxabi/libcxxabi-13.0.0_rc1.ebuild b/sys-libs/libcxxabi/libcxxabi-13.0.0_rc1.ebuild index 953c0c81796..88b0bb90ab5 100644 --- a/sys-libs/libcxxabi/libcxxabi-13.0.0_rc1.ebuild +++ b/sys-libs/libcxxabi/libcxxabi-13.0.0_rc1.ebuild @@ -31,7 +31,6 @@ BDEPEND=" $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]') )" -# libcxx is needed uncondtionally for the headers LLVM_COMPONENTS=( libcxx{abi,} llvm/cmake ) llvm.org_set_globals @@ -49,6 +48,11 @@ pkg_setup() { } multilib_src_configure() { + # we need a configured libc++ for __config_site + wrap_libcxx cmake_src_configure + cp -R "${WORKDIR}"/libcxx/include/. \ + "${BUILD_DIR}"/libcxx/include/c++/v1 || die + # 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 @@ -68,7 +72,7 @@ multilib_src_configure() { -DLIBCXXABI_INCLUDE_TESTS=$(usex test) -DLIBCXXABI_USE_COMPILER_RT=${want_compiler_rt} - -DLIBCXXABI_LIBCXX_INCLUDES="${WORKDIR}"/libcxx/include + -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 @@ -86,7 +90,7 @@ multilib_src_configure() { cmake_src_configure } -build_libcxx() { +wrap_libcxx() { local -x LDFLAGS="${LDFLAGS} -L${BUILD_DIR}/$(get_libdir)" local CMAKE_USE_DIR=${WORKDIR}/libcxx local BUILD_DIR=${BUILD_DIR}/libcxx @@ -103,13 +107,11 @@ build_libcxx() { -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 + wrap_libcxx cmake_src_compile mv "${BUILD_DIR}"/libcxx/lib/libc++* "${BUILD_DIR}/$(get_libdir)/" || die local -x LIT_PRESERVES_TMP=1 diff --git a/sys-libs/libcxxabi/libcxxabi-14.0.0.9999.ebuild b/sys-libs/libcxxabi/libcxxabi-14.0.0.9999.ebuild index 953c0c81796..88b0bb90ab5 100644 --- a/sys-libs/libcxxabi/libcxxabi-14.0.0.9999.ebuild +++ b/sys-libs/libcxxabi/libcxxabi-14.0.0.9999.ebuild @@ -31,7 +31,6 @@ BDEPEND=" $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]') )" -# libcxx is needed uncondtionally for the headers LLVM_COMPONENTS=( libcxx{abi,} llvm/cmake ) llvm.org_set_globals @@ -49,6 +48,11 @@ pkg_setup() { } multilib_src_configure() { + # we need a configured libc++ for __config_site + wrap_libcxx cmake_src_configure + cp -R "${WORKDIR}"/libcxx/include/. \ + "${BUILD_DIR}"/libcxx/include/c++/v1 || die + # 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 @@ -68,7 +72,7 @@ multilib_src_configure() { -DLIBCXXABI_INCLUDE_TESTS=$(usex test) -DLIBCXXABI_USE_COMPILER_RT=${want_compiler_rt} - -DLIBCXXABI_LIBCXX_INCLUDES="${WORKDIR}"/libcxx/include + -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 @@ -86,7 +90,7 @@ multilib_src_configure() { cmake_src_configure } -build_libcxx() { +wrap_libcxx() { local -x LDFLAGS="${LDFLAGS} -L${BUILD_DIR}/$(get_libdir)" local CMAKE_USE_DIR=${WORKDIR}/libcxx local BUILD_DIR=${BUILD_DIR}/libcxx @@ -103,13 +107,11 @@ build_libcxx() { -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 + wrap_libcxx cmake_src_compile mv "${BUILD_DIR}"/libcxx/lib/libc++* "${BUILD_DIR}/$(get_libdir)/" || die local -x LIT_PRESERVES_TMP=1