From 0df037f7d565c6d3bc05080614c25476bd1ecadb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maciej=20Bar=C4=87?= Date: Tue, 31 Dec 2024 02:17:09 +0100 Subject: [PATCH] dev-dotnet/dotnet-sdk: fix setting clang version from SLOT MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Maciej Barć --- .../dotnet-sdk/dotnet-sdk-9.0.101.ebuild | 25 ++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/dev-dotnet/dotnet-sdk/dotnet-sdk-9.0.101.ebuild b/dev-dotnet/dotnet-sdk/dotnet-sdk-9.0.101.ebuild index 90916c287cffb..d5bce67a81240 100644 --- a/dev-dotnet/dotnet-sdk/dotnet-sdk-9.0.101.ebuild +++ b/dev-dotnet/dotnet-sdk/dotnet-sdk-9.0.101.ebuild @@ -85,6 +85,7 @@ BDEPEND=" dev-vcs/git $(llvm_gen_dep ' llvm-core/clang:${LLVM_SLOT} + llvm-core/lld:${LLVM_SLOT} llvm-core/llvm:${LLVM_SLOT} ') " @@ -177,9 +178,13 @@ src_prepare() { filter-flags -Wlto-type-mismatch filter-lto + local llvm_prefix="$(get_llvm_prefix -b)" + export CC="${llvm_prefix}/bin/clang-${LLVM_SLOT}" + export CXX="${llvm_prefix}/bin/clang++-${LLVM_SLOT}" + export LD="${llvm_prefix}/bin/lld" + unset DOTNET_ROOT unset NUGET_PACKAGES - unset CLR_ICU_VERSION_OVERRIDE unset USER_CLR_ICU_VERSION_OVERRIDE @@ -209,6 +214,20 @@ src_prepare() { echo "$(makeopts_jobs)" EOF chmod +x "${fake_bin}/nproc" || die + + # Overwrite "init-compiler" scripts. + # TODO: Consider - this probably overshadows CCache. + cat < ./init-compiler.sh || die +export CC="${CC}" +export CXX="${CXX}" +export LDFLAGS="${LDFLAGS} -fuse-ld=lld" +export SCAN_BUILD_COMMAND="scan-build" +EOF + local init_compiler="" + for init_compiler in diagnostics runtime ; do + mv "./src/${init_compiler}/eng/common/native/init-compiler.sh"{,.orig} || die + cp ./init-compiler.sh "./src/${init_compiler}/eng/common/native/" || die + done } src_compile() { @@ -220,6 +239,10 @@ src_compile() { ewarn "Failed to remove ${package_versions_path}, build may fail!" fi + local -x EXTRA_CFLAGS="${CFLAGS}" + local -x EXTRA_CXXFLAGS="${CXXFLAGS}" + local -x EXTRA_LDFLAGS="${LDFLAGS}" + # The "source_repository" should always be the same. local source_repository="https://github.com/dotnet/dotnet" local verbosity="${GENTOO_DOTNET_BUILD_VERBOSITY:-minimal}"