Unverified Commit bc4dbee1 authored by Rahul Butani's avatar Rahul Butani
Browse files

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: default avatarBernardo Meurer <bernardo@meurer.org>
parent 9bd92679
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -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
+1 −1
Original line number Diff line number Diff line
@@ -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"