summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarek Szuba <marecki@gentoo.org>2022-09-20 09:50:20 +0100
committerMarek Szuba <marecki@gentoo.org>2022-09-20 09:51:41 +0100
commit4a2d1f4f56fd80ae2093e993b3c7a78ded7ae7a1 (patch)
treeb9053d43a8adccbc9e085f26cba30b698e12b8cf /media-gfx
parentsys-power/acpid: add 2.0.34 (diff)
downloadgentoo-4a2d1f4f56fd80ae2093e993b3c7a78ded7ae7a1.tar.gz
gentoo-4a2d1f4f56fd80ae2093e993b3c7a78ded7ae7a1.tar.bz2
gentoo-4a2d1f4f56fd80ae2093e993b3c7a78ded7ae7a1.zip
media-gfx/darktable: add 4.0.1
Signed-off-by: Marek Szuba <marecki@gentoo.org>
Diffstat (limited to 'media-gfx')
-rw-r--r--media-gfx/darktable/Manifest1
-rw-r--r--media-gfx/darktable/darktable-4.0.1.ebuild176
-rw-r--r--media-gfx/darktable/files/darktable-4.0.1_libs-deps-automagic.patch37
3 files changed, 214 insertions, 0 deletions
diff --git a/media-gfx/darktable/Manifest b/media-gfx/darktable/Manifest
index 8921b8aec839..570f3b076365 100644
--- a/media-gfx/darktable/Manifest
+++ b/media-gfx/darktable/Manifest
@@ -1,6 +1,7 @@
DIST darktable-3.8.0.tar.xz 5415532 BLAKE2B a2295d9145806720c702d30a334f4d1c483fc651dfda8a39617daed4a71a436bfaa5b6b379f5ec0ee4bbec5f6f5eabbcb589b63644b5698100dd1672710d1531 SHA512 ce95983cbe3ca899103b4f5ee560fdbeeb441dccd453ac4d858b14a25050229e1e780595c66bfb491c88db35c128054f649b365d701ef4b19cf252bd847ffa59
DIST darktable-3.8.1.tar.xz 5514756 BLAKE2B e17bf4cc8f8d3f3fd6649c66c56777aa1e946a91cec1bc3b4c59ba1285aa16c608f725f549622b740417a8040a7bb5d63b2378997a05c2095f1b6814c05815de SHA512 8b1b0c9e1a0bd9b327d34d28fe33dd1a2c7255864f6fa0c15af364a029aaa3cff5e039ff6461e48d3b4327b7656efe70ad9da12245d3a01d7566545d191448ba
DIST darktable-4.0.0.tar.xz 5829684 BLAKE2B 91198a47c4dab3368c934815425f430ae5b23e35f585a6c2b70322932cfd7fff19db76bd5f1dd50da81be1b8c9b82b12cb2c6c349e4808432f2ed195a015ecc2 SHA512 16b1cce589bdcd9c47685c9bd4705d35a739cfbad35ec7f414ce38848decc2e156bcbc7fe40f15026851927171072219ee0435e7cc64ca6fd763e479be5b5156
+DIST darktable-4.0.1.tar.xz 5958392 BLAKE2B 677ee85d8b353e9e4fa015226e7383b98b90b319f99142ce8c146c75b3a65a6f057412e8f2a4741d03c5e0a1bd60156245328380e1446c511ab2fb810077b0a3 SHA512 f7107024e52cedeb7775b410329e15a667c97f115d5722530add7d3d542974df1ceabeb7f33161d31e0388a682825941947fb9da2546ea2865a090acb7448729
DIST darktable-usermanual-3.8.de.pdf 32795040 BLAKE2B f8669e1982be19bc739add60d125a5818894a7a4a6414ba15aae5e5df41ec6729c99f907e3008c42acbd6f60bc4a5d33e20d7180621d135f9fd342e6190ae6a5 SHA512 ff77afcc9a20fec36891d4487d167e40d30a1deef6418dc6bb73c94d8171b42e5edc5420457c96e08ab8581175e691f8adf91ef5259367edba55f1441d4a86d3
DIST darktable-usermanual-3.8.en.pdf 33484632 BLAKE2B 90a4e1021917f5fad7a5a9a58e2fec95af14119ca4b48325f3e5b55e96b89f9d82b8aaa676268a255fa97cf834a109b410004a549d16742a1b33db880c46fb67 SHA512 b21683f200daca3d0ed7c3364d0c6703d976fd800d1d2ffe51df1c6cfcf2188de681cdddbf92962629a3866e18014377a58ea0e54a9fa727b663972b7f1de79a
DIST darktable-usermanual-3.8.fr.pdf 33479509 BLAKE2B 988824b60277ea0264fec61a1157a1de048cd512a172bc86276a043c06da3a684e971cef04c31122a78b3e7305157331e6cb86cfce7a4dc4dd9dc8697eddf743 SHA512 1383bb54face948bbbad895be2470c1b13ece71c325edf40402b3416a5d9653d2e1f8c4dbfa30edd10f02c1df8b8243c9e86948c5da8d2033e28ee3c6e04bbcc
diff --git a/media-gfx/darktable/darktable-4.0.1.ebuild b/media-gfx/darktable/darktable-4.0.1.ebuild
new file mode 100644
index 000000000000..34dbd9359da5
--- /dev/null
+++ b/media-gfx/darktable/darktable-4.0.1.ebuild
@@ -0,0 +1,176 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+LUA_COMPAT=( lua5-4 )
+
+inherit cmake flag-o-matic lua-single toolchain-funcs xdg
+
+DESCRIPTION="A virtual lighttable and darkroom for photographers"
+HOMEPAGE="https://www.darktable.org/"
+LICENSE="GPL-3 CC-BY-3.0"
+SLOT="0"
+
+if [[ ${PV} == *9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/darktable-org/${PN}.git"
+
+ LANGS=" af ca cs da de el es fi fr gl he hu it ja nb nl pl pt-BR pt-PT ro ru sk sl sq sv th uk zh-CN zh-TW"
+else
+ DOC_PV=$(ver_cut 1-2)
+ MY_PV="${PV/_/}"
+ MY_P="${P/_/.}"
+
+ SRC_URI="https://github.com/darktable-org/${PN}/releases/download/release-${MY_PV}/${MY_P}.tar.xz
+ doc? (
+ https://docs.darktable.org/usermanual/${DOC_PV}/en/${PN}_user_manual.pdf -> ${PN}-usermanual-${DOC_PV}.en.pdf
+ l10n_uk? ( https://docs.darktable.org/usermanual/${DOC_PV}/uk/${PN}_user_manual.pdf -> ${PN}-usermanual-${DOC_PV}.uk.pdf )
+ )"
+
+ KEYWORDS="~amd64 ~arm64 -x86"
+ LANGS=" cs de eo es fi fr he hu it ja nl pt-BR ru sl tr uk zh-CN"
+fi
+
+IUSE="avif colord cpu_flags_x86_avx cpu_flags_x86_sse3 cups doc flickr gamepad geolocation gmic gnome-keyring gphoto2 graphicsmagick heif jpeg2k kwallet lto lua midi nls opencl openmp openexr test tools webp
+ ${LANGS// / l10n_}"
+
+REQUIRED_USE="lua? ( ${LUA_REQUIRED_USE} )"
+
+RESTRICT="!test? ( test )"
+
+BDEPEND="dev-util/intltool
+ virtual/pkgconfig
+ nls? ( sys-devel/gettext )
+ test? ( >=dev-python/jsonschema-3.2.0 )"
+DEPEND="dev-db/sqlite:3
+ dev-libs/icu:=
+ dev-libs/json-glib
+ dev-libs/libxml2:2
+ >=dev-libs/pugixml-1.8:0=
+ gnome-base/librsvg:2
+ >=media-gfx/exiv2-0.25-r2:0=[xmp]
+ media-libs/lcms:2
+ >=media-libs/lensfun-0.2.3:0=
+ media-libs/libjpeg-turbo:=
+ media-libs/libpng:0=
+ media-libs/tiff:0
+ net-libs/libsoup:2.4
+ net-misc/curl
+ sys-libs/zlib:=
+ x11-libs/cairo
+ >=x11-libs/gtk+-3.22:3
+ x11-libs/pango
+ avif? ( >=media-libs/libavif-0.8.2:= )
+ colord? ( x11-libs/colord-gtk:0= )
+ cups? ( net-print/cups )
+ flickr? ( media-libs/flickcurl )
+ gamepad? ( media-libs/libsdl2 )
+ geolocation? ( >=sci-geosciences/osm-gps-map-1.1.0 )
+ gmic? ( media-gfx/gmic )
+ gnome-keyring? ( >=app-crypt/libsecret-0.18 )
+ gphoto2? ( media-libs/libgphoto2:= )
+ graphicsmagick? ( media-gfx/graphicsmagick )
+ heif? ( media-libs/libheif:= )
+ jpeg2k? ( media-libs/openjpeg:2= )
+ lua? ( ${LUA_DEPS} )
+ midi? ( media-libs/portmidi )
+ opencl? ( virtual/opencl )
+ openexr? ( media-libs/openexr:= )
+ webp? ( media-libs/libwebp:0= )"
+RDEPEND="${DEPEND}
+ kwallet? ( >=kde-frameworks/kwallet-5.34.0-r1 )"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-3.0.0_find-opencl-header.patch
+ "${FILESDIR}"/${PN}-3.0.2_cmake-march-autodetection.patch
+ "${FILESDIR}"/${PN}-3.4.0_jsonschema-automagic.patch
+ "${FILESDIR}"/${PN}-3.4.1_libxcf-cmake.patch
+ "${FILESDIR}"/${PN}-4.0.1_libs-deps-automagic.patch
+)
+
+S="${WORKDIR}/${P/_/~}"
+
+pkg_pretend() {
+ if [[ ${MERGE_TYPE} != binary ]]; then
+ # Bug #695658
+ if tc-is-gcc; then
+ test-flags-CC -floop-block &> /dev/null || \
+ die "Please switch to a gcc version built with USE=graphite"
+ fi
+
+ use openmp && tc-check-openmp
+ fi
+}
+
+pkg_setup() {
+ [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
+ use lua && lua-single_pkg_setup
+}
+
+src_prepare() {
+ use cpu_flags_x86_avx && append-flags -mavx
+ use cpu_flags_x86_sse3 && append-flags -msse3
+
+ sed -i -e 's:/appdata:/metainfo:g' data/CMakeLists.txt || die
+
+ cmake_src_prepare
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DBUILD_CURVE_TOOLS=$(usex tools)
+ -DBUILD_NOISE_TOOLS=$(usex tools)
+ -DBUILD_PRINT=$(usex cups)
+ -DCUSTOM_CFLAGS=ON
+ -DDONT_USE_INTERNAL_LUA=ON
+ -DRAWSPEED_ENABLE_LTO=$(usex lto)
+ -DTESTBUILD_OPENCL_PROGRAMS=OFF
+ -DUSE_AVIF=$(usex avif)
+ -DUSE_CAMERA_SUPPORT=$(usex gphoto2)
+ -DUSE_COLORD=$(usex colord)
+ -DUSE_FLICKR=$(usex flickr)
+ -DUSE_GMIC=$(usex gmic)
+ -DUSE_GRAPHICSMAGICK=$(usex graphicsmagick)
+ -DUSE_KWALLET=$(usex kwallet)
+ -DUSE_LIBSECRET=$(usex gnome-keyring)
+ -DUSE_LUA=$(usex lua)
+ -DUSE_MAP=$(usex geolocation)
+ -DUSE_NLS=$(usex nls)
+ -DUSE_OPENCL=$(usex opencl)
+ -DUSE_OPENEXR=$(usex openexr)
+ -DUSE_OPENJPEG=$(usex jpeg2k)
+ -DUSE_OPENMP=$(usex openmp)
+ -DUSE_PORTMIDI=$(usex midi)
+ -DUSE_SDL2=$(usex gamepad)
+ -DUSE_WEBP=$(usex webp)
+ -DWANT_JSON_VALIDATION=$(usex test)
+ )
+ cmake_src_configure
+}
+
+src_install() {
+ cmake_src_install
+ # This USE flag is masked for -9999
+ use doc && dodoc "${DISTDIR}"/${PN}-usermanual-${DOC_PV}.*.pdf
+
+ if use nls; then
+ for lang in ${LANGS} ; do
+ if ! use l10n_${lang}; then
+ rm -r "${ED}"/usr/share/locale/${lang/-/_} || die
+ fi
+ done
+ fi
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+
+ elog
+ elog "When updating a major version,"
+ elog "please bear in mind that your edits will be preserved during this process,"
+ elog "but it will not be possible to downgrade any more."
+ elog
+ ewarn "It will not be possible to downgrade!"
+ ewarn
+}
diff --git a/media-gfx/darktable/files/darktable-4.0.1_libs-deps-automagic.patch b/media-gfx/darktable/files/darktable-4.0.1_libs-deps-automagic.patch
new file mode 100644
index 000000000000..1ea06241f8d7
--- /dev/null
+++ b/media-gfx/darktable/files/darktable-4.0.1_libs-deps-automagic.patch
@@ -0,0 +1,37 @@
+--- a/src/libs/CMakeLists.txt
++++ b/src/libs/CMakeLists.txt
+@@ -84,11 +84,14 @@
+ add_library(timeline MODULE "tools/timeline.c")
+ add_library(image_infos MODULE "tools/image_infos.c")
+
++if (USE_PORTMIDI)
+ find_path(PORTMIDI_INCLUDE_DIR NAMES portmidi.h
+ DOC "The Portmidi include directory"
++ REQUIRED
+ )
+ find_library(PORTMIDI_LIBRARY NAMES portmidi
+ DOC "The Portmidi library"
++ REQUIRED
+ )
+ if(PORTMIDI_INCLUDE_DIR)
+ add_definitions("-DHAVE_PORTMIDI")
+@@ -97,8 +100,10 @@
+ add_library(midi MODULE "tools/midi.c")
+ target_link_libraries (midi ${PORTMIDI_LIBRARY})
+ endif()
++endif()
+
+-find_package(SDL2)
++if (USE_SDL2)
++find_package(SDL2 REQUIRED)
+ if(SDL2_FOUND)
+ add_definitions("-DHAVE_SDL")
+ set(MODULES ${MODULES} gamepad)
+@@ -110,6 +115,7 @@
+ target_link_libraries(gamepad ${SDL2_LIBRARIES})
+ endif()
+ endif()
++endif()
+
+ if(BUILD_BATTERY_INDICATOR)
+ add_library(battery_indicator MODULE "tools/battery_indicator.c")