summary refs log tree commit diff
path: root/gnu
diff options
context:
space:
mode:
authorEric Bavier <bavier@member.fsf.org>2016-08-29 17:20:16 -0500
committerEric Bavier <bavier@member.fsf.org>2016-09-09 07:36:40 -0500
commitab78618f07bdbba20f91b2e142389bc1215c7171 (patch)
treee112efb964eccc4a1f358cc85ab6ffe262425b78 /gnu
parent44e8559d39c388c40eafd56cb38adf6913255a4a (diff)
downloadguix-ab78618f07bdbba20f91b2e142389bc1215c7171.tar.gz
gnu: llvm: Build shared libraries.
* gnu/packages/llvm.scm (llvm)[arguments]: Add -DBUILD_SHARED_LIBS to
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/llvm.scm13
1 files changed, 12 insertions, 1 deletions
diff --git a/gnu/packages/llvm.scm b/gnu/packages/llvm.scm
index aa3d65bf63..a9eba798e0 100644
--- a/gnu/packages/llvm.scm
+++ b/gnu/packages/llvm.scm
@@ -58,10 +58,21 @@
     (arguments
      `(#:configure-flags '("-DCMAKE_SKIP_BUILD_RPATH=FALSE"
                            "-DCMAKE_BUILD_WITH_INSTALL_RPATH=FALSE"
+                           "-DBUILD_SHARED_LIBS:BOOL=TRUE"
                            "-DLLVM_ENABLE_FFI:BOOL=TRUE")
 
        ;; Don't use '-g' during the build, to save space.
-       #:build-type "Release"))
+       #:build-type "Release"
+       #:phases (modify-phases %standard-phases
+                  (add-before 'build 'shared-lib-workaround
+                    ;; Even with CMAKE_SKIP_BUILD_RPATH=FALSE, llvm-tblgen
+                    ;; doesn't seem to get the correct rpath to be able to run
+                    ;; from the build directory.  Set LD_LIBRARY_PATH as a
+                    ;; workaround.
+                    (lambda _
+                      (setenv "LD_LIBRARY_PATH"
+                              (string-append (getcwd) "/lib"))
+                      #t)))))
     (home-page "http://www.llvm.org")
     (synopsis "Optimizing compiler infrastructure")
     (description