root: re-enable unvendored LLVM

This commit is contained in:
Dmitry Kalinkin 2021-08-28 03:04:39 -04:00
parent aedfb59c87
commit 95b2d74bc5
No known key found for this signature in database
GPG Key ID: 5157B3EC8B2CA333

View File

@ -1,6 +1,7 @@
{ stdenv
, lib
, fetchurl
, fetchpatch
, makeWrapper
, cmake
, git
@ -15,6 +16,7 @@
, libGLU
, libGL
, libxml2
, llvm_9
, lz4
, xz
, pcre
@ -53,6 +55,7 @@ stdenv.mkDerivation rec {
zlib
zstd
libxml2
llvm_9
lz4
xz
gsl
@ -71,8 +74,23 @@ stdenv.mkDerivation rec {
patches = [
./sw_vers.patch
# Fix builtin_llvm=OFF support
(fetchpatch {
url = "https://github.com/root-project/root/commit/0cddef5d3562a89fe254e0036bb7d5ca8a5d34d2.diff";
excludes = [ "interpreter/cling/tools/plugins/clad/CMakeLists.txt" ];
sha256 = "sha256-VxWUbxRHB3O6tERFQdbGI7ypDAZD3sjSi+PYfu1OAbM=";
})
];
# Fix build against vanilla LLVM 9
postPatch = ''
sed \
-e '/#include "llvm.*RTDyldObjectLinkingLayer.h"/i#define private protected' \
-e '/#include "llvm.*RTDyldObjectLinkingLayer.h"/a#undef private' \
-i interpreter/cling/lib/Interpreter/IncrementalJIT.h
'';
preConfigure = ''
rm -rf builtins/*
substituteInPlace cmake/modules/SearchInstalledSoftware.cmake \
@ -99,6 +117,7 @@ stdenv.mkDerivation rec {
"-DCMAKE_CXX_STANDARD=17"
"-DCMAKE_INSTALL_LIBDIR=lib"
"-DCMAKE_INSTALL_INCLUDEDIR=include"
"-Dbuiltin_llvm=OFF"
"-Dbuiltin_nlohmannjson=OFF"
"-Dbuiltin_openui5=OFF"
"-Dalien=OFF"