commit:     32c316079e114941cd09aef01026931cc5586e6b
Author:     Markus Meier <maekke <AT> gentoo <DOT> org>
AuthorDate: Fri Dec 23 18:07:10 2022 +0000
Commit:     Markus Meier <maekke <AT> gentoo <DOT> org>
CommitDate: Fri Dec 23 18:07:10 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=32c31607

media-gfx/darktable: version bump

Signed-off-by: Markus Meier <maekke <AT> gentoo.org>

 media-gfx/darktable/Manifest                       |   3 +
 media-gfx/darktable/darktable-4.2.0.ebuild         | 189 +++++++++++++++++++++
 .../darktable-4.2.0_libs-deps-automagic.patch      |  44 +++++
 3 files changed, 236 insertions(+)

diff --git a/media-gfx/darktable/Manifest b/media-gfx/darktable/Manifest
index 7aff2c667aa5..6f92b7d531c2 100644
--- a/media-gfx/darktable/Manifest
+++ b/media-gfx/darktable/Manifest
@@ -1,3 +1,6 @@
 DIST darktable-4.0.1.tar.xz 5958392 BLAKE2B 
677ee85d8b353e9e4fa015226e7383b98b90b319f99142ce8c146c75b3a65a6f057412e8f2a4741d03c5e0a1bd60156245328380e1446c511ab2fb810077b0a3
 SHA512 
f7107024e52cedeb7775b410329e15a667c97f115d5722530add7d3d542974df1ceabeb7f33161d31e0388a682825941947fb9da2546ea2865a090acb7448729
+DIST darktable-4.2.0.tar.xz 5862080 BLAKE2B 
eb1c6ab821587cd9d79628d2be24659db6e698a52ee7a7f830b386dd409c96b243a017644a09cf38fcc366c9d7563d057200904aed3ac6f17d4a07fc2758f466
 SHA512 
17f3e1a97f0af8928b6a7936e1f8923e164344c6adb8393c7aaabce6e62541f2d941929b331283d4f73c477081850c98d694d01f9a002add71c0a41e2272289f
 DIST darktable-usermanual-4.0.en.pdf 26585692 BLAKE2B 
85083af2227e4e16a658cfce435339410e2cf4f03df1a62cf2a54b743232b82093d8012c1212978f08c021585d5cb4ee4b47d4cbfd399a8a9505d0cb32932618
 SHA512 
789fb6a309608ad10fccfd61eca24b6176fe9ce8ad53dd9840a7e3175598d9d6b7c8357d4852fc787dbfe80e32e696d680e3a7b9a2663ef4d00ef424d3341fc6
 DIST darktable-usermanual-4.0.uk.pdf 26781033 BLAKE2B 
6d73b690dfebc590971325242fdb6d6de5577219eff6b20dec08a3a53a9529cb53031a36fd0ac45b509f4cb885bafdce38ce1f8bd1c4a255aa2a137bc367d87c
 SHA512 
e897bca98470d9d51bdfa807850af5222cbba527ba46df9b713776ebdc5dc8b946758e4c25f1df478c2c01408d08a91467cc75b5a199042b42c93627dc6d9846
+DIST darktable-usermanual-4.2.en.pdf 26552260 BLAKE2B 
a090e6e9a3b714d04c2c65ae0c77afa74b2a26c5130731e83b9f5bfe25935391c3dbc21d408f13776975e8c2e794d232a54a54d6a932f0389cb2fc993c2fa159
 SHA512 
49ff878c4a82d91b88f1f9a28986616f382dc5b40d0a47e3a8cfb27efd79fdd7d8bf3c416d659fdb61ac505d75ed003587e51555389aaec5f9e35bb770f18eac
+DIST darktable-usermanual-4.2.uk.pdf 26472343 BLAKE2B 
d5d8446dead97693be168f4a426a56ce215bb6c3e2d931be19b515abbbe75265fbd17fa433fb3f14630d74323efcd40683694d7af6d3b4456888ec9965aba1ff
 SHA512 
d348ce8edf1847cac6d20744dedd85351ff77b51ac717fe173ef28c9588dcddba06584aef8741661b2ba9652229b9a97ba2220764c957a0a9e645a9b8809f913

