summary refs log tree commit diff
diff options
context:
space:
mode:
authorGuillaume Le Vaillant <glv@posteo.net>2022-04-10 18:38:58 +0200
committerGuillaume Le Vaillant <glv@posteo.net>2022-04-10 19:22:43 +0200
commit81567f751bd31d972cf05013a177311b73425d7d (patch)
tree8e38f8f31cf39b783fed6143b2cd155c795e2451
parent2299d2c896cbd865a7f27d83f793c783e1211dfe (diff)
downloadguix-81567f751bd31d972cf05013a177311b73425d7d.tar.gz
gnu: llvm-3: Fix build.
* gnu/packages/llvm.scm (llvm-3.9)[arguments]: Use gexp. Add
  'shared-lib-workaround' phase.

Co-authored-by: Maxime Devos <maximedevos@telenet.be>
-rw-r--r--gnu/packages/llvm.scm16
1 files changed, 12 insertions, 4 deletions
diff --git a/gnu/packages/llvm.scm b/gnu/packages/llvm.scm
index 0011faa50f..8348638614 100644
--- a/gnu/packages/llvm.scm
+++ b/gnu/packages/llvm.scm
@@ -16,11 +16,11 @@
 ;;; Copyright © 2019 Brett Gilio <brettg@gnu.org>
 ;;; Copyright © 2020 Giacomo Leidi <goodoldpaul@autistici.org>
 ;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
-;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
+;;; Copyright © 2021, 2022 Maxime Devos <maximedevos@telenet.be>
 ;;; Copyright © 2020, 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
 ;;; Copyright © 2021 Julien Lepiller <julien@lepiller.eu>
 ;;; Copyright © 2021 Lars-Dominik Braun <lars@6xq.net>
-;;; Copyright © 2021 Guillaume Le Vaillant <glv@posteo.net>
+;;; Copyright © 2021, 2022 Guillaume Le Vaillant <glv@posteo.net>
 ;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
 ;;; Copyright © 2022 Greg Hogan <code@greghogan.com>
 ;;;
@@ -945,8 +945,16 @@ of programming tools as well as libraries with equivalent functionality.")
     (arguments
      (substitute-keyword-arguments (package-arguments llvm)
        ((#:phases phases)
-        `(modify-phases ,phases
-           (delete 'install-opt-viewer)))))))
+        #~(modify-phases #$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"))))
+            (delete 'install-opt-viewer)))))))
 
 (define-public clang-runtime-3.9.1
   (clang-runtime-from-llvm