diff options
Diffstat (limited to 'sys-devel/lld-toolchain-symlinks')
6 files changed, 210 insertions, 0 deletions
diff --git a/sys-devel/lld-toolchain-symlinks/lld-toolchain-symlinks-15-r2.ebuild b/sys-devel/lld-toolchain-symlinks/lld-toolchain-symlinks-15-r2.ebuild new file mode 100644 index 000000000000..44a21b6fb09f --- /dev/null +++ b/sys-devel/lld-toolchain-symlinks/lld-toolchain-symlinks-15-r2.ebuild @@ -0,0 +1,38 @@ +# Copyright 2022-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit multilib + +DESCRIPTION="Symlinks to use LLD 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 x86" +IUSE="multilib-symlinks +native-symlinks" + +RDEPEND=" + sys-devel/lld:${SLOT} +" + +src_install() { + use native-symlinks || return + + 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 dest=/usr/lib/llvm/${SLOT}/bin + dodir "${dest}" + dosym ld.lld "${dest}/ld" + for chost in "${chosts[@]}"; do + dosym ld.lld "${dest}/${chost}-ld" + done +} diff --git a/sys-devel/lld-toolchain-symlinks/lld-toolchain-symlinks-16-r2.ebuild b/sys-devel/lld-toolchain-symlinks/lld-toolchain-symlinks-16-r2.ebuild new file mode 100644 index 000000000000..2eb282b65da9 --- /dev/null +++ b/sys-devel/lld-toolchain-symlinks/lld-toolchain-symlinks-16-r2.ebuild @@ -0,0 +1,38 @@ +# Copyright 2022-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit multilib + +DESCRIPTION="Symlinks to use LLD 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 x86 ~arm64-macos" +IUSE="multilib-symlinks +native-symlinks" + +RDEPEND=" + sys-devel/lld:${SLOT} +" + +src_install() { + use native-symlinks || return + + 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 dest=/usr/lib/llvm/${SLOT}/bin + dodir "${dest}" + dosym ld.lld "${dest}/ld" + for chost in "${chosts[@]}"; do + dosym ld.lld "${dest}/${chost}-ld" + done +} diff --git a/sys-devel/lld-toolchain-symlinks/lld-toolchain-symlinks-17.ebuild b/sys-devel/lld-toolchain-symlinks/lld-toolchain-symlinks-17.ebuild new file mode 100644 index 000000000000..d8b2ae18b0fb --- /dev/null +++ b/sys-devel/lld-toolchain-symlinks/lld-toolchain-symlinks-17.ebuild @@ -0,0 +1,38 @@ +# Copyright 2022-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit multilib + +DESCRIPTION="Symlinks to use LLD 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 x86 ~arm64-macos" +IUSE="multilib-symlinks +native-symlinks" + +RDEPEND=" + sys-devel/lld:${SLOT} +" + +src_install() { + use native-symlinks || return + + 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 dest=/usr/lib/llvm/${SLOT}/bin + dodir "${dest}" + dosym ld.lld "${dest}/ld" + for chost in "${chosts[@]}"; do + dosym ld.lld "${dest}/${chost}-ld" + done +} diff --git a/sys-devel/lld-toolchain-symlinks/lld-toolchain-symlinks-18.ebuild b/sys-devel/lld-toolchain-symlinks/lld-toolchain-symlinks-18.ebuild new file mode 100644 index 000000000000..046a5e6e66f0 --- /dev/null +++ b/sys-devel/lld-toolchain-symlinks/lld-toolchain-symlinks-18.ebuild @@ -0,0 +1,38 @@ +# Copyright 2022-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit multilib + +DESCRIPTION="Symlinks to use LLD 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 ~arm64-macos" +IUSE="multilib-symlinks +native-symlinks" + +RDEPEND=" + sys-devel/lld:${SLOT} +" + +src_install() { + use native-symlinks || return + + 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 dest=/usr/lib/llvm/${SLOT}/bin + dodir "${dest}" + dosym ld.lld "${dest}/ld" + for chost in "${chosts[@]}"; do + dosym ld.lld "${dest}/${chost}-ld" + done +} diff --git a/sys-devel/lld-toolchain-symlinks/lld-toolchain-symlinks-19.ebuild b/sys-devel/lld-toolchain-symlinks/lld-toolchain-symlinks-19.ebuild new file mode 100644 index 000000000000..b85bf912c557 --- /dev/null +++ b/sys-devel/lld-toolchain-symlinks/lld-toolchain-symlinks-19.ebuild @@ -0,0 +1,37 @@ +# Copyright 2022-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit multilib + +DESCRIPTION="Symlinks to use LLD 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/lld:${SLOT} +" + +src_install() { + use native-symlinks || return + + 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 dest=/usr/lib/llvm/${SLOT}/bin + dodir "${dest}" + dosym ld.lld "${dest}/ld" + for chost in "${chosts[@]}"; do + dosym ld.lld "${dest}/${chost}-ld" + done +} diff --git a/sys-devel/lld-toolchain-symlinks/metadata.xml b/sys-devel/lld-toolchain-symlinks/metadata.xml new file mode 100644 index 000000000000..69ca87c01788 --- /dev/null +++ b/sys-devel/lld-toolchain-symlinks/metadata.xml @@ -0,0 +1,21 @@ +<?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 'ld' symlink, as well as ${CTARGET}-ld. + 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> |