gentoo/llvm-runtimes/clang-unwindlib-config/clang-unwindlib-config-21.ebuild
Michal Rostecki 687e64f154
llvm-runtimes/clang-unwindlib-config: New package
Provide a new package which creates a partial clang config file
`/etc/clang/${LLVM_VERSION}/gentoo-unwindlib.cfg`, unsed to control the
default unwindlib 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>
2025-09-02 15:17:42 +02:00

32 lines
896 B
Bash

# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DESCRIPTION="Default unwindlib 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-compiler-rt llvm-libunwind"
RDEPEND="
default-compiler-rt? (
llvm-libunwind? ( >=llvm-runtimes/libunwind-${PV}[static-libs] )
!llvm-libunwind? ( sys-libs/libunwind[static-libs] )
)
!default-compiler-rt? ( sys-devel/gcc )
"
src_install() {
insinto "/etc/clang/${SLOT}"
newins - gentoo-unwindlib.cfg <<-EOF
# This file is initially generated by ${CATEGORY}/${PN}.
# It is used to control the default unwindlib used by clang.
--unwindlib=$(usex default-compiler-rt libunwind libgcc)
EOF
}