Commit Graph

14 Commits

Author SHA1 Message Date
Tristan Ross
0917fee1c3 llvmPackages_git: 23.0.0-unstable-2026-05-24 -> 23.0.0-unstable-2026-05-31 2026-05-31 22:49:57 -07:00
Wolfgang Walther
91a8fee3aa treewide: remove redundant parentheses
Auto-fixed by nixf-diagnose.
2025-10-05 10:52:03 +02:00
Emily
77acbe1f9c llvmPackages_15: drop 2025-09-14 19:03:24 +01:00
Emily
f470ea24b6 llvmPackages_14: drop 2025-09-14 19:03:24 +01:00
Emily
791fe23b63 llvmPackages_13: drop 2025-09-14 19:03:24 +01:00
Emily
cbe92242d0 llvmPackages.tblgen: only install the tools we use
Otherwise we install a weird `update_core_linalg_named_ops.sh`
maintainer script that refers to the build directory.

There are explicit install targets for some of these and probably
better ways we could install the others, but the Clang derivation
also just explicitly copies a bunch of them, so meh.
2025-08-05 19:25:19 +01:00
Wolfgang Walther
5a0711127c treewide: run nixfmt 1.0.0 2025-07-24 13:55:40 +02:00
nixpkgs-ci[bot]
13b51cfb12 Merge staging-next into staging 2025-06-06 19:33:08 +00:00
phanirithvij
d75957a3bb treewide: remove rec when using finalAttrs
Signed-off-by: phanirithvij <phanirithvij2000@gmail.com>
2025-06-06 15:19:52 +02:00
Audrey Dutcher
b9c1cebcfa llvmPackages.tblgen: Fix native FreeBSD build 2025-05-28 16:43:51 -07:00
Emily
bba2501df8 Revert "llvmPackages.tblgen: add missing lldb-tblgen"
Breaks Darwin bootstrap:

    CMake Error at /tmp/nix-build-llvm-tblgen-19.1.7.drv-0/llvm-tblgen-src-19.1.7/lldb/test/CMakeLists.txt:197 (message):
      LLDB test suite requires libc++, but it is currently disabled.  Please add
      `libcxx` to `LLVM_ENABLE_RUNTIMES` or disable tests via
      `LLDB_INCLUDE_TESTS=OFF`.

It’s probably not too hard to fix but I don’t really understand the
details of this derivation and it’s blocking Darwin `stdenv` builds
with a few days to go until the next cycle, so reverting for now.

This reverts commit d175d8a4c5.
2025-01-26 23:44:51 +00:00
Patryk Sondej
d175d8a4c5 llvmPackages.tblgen: add missing lldb-tblgen 2025-01-24 14:37:42 +01:00
Peter Waller
3fdf224de2 llvmPackages.tblgen: Fix 12/13/14 build
The original tblgen split landed before I was quite ready for it, so
older versions of clang had not been tested.

Reinstate them here.

* Apply patches from LLVM (aside for those from polly, because the
  source tree is not present)
* Apply the clang/gnu-install-dirs.patch patch to the clang tree.
* Bracket the build targets with appropriate version checks so we don't
  try to build non-existent things.
* Bracket mlir-tblgen with >=16 to mirror the rest of mlir support.

Signed-off-by: Peter Waller <p@pwaller.net>
2024-12-18 22:34:33 +00:00
Peter Waller
59331c3a17 llvmPackages: Split tablegen into its own derivation
Background:

LLVM has some tools that run at build time. In native builds, these are
built as a part of the usual build, but in cross builds they need to
come from buildPackages.

In many scenarios this is a small problem because LLVM from
buildPackages is already available as a build; but if cross building a
version of LLVM which is not available (e.g. a new git commit of LLVM)
this results in two builds of LLVM and clang, one native and one for the
cross.

Full builds of LLVM are expensive; and unnecessary in this scenario. We
don't need a native LLVM, only a native copy of the tools which run at
build time. This is only tablegen and related tooling, which are cheap
to build.

Implementation-wise, we introduce a derivation llvmPackages.tblgen,
which specifies the tablegen targets which need to be built and has a
custom installPhase to copy them to the output.

A previous attempt in https://github.com/NixOS/nixpkgs/pull/359967
dropped the use of LLVM_TABLEGEN_EXE and friends on the grounds that
llvm can already cross build these things, but that is false since it's
necessary in that case to wire in a cross compiler. This PR avoids that
problem by allowing access to buildPackages.tblgen.

Signed-off-by: Peter Waller <p@pwaller.net>
2024-12-11 20:55:03 +00:00