Commit Graph

18 Commits

Author SHA1 Message Date
Michael Weiss
6dc6d8c456
Merge pull request #154465 from Ericson2314/bump-llvm-git
llvmPackages_git.*: Bump to newer commit
2022-02-27 18:37:23 +01:00
John Ericson
4badff49fd llvmPackages_git.*: Bump to newer commit 2022-01-11 07:28:05 +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
midchildan
24d1fc7c73
llvmPackages_git.libcxx: fix darwin build 2021-11-28 00:58:53 +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
6bb97886ad
llvmPackages_git: 2021-08-03 -> 2021-08-13 2021-08-27 20:14:28 +02:00
Yureka
b0f27ee74d llvmPackages_*: expose release_version 2021-08-20 23:07:43 +02:00
Michael Weiss
50fb63e197
llvmPackages_git: 2021-07-16 -> 2021-08-03 2021-08-14 15:15:52 +02:00
Michael Weiss
a6dc8b3469
llvmPackages_git: 2021-07-12 -> 2021-07-16
This includes the changes for 13.0.0-rc1 from
2540b66ba6.
2021-08-04 17:35:57 +02:00
Michael Weiss
9857ee80fb
llvmPackages_git: 2021-06-19 -> 2021-07-12 2021-07-28 21:07:28 +02:00
Michael Weiss
d9d0021012
llvmPackages_git: 2021-06-11 -> 2021-06-19 2021-06-25 14:44:59 +02:00
Michael Weiss
87343c08c6
llvmPackages_git: 2021-06-04 -> 2021-06-11
llvm/gnu-install-dirs.patch: I've dropped most of the changes to
docs/CMake.rst as they aren't relevant for Nixpkgs and the restructuring
of that file makes it a bit annoying to resolve them via Git.
2021-06-17 15:26:22 +02:00
Michael Weiss
542575ad48
llvmPackages_git: 2021-05-17 -> 2021-06-04
This also fixes the libunwind build (even with GCC 11 it fails with):
/build/source/libunwind/src/libunwind.cpp:19:5: warning: "__has_feature" is not defined, evaluates to 0 [-Wundef]
   19 | #if __has_feature(address_sanitizer)
      |     ^~~~~~~~~~~~~
/build/source/libunwind/src/libunwind.cpp:19:18: error: missing binary operator before token "("
   19 | #if __has_feature(address_sanitizer)
      |                  ^

And the openmp build which failed with this error:
/nix/store/a4yw1svqqk4d8lhwinn9xp847zz9gfma-bash-4.4-p23/bin/bash: CLANG_TOOL-NOTFOUND: command not found
/nix/store/a4yw1svqqk4d8lhwinn9xp847zz9gfma-bash-4.4-p23/bin/bash: CLANG_TOOL-NOTFOUND: command not found
make[2]: *** [libomptarget/deviceRTLs/amdgcn/CMakeFiles/libomptarget-amdgcn-gfx906.dir/build.make:307: libomptarget/deviceRTLs/amdgcn/task.gfx906.bc] Error 127
make[2]: *** [libomptarget/deviceRTLs/amdgcn/CMakeFiles/libomptarget-amdgcn-gfx900.dir/build.make:307: libomptarget/deviceRTLs/amdgcn/task.gfx900.bc] Error 127
2021-06-14 12:58:32 +02:00
Michael Weiss
0d02b47ddd
llvmPackages_git: 12.0.0 -> 2021-05-17
TODO: Only llvmPackages_git.stdenv builds right now, other packages
still fail. Help is welcome.
2021-06-13 16:21:27 +02:00
Michael Weiss
c330272504
llvmPackages_git: Add update-git.py
Not that pretty but it should get the job done.
2021-06-05 13:39:17 +02:00
Michael Weiss
a7f062d898
llvmPackages_git: Build from Git
The version will initially remain the same so that no additional changes
to the packaging are required (i.e. this commit only includes the
required changes to build from the mono repository instead of individual
tarballs).
2021-06-03 20:33:35 +02:00
Michael Weiss
e458a01401
llvmPackages_git: Copy from llvmPackages_12
The purpose of this package is to continuously improve the LLVM
packaging in Nixpkgs without causing a lot of rebuilds and provide more
recent LLVM builds for users. For more details see:
https://github.com/NixOS/nixpkgs/issues/114828
2021-06-03 20:14:05 +02:00