all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: dan <i@dan.games>
To: 69461@debbugs.gnu.org
Cc: dan <i@dan.games>, John Kehayias <john.kehayias@protonmail.com>,
	Liliana Marie Prikler <liliana.prikler@gmail.com>
Subject: [bug#69461] [PATCH] gnu: Add directx-shader-compiler.
Date: Sun,  7 Jul 2024 23:11:14 +0800	[thread overview]
Message-ID: <28e69dd9147a8e24ece2216f46bb15201b2b0a6a.1720365035.git.i@dan.games> (raw)
In-Reply-To: <cover.1709140055.git.i@dan.games>

* gnu/packages/vulkan.scm (directx-headers-for-dxc): New variable.

Change-Id: I6e81f59ebd7122c007cce2df820359c055df5fd9
---
 gnu/packages/vulkan.scm | 65 +++++++++++++++++++++++++++++++++++++++++
 1 file changed, 65 insertions(+)

diff --git a/gnu/packages/vulkan.scm b/gnu/packages/vulkan.scm
index 25542c1e06..61d49c7b2b 100644
--- a/gnu/packages/vulkan.scm
+++ b/gnu/packages/vulkan.scm
@@ -44,7 +44,9 @@ (define-module (gnu packages vulkan)
   #:use-module (gnu packages llvm)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages python)
+  #:use-module (gnu packages version-control)
   #:use-module (gnu packages wine)
+  #:use-module (gnu packages xml)
   #:use-module (gnu packages xorg))
 
 (define-public spirv-headers
@@ -642,3 +644,66 @@ (define-public vulkan-utility-libraries
     (synopsis "Utility libraries for Vulkan developers")
     (description "Utility libraries for Vulkan developers.")
     (license license:asl2.0)))
+
+;; directx-shader-compiler depends on an old version of directx-headers.
+(define directx-headers-for-dxc
+  (let ((commit "980971e835876dc0cde415e8f9bc646e64667bf7")
+        (revision "115"))
+    (origin
+      (method git-fetch)
+      (uri (git-reference (url
+                           "https://github.com/microsoft/DirectX-Headers.git")
+                          (commit commit)))
+      (file-name (git-file-name "directx-headers-for-dxc"
+                                (git-version "0" revision commit)))
+      (sha256 (base32 "0c7l2xdsbr132ga2nyqjhz9xa42dxvhh9idjxnl673mz5kab1j6h")))))
+
+(define-public directx-shader-compiler
+  (package
+    (name "directx-shader-compiler")
+    (version "1.8.2405")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/microsoft/DirectXShaderCompiler.git")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "19rc3nb32ic0bz2vc3nbpb5lw3dh63vnpf2jvdk131m6j7kwbi4k"))
+       (modules '((guix build utils)))
+       (snippet '(substitute* "CMakeLists.txt"
+                   (("add_subdirectory\\(external\\)")
+                    "find_package(SPIRV-Tools REQUIRED)
+find_package(SPIRV-Tools-opt CONFIG REQUIRED)")))))
+    (build-system cmake-build-system)
+    (arguments
+     (list
+      #:configure-flags #~(list "-G"
+                                "Unix Makefiles"
+                                "-C"
+                                "../source/cmake/caches/PredefinedParams.cmake"
+                                (string-append "-DSPIRV_HEADER_INCLUDE_DIR="
+                                               #$(this-package-input
+                                                  "spirv-headers") "/include")
+                                (string-append "-DSPIRV_TOOLS_INCLUDE_DIR="
+                                               #$(this-package-input
+                                                  "spirv-tools") "/include")
+                                (string-append "-DDIRECTX_HEADER_INCLUDE_DIR="
+                                               #$directx-headers-for-dxc
+                                               "/include"))
+      #:phases #~(modify-phases %standard-phases
+                   (replace 'install
+                     (lambda* (#:key make-flags outputs #:allow-other-keys)
+                       (apply invoke "make" "install-distribution"
+                              make-flags))))))
+    (inputs (list libxml2 spirv-headers spirv-tools))
+    (native-inputs (list git python))
+    (home-page "https://github.com/microsoft/DirectXShaderCompiler")
+    (synopsis
+     "@acronym{HLSL, High-Level Shader Language} shader compiler")
+    (description
+     "The DirectX Shader Compiler project includes a compiler and related
+tools for compiling @acronym{HLSL, High-Level Shader Language} programs into
+SPIR-V.")
+    (license license:ncsa)))

base-commit: c86a07bacc2469e7a00fbc66cfe4f322e4bafb06
-- 
2.41.0





      parent reply	other threads:[~2024-07-07 15:13 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-02-28 17:28 [bug#69461] [mesa-updates 00/13] Update vulkan-sdk and add dirctx-shader-compiler dan
2024-02-28 17:31 ` [bug#69461] [mesa-updates 01/13] gnu: spirv-headers: Update to vulkan-sdk-1.3.275.0 dan
2024-02-28 17:31 ` [bug#69461] [mesa-updates 02/13] gnu: spirv-tools: " dan
2024-02-28 17:31 ` [bug#69461] [mesa-updates 03/13] gnu: glslang: " dan
2024-02-28 17:31 ` [bug#69461] [mesa-updates 04/13] gnu: spirv-cross: " dan
2024-02-28 17:31 ` [bug#69461] [mesa-updates 05/13] gnu: shaderc: Update to 2023.8 dan
2024-02-28 17:31 ` [bug#69461] [mesa-updates 06/13] gnu: vulkan-headers: Update to vulkan-sdk-1.3.275.0 dan
2024-02-28 17:31 ` [bug#69461] [mesa-updates 07/13] gnu: vulkan-loader: " dan
2024-02-28 17:31 ` [bug#69461] [mesa-updates 08/13] gnu: volk: " dan
2024-02-28 17:31 ` [bug#69461] [mesa-updates 09/13] gnu: vulkan-tools: " dan
2024-02-28 17:31 ` [bug#69461] [mesa-updates 10/13] gnu: magic-enum: Update to 0.9.5 dan
2024-02-28 17:31 ` [bug#69461] [mesa-updates 11/13] gnu: Add vulkan-utility-libraries dan
2024-02-28 17:31 ` [bug#69461] [mesa-updates 12/13] gnu: vulkan-validationlayers: Update to vulkan-sdk-1.3.275.0 dan
2024-02-28 17:31 ` [bug#69461] [mesa-updates 13/13] gnu: Add directx-shader-compiler dan
2024-03-16 16:09 ` [bug#69461] [PATCH mesa-updates v2 0/1] " dan
2024-03-16 16:09   ` [bug#69461] [PATCH mesa-updates v2 1/1] " dan
2024-03-28  3:54 ` [bug#69461] [PATCH mesa-updates v3 00/13] Update vulkan-sdk to 1.3.280.0 and add directx-shader-compiler dan
2024-03-28  3:54   ` [bug#69461] [PATCH mesa-updates v3 01/13] gnu: spirv-headers: Update to 1.3.280.0 dan
2024-03-28  3:54   ` [bug#69461] [PATCH mesa-updates v3 02/13] gnu: spirv-tools: " dan
2024-03-28  3:54   ` [bug#69461] [PATCH mesa-updates v3 03/13] gnu: glslang: " dan
2024-03-28  3:54   ` [bug#69461] [PATCH mesa-updates v3 04/13] gnu: spirv-cross: " dan
2024-03-28  3:54   ` [bug#69461] [PATCH mesa-updates v3 05/13] gnu: shaderc: Update to 2024.0 dan
2024-03-28  3:54   ` [bug#69461] [PATCH mesa-updates v3 06/13] gnu: vulkan-headers: Update to 1.3.280.0 dan
2024-03-28  3:54   ` [bug#69461] [PATCH mesa-updates v3 07/13] gnu: vulkan-loader: " dan
2024-03-28  3:54   ` [bug#69461] [PATCH mesa-updates v3 08/13] gnu: volk: " dan
2024-03-28  3:54   ` [bug#69461] [PATCH mesa-updates v3 09/13] gnu: vulkan-tools: " dan
2024-03-28  3:54   ` [bug#69461] [PATCH mesa-updates v3 10/13] gnu: magic-enum: Update to 0.9.5 dan
2024-03-28  3:54   ` [bug#69461] [PATCH mesa-updates v3 11/13] gnu: Add vulkan-utility-libraries dan
2024-03-28  3:54   ` [bug#69461] [PATCH mesa-updates v3 12/13] gnu: vulkan-validationlayers: Update to 1.3.280.0 dan
2024-03-28  3:54   ` [bug#69461] [PATCH mesa-updates v3 13/13] gnu: Add directx-shader-compiler dan
2024-04-18  4:54   ` [bug#69461] [PATCH mesa-updates v3 00/13] Update vulkan-sdk to 1.3.280.0 and add directx-shader-compiler John Kehayias via Guix-patches via
2024-07-07 15:11 ` dan [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=28e69dd9147a8e24ece2216f46bb15201b2b0a6a.1720365035.git.i@dan.games \
    --to=i@dan.games \
    --cc=69461@debbugs.gnu.org \
    --cc=john.kehayias@protonmail.com \
    --cc=liliana.prikler@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.