diff options
author | Vladimír Čunát <vcunat@gmail.com> | 2017-11-07 09:17:00 +0100 |
---|---|---|
committer | Vladimír Čunát <vcunat@gmail.com> | 2017-11-07 09:17:00 +0100 |
commit | e0a36522a752694dbe5da303b44a2cc69fea0d11 (patch) | |
tree | 7e42848f864c42adf8c0eb34fe42457907ab62f3 /pkgs/development/compilers/llvm | |
parent | 81c50404702c7ed7236107acc4b3c8587a967487 (diff) | |
download | nixlib-e0a36522a752694dbe5da303b44a2cc69fea0d11.tar nixlib-e0a36522a752694dbe5da303b44a2cc69fea0d11.tar.gz nixlib-e0a36522a752694dbe5da303b44a2cc69fea0d11.tar.bz2 nixlib-e0a36522a752694dbe5da303b44a2cc69fea0d11.tar.lz nixlib-e0a36522a752694dbe5da303b44a2cc69fea0d11.tar.xz nixlib-e0a36522a752694dbe5da303b44a2cc69fea0d11.tar.zst nixlib-e0a36522a752694dbe5da303b44a2cc69fea0d11.zip |
llvm 3.7--4: fixup build with glibc-2.26
Diffstat (limited to 'pkgs/development/compilers/llvm')
-rw-r--r-- | pkgs/development/compilers/llvm/3.7/llvm.nix | 13 | ||||
-rw-r--r-- | pkgs/development/compilers/llvm/3.8/llvm.nix | 13 | ||||
-rw-r--r-- | pkgs/development/compilers/llvm/3.9/llvm.nix | 14 | ||||
-rw-r--r-- | pkgs/development/compilers/llvm/4/llvm.nix | 14 |
4 files changed, 54 insertions, 0 deletions
diff --git a/pkgs/development/compilers/llvm/3.7/llvm.nix b/pkgs/development/compilers/llvm/3.7/llvm.nix index b600665cd8f6..54ab8c108773 100644 --- a/pkgs/development/compilers/llvm/3.7/llvm.nix +++ b/pkgs/development/compilers/llvm/3.7/llvm.nix @@ -1,5 +1,6 @@ { stdenv , fetch +, fetchpatch , perl , groff , cmake @@ -45,6 +46,18 @@ in stdenv.mkDerivation rec { # those always succeed has the net effect of disabling all bindings. prePatch = '' substituteInPlace cmake/config-ix.cmake --replace "if(WIN32)" "if(1)" + '' + + stdenv.lib.optionalString (stdenv ? glibc) '' + ( + cd projects/compiler-rt + patch -p1 < ${ + fetchpatch { + name = "sigaltstack.patch"; # for glibc-2.26 + url = https://github.com/llvm-mirror/compiler-rt/commit/8a5e425a68d.diff; + sha256 = "0h4y5vl74qaa7dl54b1fcyqalvlpd8zban2d1jxfkxpzyi7m8ifi"; + } + } + ) ''; # hacky fix: created binaries need to be run before installation diff --git a/pkgs/development/compilers/llvm/3.8/llvm.nix b/pkgs/development/compilers/llvm/3.8/llvm.nix index f8b8948e749e..a0fbdf2b706a 100644 --- a/pkgs/development/compilers/llvm/3.8/llvm.nix +++ b/pkgs/development/compilers/llvm/3.8/llvm.nix @@ -1,5 +1,6 @@ { stdenv , fetch +, fetchpatch , perl , groff , cmake @@ -49,6 +50,18 @@ in stdenv.mkDerivation rec { substituteInPlace CMakeLists.txt \ --replace 'set(CMAKE_INSTALL_NAME_DIR "@rpath")' "set(CMAKE_INSTALL_NAME_DIR "$out/lib")" \ --replace 'set(CMAKE_INSTALL_RPATH "@executable_path/../lib")' "" + '' + + stdenv.lib.optionalString (stdenv ? glibc) '' + ( + cd projects/compiler-rt + patch -p1 < ${ + fetchpatch { + name = "sigaltstack.patch"; # for glibc-2.26 + url = https://github.com/llvm-mirror/compiler-rt/commit/8a5e425a68d.diff; + sha256 = "0h4y5vl74qaa7dl54b1fcyqalvlpd8zban2d1jxfkxpzyi7m8ifi"; + } + } + ) ''; # hacky fix: created binaries need to be run before installation diff --git a/pkgs/development/compilers/llvm/3.9/llvm.nix b/pkgs/development/compilers/llvm/3.9/llvm.nix index 809c49ac24a2..495f95a5bbdb 100644 --- a/pkgs/development/compilers/llvm/3.9/llvm.nix +++ b/pkgs/development/compilers/llvm/3.9/llvm.nix @@ -91,6 +91,20 @@ in stdenv.mkDerivation rec { + stdenv.lib.optionalString (enableSharedLibraries) '' substitute '${./llvm-outputs.patch}' ./llvm-outputs.patch --subst-var lib patch -p1 < ./llvm-outputs.patch + '' + + stdenv.lib.optionalString (stdenv ? glibc) '' + ( + cd projects/compiler-rt + patch -p1 < ${ + fetchpatch { + name = "sigaltstack.patch"; # for glibc-2.26 + url = https://github.com/llvm-mirror/compiler-rt/commit/8a5e425a68d.diff; + sha256 = "0h4y5vl74qaa7dl54b1fcyqalvlpd8zban2d1jxfkxpzyi7m8ifi"; + } + } + substituteInPlace lib/esan/esan_sideline_linux.cpp \ + --replace 'struct sigaltstack' 'stack_t' + ) ''; # hacky fix: created binaries need to be run before installation diff --git a/pkgs/development/compilers/llvm/4/llvm.nix b/pkgs/development/compilers/llvm/4/llvm.nix index e90603ffefae..332fee8529ba 100644 --- a/pkgs/development/compilers/llvm/4/llvm.nix +++ b/pkgs/development/compilers/llvm/4/llvm.nix @@ -67,6 +67,20 @@ in stdenv.mkDerivation rec { + stdenv.lib.optionalString (enableSharedLibraries) '' substitute '${./llvm-outputs.patch}' ./llvm-outputs.patch --subst-var lib patch -p1 < ./llvm-outputs.patch + '' + + stdenv.lib.optionalString (stdenv ? glibc) '' + ( + cd projects/compiler-rt + patch -p1 < ${ + fetchpatch { + name = "sigaltstack.patch"; # for glibc-2.26 + url = https://github.com/llvm-mirror/compiler-rt/commit/8a5e425a68d.diff; + sha256 = "0h4y5vl74qaa7dl54b1fcyqalvlpd8zban2d1jxfkxpzyi7m8ifi"; + } + } + substituteInPlace lib/esan/esan_sideline_linux.cpp \ + --replace 'struct sigaltstack' 'stack_t' + ) ''; # hacky fix: created binaries need to be run before installation |