diff options
author | 2022-09-20 17:04:49 +0200 | |
---|---|---|
committer | 2022-09-20 18:55:25 +0200 | |
commit | 746720ae6698980f49c800d8d8c07440e3f46c7c (patch) | |
tree | c240cad23e11f7c78758651a9546501f02948df1 /sys-devel | |
parent | sys-devel/llvm-toolchain-symlinks: Add for LLVM 14.x (diff) | |
download | gentoo-746720ae6698980f49c800d8d8c07440e3f46c7c.tar.gz gentoo-746720ae6698980f49c800d8d8c07440e3f46c7c.tar.bz2 gentoo-746720ae6698980f49c800d8d8c07440e3f46c7c.zip |
sys-devel/clang-toolchain-symlinks: Add for LLVM 14.x
Signed-off-by: Michał Górny <mgorny@gentoo.org>
Diffstat (limited to 'sys-devel')
-rw-r--r-- | sys-devel/clang-toolchain-symlinks/clang-toolchain-symlinks-14.ebuild | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/sys-devel/clang-toolchain-symlinks/clang-toolchain-symlinks-14.ebuild b/sys-devel/clang-toolchain-symlinks/clang-toolchain-symlinks-14.ebuild new file mode 100644 index 000000000000..d8ea28f5257f --- /dev/null +++ b/sys-devel/clang-toolchain-symlinks/clang-toolchain-symlinks-14.ebuild @@ -0,0 +1,51 @@ +# Copyright 2022 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" +SRC_URI="" +S=${WORKDIR} + +LICENSE="public-domain" +SLOT="${PV}" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x64-macos" +IUSE="gcc-symlinks +native-symlinks" + +RDEPEND=" + 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 abi t + local dest=/usr/lib/llvm/${SLOT}/bin + dodir "${dest}" + for t in "${tools[@]}"; do + dosym "${t#*:}" "${dest}/${t%:*}" + done + for abi in $(get_all_abis); do + local abi_chost=$(get_abi_CHOST "${abi}") + for t in "${tools[@]}"; do + dosym "${t#*:}" "${dest}/${abi_chost}-${t%:*}" + done + done +} |