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 1C59415838C for ; Sun, 28 Jan 2024 08:57:13 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 42FD6E2A0D; Sun, 28 Jan 2024 08:57:12 +0000 (UTC) Received: from smtp.gentoo.org (smtp.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 1D8ABE2A0D for ; Sun, 28 Jan 2024 08:57:12 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (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 21AD634346B for ; Sun, 28 Jan 2024 08:57:11 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 88DAFFA7 for ; Sun, 28 Jan 2024 08:57:09 +0000 (UTC) From: "Sam James" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Sam James" Message-ID: <1706432135.6d506cce2ed2543b881451f75ce3b898e2c996d8.sam@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: sys-devel/clang-common/ X-VCS-Repository: repo/gentoo X-VCS-Files: sys-devel/clang-common/clang-common-16.0.6-r2.ebuild sys-devel/clang-common/clang-common-17.0.6-r1.ebuild sys-devel/clang-common/clang-common-18.0.0.9999.ebuild sys-devel/clang-common/clang-common-18.0.0_pre20240106.ebuild sys-devel/clang-common/clang-common-18.0.0_pre20240113.ebuild sys-devel/clang-common/clang-common-18.0.0_pre20240120.ebuild sys-devel/clang-common/clang-common-19.0.0.9999.ebuild sys-devel/clang-common/metadata.xml X-VCS-Directories: sys-devel/clang-common/ X-VCS-Committer: sam X-VCS-Committer-Name: Sam James X-VCS-Revision: 6d506cce2ed2543b881451f75ce3b898e2c996d8 X-VCS-Branch: master Date: Sun, 28 Jan 2024 08:57:09 +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: 243674ca-9bf3-41b3-853d-c4a8f5e2d54b X-Archives-Hash: 27c87016c2fa418d229f41c4647662b8 commit: 6d506cce2ed2543b881451f75ce3b898e2c996d8 Author: Alexey Sokolov asokolov org> AuthorDate: Fri Jan 26 23:55:43 2024 +0000 Commit: Sam James gentoo org> CommitDate: Sun Jan 28 08:55:35 2024 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6d506cce sys-devel/clang-common: support llvm prefix on mac Bug: https://bugs.gentoo.org/758167 Signed-off-by: Alexey Sokolov asokolov.org> Signed-off-by: Sam James gentoo.org> .../clang-common/clang-common-16.0.6-r2.ebuild | 29 ++++++++++++++++++--- .../clang-common/clang-common-17.0.6-r1.ebuild | 30 ++++++++++++++++++++-- .../clang-common/clang-common-18.0.0.9999.ebuild | 30 ++++++++++++++++++++-- .../clang-common-18.0.0_pre20240106.ebuild | 30 ++++++++++++++++++++-- .../clang-common-18.0.0_pre20240113.ebuild | 30 ++++++++++++++++++++-- .../clang-common-18.0.0_pre20240120.ebuild | 30 ++++++++++++++++++++-- .../clang-common/clang-common-19.0.0.9999.ebuild | 30 ++++++++++++++++++++-- sys-devel/clang-common/metadata.xml | 1 + 8 files changed, 195 insertions(+), 15 deletions(-) diff --git a/sys-devel/clang-common/clang-common-16.0.6-r2.ebuild b/sys-devel/clang-common/clang-common-16.0.6-r2.ebuild index 88fce05309fd..4385b576d482 100644 --- a/sys-devel/clang-common/clang-common-16.0.6-r2.ebuild +++ b/sys-devel/clang-common/clang-common-16.0.6-r2.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2023 Gentoo Authors +# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -12,8 +12,8 @@ LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA" SLOT="0" KEYWORDS="amd64 arm arm64 ~loong ppc ppc64 ~riscv sparc x86 ~amd64-linux ~ppc-macos ~x64-macos" IUSE=" - default-compiler-rt default-libcxx default-lld llvm-libunwind - hardened + default-compiler-rt default-libcxx default-lld + bootstrap-prefix hardened llvm-libunwind " PDEPEND=" @@ -153,6 +153,29 @@ src_install() { @gentoo-common.cfg EOF done + + if use kernel_Darwin; then + cat >> "${ED}/etc/clang/gentoo-common.cfg" <<-EOF || die + # Gentoo Prefix on Darwin + -Wl,-search_paths_first + -Wl,-rpath,${EPREFIX}/usr/lib + -L ${EPREFIX}/usr/lib + -isystem ${EPREFIX}/usr/include + -isysroot ${EPREFIX}/MacOSX.sdk + EOF + if use bootstrap-prefix ; then + # bootstrap-prefix is only set during stage2 of bootstrapping + # Prefix, where EPREFIX is set to EPREFIX/tmp. + # Here we need to point it at the future lib dir of the stage3's + # EPREFIX. + cat >> "${ED}/etc/clang/gentoo-common.cfg" <<-EOF || die + -Wl,-rpath,${EPREFIX}/../usr/lib + EOF + fi + cat >> "${ED}/etc/clang/clang++.cfg" <<-EOF || die + -lc++abi + EOF + fi } pkg_preinst() { diff --git a/sys-devel/clang-common/clang-common-17.0.6-r1.ebuild b/sys-devel/clang-common/clang-common-17.0.6-r1.ebuild index 7811c78f5eae..0083e09889b4 100644 --- a/sys-devel/clang-common/clang-common-17.0.6-r1.ebuild +++ b/sys-devel/clang-common/clang-common-17.0.6-r1.ebuild @@ -12,8 +12,8 @@ LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA" SLOT="0" KEYWORDS="amd64 ~arm arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc x86 ~amd64-linux ~ppc-macos ~x64-macos" IUSE=" - default-compiler-rt default-libcxx default-lld llvm-libunwind - hardened + default-compiler-rt default-libcxx default-lld + bootstrap-prefix hardened llvm-libunwind " PDEPEND=" @@ -75,6 +75,12 @@ _doclang_cfg() { EOF done + if use kernel_Darwin; then + cat >> "${ED}/etc/clang/${triple}-clang++.cfg" <<-EOF || die + -lc++abi + EOF + fi + newins - "${triple}-clang-cpp.cfg" <<-EOF # This configuration file is used by the ${triple}-clang-cpp driver. @gentoo-common.cfg @@ -241,6 +247,26 @@ src_install() { local abi_chost=$(get_abi_CHOST "${abi}") doclang_cfg "${abi_chost}" done + + if use kernel_Darwin; then + cat >> "${ED}/etc/clang/gentoo-common.cfg" <<-EOF || die + # Gentoo Prefix on Darwin + -Wl,-search_paths_first + -Wl,-rpath,${EPREFIX}/usr/lib + -L ${EPREFIX}/usr/lib + -isystem ${EPREFIX}/usr/include + -isysroot ${EPREFIX}/MacOSX.sdk + EOF + if use bootstrap-prefix ; then + # bootstrap-prefix is only set during stage2 of bootstrapping + # Prefix, where EPREFIX is set to EPREFIX/tmp. + # Here we need to point it at the future lib dir of the stage3's + # EPREFIX. + cat >> "${ED}/etc/clang/gentoo-common.cfg" <<-EOF || die + -Wl,-rpath,${EPREFIX}/../usr/lib + EOF + fi + fi } pkg_preinst() { diff --git a/sys-devel/clang-common/clang-common-18.0.0.9999.ebuild b/sys-devel/clang-common/clang-common-18.0.0.9999.ebuild index dbc4a213e1c4..a50679150043 100644 --- a/sys-devel/clang-common/clang-common-18.0.0.9999.ebuild +++ b/sys-devel/clang-common/clang-common-18.0.0.9999.ebuild @@ -11,8 +11,8 @@ HOMEPAGE="https://llvm.org/" LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA" SLOT="0" IUSE=" - default-compiler-rt default-libcxx default-lld llvm-libunwind - hardened + default-compiler-rt default-libcxx default-lld + bootstrap-prefix hardened llvm-libunwind " PDEPEND=" @@ -74,6 +74,12 @@ _doclang_cfg() { EOF done + if use kernel_Darwin; then + cat >> "${ED}/etc/clang/${triple}-clang++.cfg" <<-EOF || die + -lc++abi + EOF + fi + newins - "${triple}-clang-cpp.cfg" <<-EOF # This configuration file is used by the ${triple}-clang-cpp driver. @gentoo-common.cfg @@ -242,6 +248,26 @@ src_install() { local abi_chost=$(get_abi_CHOST "${abi}") doclang_cfg "${abi_chost}" done + + if use kernel_Darwin; then + cat >> "${ED}/etc/clang/gentoo-common.cfg" <<-EOF || die + # Gentoo Prefix on Darwin + -Wl,-search_paths_first + -Wl,-rpath,${EPREFIX}/usr/lib + -L ${EPREFIX}/usr/lib + -isystem ${EPREFIX}/usr/include + -isysroot ${EPREFIX}/MacOSX.sdk + EOF + if use bootstrap-prefix ; then + # bootstrap-prefix is only set during stage2 of bootstrapping + # Prefix, where EPREFIX is set to EPREFIX/tmp. + # Here we need to point it at the future lib dir of the stage3's + # EPREFIX. + cat >> "${ED}/etc/clang/gentoo-common.cfg" <<-EOF || die + -Wl,-rpath,${EPREFIX}/../usr/lib + EOF + fi + fi } pkg_preinst() { diff --git a/sys-devel/clang-common/clang-common-18.0.0_pre20240106.ebuild b/sys-devel/clang-common/clang-common-18.0.0_pre20240106.ebuild index dbc4a213e1c4..a50679150043 100644 --- a/sys-devel/clang-common/clang-common-18.0.0_pre20240106.ebuild +++ b/sys-devel/clang-common/clang-common-18.0.0_pre20240106.ebuild @@ -11,8 +11,8 @@ HOMEPAGE="https://llvm.org/" LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA" SLOT="0" IUSE=" - default-compiler-rt default-libcxx default-lld llvm-libunwind - hardened + default-compiler-rt default-libcxx default-lld + bootstrap-prefix hardened llvm-libunwind " PDEPEND=" @@ -74,6 +74,12 @@ _doclang_cfg() { EOF done + if use kernel_Darwin; then + cat >> "${ED}/etc/clang/${triple}-clang++.cfg" <<-EOF || die + -lc++abi + EOF + fi + newins - "${triple}-clang-cpp.cfg" <<-EOF # This configuration file is used by the ${triple}-clang-cpp driver. @gentoo-common.cfg @@ -242,6 +248,26 @@ src_install() { local abi_chost=$(get_abi_CHOST "${abi}") doclang_cfg "${abi_chost}" done + + if use kernel_Darwin; then + cat >> "${ED}/etc/clang/gentoo-common.cfg" <<-EOF || die + # Gentoo Prefix on Darwin + -Wl,-search_paths_first + -Wl,-rpath,${EPREFIX}/usr/lib + -L ${EPREFIX}/usr/lib + -isystem ${EPREFIX}/usr/include + -isysroot ${EPREFIX}/MacOSX.sdk + EOF + if use bootstrap-prefix ; then + # bootstrap-prefix is only set during stage2 of bootstrapping + # Prefix, where EPREFIX is set to EPREFIX/tmp. + # Here we need to point it at the future lib dir of the stage3's + # EPREFIX. + cat >> "${ED}/etc/clang/gentoo-common.cfg" <<-EOF || die + -Wl,-rpath,${EPREFIX}/../usr/lib + EOF + fi + fi } pkg_preinst() { diff --git a/sys-devel/clang-common/clang-common-18.0.0_pre20240113.ebuild b/sys-devel/clang-common/clang-common-18.0.0_pre20240113.ebuild index dbc4a213e1c4..a50679150043 100644 --- a/sys-devel/clang-common/clang-common-18.0.0_pre20240113.ebuild +++ b/sys-devel/clang-common/clang-common-18.0.0_pre20240113.ebuild @@ -11,8 +11,8 @@ HOMEPAGE="https://llvm.org/" LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA" SLOT="0" IUSE=" - default-compiler-rt default-libcxx default-lld llvm-libunwind - hardened + default-compiler-rt default-libcxx default-lld + bootstrap-prefix hardened llvm-libunwind " PDEPEND=" @@ -74,6 +74,12 @@ _doclang_cfg() { EOF done + if use kernel_Darwin; then + cat >> "${ED}/etc/clang/${triple}-clang++.cfg" <<-EOF || die + -lc++abi + EOF + fi + newins - "${triple}-clang-cpp.cfg" <<-EOF # This configuration file is used by the ${triple}-clang-cpp driver. @gentoo-common.cfg @@ -242,6 +248,26 @@ src_install() { local abi_chost=$(get_abi_CHOST "${abi}") doclang_cfg "${abi_chost}" done + + if use kernel_Darwin; then + cat >> "${ED}/etc/clang/gentoo-common.cfg" <<-EOF || die + # Gentoo Prefix on Darwin + -Wl,-search_paths_first + -Wl,-rpath,${EPREFIX}/usr/lib + -L ${EPREFIX}/usr/lib + -isystem ${EPREFIX}/usr/include + -isysroot ${EPREFIX}/MacOSX.sdk + EOF + if use bootstrap-prefix ; then + # bootstrap-prefix is only set during stage2 of bootstrapping + # Prefix, where EPREFIX is set to EPREFIX/tmp. + # Here we need to point it at the future lib dir of the stage3's + # EPREFIX. + cat >> "${ED}/etc/clang/gentoo-common.cfg" <<-EOF || die + -Wl,-rpath,${EPREFIX}/../usr/lib + EOF + fi + fi } pkg_preinst() { diff --git a/sys-devel/clang-common/clang-common-18.0.0_pre20240120.ebuild b/sys-devel/clang-common/clang-common-18.0.0_pre20240120.ebuild index dbc4a213e1c4..a50679150043 100644 --- a/sys-devel/clang-common/clang-common-18.0.0_pre20240120.ebuild +++ b/sys-devel/clang-common/clang-common-18.0.0_pre20240120.ebuild @@ -11,8 +11,8 @@ HOMEPAGE="https://llvm.org/" LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA" SLOT="0" IUSE=" - default-compiler-rt default-libcxx default-lld llvm-libunwind - hardened + default-compiler-rt default-libcxx default-lld + bootstrap-prefix hardened llvm-libunwind " PDEPEND=" @@ -74,6 +74,12 @@ _doclang_cfg() { EOF done + if use kernel_Darwin; then + cat >> "${ED}/etc/clang/${triple}-clang++.cfg" <<-EOF || die + -lc++abi + EOF + fi + newins - "${triple}-clang-cpp.cfg" <<-EOF # This configuration file is used by the ${triple}-clang-cpp driver. @gentoo-common.cfg @@ -242,6 +248,26 @@ src_install() { local abi_chost=$(get_abi_CHOST "${abi}") doclang_cfg "${abi_chost}" done + + if use kernel_Darwin; then + cat >> "${ED}/etc/clang/gentoo-common.cfg" <<-EOF || die + # Gentoo Prefix on Darwin + -Wl,-search_paths_first + -Wl,-rpath,${EPREFIX}/usr/lib + -L ${EPREFIX}/usr/lib + -isystem ${EPREFIX}/usr/include + -isysroot ${EPREFIX}/MacOSX.sdk + EOF + if use bootstrap-prefix ; then + # bootstrap-prefix is only set during stage2 of bootstrapping + # Prefix, where EPREFIX is set to EPREFIX/tmp. + # Here we need to point it at the future lib dir of the stage3's + # EPREFIX. + cat >> "${ED}/etc/clang/gentoo-common.cfg" <<-EOF || die + -Wl,-rpath,${EPREFIX}/../usr/lib + EOF + fi + fi } pkg_preinst() { diff --git a/sys-devel/clang-common/clang-common-19.0.0.9999.ebuild b/sys-devel/clang-common/clang-common-19.0.0.9999.ebuild index dbc4a213e1c4..a50679150043 100644 --- a/sys-devel/clang-common/clang-common-19.0.0.9999.ebuild +++ b/sys-devel/clang-common/clang-common-19.0.0.9999.ebuild @@ -11,8 +11,8 @@ HOMEPAGE="https://llvm.org/" LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA" SLOT="0" IUSE=" - default-compiler-rt default-libcxx default-lld llvm-libunwind - hardened + default-compiler-rt default-libcxx default-lld + bootstrap-prefix hardened llvm-libunwind " PDEPEND=" @@ -74,6 +74,12 @@ _doclang_cfg() { EOF done + if use kernel_Darwin; then + cat >> "${ED}/etc/clang/${triple}-clang++.cfg" <<-EOF || die + -lc++abi + EOF + fi + newins - "${triple}-clang-cpp.cfg" <<-EOF # This configuration file is used by the ${triple}-clang-cpp driver. @gentoo-common.cfg @@ -242,6 +248,26 @@ src_install() { local abi_chost=$(get_abi_CHOST "${abi}") doclang_cfg "${abi_chost}" done + + if use kernel_Darwin; then + cat >> "${ED}/etc/clang/gentoo-common.cfg" <<-EOF || die + # Gentoo Prefix on Darwin + -Wl,-search_paths_first + -Wl,-rpath,${EPREFIX}/usr/lib + -L ${EPREFIX}/usr/lib + -isystem ${EPREFIX}/usr/include + -isysroot ${EPREFIX}/MacOSX.sdk + EOF + if use bootstrap-prefix ; then + # bootstrap-prefix is only set during stage2 of bootstrapping + # Prefix, where EPREFIX is set to EPREFIX/tmp. + # Here we need to point it at the future lib dir of the stage3's + # EPREFIX. + cat >> "${ED}/etc/clang/gentoo-common.cfg" <<-EOF || die + -Wl,-rpath,${EPREFIX}/../usr/lib + EOF + fi + fi } pkg_preinst() { diff --git a/sys-devel/clang-common/metadata.xml b/sys-devel/clang-common/metadata.xml index 7ea033c083c9..1b10f34f3338 100644 --- a/sys-devel/clang-common/metadata.xml +++ b/sys-devel/clang-common/metadata.xml @@ -8,6 +8,7 @@ llvm/llvm-project + !!internal use only!! DO NOT SET THIS FLAG YOURSELF!, used for bootstrapping Gentoo Prefix Use compiler-rt + libunwind instead of libgcc as the default rtlib for clang Use libc++ instead of libstdc++ as the default stdlib for clang Use lld as the default linker for clang