gnu: darktable: Add dependency on GMIC and OpenCL headers.

* gnu/packages/photo.scm (darktable)[arguments]: Fix opencl-c.h path.
[native-inputs]: Add opencl-headers, make LLVM version specific.
[inputs]: Add gmic.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
This commit is contained in:
Vinicius Monego 2020-06-26 17:39:04 -03:00 committed by Ludovic Courtès
parent 9075c6b3b4
commit 172ca314c3
No known key found for this signature in database
GPG key ID: 090B11993D9AEBB5

View file

@ -55,6 +55,7 @@ (define-module (gnu packages photo)
#:use-module (gnu packages gstreamer) #:use-module (gnu packages gstreamer)
#:use-module (gnu packages gtk) #:use-module (gnu packages gtk)
#:use-module (gnu packages image) #:use-module (gnu packages image)
#:use-module (gnu packages image-processing)
#:use-module (gnu packages imagemagick) #:use-module (gnu packages imagemagick)
#:use-module (gnu packages iso-codes) #:use-module (gnu packages iso-codes)
#:use-module (gnu packages libcanberra) #:use-module (gnu packages libcanberra)
@ -63,6 +64,7 @@ (define-module (gnu packages photo)
#:use-module (gnu packages lua) #:use-module (gnu packages lua)
#:use-module (gnu packages man) #:use-module (gnu packages man)
#:use-module (gnu packages maths) #:use-module (gnu packages maths)
#:use-module (gnu packages opencl)
#:use-module (gnu packages perl) #:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config) #:use-module (gnu packages pkg-config)
#:use-module (gnu packages popt) #:use-module (gnu packages popt)
@ -480,7 +482,13 @@ (define-public darktable
(modify-phases %standard-phases (modify-phases %standard-phases
(add-before 'configure 'prepare-build-environment (add-before 'configure 'prepare-build-environment
(lambda* (#:key inputs #:allow-other-keys) (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 (add-before 'configure 'set-LDFLAGS-and-CPATH
(lambda* (#:key inputs outputs #:allow-other-keys) (lambda* (#:key inputs outputs #:allow-other-keys)
(setenv "LDFLAGS" (setenv "LDFLAGS"
@ -508,7 +516,8 @@ (define-public darktable
("glib:bin" ,glib "bin") ("glib:bin" ,glib "bin")
("gobject-introspection" ,gobject-introspection) ("gobject-introspection" ,gobject-introspection)
("intltool" ,intltool) ("intltool" ,intltool)
("llvm" ,llvm) ("llvm" ,llvm-9) ;should match the Clang version
("opencl-headers" ,opencl-headers)
("perl" ,perl) ("perl" ,perl)
("pkg-config" ,pkg-config) ("pkg-config" ,pkg-config)
("po4a" ,po4a))) ("po4a" ,po4a)))
@ -520,6 +529,7 @@ (define-public darktable
("dbus-glib" ,dbus-glib) ("dbus-glib" ,dbus-glib)
("exiv2" ,exiv2) ("exiv2" ,exiv2)
("freeimage" ,freeimage) ("freeimage" ,freeimage)
("gmic" ,gmic)
("graphicsmagick" ,graphicsmagick) ("graphicsmagick" ,graphicsmagick)
("gsettings-desktop-schemas" ,gsettings-desktop-schemas) ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
("gtk+" ,gtk+) ("gtk+" ,gtk+)
@ -539,7 +549,7 @@ (define-public darktable
("libwebp" ,libwebp) ("libwebp" ,libwebp)
("libxml2" ,libxml2) ("libxml2" ,libxml2)
("libxslt" ,libxslt) ("libxslt" ,libxslt)
("lua" ,lua) ("lua" ,lua) ;for plugins
("openexr" ,openexr) ("openexr" ,openexr)
("openjpeg" ,openjpeg) ("openjpeg" ,openjpeg)
("osm-gps-map" ,osm-gps-map) ("osm-gps-map" ,osm-gps-map)