summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichał Górny <mgorny@gentoo.org>2022-09-19 11:11:39 +0200
committerMichał Górny <mgorny@gentoo.org>2022-09-20 13:05:55 +0200
commit7381ca9a9ba676f88dfbf9d0d54b0716b53a576f (patch)
treedd1c4b68341c8dcd5220a499eda8adf8df92c450 /sys-devel/llvm-toolchain-symlinks
parentdev-libs/libclc: Bump to 15.0.1 (diff)
downloadgentoo-7381ca9a9ba676f88dfbf9d0d54b0716b53a576f.tar.gz
gentoo-7381ca9a9ba676f88dfbf9d0d54b0716b53a576f.tar.bz2
gentoo-7381ca9a9ba676f88dfbf9d0d54b0716b53a576f.zip
sys-devel/llvm-toolchain-symlinks: New package for binutils-free sys
New package that installs generic tool symlinks to LLVM tools, for use on binutils-free systems. Signed-off-by: Michał Górny <mgorny@gentoo.org>
Diffstat (limited to 'sys-devel/llvm-toolchain-symlinks')
-rw-r--r--sys-devel/llvm-toolchain-symlinks/llvm-toolchain-symlinks-16.ebuild43
-rw-r--r--sys-devel/llvm-toolchain-symlinks/metadata.xml17
2 files changed, 60 insertions, 0 deletions
diff --git a/sys-devel/llvm-toolchain-symlinks/llvm-toolchain-symlinks-16.ebuild b/sys-devel/llvm-toolchain-symlinks/llvm-toolchain-symlinks-16.ebuild
new file mode 100644
index 000000000000..117dff32e17b
--- /dev/null
+++ b/sys-devel/llvm-toolchain-symlinks/llvm-toolchain-symlinks-16.ebuild
@@ -0,0 +1,43 @@
+# Copyright 2022 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"
+SRC_URI=""
+S=${WORKDIR}
+
+LICENSE="public-domain"
+SLOT="${PV}"
+KEYWORDS=""
+PROPERTIES="live"
+IUSE="+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 abi t
+ local dest=/usr/lib/llvm/${SLOT}/bin
+ dodir "${dest}"
+ for t in "${tools[@]}"; do
+ dosym "llvm-${t}" "${dest}/${t}"
+ done
+ for abi in $(get_all_abis); do
+ local abi_chost=$(get_abi_CHOST "${abi}")
+ for t in "${tools[@]}"; do
+ dosym "llvm-${t}" "${dest}/${abi_chost}-${t}"
+ done
+ done
+}
diff --git a/sys-devel/llvm-toolchain-symlinks/metadata.xml b/sys-devel/llvm-toolchain-symlinks/metadata.xml
new file mode 100644
index 000000000000..c6260bb7fb74
--- /dev/null
+++ b/sys-devel/llvm-toolchain-symlinks/metadata.xml
@@ -0,0 +1,17 @@
+<?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="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>