blob: a0c69a7c1e3dd648a6d7fe81407c4907234177a0 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
|
# Copyright 2014 Bernd Steinhauser <berniyh@exherbo.org>
# Distributed under the terms of the GNU General Public License v2
require github [ user=darktable-org release=release-${PV} suffix=tar.xz ] \
cmake \
freedesktop-desktop \
gtk-icon-cache \
option-renames [ renames=[ 'libsecret keyring' ] ] \
utf8-locale
export_exlib_phases src_prepare src_compile pkg_postinst pkg_postrm
SUMMARY="A virtual lighttable and darkroom for photographers to develop RAW images"
DESCRIPTION="
darktable is an open source photography workflow application and RAW developer.
A virtual lighttable and darkroom for photographers.
It manages your digital negatives in a database, lets you view them through a zoomable lighttable and enables you to develop raw images and enhance them.
"
HOMEPAGE+=" https://www.darktable.org"
LICENCES="
GPL-3
MIT [[ note = [ CL ] ]]
LGPL-2.1 [[ note = [ rawspeed ] ]]
BSD-2 [[ note = [ LuaAutoC ] ]]
"
SLOT="0"
MYOPTIONS="
avif [[ description = [ AV1 Image File Format (AVIF) support ] ]]
camera [[ description = [ Direct camera support via gphoto2, mainly Canon and Nikon ] ]]
colord [[ description = [ Color management ] ]]
cups
geo-mapping [[ description = [ Read and use gps data ] ]]
hdr [[ description = [ HDR support via openexr ] ]]
jpeg2000 [[ description = [ JPEG2000 support via openjpeg ] ]]
keyring [[ description = [ libsecret keyring support ] ]]
lua [[ description = [ lua scripting support ] ]]
openmp [[ description = [ Use gcc with openmp support ] ]]
webp [[ description = [ Support for the WebP image format ] ]]
( providers: graphicsmagick imagemagick ) [[
number-selected = at-most-one
]]
"
# TODO:
# Contains a shitload of internal libraries, check if we can get rid of that:
# LuaAutoC (unpackaged)
# CL and OpenCL (headers)
# rawspeed
DEPENDENCIES="
build:
dev-lang/perl:*
dev-libs/libxslt [[ note = [ xsltproc is used to generate some headers ] ]]
sys-devel/gcc[graphite] [[ note = [ fails without ] ]]
sys-devel/gettext
build+run:
app-text/iso-codes[>=3.66]
core/json-glib
dev-libs/glib:2[>=2.40]
dev-libs/libxml2:2.0[>=2.6]
dev-libs/pugixml[>=1.8]
dev-db/sqlite:3[>=3.15]
gnome-desktop/librsvg:2
gnome-desktop/libsoup:2.4
graphics/exiv2[>=0.24][xmp(+)]
media-libs/ExifTool
media-libs/lcms2
media-libs/lensfun
media-libs/libjpeg-turbo
media-libs/libpng:=
media-libs/tiff
net-misc/curl[>=7.56]
sys-libs/zlib
x11-libs/cairo
x11-libs/libX11
x11-libs/libXrandr
x11-libs/pango
x11-libs/gdk-pixbuf:2.0
x11-libs/gtk+:3[>=3.22]
avif? ( media-libs/libavif:=[>=0.8.2] )
camera? ( media-libs/libgphoto2 )
colord? (
sys-apps/colord[>=0.1.32]
gnome-desktop/colord-gtk
)
cups? ( net-print/cups )
geo-mapping? ( x11-libs/osm-gps-map )
hdr? (
media-libs/ilmbase
media-libs/openexr
)
jpeg2000? ( media-libs/OpenJPEG:2 )
keyring? ( dev-libs/libsecret:1 )
lua? ( dev-lang/lua:5.3 )
openmp? ( sys-libs/libgomp:= )
providers:graphicsmagick? ( media-gfx/GraphicsMagick )
providers:imagemagick? ( media-gfx/ImageMagick[>=7] )
webp? ( media-libs/libwebp:= )
test:
dev-util/cmocka[>=1.1.0]
"
CMAKE_SRC_CONFIGURE_PARAMS=(
--hates=CMAKE_BUILD_TYPE
-DCUSTOM_CFLAGS:BOOL=TRUE
-DTESTBUILD_OPENCL_PROGRAMS=FALSE
-DUSE_GAME:BOOL=FALSE
-DUSE_GMIC:BOOL=FALSE
-DUSE_KWALLET:BOOL=FALSE
-DUSE_MAC_INTEGRATION:BOOL=FALSE
-DUSE_OPENCL:BOOL=TRUE
-DUSE_UNITY:BOOL=FALSE
-DUSE_XCF:BOOL=FALSE
)
CMAKE_SRC_CONFIGURE_OPTION_BUILDS=(
'cups PRINT'
)
CMAKE_SRC_CONFIGURE_OPTION_USES=(
AVIF
'camera CAMERA_SUPPORT'
COLORD
'geo-mapping MAP'
'hdr OPENEXR'
'jpeg2000 OPENJPEG'
'keyring LIBSECRET'
LUA
OPENMP
'providers:graphicsmagick GRAPHICSMAGICK'
'providers:imagemagick IMAGEMAGICK'
WEBP
)
CMAKE_SRC_CONFIGURE_TESTS=(
'-DBUILD_TESTING:BOOL=TRUE -DBUILD_TESTING:BOOL=FALSE'
)
darktable_src_prepare() {
cmake_src_prepare
# we need to introduce our own build type for rawspeed, otherwise it'll fail
edo sed -i -e 's:FUZZ:NONE:' "${CMAKE_SOURCE}"/src/external/rawspeed/cmake/build-type.cmake
}
darktable_src_compile() {
# jsonschema: error: argument -i/--instance: invalid _json_file value
require_utf8_locale
default
}
darktable_pkg_postinst() {
freedesktop-desktop_pkg_postinst
gtk-icon-cache_pkg_postinst
}
darktable_pkg_postrm() {
freedesktop-desktop_pkg_postrm
gtk-icon-cache_pkg_postrm
}
|