aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/gl.scm
diff options
context:
space:
mode:
authorTaylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>2015-03-14 15:05:15 +0100
committerTaylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>2015-03-19 10:00:15 +0100
commit3e71b9ffd67e0b5c08c6e9fbe9c79a26308098cc (patch)
treee5fee115dec8cc3d2272fd2d29d5fb1bcbc2f787 /gnu/packages/gl.scm
parentb021a2adeb282869691d4b919a7337bfc859e414 (diff)
downloadgnu-guix-3e71b9ffd67e0b5c08c6e9fbe9c79a26308098cc.tar
gnu-guix-3e71b9ffd67e0b5c08c6e9fbe9c79a26308098cc.tar.gz
gnu: mesa: Add input s2tc.
* gnu/packages/gl.scm (mesa): Add input s2tc, patch sources to make the reference to libtxc_dxtn.so absolute since it's passed to dlopen(3).
Diffstat (limited to 'gnu/packages/gl.scm')
-rw-r--r--gnu/packages/gl.scm16
1 files changed, 14 insertions, 2 deletions
diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm
index e5d3a8d943..1eb20558d4 100644
--- a/gnu/packages/gl.scm
+++ b/gnu/packages/gl.scm
@@ -186,7 +186,8 @@ also known as DXTn or DXTC) for Mesa.")
("libxml2" ,libxml2)
;; TODO: Add 'libva'
;; TODO: Add 'libxml2-python' for OpenGL ES 1.1 and 2.0 support
- ("makedepend" ,makedepend)))
+ ("makedepend" ,makedepend)
+ ("s2tc" ,s2tc)))
(native-inputs
`(("pkg-config" ,pkg-config)
("gettext" ,gnu-gettext)
@@ -220,7 +221,18 @@ also known as DXTn or DXTC) for Mesa.")
(lambda _
(substitute* "src/glsl/tests/lower_jumps/create_test_cases.py"
(("/usr/bin/env bash") (which "bash"))))
- %standard-phases))))
+ (alist-cons-before
+ 'build 'fix-dxtn-libname
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((s2tc (assoc-ref inputs "s2tc")))
+ ;; Remain agnostic to .so.X.Y.Z versions while doing
+ ;; the substitutions so we're future-safe.
+ (substitute*
+ '("src/gallium/auxiliary/util/u_format_s3tc.c"
+ "src/mesa/main/texcompress_s3tc.c")
+ (("\"libtxc_dxtn\\.so")
+ (string-append "\"" s2tc "/lib/libtxc_dxtn.so")))))
+ %standard-phases)))))
(home-page "http://mesa3d.org/")
(synopsis "OpenGL implementation")
(description "Mesa is a free implementation of the OpenGL specification -