Commit Graph

701 Commits

Author SHA1 Message Date
Weijia Wang
41126a9493 Merge branch 'master' into staging-next 2024-05-01 10:51:08 +02:00
Sameer Rahmani
179c09cf69 llvm,mlir: Fix the incorrect MLIR_INSTALL_PACKAGE_DIR config 2024-04-30 15:57:43 +01:00
OPNA2608
be1299a6ef llvmPackages*.llvm: Disable checkPhase on powerpc64-linux
Many failures in MCJIT & Orc(more JIT).
2024-04-30 00:01:23 +02:00
sternenseemann
19f23dfdde llvmPackages_16.llvm: actually enable libLLVMGold.so
As noted in 3e8355df84, this seems to be
unproblematic. If we keep this disabled, it is unfortunately not
possible to do PGO with the default clang stdenv on GNU platforms.
2024-04-22 01:42:07 +02:00
github-actions[bot]
3aa8ef1d54 Merge staging-next into staging 2024-04-20 12:01:42 +00:00
John Ericson
ab097e08b7 llvmPackages.libcxx: Fix FreeBSD build
ce789e7e35 wasn't quite right, because multiple outputs.
2024-04-19 18:35:56 -04:00
Randy Eckenrode
852ef04876 llvmPackages_{12,13,14,15,16,17,18,git}.clang: fix libLTO.dylib path
Clang assumes that `libLTO.dylib` is located at `../lib` in the same
prefix as `clang`, but that’s not true in nixpkgs. `libLTO.dylib` is
actually located at `libllvm^lib/lib.libLTO.dylib`.
2024-04-15 15:38:13 -04:00
Tristan Ross
2941e51966 llvmPackages_{12,13,14,15,16,17,18,git}: use common llvm 2024-04-13 19:57:49 -07:00
Tristan Ross
dc4d5c2193 llvmPackages_{12,13,14,15,16,17,18,git}: use common clang 2024-04-13 19:01:42 -07:00
Weijia Wang
e65e742588 Merge pull request #303449 from ExpidusOS/feat/llvm-git-commonify-libcxx
llvmPackages_{12,13,14,15,16,17,18,git}: use common libcxx
2024-04-13 16:31:35 +02:00
Weijia Wang
8a26b55947 Merge pull request #303479 from ExpidusOS/feat/llvm-git-commonify-compiler-rt
llvmPackages_{12,13,14,15,16,17,18,git}: use common compiler-rt
2024-04-13 16:31:02 +02:00
Tristan Ross
782fc2ebac llvmPackages_{12,13,14,15,16,17,18,git}: use common libcxx 2024-04-12 15:50:13 -07:00
Tristan Ross
1572ec6bb1 llvmPackages_{12,13,14,15,16,17,18,git}: use common lld 2024-04-12 13:57:50 -07:00
Weijia Wang
ded11d6ffe Merge pull request #303447 from ExpidusOS/feat/llvm-git-commonify-libunwind
llvmPackages_{12,13,14,15,16,17,18,git}: use common libunwind
2024-04-12 22:55:30 +02:00
Tristan Ross
312264686e llvmPackages_{12,13,14,15,16,17,18,git}: use common compiler-rt 2024-04-12 13:38:29 -07:00
Tristan Ross
8c71431f14 llvmPackages_{12,13,14,15,16,17,18,git}: use common openmp 2024-04-12 07:22:03 -07:00
Tristan Ross
ae92b08fd4 llvmPackages_{12,13,14,15,16,17,18,git}: use common libunwind 2024-04-11 22:54:11 -07:00
stuebinm
ff1a94e523 treewide: add meta.mainProgram to packages with a single binary
The nixpkgs-unstable channel's programs.sqlite was used to identify
packages producing exactly one binary, and these automatically added
to their package definitions wherever possible.
2024-03-19 03:14:51 +01:00
Weijia Wang
023bc57dcc llvmPackages_17.mlir: cleanup 2024-02-24 05:35:53 +01:00
Weijia Wang
276b313a2b llvmPackages_git.mlir: init 2024-02-23 05:47:53 +01:00
Weijia Wang
bd1607202d llvmPackages: move patches to proper folders (#287092)
* llvmPackages: move clang-*-LLVMgold-path.patch to common/clang

* llvmPackages: move exegesis-force-bdver2.patch to 9/llvm

* llvmPackages: move llvm-config-link-static.patch to common/llvm

* llvmPackages: move TLI-musl.patch to common/llvm

* llvmPackages: move libcxx-0001-musl-hacks.patch to common/llvm
2024-02-23 05:14:36 +01:00
Weijia Wang
83c5c46359 llvmPackages: cleanup orphaned files 2024-02-10 04:07:25 +01:00
Weijia Wang
c380de2514 llvmPackages_git: 18.0.0-unstable-2023-10-04 -> 18.0.0-unstable-2023-12-13 (#286525)
* llvmPackages_git: 18.0.0-unstable-2023-10-04 -> 18.0.0-unstable-2023-12-13

* llvmPackages_git.clang: generalize version in folders

* llvmPackages_git.lldb: bump swig and vscode extension

* llvmPackages_git.{clang,lldb,llvm}-manpages: replace recommonmark by myst-parser
2024-02-06 21:37:08 +01:00
Nikodem Rabuliński
6305515e45 lldb: add meta.mainProgram 2024-01-12 20:06:31 +01:00
Nikodem Rabuliński
62cb8f4628 llef: init at unstable-2023-10-18 2024-01-12 20:06:30 +01:00
Weijia Wang
4994d382bb Merge pull request #279404 from trofi/llvm-bintool-targtePrefix-eval-fix
llvmPackages.bintools.bintools: expose `targetPrefix` attribute to ma…
2024-01-10 19:50:51 +01:00
Sergei Trofimovich
88f8b20419 llvmPackages.bintools.bintools: expose targetPrefix attribute to match binutils
Before the change `llvmPackages.bintools.bintools.targetPrefix` was not
present. This exposed as a discrepansy between `binutils` and `llvm`:

`binutils`:

    nix-repl> stdenv.cc.bintools.bintools.targetPrefix
    ""
    nix-repl> stdenv.cc.bintools.targetPrefix
    ""

`llvm`:

    nix-repl> pkgsLLVM.stdenv.cc.bintools.targetPrefix
    "x86_64-unknown-linux-gnu-"

    nix-repl> pkgsLLVM.stdenv.cc.bintools.bintools.targetPrefix
    error:
       error: attribute 'targetPrefix' missing

As a result some attributes like `pkgsLLVM.actionlint` failed to
evaluate:

    $ nix build --no-link -f. pkgsLLVM.actionlint
    ...
          error: attribute 'targetPrefix' missing
       at pkgs/development/compilers/ghc/9.4.8.nix:232:46:

          231|     export READELF="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}readelf"
          232|     export STRIP="${bintoolsFor.strip}/bin/${bintoolsFor.strip.targetPrefix}strip"
             |                                              ^

The change exposes binary prefix the same way as `binutils` does.
2024-01-07 14:47:22 +00:00
Weijia Wang
8741644b3f lldb: allow to be used as vscode extension again 2024-01-06 00:30:14 +01:00
sternenseemann
23cf198545 llvmPackages_{16,17,git}.lldb: tell cc-wrapper about libclang*.so
It appears that LLVM's build system no longer sets the executable's
rpath to include the faux resource root we pass in, so we need to make
sure cc-wrapper does this.
2024-01-04 11:00:25 +01:00
Semion Nadezhdin
622a03c198 llvmPackages_{14,15,16,17,git}.lldb: unify lua and python path patch 2024-01-04 11:00:25 +01:00
Weijia Wang
f6da64f8db llvmPackages_17.libclc: init 2023-12-12 02:28:36 +01:00
Tristan Ross
d6d5c8a14e llvmPackages_17: init 2023-12-07 16:28:06 -08:00
Artturin
e6751897e0 llvmPackages: Dedupe monorepoSrc 2023-11-21 01:46:51 +02:00
Artturin
5ac86a99e7 llvmPackages: Dedupe releaseInfo 2023-11-21 01:46:51 +02:00
Artturin
2902f99c57 llvmPackages: Dedupe llvm_meta 2023-11-21 01:46:47 +02:00
Artturi
872e54e9e7 Merge pull request #253533 from Artturin/llvmusesuball 2023-09-06 21:17:12 +03:00
Artturi
0d16a6b6a5 Merge pull request #253573 from Artturin/llvmdedup2 2023-09-06 21:15:53 +03:00
Artturin
3b16ddfda7 llvmPackages.clang: dedupe purity.patch 5-8
found with fdupes

```
pkgs/development/compilers/llvm/8/clang/purity.patch
pkgs/development/compilers/llvm/5/clang/purity.patch
pkgs/development/compilers/llvm/6/clang/purity.patch
pkgs/development/compilers/llvm/7/clang/purity.patch
```
2023-09-06 19:16:28 +03:00
Artturin
079fa2f075 llvmPackages.compiler-rt: dedupe codesign.patch 7-12
found with fdupes

```
pkgs/development/compilers/llvm/8/compiler-rt/codesign.patch
pkgs/development/compilers/llvm/10/compiler-rt/codesign.patch
pkgs/development/compilers/llvm/12/compiler-rt/codesign.patch
pkgs/development/compilers/llvm/9/compiler-rt/codesign.patch
pkgs/development/compilers/llvm/7/compiler-rt/codesign.patch
pkgs/development/compilers/llvm/11/compiler-rt/codesign.patch
```
2023-09-06 19:16:28 +03:00
Artturin
ac62f864ca llvmPackages.libcxxabi: dedupe no-threads.patch
found with fdupes

```
pkgs/development/compilers/llvm/8/libcxxabi/no-threads.patch
pkgs/development/compilers/llvm/10/libcxxabi/no-threads.patch
pkgs/development/compilers/llvm/9/libcxxabi/no-threads.patch
pkgs/development/compilers/llvm/11/libcxxabi/no-threads.patch
```
2023-09-06 19:16:28 +03:00
Artturin
ea946c7423 llvmPackages.libcxxabi: dedupe wasm.patch
found with fdupes

```
pkgs/development/compilers/llvm/8/libcxxabi/wasm.patch
pkgs/development/compilers/llvm/13/libcxxabi/wasm.patch
pkgs/development/compilers/llvm/14/libcxxabi/wasm.patch
pkgs/development/compilers/llvm/10/libcxxabi/wasm.patch
pkgs/development/compilers/llvm/15/libcxxabi/wasm.patch
pkgs/development/compilers/llvm/12/libcxxabi/wasm.patch
pkgs/development/compilers/llvm/9/libcxxabi/wasm.patch
pkgs/development/compilers/llvm/16/libcxxabi/wasm.patch
pkgs/development/compilers/llvm/git/libcxxabi/wasm.patch
pkgs/development/compilers/llvm/11/libcxxabi/wasm.patch
```
2023-09-06 19:16:28 +03:00
Artturin
627bb740a9 llvmPackages.bintools-unwrapped: use targetPrefix for variable name like binutils does
and run nixpkgs-fmt
2023-09-06 03:59:38 +03:00
Artturin
91089054d4 llvmPackages.bintools-unwrapped: deduplicate 2023-09-06 03:59:37 +03:00
Artturin
e9bc0852c1 llvmPackages.lldb: hash changing post-deduplication changes
Use ninja for 14 too, fails for <14.
2023-09-06 03:08:18 +03:00
Artturin
d53d5a8b38 llvmPackages.lldb: deduplicate >10 2023-05-09 19:59:45 +03:00
Ben Wolsieffer
98ebcd28e1 compiler-rt: fix build on ARMv6
compiler-rt has accumulated several regressions that prevent it from building
on ARMv6. It is important to note that there are two major versions of ARMv6:
base ARMv6 and ARMv6K. ARMv6K includes several important new instructions,
such as non-word size atomic operations (ldrexd, strexd, etc.) and the yield
instruction. Most ARMv6 CPUs actually implement ARMv6K, including all those used
in Raspberry Pis, but nixpkgs' "raspberryPi" platform targets base ARMv6.

compiler-rt versions 8-14 fail to build on ARMv6 and ARMv6K. compiler-rt 15 (not
yet in nixpkgs) builds on ARMv6K but not ARMv6. This patch fixes versions 9-14
on both ARMv6 variants. The patches don't apply cleanly to version 8, and I
figured it wasn't worth carrying another version of the patches for such an old
version.

A total of five patches are required to get compiler-rt building on ARMv6:
* armv6-mcr-dmb.patch: use `mcr` to provide the equivalent of `dmb` on ARMv6.
  Included in LLVM 15.
* armv6-sync-ops-no-thumb.patch: prevent certain atomic operation functions
  from using Thumb mode. Included in LLVM 15.
* armv6-no-ldrexd-strexd.patch: don't use ldrexd or strexd, which are not
  available in base ARMv6. Submitted upstream by me.
* armv6-scudo-no-yield.patch: use nop instead of yield on ARMv6 in standalone
  scudo. Required by versions >=13, since they enable standalone scudo.
  Submitted upstream by me.
* armv6-scudo-libatomic.patch: link standlone scudo to libatomic on ARMv6 (and
  any other platforms that need it). Not yet submitted because the backport is
  a bit different from the upstream version and I need to test it.
2023-03-08 14:27:35 -05:00
Alyssa Ross
e731fba414 llvmPackages_git.compiler-rt: fix armv7l patch
Use the same patch as compiler-rt 15.
2023-02-27 10:56:20 +00:00
Alyssa Ross
eb2eafd2af clang_13,clang_14,clang_git: deduplicate patch
The same patch applies to all Clang versions using it.
2023-02-26 13:40:24 +00:00
Stéphan Kochen
fb91bfc380 compiler-rt: build builtins on darwin
The missing xcrun meant builtins were missing from darwin. This
apparently wasn't an issue until now, but is in projects using
`@available` checks. (The ARM64 hack was apparently the previous
solution to fixing broken SDK detection.)
2022-08-24 08:45:14 +02:00
Sergei Trofimovich
199b7c505b compiler-rt: remove <cyclades.h> from libsanitizer
linux-headers-5.13 removed <cyclades.h> along with device support.
Backport a single https://reviews.llvm.org/D102059 upstream change to
fix compiler-rt build.

Use local patches as there is a whitespace change compared to upstream.
2021-09-20 19:37:19 +01:00