From 0ea6ab80971bc0fb5c81d68c790ee76f0d7b9b53 Mon Sep 17 00:00:00 2001 From: Tuomas Tynkkynen Date: Tue, 28 Nov 2017 14:51:40 +0200 Subject: [PATCH] llvm_{4,5}: Add Aarch64 patch https://reviews.llvm.org/D40423 --- pkgs/development/compilers/llvm/4/llvm.nix | 7 +++++++ pkgs/development/compilers/llvm/5/llvm.nix | 7 +++++++ 2 files changed, 14 insertions(+) diff --git a/pkgs/development/compilers/llvm/4/llvm.nix b/pkgs/development/compilers/llvm/4/llvm.nix index 0559a7aee23..1fe79d9300a 100644 --- a/pkgs/development/compilers/llvm/4/llvm.nix +++ b/pkgs/development/compilers/llvm/4/llvm.nix @@ -24,6 +24,11 @@ let src = fetch "llvm" "0l9bf7kdwhlj0kq1hawpyxhna1062z3h7qcz2y8nfl9dz2qksy6s"; + aarch64Patch = fetchpatch { + url = https://reviews.llvm.org/file/data/2oqw5rhhklsapbjrhlpd/PHID-FILE-lvo4fcs6hjvkxb5wneg2/D40423.diff; + sha256 = "0b0h7n7lxw33pn2j061hm9050zn263gmiig937g5cmcvjimxlybb"; + }; + # Used when creating a version-suffixed symlink of libLLVM.dylib shortVersion = with stdenv.lib; concatStringsSep "." (take 2 (splitString "." release_version)); @@ -81,6 +86,8 @@ in stdenv.mkDerivation rec { substituteInPlace lib/esan/esan_sideline_linux.cpp \ --replace 'struct sigaltstack' 'stack_t' ) + '' + stdenv.lib.optionalString stdenv.isAarch64 '' + patch -p0 < ${aarch64Patch} ''; # hacky fix: created binaries need to be run before installation diff --git a/pkgs/development/compilers/llvm/5/llvm.nix b/pkgs/development/compilers/llvm/5/llvm.nix index 520e42c3360..20b0f4b20c6 100644 --- a/pkgs/development/compilers/llvm/5/llvm.nix +++ b/pkgs/development/compilers/llvm/5/llvm.nix @@ -24,6 +24,11 @@ let src = fetch "llvm" "1nin64vz21hyng6jr19knxipvggaqlkl2l9jpd5czbc4c2pcnpg3"; + aarch64Patch = fetchpatch { + url = https://reviews.llvm.org/file/data/2oqw5rhhklsapbjrhlpd/PHID-FILE-lvo4fcs6hjvkxb5wneg2/D40423.diff; + sha256 = "0b0h7n7lxw33pn2j061hm9050zn263gmiig937g5cmcvjimxlybb"; + }; + # Used when creating a version-suffixed symlink of libLLVM.dylib shortVersion = with stdenv.lib; concatStringsSep "." (take 2 (splitString "." release_version)); @@ -75,6 +80,8 @@ in stdenv.mkDerivation rec { # Revert compiler-rt commit that makes codesign mandatory patch -p1 -i ${./compiler-rt-codesign.patch} -d projects/compiler-rt + '' + stdenv.lib.optionalString stdenv.isAarch64 '' + patch -p0 < ${aarch64Patch} ''; # hacky fix: created binaries need to be run before installation