diff options
author | Liliana Marie Prikler <liliana.prikler@gmail.com> | 2023-10-23 21:09:49 +0200 |
---|---|---|
committer | Liliana Marie Prikler <liliana.prikler@gmail.com> | 2023-10-23 21:09:49 +0200 |
commit | e38d6a9c2fba815ac34e74baa843f15e33846813 (patch) | |
tree | 0a3dd602449386119fc15de32a5cf7e5f607b2a1 /gnu/packages/graphics.scm | |
parent | da716c8b9cdc358609a368bd5da70b31cd97a938 (diff) | |
parent | cbd20d627497053871db863970c07d93c7081786 (diff) |
Merge branch 'master' into gnome-team
Change-Id: Ib6f55bebef2fb235fa59fd5442102a3e0ace3191
Diffstat (limited to 'gnu/packages/graphics.scm')
-rw-r--r-- | gnu/packages/graphics.scm | 99 |
1 files changed, 64 insertions, 35 deletions
diff --git a/gnu/packages/graphics.scm b/gnu/packages/graphics.scm index 846533a9ecd..e5a26ecc6df 100644 --- a/gnu/packages/graphics.scm +++ b/gnu/packages/graphics.scm @@ -28,7 +28,7 @@ ;;; Copyright © 2021 Ekaitz Zarraga <ekaitz@elenq.tech> ;;; Copyright © 2021, 2022 Vinicius Monego <monego@posteo.net> ;;; Copyright © 2022 Michael Rohleder <mike@rohleder.de> -;;; Copyright © 2022 John Kehayias <john.kehayias@protonmail.com> +;;; Copyright © 2022, 2023 John Kehayias <john.kehayias@protonmail.com> ;;; Copyright © 2022 Zheng Junjie <873216071@qq.com> ;;; Copyright © 2022 Tobias Kortkamp <tobias.kortkamp@gmail.com> ;;; Copyright © 2022 Paul A. Patience <paul@apatience.com> @@ -121,6 +121,7 @@ #:use-module (gnu packages tbb) #:use-module (gnu packages toolkits) #:use-module (gnu packages upnp) + #:use-module (gnu packages version-control) #:use-module (gnu packages video) #:use-module (gnu packages vulkan) #:use-module (gnu packages xiph) @@ -1038,7 +1039,7 @@ distills complex, animated scenes into a set of baked geometric results.") (define-public mangohud (package (name "mangohud") - (version "0.6.8") + (version "0.7.0") (source (origin (method git-fetch) @@ -1047,21 +1048,18 @@ distills complex, animated scenes into a set of baked geometric results.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "19dp8l5njzl9xah0bhwlkl39vc8w2rnpvpdrhgaz3hnhz8b0r5df")))) + (base32 "1m4a2dqzqdhk9w1gvzppid7k0fxvplh5hmivvj9sda529s1g24rc")))) (build-system meson-build-system) (arguments (list #:build-type "release" #:configure-flags - #~(list "-Duse_system_vulkan=enabled" - "-Duse_system_spdlog=enabled" + #~(list "-Duse_system_spdlog=enabled" "-Dwith_xnvctrl=disabled" - "-Dappend_libdir_mangohud=false" - (string-append "-Dvulkan_datadir=" - #$(this-package-input "vulkan-headers") "/share")) + "-Dappend_libdir_mangohud=false") #:phases #~(modify-phases %standard-phases - ;; Mangohud tries to build the imgui library as a meson submodule, + ;; MangoHud tries to build the imgui library as a meson submodule, ;; so we change the dependency to the imgui input instead. (add-after 'unpack 'unbundle-imgui (lambda _ @@ -1073,6 +1071,23 @@ distills complex, animated scenes into a set of baked geometric results.") "declare_dependency(dependencies: " "cpp.find_library('imgui'), include_directories: '" #$(this-package-input "imgui") "/include/imgui')"))))) + ;; Likewise, MangoHud bundles a Vulkan headers submodule to use a + ;; specific version, which we provide as an input and adjust the + ;; build accordingly. + (add-after 'unbundle-imgui 'unbundle-vulkan-headers + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "meson.build" + (("vkh_sp = .*") + "") + (("vkh_sp.get_variable\\('vulkan_api_xml'\\)") + (string-append "files('" + (search-input-file inputs "registry/vk.xml") + "')")) + (("dep_vulkan = .*") + "")) + (substitute* "src/meson.build" + (("dep_vulkan,") + "")))) (add-after 'unpack 'patch-paths (lambda* (#:key inputs #:allow-other-keys) (substitute* "src/meson.build" @@ -1098,11 +1113,20 @@ distills complex, animated scenes into a set of baked geometric results.") libx11 mesa mesa-utils + nlohmann-json python-mako spdlog - vulkan-headers + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/KhronosGroup/Vulkan-Headers") + (commit "v1.2.158"))) + (file-name (git-file-name "vulkan" "v1.2.158")) + (sha256 + (base32 + "0jvaqj87792yccpr290djb18pqaisspq9dw6bqim6mrhfgda9v76"))) vulkan-loader)) - (native-inputs (list pkg-config python)) + (native-inputs (list git-minimal/pinned pkg-config python)) (home-page "https://github.com/flightlessmango/MangoHud/") (synopsis "Vulkan and OpenGL overlay for monitoring performance and hardware") (description "MangoHud is a Vulkan and OpenGL overlay for monitoring @@ -2526,7 +2550,7 @@ generated discrete signed distance field using the cubic spline kernel. (define-public mmg (package (name "mmg") - (version "5.7.1") + (version "5.7.2") (source (origin (method git-fetch) @@ -2535,7 +2559,7 @@ generated discrete signed distance field using the cubic spline kernel. (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "0skb7yzsw6y44zp9gb729i5xks7qd97nvn3z6jhz4jksqksx7lz0")))) + (base32 "007d0mvqhnxxj6dbcip9s615asrbpgrbkpm5xn6m8k3n9sljr153")))) (build-system cmake-build-system) (outputs '("out" "lib" "doc")) (arguments @@ -2736,7 +2760,7 @@ desired local properties.") (define-public f3d (package (name "f3d") - (version "2.0.0") + (version "2.2.1") (source (origin (method git-fetch) @@ -2745,22 +2769,12 @@ desired local properties.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "1gcwpdkz3ylaxi133zri1cxkvj6za5s1hbgqqc8fn10q2dkkdd44")) + (base32 "0f076754zsxb4gwk6bxj94iyjj0dfxmmc8w88f55xd6hbm3qdnwd")) (modules '((guix build utils))) (snippet #~(begin - (delete-file "external/cxxopts.hpp") - (delete-file "external/json.hpp") - (substitute* "application/F3DOptionsParser.cxx" - (("^#include \"cxxopts\\.hpp\"") - "#include <cxxopts.hpp>") - (("^#include \"json\\.hpp\"") - "#include <nlohmann/json.hpp>") - (("cxxopts::OptionException") - "cxxopts::exceptions::parsing")) - (substitute* "library/src/engine.cxx" - (("^#include <json\\.hpp>") - "#include <nlohmann/json.hpp>")))))) + (delete-file-recursively "external/cxxopts") + (delete-file-recursively "external/nlohmann_json"))))) (build-system cmake-build-system) ;; The package cannot easily be split into out and lib outputs because ;; VTK's vtkModule.cmake complains, and also the CMake files in @@ -2783,15 +2797,29 @@ desired local properties.") #~(list (string-append "-DCMAKE_INSTALL_DOCDIR=" #$output "/share/doc/" #$name "-" #$version) "-DBUILD_TESTING=OFF" - "-DF3D_GENERATE_MAN=ON" - "-DF3D_INSTALL_DEFAULT_CONFIGURATION_FILE=ON" - "-DF3D_INSTALL_DEFAULT_CONFIGURATION_FILE_IN_PREFIX=ON" - "-DF3D_INSTALL_MIME_TYPES_FILES=ON" - "-DF3D_INSTALL_THUMBNAILER_FILES=ON" - "-DF3D_MODULE_ALEMBIC=ON" - "-DF3D_MODULE_ASSIMP=ON" + "-DF3D_LINUX_GENERATE_MAN=ON" + "-DF3D_USE_EXTERNAL_CXXOPTS=ON" + "-DF3D_USE_EXTERNAL_NLOHMANN_JSON=ON" "-DF3D_MODULE_EXTERNAL_RENDERING=ON" - "-DF3D_MODULE_OCCT=ON"))) + "-DF3D_MODULE_EXR=ON" + "-DF3D_PLUGIN_BUILD_ALEMBIC=ON" + "-DF3D_PLUGIN_BUILD_ASSIMP=ON" + "-DF3D_PLUGIN_BUILD_OCCT=ON") + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'fix-cmake-rpath + (lambda _ + ;; Expand $ORIGIN, and add VTK to library RPATH, because it is + ;; not added automatically. + (substitute* "application/CMakeLists.txt" + (("(set_target_properties.*PROPERTIES.*INSTALL_RPATH ).*" + _ prefix) + (string-append prefix "\"" #$output "/lib\")\n"))) + (substitute* "library/CMakeLists.txt" + (("(set_target_properties.*PROPERTIES.*INSTALL_RPATH ).*" + _ prefix) + (string-append prefix "\"" #$output "/lib:" + #$(this-package-input "vtk") "/lib\")\n")))))))) (native-inputs (list cxxopts help2man @@ -2815,6 +2843,7 @@ desired local properties.") lz4 netcdf opencascade-occt + openexr vtk zlib)) (home-page "https://f3d-app.github.io/f3d/") |