diff options
| author | Michał Górny <mgorny@gentoo.org> | 2024-12-11 12:26:40 +0100 |
|---|---|---|
| committer | Michał Górny <mgorny@gentoo.org> | 2024-12-11 12:53:22 +0100 |
| commit | 6b5529ead21eb493aed90dbfbbcdc847453c2376 (patch) | |
| tree | a57ed5735e9b4eaa8a2a9fc24aac43d31b246fe3 /llvm-core | |
| parent | f454ea46192c3690cf09762e2d28fdb335b5626b (diff) | |
| download | gentoo-6b5529ead21eb493aed90dbfbbcdc847453c2376.tar.gz gentoo-6b5529ead21eb493aed90dbfbbcdc847453c2376.tar.bz2 gentoo-6b5529ead21eb493aed90dbfbbcdc847453c2376.zip | |
Move {sys-devel → llvm-core}/llvm-toolchain-symlinks
Signed-off-by: Michał Górny <mgorny@gentoo.org>
Diffstat (limited to 'llvm-core')
7 files changed, 311 insertions, 0 deletions
diff --git a/llvm-core/llvm-toolchain-symlinks/llvm-toolchain-symlinks-15-r1.ebuild b/llvm-core/llvm-toolchain-symlinks/llvm-toolchain-symlinks-15-r1.ebuild new file mode 100644 index 000000000000..393c6d094a08 --- /dev/null +++ b/llvm-core/llvm-toolchain-symlinks/llvm-toolchain-symlinks-15-r1.ebuild @@ -0,0 +1,47 @@ +# Copyright 2022-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit multilib + +DESCRIPTION="Symlinks to use LLVM on binutils-free system" +HOMEPAGE="https://wiki.gentoo.org/wiki/Project:LLVM" +S=${WORKDIR} + +LICENSE="public-domain" +SLOT="${PV}" +KEYWORDS="amd64 arm arm64 ppc ppc64 ~riscv sparc x86 ~amd64-linux ~ppc-macos ~x64-macos" +IUSE="multilib-symlinks +native-symlinks" + +RDEPEND=" + sys-devel/llvm:${SLOT} +" + +src_install() { + use native-symlinks || return + + local tools=( + addr2line ar dlltool nm objcopy objdump ranlib readelf size + strings strip windres + ) + 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 "llvm-${t}" "${dest}/${t}" + done + for chost in "${chosts[@]}"; do + for t in "${tools[@]}"; do + dosym "llvm-${t}" "${dest}/${chost}-${t}" + done + done +} diff --git a/llvm-core/llvm-toolchain-symlinks/llvm-toolchain-symlinks-16-r1.ebuild b/llvm-core/llvm-toolchain-symlinks/llvm-toolchain-symlinks-16-r1.ebuild new file mode 100644 index 000000000000..c1c22114f553 --- /dev/null +++ b/llvm-core/llvm-toolchain-symlinks/llvm-toolchain-symlinks-16-r1.ebuild @@ -0,0 +1,47 @@ +# Copyright 2022-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit multilib + +DESCRIPTION="Symlinks to use LLVM on binutils-free system" +HOMEPAGE="https://wiki.gentoo.org/wiki/Project:LLVM" +S=${WORKDIR} + +LICENSE="public-domain" +SLOT="${PV}" +KEYWORDS="amd64 arm arm64 ~loong ppc ppc64 ~riscv sparc x86 ~amd64-linux ~arm64-macos ~ppc-macos ~x64-macos" +IUSE="multilib-symlinks +native-symlinks" + +RDEPEND=" + sys-devel/llvm:${SLOT} +" + +src_install() { + use native-symlinks || return + + local tools=( + addr2line ar dlltool nm objcopy objdump ranlib readelf size + strings strip windres + ) + 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 "llvm-${t}" "${dest}/${t}" + done + for chost in "${chosts[@]}"; do + for t in "${tools[@]}"; do + dosym "llvm-${t}" "${dest}/${chost}-${t}" + done + done +} diff --git a/llvm-core/llvm-toolchain-symlinks/llvm-toolchain-symlinks-17-r1.ebuild b/llvm-core/llvm-toolchain-symlinks/llvm-toolchain-symlinks-17-r1.ebuild new file mode 100644 index 000000000000..32c818f519ed --- /dev/null +++ b/llvm-core/llvm-toolchain-symlinks/llvm-toolchain-symlinks-17-r1.ebuild @@ -0,0 +1,49 @@ +# Copyright 2022-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit multilib + +DESCRIPTION="Symlinks to use LLVM on binutils-free system" +HOMEPAGE="https://wiki.gentoo.org/wiki/Project:LLVM" +S=${WORKDIR} + +LICENSE="public-domain" +SLOT="${PV}" +KEYWORDS="amd64 arm arm64 ~loong ppc ppc64 ~riscv sparc x86 ~amd64-linux ~arm64-macos ~ppc-macos ~x64-macos" +IUSE="multilib-symlinks +native-symlinks" + +RDEPEND=" + sys-devel/llvm:${SLOT} +" + +src_install() { + use native-symlinks || return + + local tools=( + addr2line ar dlltool nm objcopy objdump ranlib readelf size + strings strip windres + # https://bugs.gentoo.org/936068 + cxxfilt:c++filt + ) + 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 "llvm-${t%:*}" "${dest}/${t#*:}" + done + for chost in "${chosts[@]}"; do + for t in "${tools[@]}"; do + dosym "llvm-${t%:*}" "${dest}/${chost}-${t#*:}" + done + done +} diff --git a/llvm-core/llvm-toolchain-symlinks/llvm-toolchain-symlinks-18-r1.ebuild b/llvm-core/llvm-toolchain-symlinks/llvm-toolchain-symlinks-18-r1.ebuild new file mode 100644 index 000000000000..751321457456 --- /dev/null +++ b/llvm-core/llvm-toolchain-symlinks/llvm-toolchain-symlinks-18-r1.ebuild @@ -0,0 +1,49 @@ +# Copyright 2022-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit multilib + +DESCRIPTION="Symlinks to use LLVM on binutils-free system" +HOMEPAGE="https://wiki.gentoo.org/wiki/Project:LLVM" +S=${WORKDIR} + +LICENSE="public-domain" +SLOT="${PV}" +KEYWORDS="amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv sparc x86 ~amd64-linux ~arm64-macos ~ppc-macos ~x64-macos" +IUSE="multilib-symlinks +native-symlinks" + +RDEPEND=" + sys-devel/llvm:${SLOT} +" + +src_install() { + use native-symlinks || return + + local tools=( + addr2line ar dlltool nm objcopy objdump ranlib readelf size + strings strip windres + # https://bugs.gentoo.org/936068 + cxxfilt:c++filt + ) + 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 "llvm-${t%:*}" "${dest}/${t#*:}" + done + for chost in "${chosts[@]}"; do + for t in "${tools[@]}"; do + dosym "llvm-${t%:*}" "${dest}/${chost}-${t#*:}" + done + done +} diff --git a/llvm-core/llvm-toolchain-symlinks/llvm-toolchain-symlinks-19.ebuild b/llvm-core/llvm-toolchain-symlinks/llvm-toolchain-symlinks-19.ebuild new file mode 100644 index 000000000000..751321457456 --- /dev/null +++ b/llvm-core/llvm-toolchain-symlinks/llvm-toolchain-symlinks-19.ebuild @@ -0,0 +1,49 @@ +# Copyright 2022-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit multilib + +DESCRIPTION="Symlinks to use LLVM on binutils-free system" +HOMEPAGE="https://wiki.gentoo.org/wiki/Project:LLVM" +S=${WORKDIR} + +LICENSE="public-domain" +SLOT="${PV}" +KEYWORDS="amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv sparc x86 ~amd64-linux ~arm64-macos ~ppc-macos ~x64-macos" +IUSE="multilib-symlinks +native-symlinks" + +RDEPEND=" + sys-devel/llvm:${SLOT} +" + +src_install() { + use native-symlinks || return + + local tools=( + addr2line ar dlltool nm objcopy objdump ranlib readelf size + strings strip windres + # https://bugs.gentoo.org/936068 + cxxfilt:c++filt + ) + 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 "llvm-${t%:*}" "${dest}/${t#*:}" + done + for chost in "${chosts[@]}"; do + for t in "${tools[@]}"; do + dosym "llvm-${t%:*}" "${dest}/${chost}-${t#*:}" + done + done +} diff --git a/llvm-core/llvm-toolchain-symlinks/llvm-toolchain-symlinks-20.ebuild b/llvm-core/llvm-toolchain-symlinks/llvm-toolchain-symlinks-20.ebuild new file mode 100644 index 000000000000..c8c1320e0f92 --- /dev/null +++ b/llvm-core/llvm-toolchain-symlinks/llvm-toolchain-symlinks-20.ebuild @@ -0,0 +1,48 @@ +# Copyright 2022-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit multilib + +DESCRIPTION="Symlinks to use LLVM on binutils-free system" +HOMEPAGE="https://wiki.gentoo.org/wiki/Project:LLVM" +S=${WORKDIR} + +LICENSE="public-domain" +SLOT="${PV}" +IUSE="multilib-symlinks +native-symlinks" + +RDEPEND=" + sys-devel/llvm:${SLOT} +" + +src_install() { + use native-symlinks || return + + local tools=( + addr2line ar dlltool nm objcopy objdump ranlib readelf size + strings strip windres + # https://bugs.gentoo.org/936068 + cxxfilt:c++filt + ) + 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 "llvm-${t}" "${dest}/${t}" + done + for chost in "${chosts[@]}"; do + for t in "${tools[@]}"; do + dosym "llvm-${t%:*}" "${dest}/${chost}-${t#*:}" + done + done +} diff --git a/llvm-core/llvm-toolchain-symlinks/metadata.xml b/llvm-core/llvm-toolchain-symlinks/metadata.xml new file mode 100644 index 000000000000..d62775dfc3a3 --- /dev/null +++ b/llvm-core/llvm-toolchain-symlinks/metadata.xml @@ -0,0 +1,22 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>llvm@gentoo.org</email> + </maintainer> + <use> + <flag name="multilib-symlinks"> + Install symlinks for all ABI CHOSTs. Note that this can + result in gcc being overrode for native builds, as well + as conflict with crossdev if used for the same targets. + </flag> + <flag name="native-symlinks"> + Install generic tool symlinks like 'objdump' and 'ranlib', + as well as ${CTARGET}-*. These symlinks are installed + into slotted LLVM bindir, so they should not take precedence + over symlinks installed into /usr/bin + by <pkg>sys-devel/binutils-config</pkg> but they can be + helpful for binutils-free setups. + </flag> + </use> +</pkgmetadata> |
