mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-09-24 04:59:14 -07:00
llvm-core/clang-linker-config: New package
Provide a new package which creates a partial clang config file
`/etc/clang/${LLVM_VERSION}/gentoo-linker.cfg`, used to control the
default linker used by clang.
Signed-off-by: Michal Rostecki <vadorovsky@protonmail.com>
Closes: https://bugs.gentoo.org/951445
Part-of: https://github.com/gentoo/gentoo/pull/42663
Signed-off-by: Michał Górny <mgorny@gentoo.org>
Part-of: https://github.com/gentoo/gentoo/pull/42663
Signed-off-by: Michał Górny <mgorny@gentoo.org>
This commit is contained in:
committed by
Michał Górny
parent
63d4826c1c
commit
e9fc524a09
28
llvm-core/clang-linker-config/clang-linker-config-20.ebuild
Normal file
28
llvm-core/clang-linker-config/clang-linker-config-20.ebuild
Normal file
@@ -0,0 +1,28 @@
|
||||
# Copyright 1999-2025 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
DESCRIPTION="Default linker configuration for clang"
|
||||
HOMEPAGE="https://clang.llvm.org/"
|
||||
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="default-lld"
|
||||
|
||||
RDEPEND="
|
||||
default-lld? ( llvm-core/lld:${PV} )
|
||||
!default-lld? ( sys-devel/binutils )
|
||||
"
|
||||
|
||||
src_install() {
|
||||
insinto "/etc/clang/${SLOT}"
|
||||
newins - gentoo-linker.cfg <<-EOF
|
||||
# This file is initially generated by ${CATEGORY}/${PN}.
|
||||
# It is used to control the default linker used by clang.
|
||||
|
||||
-fuse-ld=$(usex default-lld lld bfd)
|
||||
EOF
|
||||
}
|
||||
28
llvm-core/clang-linker-config/clang-linker-config-21.ebuild
Normal file
28
llvm-core/clang-linker-config/clang-linker-config-21.ebuild
Normal file
@@ -0,0 +1,28 @@
|
||||
# Copyright 1999-2025 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
DESCRIPTION="Default linker configuration for clang"
|
||||
HOMEPAGE="https://clang.llvm.org/"
|
||||
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="default-lld"
|
||||
|
||||
RDEPEND="
|
||||
default-lld? ( llvm-core/lld:${PV} )
|
||||
!default-lld? ( sys-devel/binutils )
|
||||
"
|
||||
|
||||
src_install() {
|
||||
insinto "/etc/clang/${SLOT}"
|
||||
newins - gentoo-linker.cfg <<-EOF
|
||||
# This file is initially generated by ${CATEGORY}/${PN}.
|
||||
# It is used to control the default linker used by clang.
|
||||
|
||||
-fuse-ld=$(usex default-lld lld bfd)
|
||||
EOF
|
||||
}
|
||||
27
llvm-core/clang-linker-config/clang-linker-config-22.ebuild
Normal file
27
llvm-core/clang-linker-config/clang-linker-config-22.ebuild
Normal file
@@ -0,0 +1,27 @@
|
||||
# Copyright 1999-2025 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
DESCRIPTION="Default linker configuration for clang"
|
||||
HOMEPAGE="https://clang.llvm.org/"
|
||||
S=${WORKDIR}
|
||||
|
||||
LICENSE="public-domain"
|
||||
SLOT="${PV}"
|
||||
IUSE="default-lld"
|
||||
|
||||
RDEPEND="
|
||||
default-lld? ( llvm-core/lld:${PV} )
|
||||
!default-lld? ( sys-devel/binutils )
|
||||
"
|
||||
|
||||
src_install() {
|
||||
insinto "/etc/clang/${SLOT}"
|
||||
newins - gentoo-linker.cfg <<-EOF
|
||||
# This file is initially generated by ${CATEGORY}/${PN}.
|
||||
# It is used to control the default linker used by clang.
|
||||
|
||||
-fuse-ld=$(usex default-lld lld bfd)
|
||||
EOF
|
||||
}
|
||||
17
llvm-core/clang-linker-config/metadata.xml
Normal file
17
llvm-core/clang-linker-config/metadata.xml
Normal file
@@ -0,0 +1,17 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="person">
|
||||
<email>vadorovsky@protonmail.com</email>
|
||||
<name>Michal Rostecki</name>
|
||||
</maintainer>
|
||||
<maintainer type="project">
|
||||
<email>llvm@gentoo.org</email>
|
||||
</maintainer>
|
||||
<use>
|
||||
<flag name="default-lld">Use lld as the default linker for clang</flag>
|
||||
</use>
|
||||
<upstream>
|
||||
<remote-id type="github">llvm/llvm-project</remote-id>
|
||||
</upstream>
|
||||
</pkgmetadata>
|
||||
@@ -24,6 +24,7 @@ llvm-runtimes/libcxx
|
||||
llvm-runtimes/libgcc
|
||||
llvm-runtimes/openmp
|
||||
llvm-runtimes/offload
|
||||
llvm-core/clang-linker-config
|
||||
llvm-core/clang-runtime
|
||||
llvm-core/libclc
|
||||
llvm-runtimes/libatomic-stub
|
||||
|
||||
Reference in New Issue
Block a user