summaryrefslogtreecommitdiff
path: root/gnu/packages/vulkan.scm
diff options
context:
space:
mode:
authorMarius Bakke <mbakke@fastmail.com>2020-05-22 17:38:36 +0200
committerMarius Bakke <marius@gnu.org>2020-05-26 22:36:08 +0200
commit4c5e45eb6bf1ad50ee2d0b5c854e81f6ce8de523 (patch)
tree7d553cf5c9b0eb143d261f89498a4735bb3a23ca /gnu/packages/vulkan.scm
parentf26bceb470a8135f0cb0080eda1617a935d58b7c (diff)
downloadguix-patches-4c5e45eb6bf1ad50ee2d0b5c854e81f6ce8de523.tar
guix-patches-4c5e45eb6bf1ad50ee2d0b5c854e81f6ce8de523.tar.gz
gnu: shaderc: Update to 2020.0.
* gnu/packages/vulkan.scm (shaderc): Update to 2020.0. [build-system]: Change to CMAKE-BUILD-SYSTEM. [arguments]: Move custom configure invokation to #:configure-flags. Add phase to prevent using bundled code. [inputs]: Add GLSLANG, SPIRV-HEADERS, and SPIRV-TOOLS. [native-inputs]: Remove CMAKE-MINIMAL, GLSLANG:SOURCE, SPIRV-HEADERS:SOURCE, and SPIRV-TOOLS:SOURCE.
Diffstat (limited to 'gnu/packages/vulkan.scm')
-rw-r--r--gnu/packages/vulkan.scm71
1 files changed, 26 insertions, 45 deletions
diff --git a/gnu/packages/vulkan.scm b/gnu/packages/vulkan.scm
index 732d5545fb..a96b33c74f 100644
--- a/gnu/packages/vulkan.scm
+++ b/gnu/packages/vulkan.scm
@@ -253,7 +253,7 @@ API.")
(define-public shaderc
(package
(name "shaderc")
- (version "2019.0")
+ (version "2020.0")
(source
(origin
(method git-fetch)
@@ -263,56 +263,37 @@ API.")
(file-name (git-file-name name version))
(sha256
(base32
- "1l5mmyxhzsbp0a6y2d86i8jmf46c6bjgjkdgkr5l8hmhflmm7gi2"))))
- (build-system meson-build-system)
+ "1kqqvsvib01bsmfbdy3fbwwpvkcdlfb6k71kjvzb3crql7w0rxff"))))
+ (build-system cmake-build-system)
(arguments
`(#:tests? #f ; FIXME: Tests fail.
+ #:configure-flags '("-DSHADERC_SKIP_TESTS=ON")
#:phases
(modify-phases %standard-phases
- (replace 'configure
- (lambda* (#:key outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out")))
- ;; Remove various lines and touch build-version.inc or
- ;; configuring won't work.
- (invoke "touch" "glslc/src/build-version.inc")
- (substitute* "CMakeLists.txt" (("..PYTHON_EXE..*") ""))
- (substitute* "CMakeLists.txt"
- ((".*update_build_version.py..*") ""))
- (substitute* "CMakeLists.txt"
- ((".*add_custom_target.build-version.*") ""))
- (substitute* "CMakeLists.txt"
- ((".*spirv-tools_SOURCE_DIR.*glslang_SOURCE_DIR.*")
- ""))
- (substitute* "CMakeLists.txt"
- ((".*Update build-version.inc.*") ""))
- (substitute* "CMakeLists.txt" ((".*--check.*") ""))
- (substitute* "glslc/src/main.cc" ((".*build-version.inc.*")
- "\"1\""))
- (invoke "cmake" "-GNinja" "-DCMAKE_BUILD_TYPE=Release"
- "-DSHADERC_SKIP_TESTS=ON"
- "-DCMAKE_INSTALL_LIBDIR=lib"
- (string-append "-DCMAKE_INSTALL_PREFIX="
- out)))))
- (add-after 'unpack 'unpack-sources
- (lambda* (#:key inputs #:allow-other-keys)
- (let ((spirv-tools-source (assoc-ref inputs "spirv-tools-source"))
- (spirv-headers-source (assoc-ref inputs "spirv-headers-source"))
- (glslang-source (assoc-ref inputs "glslang-source")))
- (copy-recursively spirv-tools-source "third_party/spirv-tools")
- (copy-recursively spirv-headers-source
- (string-append "third_party/spirv-tools"
- "/external/spirv-headers"))
- (copy-recursively glslang-source "third_party/glslang")
- #t))))))
+ (add-after 'unpack 'do-not-look-for-bundled-sources
+ (lambda _
+ (substitute* "CMakeLists.txt"
+ (("add_subdirectory\\(third_party\\)")
+ ""))
+
+ ;; Do not attempt to use git to encode version information.
+ (substitute* "glslc/CMakeLists.txt"
+ (("add_dependencies\\(glslc_exe build-version\\)")
+ ""))
+ (call-with-output-file "glslc/src/build-version.inc"
+ (lambda (port)
+ (format port "\"~a\"\n\"~a\"\n\"~a\"~%"
+ ,version
+ ,(package-version spirv-tools)
+ ,(package-version glslang))))
+ #t)))))
(inputs
- `(("googletest" ,googletest)
- ("python" ,python)))
+ `(("glslang" ,glslang)
+ ("python" ,python)
+ ("spirv-headers" ,spirv-headers)
+ ("spirv-tools" ,spirv-tools)))
(native-inputs
- `(("cmake" ,cmake-minimal)
- ("glslang-source" ,(package-source glslang))
- ("pkg-config" ,pkg-config)
- ("spirv-headers-source" ,(package-source spirv-headers))
- ("spirv-tools-source" ,(package-source spirv-tools))))
+ `(("pkg-config" ,pkg-config)))
(home-page "https://github.com/google/shaderc")
(synopsis "Tools for shader compilation")
(description "Shaderc is a collection of tools, libraries, and tests for