diff options
author | Michał Górny <mgorny@gentoo.org> | 2024-01-24 06:44:22 +0100 |
---|---|---|
committer | Michał Górny <mgorny@gentoo.org> | 2024-01-24 07:32:47 +0100 |
commit | f2869e9a60d157149acdd99b504492b088785c66 (patch) | |
tree | b41a8e94e99502b8be6e57c70a66598d7e40c9f8 /sys-devel/clang-toolchain-symlinks | |
parent | sys-devel/clang: Add 19.x live ebuild (diff) | |
download | gentoo-f2869e9a60d157149acdd99b504492b088785c66.tar.gz gentoo-f2869e9a60d157149acdd99b504492b088785c66.tar.bz2 gentoo-f2869e9a60d157149acdd99b504492b088785c66.zip |
sys-devel/clang-toolchain-symlinks: Add 19.x live ebuild
Signed-off-by: Michał Górny <mgorny@gentoo.org>
Diffstat (limited to 'sys-devel/clang-toolchain-symlinks')
-rw-r--r-- | sys-devel/clang-toolchain-symlinks/clang-toolchain-symlinks-19.ebuild | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/sys-devel/clang-toolchain-symlinks/clang-toolchain-symlinks-19.ebuild b/sys-devel/clang-toolchain-symlinks/clang-toolchain-symlinks-19.ebuild new file mode 100644 index 000000000000..3496a0f89b67 --- /dev/null +++ b/sys-devel/clang-toolchain-symlinks/clang-toolchain-symlinks-19.ebuild @@ -0,0 +1,58 @@ +# Copyright 2022-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit multilib + +DESCRIPTION="Symlinks to use Clang on GCC-free system" +HOMEPAGE="https://wiki.gentoo.org/wiki/Project:LLVM" +S=${WORKDIR} + +LICENSE="public-domain" +SLOT="${PV}" +IUSE="gcc-symlinks multilib-symlinks +native-symlinks" + +# Blocker for bug #872416 +RDEPEND=" + !<sys-devel/gcc-config-2.6 + sys-devel/clang:${SLOT} +" + +src_install() { + local tools=() + + if use native-symlinks; then + tools+=( + cc:clang + cpp:clang-cpp + c++:clang++ + ) + fi + if use gcc-symlinks; then + tools+=( + gcc:clang + g++:clang++ + ) + fi + + local chosts=( "${CHOST}" ) + if use multilib-symlinks; then + local abi + for abi in $(get_all_abis); do + chosts+=( "$(get_abi_CHOST "${abi}")" ) + done + fi + + local chost t + local dest=/usr/lib/llvm/${SLOT}/bin + dodir "${dest}" + for t in "${tools[@]}"; do + dosym "${t#*:}" "${dest}/${t%:*}" + done + for chost in "${chosts[@]}"; do + for t in "${tools[@]}"; do + dosym "${t#*:}" "${dest}/${chost}-${t%:*}" + done + done +} |