guix-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bug#52848] [PATCH] gnu: Add openshadinglanguage.


From: Vinicius Monego
Subject: [bug#52848] [PATCH] gnu: Add openshadinglanguage.
Date: Tue, 28 Dec 2021 13:26:03 +0000

* gnu/packages/graphics.scm (openshadinglanguage): New variable.
---
 gnu/packages/graphics.scm | 55 +++++++++++++++++++++++++++++++++++++++
 1 file changed, 55 insertions(+)

diff --git a/gnu/packages/graphics.scm b/gnu/packages/graphics.scm
index 3be37d7841..f857aa04db 100644
--- a/gnu/packages/graphics.scm
+++ b/gnu/packages/graphics.scm
@@ -79,6 +79,7 @@
   #:use-module (gnu packages kde-frameworks)
   #:use-module (gnu packages libusb)
   #:use-module (gnu packages linux)
+  #:use-module (gnu packages llvm)
   #:use-module (gnu packages lua)
   #:use-module (gnu packages maths)
   #:use-module (gnu packages mp3)
@@ -666,6 +667,60 @@ vertices, sorting by primitive type, merging of redundant 
materials and many
 more.")
     (license license:bsd-3)))
 
+(define-public openshadinglanguage
+  (package
+    (name "openshadinglanguage")
+    (version "1.11.16.0")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url 
"https://github.com/AcademySoftwareFoundation/OpenShadingLanguage";)
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "0x0lc163vl2b57l75bf5zxlr6vm2y1f1izlxdnrw3vsapv3r9k9g"))))
+    (build-system cmake-build-system)
+    (arguments
+     `(#:configure-flags (list "-DUSE_PARTIO=OFF") ; TODO: not packaged
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'set-paths 'add-ilmbase-include-path
+           (lambda* (#:key inputs #:allow-other-keys)
+             ;; OpenEXR 2 propagates ilmbase, but its include files do not
+             ;; appear in the C_INCLUDE_PATH.
+             (let ((headers (string-append
+                             (assoc-ref inputs "ilmbase")
+                             "/include/OpenEXR")))
+               (setenv "C_INCLUDE_PATH"
+                       (string-append headers ":"
+                                      (or (getenv "C_INCLUDE_PATH") "")))
+               (setenv "CPLUS_INCLUDE_PATH"
+                       (string-append headers ":"
+                                      (or (getenv "CPLUS_INCLUDE_PATH") 
""))))))
+         (replace 'check
+           (lambda _
+             (invoke "ctest" "--exclude-regex"
+                     (string-join
+                      (list
+                       "osl-imageio"      ; OIIO not compiled with freetype
+                       "osl-imageio.opt"  ; OIIO not compiled with freetype
+                       "texture-udim"     ; file does not exist
+                       "texture-udim.opt" ; file does not exist
+                       "example-deformer" ; could not find OSLConfig
+                       "python-oslquery") ; no module oslquery
+                      "|")))))))
+    (native-inputs
+     (list bison clang flex llvm pybind11 python-wrapper))
+    (inputs
+     (list boost imath openexr-2 openimageio pugixml qtbase-5 zlib))
+    (home-page 
"https://github.com/AcademySoftwareFoundation/OpenShadingLanguage";)
+    (synopsis "Shading language for production GI renderers")
+    (description "Open Shading Language (OSL) is a language for programmable
+shading in advanced renderers and other applications, ideal for describing
+materials, lights, displacement, and pattern generation.")
+    (license license:bsd-3)))
+
 (define-public cgal
   (package
     (name "cgal")

base-commit: 28b477cb2e5d9185da16f305caff15809dfa06f3
-- 
2.30.2






reply via email to

[Prev in Thread] Current Thread [Next in Thread]