summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarius Bakke <mbakke@fastmail.com>2018-11-17 22:54:03 +0100
committerMarius Bakke <mbakke@fastmail.com>2018-11-17 22:54:03 +0100
commitf8cba3ff4fc6aed0c539700aa47b6e8f4c25c34d (patch)
treee03d747fa9fc11578f0fe55056421c99413de977
parent0a41123f01d5d2466d6f533be3644ac8c9a2bdf9 (diff)
downloadgnu-guix-f8cba3ff4fc6aed0c539700aa47b6e8f4c25c34d.tar
gnu-guix-f8cba3ff4fc6aed0c539700aa47b6e8f4c25c34d.tar.gz
gnu: mesa: Stay on RTTI-less LLVM.
* gnu/packages/llvm.scm (llvm-without-rtti): New public variable. * gnu/packages/gl.scm (mesa)[inputs]: Use that instead of LLVM.
-rw-r--r--gnu/packages/gl.scm3
-rw-r--r--gnu/packages/llvm.scm20
2 files changed, 22 insertions, 1 deletions
diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm
index b88fab4929..11c89b3d88 100644
--- a/gnu/packages/gl.scm
+++ b/gnu/packages/gl.scm
@@ -259,7 +259,8 @@ also known as DXTn or DXTC) for Mesa.")
("libxvmc" ,libxvmc)
,@(match (%current-system)
((or "x86_64-linux" "i686-linux")
- `(("llvm" ,llvm)))
+ ;; FIXME: Change to 'llvm' in the next rebuild cycle.
+ `(("llvm" ,llvm-without-rtti)))
(_
`()))
("makedepend" ,makedepend)
diff --git a/gnu/packages/llvm.scm b/gnu/packages/llvm.scm
index beca92650e..d237a05a84 100644
--- a/gnu/packages/llvm.scm
+++ b/gnu/packages/llvm.scm
@@ -91,6 +91,26 @@ languages is in development. The compiler infrastructure includes mirror sets
of programming tools as well as libraries with equivalent functionality.")
(license license:ncsa)))
+;; FIXME: This package is here to prevent many rebuilds on x86_64 and i686
+;; from commit fc9dbf41311d99d0fd8befc789ea7c0e35911890. Update users of
+;; this in the next rebuild cycle.
+(define-public llvm-without-rtti
+ (package
+ (inherit llvm)
+ (arguments
+ `(#:configure-flags '("-DCMAKE_SKIP_BUILD_RPATH=FALSE"
+ "-DCMAKE_BUILD_WITH_INSTALL_RPATH=FALSE"
+ "-DBUILD_SHARED_LIBS:BOOL=TRUE"
+ "-DLLVM_ENABLE_FFI:BOOL=TRUE"
+ "-DLLVM_INSTALL_UTILS=ON")
+ #:build-type "Release"
+ #:phases (modify-phases %standard-phases
+ (add-before 'build 'shared-lib-workaround
+ (lambda _
+ (setenv "LD_LIBRARY_PATH"
+ (string-append (getcwd) "/lib"))
+ #t)))))))
+
(define* (clang-runtime-from-llvm llvm hash
#:optional (patches '()))
(package