From bc4dbee1150281fbd46663ef5e0e80493de9320e Mon Sep 17 00:00:00 2001 From: Rahul Butani Date: Wed, 5 Oct 2022 10:16:21 -0500 Subject: [PATCH] llvmPackages_15: updates for LLVM 15 None of the patches required any touch-up; the only change of note is: - due to changes in the libc++/libc++abi build (https://reviews.llvm.org/D120719 and https://reviews.llvm.org/D131037) we have to add an extra build option to the libc++ header only build that sidesteps bits of the libc++ build config that assume libc++-abi is present in the build: https://github.com/llvm/llvm-project/blob/4f827318e3e8ccab4ff131e06234caa827e91e4e/libcxx/src/CMakeLists.txt#L255-L256 Rather than maintaining a precise set of build options that let us dodge referencing libc++-abi variables in the libc++ header only build, we set `LIBCXX_CXX_ABI` to `none`, as suggested by @lovesegfault. More discussion about this here: https://github.com/NixOS/nixpkgs/pull/194634#discussion_r990267037 Co-authored-by: Bernardo Meurer --- pkgs/development/compilers/llvm/15/default.nix | 6 +++--- pkgs/development/compilers/llvm/15/libcxx/default.nix | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/development/compilers/llvm/15/default.nix b/pkgs/development/compilers/llvm/15/default.nix index 8965388ae691c..405175838b60c 100644 --- a/pkgs/development/compilers/llvm/15/default.nix +++ b/pkgs/development/compilers/llvm/15/default.nix @@ -19,7 +19,7 @@ }: let - release_version = "14.0.6"; + release_version = "15.0.7"; candidate = ""; # empty or "rcN" dash-candidate = lib.optionalString (candidate != "") "-${candidate}"; rev = ""; # When using a Git commit @@ -31,7 +31,7 @@ let owner = "llvm"; repo = "llvm-project"; rev = if rev != "" then rev else "llvmorg-${version}"; - sha256 = "sha256-vffu4HilvYwtzwgq+NlS26m65DGbp6OSSne2aje1yJE="; + sha256 = "sha256-wjuZQyXQ/jsmvy6y1aksCcEDXGBjuhpgngF3XQJ/T4s="; }; llvm_meta = { @@ -88,7 +88,7 @@ let python3 = pkgs.python3; # don't use python-boot }); - # TODO: lldb/docs/index.rst:155:toctree contains reference to nonexisting document 'design/structureddataplugins' + # Needs package for spinhx-automodapi: https://github.com/astropy/sphinx-automodapi # lldb-manpages = lowPrio (tools.lldb.override { # enableManpages = true; # python3 = pkgs.python3; # don't use python-boot diff --git a/pkgs/development/compilers/llvm/15/libcxx/default.nix b/pkgs/development/compilers/llvm/15/libcxx/default.nix index 5e1f875bf338f..72563888c2f2b 100644 --- a/pkgs/development/compilers/llvm/15/libcxx/default.nix +++ b/pkgs/development/compilers/llvm/15/libcxx/default.nix @@ -63,7 +63,7 @@ stdenv.mkDerivation rec { cmakeFlags = [ "-DLLVM_ENABLE_RUNTIMES=libcxx" - "-DLIBCXX_CXX_ABI=${lib.optionalString (!headersOnly) "system-"}libcxxabi" + "-DLIBCXX_CXX_ABI=${if headersOnly then "none" else "system-libcxxabi"}" ] ++ lib.optional (!headersOnly) "-DLIBCXX_CXX_ABI_INCLUDE_PATHS=${libcxxabi.dev}/include/c++/v1" ++ lib.optional (stdenv.hostPlatform.isMusl || stdenv.hostPlatform.isWasi) "-DLIBCXX_HAS_MUSL_LIBC=1" ++ lib.optional (stdenv.hostPlatform.useLLVM or false) "-DLIBCXX_USE_COMPILER_RT=ON"