[arch-commits] Commit in llvm/trunk (PKGBUILD llvm-3.5.0-fix-cmake-llvm-exports.patch)
Evangelos Foutras
foutrelis at archlinux.org
Wed Sep 10 12:31:50 UTC 2014
Date: Wednesday, September 10, 2014 @ 14:31:50
Author: foutrelis
Revision: 221382
upgpkg: llvm 3.5.0-2
Add upstream fix for broken LLVMExports.cmake.
Added:
llvm/trunk/llvm-3.5.0-fix-cmake-llvm-exports.patch
Modified:
llvm/trunk/PKGBUILD
-----------------------------------------+
PKGBUILD | 8 +++++-
llvm-3.5.0-fix-cmake-llvm-exports.patch | 39 ++++++++++++++++++++++++++++++
2 files changed, 46 insertions(+), 1 deletion(-)
Modified: PKGBUILD
===================================================================
--- PKGBUILD 2014-09-10 10:54:22 UTC (rev 221381)
+++ PKGBUILD 2014-09-10 12:31:50 UTC (rev 221382)
@@ -12,7 +12,7 @@
pkgname=('llvm' 'llvm-libs' 'llvm-ocaml' 'clang' 'clang-analyzer'
'clang-tools-extra')
pkgver=3.5.0
-pkgrel=1
+pkgrel=2
arch=('i686' 'x86_64')
url="http://llvm.org/"
license=('custom:University of Illinois/NCSA Open Source License')
@@ -23,6 +23,7 @@
http://llvm.org/releases/$pkgver/clang-tools-extra-$pkgver.src.tar.xz{,.sig}
http://llvm.org/releases/$pkgver/compiler-rt-$pkgver.src.tar.xz{,.sig}
llvm-3.5.0-force-link-pass.o.patch
+ llvm-3.5.0-fix-cmake-llvm-exports.patch
llvm-Config-config.h
llvm-Config-llvm-config.h)
sha256sums=('28e199f368ef0a4666708f31c7991ad3bcc3a578342b0306526dd35f07595c03'
@@ -34,6 +35,7 @@
'a4b3e655832bf8d9a357ea2c771db347237460e131988cbb96cda40ff39a8136'
'SKIP'
'5702053503d49448598eda1b8dc8c263f0df9ad7486833273e3987b5dec25a19'
+ '841a153d0e9d2d196ea5318388ff295e69c41547eb73b24edf92a1b2cc3cccdd'
'312574e655f9a87784ca416949c505c452b819fad3061f2cde8aced6540a19a3'
'597dc5968c695bbdbb0eac9e8eb5117fcd2773bc91edf5ec103ecffffab8bc48')
@@ -59,6 +61,10 @@
# Fix build with GCC 4.9 (patch from Debian)
# http://llvm.org/bugs/show_bug.cgi?id=20067
patch -Np1 -i "$srcdir/llvm-3.5.0-force-link-pass.o.patch"
+
+ # Fix generation of broken LLVMExports.cmake file
+ # http://llvm.org/bugs/show_bug.cgi?id=20884
+ patch -Np0 -i "$srcdir/llvm-3.5.0-fix-cmake-llvm-exports.patch"
}
build() {
Added: llvm-3.5.0-fix-cmake-llvm-exports.patch
===================================================================
--- llvm-3.5.0-fix-cmake-llvm-exports.patch (rev 0)
+++ llvm-3.5.0-fix-cmake-llvm-exports.patch 2014-09-10 12:31:50 UTC (rev 221382)
@@ -0,0 +1,39 @@
+Index: cmake/modules/Makefile
+===================================================================
+--- cmake/modules/Makefile (revision 217483)
++++ cmake/modules/Makefile (revision 217484)
+@@ -33,6 +33,16 @@
+ LLVM_ENABLE_RTTI := 0
+ endif
+
++LLVM_LIBS_TO_EXPORT := $(subst -l,,$(shell $(LLVM_CONFIG) --libs $(LINK_COMPONENTS) || echo Error))
++
++ifeq ($(LLVM_LIBS_TO_EXPORT),Error)
++$(error llvm-config --libs failed)
++endif
++
++ifndef LLVM_LIBS_TO_EXPORT
++$(error LLVM_LIBS_TO_EXPORT cannot be empty)
++endif
++
+ OBJMODS := LLVMConfig.cmake LLVMConfigVersion.cmake LLVMExports.cmake
+
+ $(PROJ_OBJ_DIR)/LLVMConfig.cmake: LLVMConfig.cmake.in $(LLVMBuildCMakeFrag)
+@@ -45,7 +55,7 @@
+ -e 's/@LLVM_VERSION_PATCH@/'"$(LLVM_VERSION_PATCH)"'/' \
+ -e 's/@PACKAGE_VERSION@/'"$(LLVMVersion)"'/' \
+ -e 's/@LLVM_COMMON_DEPENDS@//' \
+- -e 's/@LLVM_AVAILABLE_LIBS@/'"$(subst -l,,$(LLVMConfigLibs))"'/' \
++ -e 's/@LLVM_AVAILABLE_LIBS@/'"$(LLVM_LIBS_TO_EXPORT)"'/' \
+ -e 's/@LLVM_ALL_TARGETS@/'"$(ALL_TARGETS)"'/' \
+ -e 's/@LLVM_TARGETS_TO_BUILD@/'"$(TARGETS_TO_BUILD)"'/' \
+ -e 's/@LLVM_TARGETS_WITH_JIT@/'"$(TARGETS_WITH_JIT)"'/' \
+@@ -83,7 +93,7 @@
+ $(Echo) 'Generating LLVM CMake target exports file'
+ $(Verb) ( \
+ echo '# LLVM CMake target exports. Do not include directly.' && \
+- for lib in $(subst -l,,$(LLVMConfigLibs)); do \
++ for lib in $(LLVM_LIBS_TO_EXPORT); do \
+ echo 'add_library('"$$lib"' STATIC IMPORTED)' && \
+ echo 'set_property(TARGET '"$$lib"' PROPERTY IMPORTED_LOCATION "'"$(PROJ_libdir)/lib$$lib.a"'")' ; \
+ done && \
More information about the arch-commits
mailing list