diff options
author | Ricardo Wurmus <rekado@elephly.net> | 2017-05-04 14:18:38 +0200 |
---|---|---|
committer | Ricardo Wurmus <rekado@elephly.net> | 2017-05-04 14:20:10 +0200 |
commit | 6ba4eca234470c2151755b071e8a06c9e4e49b1b (patch) | |
tree | 6838cdaddd517ce24f3e658bfc63ed63b3dbaf77 /gnu/packages | |
parent | e8e1ace0394dd979a1ad5459ebb5b9247f7ff1d7 (diff) | |
download | patches-6ba4eca234470c2151755b071e8a06c9e4e49b1b.tar patches-6ba4eca234470c2151755b071e8a06c9e4e49b1b.tar.gz |
gnu: llvm-3.5: Fix build of clang-3.5.
* gnu/packages/patches/llvm-3.5-fix-clang-build-with-gcc5.patch: New file
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/llvm.scm (llvm-3.5)[source]: Add patch.
Diffstat (limited to 'gnu/packages')
-rw-r--r-- | gnu/packages/llvm.scm | 2 | ||||
-rw-r--r-- | gnu/packages/patches/llvm-3.5-fix-clang-build-with-gcc5.patch | 35 |
2 files changed, 37 insertions, 0 deletions
diff --git a/gnu/packages/llvm.scm b/gnu/packages/llvm.scm index 04a2b39af9..52a78467a8 100644 --- a/gnu/packages/llvm.scm +++ b/gnu/packages/llvm.scm @@ -268,6 +268,8 @@ code analysis tools.") (method url-fetch) (uri (string-append "http://llvm.org/releases/" version "/llvm-" version ".src.tar.xz")) + (patches + (search-patches "llvm-3.5-fix-clang-build-with-gcc5.patch")) (sha256 (base32 "0xf5q17kkxsrm2gsi93h4pwlv663kji73r2g4asb97klsmb626a4")))))) diff --git a/gnu/packages/patches/llvm-3.5-fix-clang-build-with-gcc5.patch b/gnu/packages/patches/llvm-3.5-fix-clang-build-with-gcc5.patch new file mode 100644 index 0000000000..faa8252c43 --- /dev/null +++ b/gnu/packages/patches/llvm-3.5-fix-clang-build-with-gcc5.patch @@ -0,0 +1,35 @@ +This patch was downloaded from https://sft.its.cern.ch/jira/browse/ROOT-7047. +It fixes the build of clang 3.5 with GCC 5. File paths have been adjusted. + +From 00f3ed6eee41da871799ad0fd19153c7682d61fe Mon Sep 17 00:00:00 2001 +From: Alexander Klimov <alserkli@inbox.ru> +Date: Mon, 26 Jan 2015 18:45:23 +0200 +Subject: [PATCH] [ADT/IntrusiveRefCntPtr] Give friend access to + IntrusiveRefCntPtr<X> so the relevant move constructor can + access 'Obj'. + +From LLVM upstream: +Author: Argyrios Kyrtzidis <akyrtzi@gmail.com> +Date: Tue Sep 23 06:06:43 2014 +0000 +git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@218295 91177308-0d34-0410-b5e6-96231b3b80d8 +--- + interpreter/llvm/src/include/llvm/ADT/IntrusiveRefCntPtr.h | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/include/llvm/ADT/IntrusiveRefCntPtr.h b/include/llvm/ADT/IntrusiveRefCntPtr.h +index f9df378..c859c98 100644 +--- a/include/llvm/ADT/IntrusiveRefCntPtr.h ++++ b/include/llvm/ADT/IntrusiveRefCntPtr.h +@@ -197,6 +197,9 @@ public: + private: + void retain() { if (Obj) IntrusiveRefCntPtrInfo<T>::retain(Obj); } + void release() { if (Obj) IntrusiveRefCntPtrInfo<T>::release(Obj); } ++ ++ template <typename X> ++ friend class IntrusiveRefCntPtr; + }; + + template<class T, class U> +-- +1.7.10.4 + |