diff --git a/gnu/packages/photo.scm b/gnu/packages/photo.scm index 75bbc45380..09767f464e 100644 --- a/gnu/packages/photo.scm +++ b/gnu/packages/photo.scm @@ -55,6 +55,7 @@ (define-module (gnu packages photo) #:use-module (gnu packages gstreamer) #:use-module (gnu packages gtk) #:use-module (gnu packages image) + #:use-module (gnu packages image-processing) #:use-module (gnu packages imagemagick) #:use-module (gnu packages iso-codes) #:use-module (gnu packages libcanberra) @@ -63,6 +64,7 @@ (define-module (gnu packages photo) #:use-module (gnu packages lua) #:use-module (gnu packages man) #:use-module (gnu packages maths) + #:use-module (gnu packages opencl) #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) #:use-module (gnu packages popt) @@ -480,7 +482,13 @@ (define-public darktable (modify-phases %standard-phases (add-before 'configure 'prepare-build-environment (lambda* (#:key inputs #:allow-other-keys) - (setenv "CC" "clang") (setenv "CXX" "clang++"))) + (setenv "CC" "clang") (setenv "CXX" "clang++") + ;; Darktable looks for opencl-c.h in the LLVM dir. Guix installs + ;; it to the Clang dir. We fix this by patching CMakeLists.txt. + (substitute* "CMakeLists.txt" + (("\\$\\{LLVM_INSTALL_PREFIX\\}") + (assoc-ref %build-inputs "clang"))) + #t)) (add-before 'configure 'set-LDFLAGS-and-CPATH (lambda* (#:key inputs outputs #:allow-other-keys) (setenv "LDFLAGS" @@ -508,7 +516,8 @@ (define-public darktable ("glib:bin" ,glib "bin") ("gobject-introspection" ,gobject-introspection) ("intltool" ,intltool) - ("llvm" ,llvm) + ("llvm" ,llvm-9) ;should match the Clang version + ("opencl-headers" ,opencl-headers) ("perl" ,perl) ("pkg-config" ,pkg-config) ("po4a" ,po4a))) @@ -520,6 +529,7 @@ (define-public darktable ("dbus-glib" ,dbus-glib) ("exiv2" ,exiv2) ("freeimage" ,freeimage) + ("gmic" ,gmic) ("graphicsmagick" ,graphicsmagick) ("gsettings-desktop-schemas" ,gsettings-desktop-schemas) ("gtk+" ,gtk+) @@ -539,7 +549,7 @@ (define-public darktable ("libwebp" ,libwebp) ("libxml2" ,libxml2) ("libxslt" ,libxslt) - ("lua" ,lua) + ("lua" ,lua) ;for plugins ("openexr" ,openexr) ("openjpeg" ,openjpeg) ("osm-gps-map" ,osm-gps-map)