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).
This commit is contained in:
Taylan Ulrich Bayırlı/Kammer 2015-03-14 15:05:15 +01:00
parent b021a2adeb
commit 3e71b9ffd6
1 changed files with 14 additions and 2 deletions

View File

@ -186,7 +186,8 @@ also known as DXTn or DXTC) for Mesa.")
("libxml2" ,libxml2) ("libxml2" ,libxml2)
;; TODO: Add 'libva' ;; TODO: Add 'libva'
;; TODO: Add 'libxml2-python' for OpenGL ES 1.1 and 2.0 support ;; TODO: Add 'libxml2-python' for OpenGL ES 1.1 and 2.0 support
("makedepend" ,makedepend))) ("makedepend" ,makedepend)
("s2tc" ,s2tc)))
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config) `(("pkg-config" ,pkg-config)
("gettext" ,gnu-gettext) ("gettext" ,gnu-gettext)
@ -220,7 +221,18 @@ also known as DXTn or DXTC) for Mesa.")
(lambda _ (lambda _
(substitute* "src/glsl/tests/lower_jumps/create_test_cases.py" (substitute* "src/glsl/tests/lower_jumps/create_test_cases.py"
(("/usr/bin/env bash") (which "bash")))) (("/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/") (home-page "http://mesa3d.org/")
(synopsis "OpenGL implementation") (synopsis "OpenGL implementation")
(description "Mesa is a free implementation of the OpenGL specification - (description "Mesa is a free implementation of the OpenGL specification -