Commit Graph

2326 Commits

Author SHA1 Message Date
Robert Scott
48bde3a189 cc-wrapper: add support for pacret hardening flag on aarch64 2024-07-28 19:27:14 +01:00
Emily
8a837af302 Merge pull request #326819 from risicle/ris-shadowstack
cc-wrapper: add support for `shadowstack` hardening flag
2024-07-28 19:07:52 +01:00
Robert Scott
7a4736e1ef llvm: disable shadowstack hardening flag 2024-07-28 17:40:54 +01:00
s1341
344902e098 llvm: Fix compiler-rt missing sanitizers when using useLLVM 2024-07-26 19:49:09 -04:00
github-actions[bot]
12ea252962 Merge master into staging-next 2024-07-25 06:01:22 +00:00
Tristan Ross
afd2f214b0 llvmPackages_git.compiler-rt: fix darwin patch (#329796) 2024-07-25 00:21:39 -04:00
github-actions[bot]
5b4db4db1c Merge master into staging-next 2024-07-23 06:01:09 +00:00
Tristan Ross
2deb3dd45f llvmPackages_git.compiler-rt: disable codesign 2024-07-22 18:19:11 -07:00
Tristan Ross
3827d51c23 llvmPackages_git: 19.0.0-git-2024-07-14 -> 19.0.0-git-2024-07-21 2024-07-21 20:17:23 -07:00
Vladimír Čunát
577f40b8a9 Merge branch 'staging' into staging-next 2024-07-20 16:12:24 +02:00
Alyssa Ross
29934c9408 llvm: fix broken llvm-config-native for canExecute
Since a0b4b85bfa ("llvm: Avoid cross compiling if the build platform
can execute host binaries"), the flags to get a working
llvm-config-native are not used when the build platform can execute
host binaries, resulting in a broken llvm-config-native, and therefore
a broken mesa, but since build can execute host, we don't need a
separate llvm-config-native at all — we can just use the normal
llvm-config.

Fixes: a0b4b85bfa ("llvm: Avoid cross compiling if the build platform can execute host binaries")
2024-07-20 10:09:32 +02:00
Morgan Jones
37ba8970e7 llvmPackages_13.compiler-rt-libc: don't use distutils.spawn
This function was removed in Python 3.12 and seems to only be used in
LLVM 13, despite the Python file this is used in being present in
LLVM 12 and 14. The merge_archives.py file was removed in LLVM 15.
2024-07-19 01:51:47 -07:00
John Ericson
8f8c3c9c3b Merge pull request #326644 from obsidiansystems/openbsd-llvm
llvm_18, lld_18: Patch to support more OpenBSD sections
2024-07-16 16:07:28 -04:00
Artturin
a516ea8c99 Merge branch 'staging-next' into staging 2024-07-16 19:07:48 +03:00
Tristan Ross
d94a7ad348 llvmPackages_git: 19.0.0-git-2024-07-08 -> 19.0.0-git-2024-07-14 2024-07-14 21:28:10 -07:00
Robert Scott
b207b6ef74 cc-wrapper: add support for shadowstack hardening flag 2024-07-14 21:25:47 +01:00
Robert Scott
8cc85654bc Merge pull request #327093 from risicle/ris-llvm-trivialautovarinit-disable-tidy
llvm: make `hardeningDisable` of `trivialautovarinit` common across all llvms
2024-07-14 20:05:19 +01:00
Robert Scott
57a38b02f9 llvm: make hardeningDisable of trivialautovarinit common across all llvms
its omission from llvm 17 was probably an oversight arising
from llvm 17's release leap-frogging the trivialautovarinit
PR
2024-07-14 15:26:42 +01:00
John Ericson
62a46e824b llvm_18, lld_18: Patch to support more OpenBSD sections
Without these backports (I've ensured everything has landed upstream)
the OpenBSD binaries we build will not run.
2024-07-12 14:57:34 -04:00
Tristan Ross
987dcc23b9 Merge pull request #326138 from nbraud/pkgs/llvm/simplify-mkPackage
llvm: simplify `mkPackage` helper
2024-07-10 20:27:15 -07:00
Randy Eckenrode
94e2edea56 Merge pull request #325525 from reckenrode/lldb-fix-mk2 2024-07-10 09:59:37 -04:00
nicoo
46d30329ab llvm: simplify the mkPackage helper 2024-07-10 13:51:58 +00:00
Tristan Ross
5c8f1f933e llvmPackages_git: 19.0.0-git-2024-06-30 -> 19.0.0-git-2024-07-08 2024-07-08 22:06:29 -07:00
Tristan Ross
80e3c2c5d0 llvmPackages_{13,14,15,16,17,18,git}: commonify the default.nix 2024-07-08 17:21:53 -07:00
Tristan Ross
7a95a8948b Merge pull request #324155 from paparodeo/x64-sdk11-no-rebuilds
treewide: change various flags to allow x64 darwin to default to sdk 11.0 when ready
2024-07-08 17:19:17 -07:00
Randy Eckenrode
733b2bc01d llvmPackages.lldb: combine out and lib outputs on Darwin
LLDB expects to find the location of `bin` relative to `lib`. Patching
it to know the location would cause a cycle between the `out` output and
the `lib` output, so combine the two on Darwin.

Fixes https://github.com/NixOS/nixpkgs/issues/252838.
2024-07-08 07:52:26 -04:00
github-actions[bot]
d6339576fb Merge master into staging-next 2024-07-05 18:01:19 +00:00
Tobias Mayer
da06c32a5f clang_18: Upstream patch to fix an ICE
See https://github.com/llvm/llvm-project/pull/93206.

Co-authored-by: Alyssa Ross <hi@alyssa.is>
2024-07-05 16:01:01 +02:00
github-actions[bot]
9cede82051 Merge master into staging-next 2024-07-04 12:01:10 +00:00
Masum Reza
0c4a8b4f89 Merge pull request #320472 from rhelmot/freebsd-libunwind-mess
{llvm,freebsd.libcxxrt}: Sort out references to unwind functions
2024-07-04 16:43:06 +05:30
Reno Dakota
07cba9376f treewide: only access apple_sdk.sdk when sdk < 11
update code to not assume that x64 darwin uses sdk 10.12. These changes
want to reach into apple_sdk.sdk to grab a header file which is only
required for sdk 10.12.
2024-07-03 00:03:59 +00:00
github-actions[bot]
1addc8dd4c Merge master into staging-next 2024-07-01 18:01:14 +00:00
Tristan Ross
2821670dd4 Merge pull request #323688 from ExpidusOS/feat/llvm-git-2024-06-30
llvmPackages_git: 19.0.0-git-2024-06-23 -> 19.0.0-git-2024-06-30
2024-07-01 07:30:52 -07:00
Alyssa Ross
629d1dc03e Merge remote-tracking branch 'origin/master' into staging-next
Conflicts:
	pkgs/development/lua-modules/generated-packages.nix
2024-07-01 14:34:32 +02:00
Weijia Wang
7c8efe638c treewide: replace deprecated aliases 2024-07-01 08:49:45 +02:00
Tristan Ross
50b3a1e0e9 llvmPackages_git: 19.0.0-git-2024-06-23 -> 19.0.0-git-2024-06-30 2024-06-30 18:10:33 -07:00
Martin Weinelt
de245ec4a5 Merge remote-tracking branch 'origin/master' into staging-next 2024-06-25 13:00:25 +02:00
Tristan Ross
fbd8ea5b15 llvmPackages_git: 19.0.0-git-2024-06-12 -> 19.0.0-git-2024-06-23 2024-06-23 21:35:07 -07:00
Martin Weinelt
2096642430 Merge remote-tracking branch 'origin/staging-next' into staging
Conflicts:
- pkgs/os-specific/windows/mingw-w64/default.nix
2024-06-23 19:09:00 +02:00
Yueh-Shun Li
eb572c420d clang-tools: move into llvmPackages 2024-06-23 01:34:26 +05:30
Tristan Ross
12f48ca046 Merge pull request #320282 from pwaller/fix-maybe-uninitialized
llvmPackages.clang: don't pass -Wno-maybe-uninitialized to clang
2024-06-21 18:25:23 -07:00
github-actions[bot]
61f347aa76 Merge staging-next into staging 2024-06-20 06:01:23 +00:00
Rick van Schijndel
43ce0f9ee0 Merge pull request #318256 from risicle/ris-stack-clash-protection
cc-wrapper: add stack clash protection hardening flag
2024-06-19 19:54:30 +02:00
Tristan Ross
599b8ebad1 llvmPackages_18: 18.1.7 -> 18.1.8 2024-06-18 18:10:40 -07:00
K900
00e78b2c9a Merge pull request #319047 from K900/mesa-chop
mesa: split out the Darwin build into a separate expression
2024-06-18 23:43:19 +03:00
Martin Weinelt
f822b2ba5c Merge remote-tracking branch 'origin/staging-next' into staging
Conflicts:
- pkgs/development/python-modules/langsmith/default.nix
- pkgs/development/python-modules/rich-pixels/default.nix
- pkgs/servers/teleport/generic.nix
2024-06-18 20:16:19 +02:00
Artemis Tosini
f76271c4df llvm: Don't use libunwind on FreeBSD
Native builds on nixpkgs FreeBSD always use llvm's libc++ as the
C++ standard library, with libcxxrt and "libgcc" from the FreeBSD tree
providing lower level ABI functions.

However, the cross LLVM stdenv assumed that we wanted libunwind instead
of libgcc. As libgcc headers are already in FreeBSD's libc, some C++
functions failed with duplicate header errors.

Disable all references to libunwind in libcxx on FreeBSD and the LLVM
cross stdenvs for FreeBSD.
2024-06-17 00:35:55 -07:00
Peter Waller
40a7f218c5 llvmPackages_{12,13,14,15,16,17,18,git}: Allow overriding dependencies
... consistently.

Further to #307211, allow overriding arguments through llvmPackages.override.

This makes it possible to override any dependency of LLVM or
clang by overriding it on `llvmPackages.override { <dependency> = ...; }`.

This is useful in development or customization where sometimes it is
desirable to turn features on or off.

Without this patch the only way to for example override ncurses was to
do `overriddenLLVM = llvmPackages.llvm.override { ncurses }`, but then
you would have to thread `overriddenLLVM` as dependencies into clang and
other packages, which results in quite a difficult expression to write
correctly in cross compilation scenarios.

Signed-off-by: Peter Waller <p@pwaller.net>
2024-06-16 20:25:26 +01:00
Peter Waller
0c3c6d879f llvmPackages.clang: don't pass -Wno-maybe-uninitialized to clang
If building clang under clang, don't pass -Wno-maybe-uninitialized;
this is a gcc-only warning and clang emits a diagnostic for every TU
about the unknown warning flag.

Signed-off-by: Peter Waller <p@pwaller.net>
2024-06-16 16:00:01 +01:00
Artturin
23b617791c Merge pull request #307211 from pwaller/llvm-simplify-arg-passthrough
llvmPackages_{12,13,14,15,16,17,18,git}: Simplify argument passthrough
2024-06-16 14:29:45 +03:00