diff --git a/media-gfx/darktable/darktable-4.2.0.ebuild 
b/media-gfx/darktable/darktable-4.2.0.ebuild
new file mode 100644
index 000000000000..7a8ae5b14958
--- /dev/null
+++ b/media-gfx/darktable/darktable-4.2.0.ebuild
@@ -0,0 +1,189 @@
+# 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=" de es fi fr hu it ja nl pl pt-BR ru sl sq tr uk zh-TW"
+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 )"
+
+# It is sometimes requested, by both users and certain devs, to have 
sys-devel/gcc[graphite]
+# in BDEPEND. This has not been done *on purpose*, for the following reason:
+#  - darktable can also be built with sys-devel/clang so we'd have to have 
that, as an alternative,
+#    in BDEPEND too
+#  - there are at least two darktable dependencies (media-libs/mesa and 
virtual/rust) which
+#    by default pull in sys-devel/clang
+#  - as a result of the above, for most gcc users adding the above to BDEPEND 
is a no-op
+#    (and curiously enough, empirical observations suggest current versions of 
Portage are
+#    more likely to pull in Clang to build darktable with than to request 
enabling USE=graphite
+#    on GCC; that might be a bug though)
+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:=
+       gnome-base/librsvg:2
+       >=media-gfx/exiv2-0.25-r2:=[xmp]
+       media-libs/lcms:2
+       >=media-libs/lensfun-0.2.3:=
+       media-libs/libjpeg-turbo:=
+       media-libs/libpng:=
+       media-libs/tiff:=
+       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:= )
+       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:= )"
+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.2.0_libs-deps-automagic.patch
+)
+
+S="${WORKDIR}/${P/_/~}"
+
+pkg_pretend() {
+       if [[ ${MERGE_TYPE} != binary ]]; then
+               # Bug #695658
+               if tc-is-gcc; then
+                       if ! test-flags-CC -floop-block &> /dev/null; then
+                               eerror "Building ${PN} with GCC requires 
Graphite support."
+                               eerror "Please switch to a version of 
sys-devel/gcc built with USE=graphite, or use a different compiler."
+                               die "Selected compiler is 
sys-devel/gcc[-graphite]"
+                       fi
+               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.2.0_libs-deps-automagic.patch 
b/media-gfx/darktable/files/darktable-4.2.0_libs-deps-automagic.patch
new file mode 100644
index 000000000000..f6985f609fbd
--- /dev/null
+++ b/media-gfx/darktable/files/darktable-4.2.0_libs-deps-automagic.patch
@@ -0,0 +1,44 @@
+Binary files darktable-4.2.0.orig/.DefineOptions.cmake.swp and 
darktable-4.2.0/.DefineOptions.cmake.swp differ
+diff -ru darktable-4.2.0.orig/DefineOptions.cmake 
darktable-4.2.0/DefineOptions.cmake
+--- darktable-4.2.0.orig/DefineOptions.cmake   2022-12-21 20:32:43.490671000 
+0100
++++ darktable-4.2.0/DefineOptions.cmake        2022-12-21 20:33:13.413673557 
+0100
+@@ -41,6 +41,7 @@
+ option(USE_ICU "Use ICU - International Components for Unicode." ON)
+ option(USE_GAME "Build 1st April easter egg game" ON)
+ option(FORCE_COLORED_OUTPUT "Always produce ANSI-colored output (GNU/Clang 
only)." OFF)
++option(USE_SDL2 "Enable SDL2 support" ON)
+ 
+ if (USE_OPENCL)
+     option(TESTBUILD_OPENCL_PROGRAMS "Test-compile opencl programs (needs 
llvm and clang 3.9+)" ON)
+Only in darktable-4.2.0/src/libs: .CMakeLists.txt.swp
+diff -ru darktable-4.2.0.orig/src/libs/CMakeLists.txt 
darktable-4.2.0/src/libs/CMakeLists.txt
+--- darktable-4.2.0.orig/src/libs/CMakeLists.txt       2022-12-21 
20:32:43.485670999 +0100
++++ darktable-4.2.0/src/libs/CMakeLists.txt    2022-12-21 20:34:59.240682599 
+0100
+@@ -84,6 +84,7 @@
+ add_library(timeline MODULE "tools/timeline.c")
+ add_library(image_infos MODULE "tools/image_infos.c")
+ 
++if (USE_PORTMIDI)
+ if(PortMidi_FOUND)
+   add_definitions("-DHAVE_PORTMIDI")
+   include_directories(${PortMidi_INCLUDE_DIR})
+@@ -91,8 +92,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)
+@@ -104,6 +107,7 @@
+     target_link_libraries(gamepad ${SDL2_LIBRARIES})
+   endif()
+ endif()
++endif()
+ 
+ if(BUILD_BATTERY_INDICATOR)
+   add_library(battery_indicator MODULE "tools/battery_indicator.c")

Reply via email to