Commit Graph

15 Commits

Author SHA1 Message Date
Cheng Shao
1a8754caf8 llvmPackages_13: 13.0.0 -> 13.0.1 2022-02-04 14:23:25 +00:00
sternenseemann
e238f456b8 llvmPackages_*.clang: pick clangUseLLVM if targetPlatform.useLLVM
libcxxClang still depends on cc wrapper's gccForLibs for libgcc which is
not available when useLLVM is set. In such cases we need to switch to
clangUseLLVM and (try) to use compiler-rt instead.

Resolves #153759: pkgsLLVM.llvmPackages.stdenv now correctly
clangUseLLVM as cc, allowing compilation to work as expected.
2022-01-07 14:52:13 +01:00
sternenseemann
766f5ffb76 llvmPackages_*: respect cc for target when choosing C++ flavour
llvmPackages_*.clang should check the default compiler for the package
set it is targeting (targetPackages.stdenv.cc) instead of the compiler
that has been used to build it (stdenv.cc) in order to get some sense of
whether to use libc++ or libstdc++.

Since we are now inspecting targetPackages in the llvmPackages.clang
attribute, we need to avoid using it in the cross stdenv — which just
forces us to explicitly request libcxxClang for darwin instead of
relying on the clang attribute to pick it for us.

We also need to do something similar for targetPackages.stdenv.cc: Here
the llvmPackages.clang logic would work as we want (inspect
targetPackages.stdenv.cc and if it doesn't exist, make the choice based
on stdenv.cc), but it gets locked in a cycle with the previous package.
We can easily break this, however: We know that the previous set had
clang and the next one doesn't exist, so we'd choose libcxxClang any day
of the week.
2022-01-07 14:42:41 +01:00
github-actions[bot]
904ed45698
Merge master into staging-next 2021-12-03 18:01:12 +00:00
Robert Scott
54a487505a llvmPackages_13.libcxx: require gcc >=10 on gcc platforms
specifically aarch64. as of version 13 libcxx does not build on gcc9.
2021-11-26 22:12:42 +00:00
midchildan
7994b1dfc0
fixup! llvmPackages_13.libcxx: fix darwin build 2021-11-26 02:38:44 +09:00
midchildan
e157b5dc28
llvmPackages_13.libcxx: fix darwin build 2021-11-25 19:59:17 +09:00
pennae
dc895fb281 lib: make extendDerivation lighter on eval
the fix to extendDerivation in #140051 unwittingly worsened eval performance by
quite a bit. set elements alone needed over 1GB extra after the change, which
seems disproportionate to how small it was. if we flip the logic used to
determine which outputs to install around and keep a "this one exactly" flag in
the specific outputs instead of a "all of them" in the root we can avoid most
of that cost.
2021-10-15 16:39:10 +02:00
Michael Weiss
ed2c99e65f
llvmPackages_13: 13.0.0-rc4 -> 13.0.0 2021-10-01 22:10:21 +02:00
Michael Weiss
8bc030eb13
llvmPackages_13: 13.0.0-rc3 -> 13.0.0-rc4 2021-09-25 13:52:14 +02:00
Michael Weiss
d4f61aa164
llvmPackages_13: 13.0.0-rc2 -> 13.0.0-rc3 2021-09-14 22:49:56 +02:00
Michael Weiss
bac15390f5
llvmPackages_13: 13.0.0-rc1 -> 13.0.0-rc2
Upstream backported 5060224d9eed8b8359ed5090bb7c577b8575e9e7:
93da37dc58
2021-08-28 00:00:47 +02:00
Yureka
b0f27ee74d llvmPackages_*: expose release_version 2021-08-20 23:07:43 +02:00
Michael Weiss
2540b66ba6
llvmPackages_13: init at 13.0.0-rc1 2021-08-04 16:00:39 +02:00
Michael Weiss
f3f86d4722
llvmPackages_13: Copy from llvmPackages_git 2021-08-04 11:29:47 +02:00