public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: media-gfx/darktable/, media-gfx/darktable/files/
@ 2020-06-18 16:30 Marek Szuba
  0 siblings, 0 replies; 9+ messages in thread
From: Marek Szuba @ 2020-06-18 16:30 UTC (permalink / raw
  To: gentoo-commits

commit:     ba35b96b501f53471cc61bdc9d518b1f48d17ef7
Author:     Marek Szuba <marecki <AT> gentoo <DOT> org>
AuthorDate: Thu Jun 18 16:26:54 2020 +0000
Commit:     Marek Szuba <marecki <AT> gentoo <DOT> org>
CommitDate: Thu Jun 18 16:29:21 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ba35b96b

media-gfx/darktable: prevent CMake from overriding march and mtune

Closes: https://bugs.gentoo.org/692786
Signed-off-by: Marek Szuba <marecki <AT> gentoo.org>

 media-gfx/darktable/darktable-3.0.2-r1.ebuild      |  1 +
 ...darktable-3.0.2_cmake-march-autodetection.patch | 26 ++++++++++++++++++++++
 2 files changed, 27 insertions(+)

diff --git a/media-gfx/darktable/darktable-3.0.2-r1.ebuild b/media-gfx/darktable/darktable-3.0.2-r1.ebuild
index 0fe3792386c..23865b736e6 100644
--- a/media-gfx/darktable/darktable-3.0.2-r1.ebuild
+++ b/media-gfx/darktable/darktable-3.0.2-r1.ebuild
@@ -70,6 +70,7 @@ RDEPEND="${COMMON_DEPEND}
 
 PATCHES=(
 	"${FILESDIR}"/"${PN}"-find-opencl-header.patch
+	"${FILESDIR}"/${PN}-3.0.2_cmake-march-autodetection.patch
 	"${FILESDIR}"/${PN}-3.0.2_cmake-opencl-kernel-loop.patch
 	"${FILESDIR}"/${PN}-3.0.2_jsonschema-automagic.patch
 )

diff --git a/media-gfx/darktable/files/darktable-3.0.2_cmake-march-autodetection.patch b/media-gfx/darktable/files/darktable-3.0.2_cmake-march-autodetection.patch
new file mode 100644
index 00000000000..8ad4f0e9329
--- /dev/null
+++ b/media-gfx/darktable/files/darktable-3.0.2_cmake-march-autodetection.patch
@@ -0,0 +1,26 @@
+Darktable and RawSpeed upstream support two build modes: if BINARY_PACKAGE_BUILD==1
+they pass -mtune=generic to the compiler, otherwise they use -march=native.
+In either case, these options override externally set CFLAGS.
+
+Disable this behaviour so that the users' settings provided to the ebuild by Portage
+are respected.
+
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -521,7 +521,7 @@
+     set(DT_REQ_INSTRUCTIONS "-msse2")
+   endif()
+ 
+-  include(march-mtune)
++  set(MARCH "")
+ 
+   #if(NOT BUILD_SSE2_CODEPATHS)
+   #  set(MARCH "${MARCH} -mno-sse2 -D__DISABLE_SSE2__ -U__SSE2__ -D__DISABLE_SSE__ -U__SSE__")
+--- a/src/external/rawspeed/cmake/compiler-flags.cmake
++++ b/src/external/rawspeed/cmake/compiler-flags.cmake
+@@ -1,5 +1,4 @@
+ include(CheckCXXCompilerFlag)
+-include(CpuMarch)
+ include(CheckCXXCompilerFlagAndEnableIt)
+ 
+ # yes, need to keep both the CMAKE_CXX_FLAGS and CMAKE_CXX_STANDARD.


^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-gfx/darktable/, media-gfx/darktable/files/
@ 2020-06-18 16:30 Marek Szuba
  0 siblings, 0 replies; 9+ messages in thread
From: Marek Szuba @ 2020-06-18 16:30 UTC (permalink / raw
  To: gentoo-commits

commit:     d3af6414bfb05efb9ffdd53c71db287b00bed984
Author:     Marek Szuba <marecki <AT> gentoo <DOT> org>
AuthorDate: Thu Jun 18 15:33:19 2020 +0000
Commit:     Marek Szuba <marecki <AT> gentoo <DOT> org>
CommitDate: Thu Jun 18 16:29:10 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d3af6414

media-gfx/darktable-3.0.2*: remove automagic dependency on jsonschema

Darktable build scripts look for the jsonschema executable and if it is
found, call it during installation to validate the noise-profile file
- with no option available to control this behaviour.
dev-python/jsonschema is not a dependency of media-gfx/darktable in my
opinion adding it to release ebuilds doesn't make much sense - the
noise-profile file is part of the release tarball, if it is bad there is
nothing end users can do about it.

Bug: https://bugs.gentoo.org/696996
Signed-off-by: Marek Szuba <marecki <AT> gentoo.org>

 media-gfx/darktable/darktable-3.0.2-r1.ebuild         |  1 +
 media-gfx/darktable/darktable-3.0.2.ebuild            |  1 +
 .../files/darktable-3.0.2_jsonschema-automagic.patch  | 19 +++++++++++++++++++
 3 files changed, 21 insertions(+)

diff --git a/media-gfx/darktable/darktable-3.0.2-r1.ebuild b/media-gfx/darktable/darktable-3.0.2-r1.ebuild
index 298560b890d..b864fc88f76 100644
--- a/media-gfx/darktable/darktable-3.0.2-r1.ebuild
+++ b/media-gfx/darktable/darktable-3.0.2-r1.ebuild
@@ -71,6 +71,7 @@ RDEPEND="${COMMON_DEPEND}
 PATCHES=(
 	"${FILESDIR}"/"${PN}"-find-opencl-header.patch
 	"${FILESDIR}"/${PN}-3.0.2_cmake-opencl-kernel-loop.patch
+	"${FILESDIR}"/${PN}-3.0.2_jsonschema-automagic.patch
 )
 
 S="${WORKDIR}/${P/_/~}"

diff --git a/media-gfx/darktable/darktable-3.0.2.ebuild b/media-gfx/darktable/darktable-3.0.2.ebuild
index 1ab8842d12a..c0116fa643b 100644
--- a/media-gfx/darktable/darktable-3.0.2.ebuild
+++ b/media-gfx/darktable/darktable-3.0.2.ebuild
@@ -71,6 +71,7 @@ RDEPEND="${COMMON_DEPEND}
 PATCHES=(
 	"${FILESDIR}"/"${PN}"-find-opencl-header.patch
 	"${FILESDIR}"/${PN}-3.0.2_cmake-opencl-kernel-loop.patch
+	"${FILESDIR}"/${PN}-3.0.2_jsonschema-automagic.patch
 )
 
 S="${WORKDIR}/${P/_/~}"

diff --git a/media-gfx/darktable/files/darktable-3.0.2_jsonschema-automagic.patch b/media-gfx/darktable/files/darktable-3.0.2_jsonschema-automagic.patch
new file mode 100644
index 00000000000..1aa0aec5163
--- /dev/null
+++ b/media-gfx/darktable/files/darktable-3.0.2_jsonschema-automagic.patch
@@ -0,0 +1,19 @@
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -319,15 +319,7 @@
+   message(STATUS "Test-compilation of OpenCL programs is disabled.")
+ endif()
+ 
+-# we need jsonschema to check noiseprofiles.json
+-find_program(jsonschema_BIN jsonschema)
+-if(${jsonschema_BIN} STREQUAL "jsonschema_BIN-NOTFOUND")
+-  message(STATUS "Missing jsonschema, problems in noiseprofiles.json might go unnoticed")
+-  set(VALIDATE_JSON 0)
+-else(${jsonschema_BIN} STREQUAL "jsonschema_BIN-NOTFOUND")
+-  message(STATUS "Found jsonschema")
+-  set(VALIDATE_JSON 1)
+-endif(${jsonschema_BIN} STREQUAL "jsonschema_BIN-NOTFOUND")
++set(VALIDATE_JSON 0)
+ 
+ # we need an xslt interpreter to generate preferences_gen.h and darktablerc
+ find_program(Xsltproc_BIN xsltproc)


^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-gfx/darktable/, media-gfx/darktable/files/
@ 2020-12-26 23:18 Marek Szuba
  0 siblings, 0 replies; 9+ messages in thread
From: Marek Szuba @ 2020-12-26 23:18 UTC (permalink / raw
  To: gentoo-commits

commit:     dd47c8a2caa923d5eb2355a8c3101e2124b83ca2
Author:     Marek Szuba <marecki <AT> gentoo <DOT> org>
AuthorDate: Fri Dec 25 00:58:28 2020 +0000
Commit:     Marek Szuba <marecki <AT> gentoo <DOT> org>
CommitDate: Sat Dec 26 23:18:16 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=dd47c8a2

media-gfx/darktable: + AVIF support, - bundled liblua, unified release/live structure

Signed-off-by: Marek Szuba <marecki <AT> gentoo.org>

 ...able-3.4.0.ebuild => darktable-3.4.0-r1.ebuild} | 54 ++++++++++++++--------
 .../darktable-3.4.0_jsonschema-automagic.patch     | 25 ++++++++++
 media-gfx/darktable/metadata.xml                   |  1 +
 3 files changed, 62 insertions(+), 18 deletions(-)

diff --git a/media-gfx/darktable/darktable-3.4.0.ebuild b/media-gfx/darktable/darktable-3.4.0-r1.ebuild
similarity index 73%
rename from media-gfx/darktable/darktable-3.4.0.ebuild
rename to media-gfx/darktable/darktable-3.4.0-r1.ebuild
index ffafc687cb4..8405fd12551 100644
--- a/media-gfx/darktable/darktable-3.4.0.ebuild
+++ b/media-gfx/darktable/darktable-3.4.0-r1.ebuild
@@ -7,29 +7,41 @@ LUA_COMPAT=( lua5-3 )
 
 inherit cmake flag-o-matic lua-single toolchain-funcs xdg
 
-DOC_PV="3.4.0"
-MY_PV="${PV/_/}"
-MY_P="${P/_/.}"
-
 DESCRIPTION="A virtual lighttable and darkroom for photographers"
 HOMEPAGE="https://www.darktable.org/"
-SRC_URI="https://github.com/darktable-org/${PN}/releases/download/release-${MY_PV}/${MY_P}.tar.xz
-	doc? ( https://github.com/darktable-org/${PN}/releases/download/release-${DOC_PV}/${PN}-usermanual.pdf -> ${PN}-usermanual-${DOC_PV}.pdf )"
-
 LICENSE="GPL-3 CC-BY-3.0"
 SLOT="0"
-KEYWORDS="~amd64 ~arm64"
-LANGS=" af cs de es fi fr he hu it pl pt-BR ru sk sl"
-IUSE="colord cups cpu_flags_x86_sse3 doc flickr geolocation gmic gnome-keyring gphoto2 graphicsmagick jpeg2k kwallet
-	lto lua nls opencl openmp openexr system-lua tools webp
+
+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="3.4.0"
+	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://github.com/darktable-org/${PN}/releases/download/release-${DOC_PV}/${PN}-usermanual.pdf -> ${PN}-usermanual-${DOC_PV}.pdf )"
+
+	KEYWORDS="~amd64 ~arm64"
+	LANGS=" af cs de es fi fr he hu it pl pt-BR ru sk sl"
+fi
+
+IUSE="avif colord cups cpu_flags_x86_sse3 doc flickr geolocation gmic gnome-keyring gphoto2 graphicsmagick jpeg2k kwallet
+	lto lua nls opencl openmp openexr test tools webp
 	${LANGS// / l10n_}"
 
-REQUIRED_USE="system-lua? ( lua ${LUA_REQUIRED_USE} )"
+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 )
 "
 COMMON_DEPEND="
 	dev-db/sqlite:3
@@ -49,6 +61,7 @@ COMMON_DEPEND="
 	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 )
@@ -58,9 +71,9 @@ COMMON_DEPEND="
 	gphoto2? ( media-libs/libgphoto2:= )
 	graphicsmagick? ( media-gfx/graphicsmagick )
 	jpeg2k? ( media-libs/openjpeg:2= )
+	lua? ( ${LUA_DEPS} )
 	opencl? ( virtual/opencl )
 	openexr? ( media-libs/openexr:0= )
-	system-lua? ( ${LUA_DEPS} )
 	webp? ( media-libs/libwebp:0= )
 "
 DEPEND="${COMMON_DEPEND}
@@ -76,7 +89,7 @@ RDEPEND="${COMMON_DEPEND}
 PATCHES=(
 	"${FILESDIR}"/"${PN}"-find-opencl-header.patch
 	"${FILESDIR}"/${PN}-3.0.2_cmake-march-autodetection.patch
-	"${FILESDIR}"/${PN}-3.0.2_jsonschema-automagic.patch
+	"${FILESDIR}"/${PN}-3.4.0_jsonschema-automagic.patch
 )
 
 S="${WORKDIR}/${P/_/~}"
@@ -95,6 +108,10 @@ pkg_pretend() {
 	fi
 }
 
+pkg_setup() {
+	use lua && lua-single_pkg_setup
+}
+
 src_prepare() {
 	use cpu_flags_x86_sse3 && append-flags -msse3
 
@@ -104,15 +121,14 @@ src_prepare() {
 }
 
 src_configure() {
-	# As of darktable-3.2.1, AVIF support is not compatible with >=media-libs/libavif-0.8.0; see Bug #751352.
 	local mycmakeargs=(
 		-DBUILD_CURVE_TOOLS=$(usex tools)
 		-DBUILD_NOISE_TOOLS=$(usex tools)
 		-DBUILD_PRINT=$(usex cups)
 		-DCUSTOM_CFLAGS=ON
-		-DDONT_USE_INTERNAL_LUA=$(usex system-lua)
+		-DDONT_USE_INTERNAL_LUA=ON
 		-DRAWSPEED_ENABLE_LTO=$(usex lto)
-		-DUSE_AVIF=no
+		-DUSE_AVIF=$(usex avif)
 		-DUSE_CAMERA_SUPPORT=$(usex gphoto2)
 		-DUSE_COLORD=$(usex colord)
 		-DUSE_FLICKR=$(usex flickr)
@@ -128,6 +144,7 @@ src_configure() {
 		-DUSE_OPENJPEG=$(usex jpeg2k)
 		-DUSE_OPENMP=$(usex openmp)
 		-DUSE_WEBP=$(usex webp)
+		-DWANT_JSON_VALIDATION=$(usex test)
 	)
 	CMAKE_BUILD_TYPE="RELWITHDEBINFO"
 	cmake_src_configure
@@ -135,9 +152,10 @@ 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
+	if use nls; then
 		for lang in ${LANGS} ; do
 			if ! use l10n_${lang}; then
 				rm -r "${ED}"/usr/share/locale/${lang/-/_} || die

diff --git a/media-gfx/darktable/files/darktable-3.4.0_jsonschema-automagic.patch b/media-gfx/darktable/files/darktable-3.4.0_jsonschema-automagic.patch
new file mode 100644
index 00000000000..45d61e6af6c
--- /dev/null
+++ b/media-gfx/darktable/files/darktable-3.4.0_jsonschema-automagic.patch
@@ -0,0 +1,25 @@
+jsonschema is only used at install time to validate a file that release
+tarballs already include, treat running it as a late part of tests.
+
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -350,6 +350,9 @@
+ endif()
+ 
+ # we need jsonschema to check noiseprofiles.json
++# In case of Git clones this file is generated at build time, for releases
++# it is included in the tarball.
++if (WANT_JSON_VALIDATION)
+ find_program(jsonschema_BIN jsonschema)
+ if(${jsonschema_BIN} STREQUAL "jsonschema_BIN-NOTFOUND")
+   message(STATUS "Missing jsonschema, problems in noiseprofiles.json might go unnoticed")
+@@ -358,6 +361,9 @@
+   message(STATUS "Found jsonschema")
+   set(VALIDATE_JSON 1)
+ endif(${jsonschema_BIN} STREQUAL "jsonschema_BIN-NOTFOUND")
++else()
++  set(VALIDATE_JSON 0)
++endif()
+ 
+ # we need an XSLT interpreter to generate preferences_gen.h and darktablerc
+ find_program(Xsltproc_BIN xsltproc)

diff --git a/media-gfx/darktable/metadata.xml b/media-gfx/darktable/metadata.xml
index 5661ac61bfd..a46ea727d4c 100644
--- a/media-gfx/darktable/metadata.xml
+++ b/media-gfx/darktable/metadata.xml
@@ -10,6 +10,7 @@
 		<name>Markus Meier</name>
 	</maintainer>
 	<use>
+		<flag name="avif">Support importing and exporting AVIF images</flag>
 		<flag name="flickr">Add support for uploading photos to flickr</flag>
 		<flag name="geolocation">Enable geotagging support</flag>
 		<flag name="gmic">Use the G'MIC image-processing framework (<pkg>media-gfx/gmic</pkg>), e.g. to support Colour LUTs compressed using their compression scheme</flag>


^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-gfx/darktable/, media-gfx/darktable/files/
@ 2020-12-28 14:34 Marek Szuba
  0 siblings, 0 replies; 9+ messages in thread
From: Marek Szuba @ 2020-12-28 14:34 UTC (permalink / raw
  To: gentoo-commits

commit:     09d92df170e7e302400cee44c131de7fe0f9eb73
Author:     Marek Szuba <marecki <AT> gentoo <DOT> org>
AuthorDate: Mon Dec 28 14:33:13 2020 +0000
Commit:     Marek Szuba <marecki <AT> gentoo <DOT> org>
CommitDate: Mon Dec 28 14:34:47 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=09d92df1

media-gfx/darktable-3.4.0: fix build failure on non-SSE systems

Backport of the upstream fix which will be included in the next release.

Closes: https://bugs.gentoo.org/762202
Signed-off-by: Marek Szuba <marecki <AT> gentoo.org>

 media-gfx/darktable/darktable-3.4.0-r1.ebuild      |  2 ++
 .../files/darktable-3.4.0-xmmintrin-sse-only.patch | 30 ++++++++++++++++++++++
 2 files changed, 32 insertions(+)

diff --git a/media-gfx/darktable/darktable-3.4.0-r1.ebuild b/media-gfx/darktable/darktable-3.4.0-r1.ebuild
index 8405fd12551..cb8b5d62769 100644
--- a/media-gfx/darktable/darktable-3.4.0-r1.ebuild
+++ b/media-gfx/darktable/darktable-3.4.0-r1.ebuild
@@ -86,10 +86,12 @@ RDEPEND="${COMMON_DEPEND}
 	kwallet? ( >=kde-frameworks/kwallet-5.34.0-r1 )
 "
 
+# the xmmintrin patch will no longer be needed come 3.4.1
 PATCHES=(
 	"${FILESDIR}"/"${PN}"-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.0-xmmintrin-sse-only.patch
 )
 
 S="${WORKDIR}/${P/_/~}"

diff --git a/media-gfx/darktable/files/darktable-3.4.0-xmmintrin-sse-only.patch b/media-gfx/darktable/files/darktable-3.4.0-xmmintrin-sse-only.patch
new file mode 100644
index 00000000000..2e13ad859c8
--- /dev/null
+++ b/media-gfx/darktable/files/darktable-3.4.0-xmmintrin-sse-only.patch
@@ -0,0 +1,30 @@
+From d10c290fb3b47bbc8fd90d6d1d7935b900c1caf6 Mon Sep 17 00:00:00 2001
+From: Pascal Obry <pascal@obry.net>
+Date: Thu, 24 Dec 2020 16:17:19 +0100
+Subject: [PATCH] guided_filter: include xmmintrin.h only if SSE defined.
+
+Fixes #7428.
+---
+ src/common/guided_filter.h | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/src/common/guided_filter.h b/src/common/guided_filter.h
+index 36be0de04b9..59c8b2af999 100644
+--- a/src/common/guided_filter.h
++++ b/src/common/guided_filter.h
+@@ -18,6 +18,7 @@
+ 
+ #pragma once
+ 
++#if defined(__SSE__)
+ #ifdef __PPC64__
+ #ifdef NO_WARN_X86_INTRINSICS
+ #include <xmmintrin.h>
+@@ -29,6 +30,7 @@
+ #else
+ #include <xmmintrin.h>
+ #endif // __PPC64__
++#endif
+ 
+ #include "common/darktable.h"
+ #include "common/opencl.h"


^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-gfx/darktable/, media-gfx/darktable/files/
@ 2021-06-15 10:51 Marek Szuba
  0 siblings, 0 replies; 9+ messages in thread
From: Marek Szuba @ 2021-06-15 10:51 UTC (permalink / raw
  To: gentoo-commits

commit:     e61b005977552a3f741d0a218f34c6b78ba35918
Author:     Marek Szuba <marecki <AT> gentoo <DOT> org>
AuthorDate: Tue Jun 15 10:49:59 2021 +0000
Commit:     Marek Szuba <marecki <AT> gentoo <DOT> org>
CommitDate: Tue Jun 15 10:50:58 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e61b0059

media-gfx/darktable: drop 2.6.2

Signed-off-by: Marek Szuba <marecki <AT> gentoo.org>

 media-gfx/darktable/Manifest                       |   3 -
 media-gfx/darktable/darktable-2.6.2.ebuild         | 132 ---------------------
 .../files/darktable-2.6.2-exiv2-0.27.patch         |  21 ----
 3 files changed, 156 deletions(-)

diff --git a/media-gfx/darktable/Manifest b/media-gfx/darktable/Manifest
index 03c42c1dac1..303a17befc2 100644
--- a/media-gfx/darktable/Manifest
+++ b/media-gfx/darktable/Manifest
@@ -1,5 +1,2 @@
-DIST darktable-2.6.2-gcc9.patch.tar.xz 25864 BLAKE2B 857803d4c46b47b1e06e962533c231621fa23e72dffae617bc4e078316fc22c5883df404b30e63d7ed2111078d0d7b54bfa3510524c92fa739238904e2ec17f0 SHA512 29b208fa0b04aa11a2c45312763ba471785b2d0f669c07a6092b82adc0284428d7dc9ea8ebae7bd851414f04191e6aafb434fcc127f062ef66d075208c7d49cb
-DIST darktable-2.6.2.tar.xz 3512572 BLAKE2B ee3070ac0f6b6b1c401865801631fb28397f484f30778065b7f899204813530a47ff6e752504b645f59bc29f868e1498e39f5f4e70f8259d8fecf5abc3f15cd6 SHA512 e7a90535747a8615fa2dbd1eb05f81314cc61c689a8a85fda0e2be40208ab0248e6f6ef296bb0894d3d527ed47c6cf6640538029c0c2d58a38d2d5ce10f6f5c0
 DIST darktable-3.4.1.tar.xz 4456192 BLAKE2B 7b573db69cb32496ad79d6636b50d3b2db471376c2486d356e1da2740d48644821265c3249a40603a521d588ef89cee33e31d7a6b216f106625ca2aa3f8bfb68 SHA512 3376c5e2aa52d02fcfc45d9efb1a60a7bee6210dc81e1131f2c163ca2059860f7e3a64b5cfd05117dcaaf8c7810d08a84058a0b64ef6fd24c90bbafde7ca4f6f
-DIST darktable-usermanual-2.6.0.pdf 15623135 BLAKE2B a7a254e49dd57ee03480d52f4506a436210324cc4a2651f3c2fd70ca65cb7aa1735934a5e046ffa662b2aa1f081042d2d1e6ce0f70b6768719c52e2d14c358ce SHA512 e68005ee8706f2342755ce3e4dcd6c2907c1607bc9b750154dceb4b52dcccf50c581ab65212efc8ffb2447f5d828e0fdb61d0471c3d14938e098528e50f32e14
 DIST darktable-usermanual-3.4.0.pdf 16241791 BLAKE2B d6fc232c3eddb5474e36ce1fbc02c3472291e5ebdf2eae09c419215263f615546a79f88ee9d252b387fc5e4f2c9714398deab8de176b3d928b6a17c2878cef56 SHA512 fd154c02d5e0c63d9698b2f80a7439a191f4582b717b2f163923eda40aae1ebe8aeaf1a70efdc423eb8c8269d74fc0e23df8c9c0269ee8f5a357611501c3547e

diff --git a/media-gfx/darktable/darktable-2.6.2.ebuild b/media-gfx/darktable/darktable-2.6.2.ebuild
deleted file mode 100644
index dbca73f7b5f..00000000000
--- a/media-gfx/darktable/darktable-2.6.2.ebuild
+++ /dev/null
@@ -1,132 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit cmake flag-o-matic toolchain-funcs xdg
-
-DOC_PV="2.6.0"
-MY_PV="${PV/_/}"
-MY_P="${P/_/.}"
-
-DESCRIPTION="A virtual lighttable and darkroom for photographers"
-HOMEPAGE="https://www.darktable.org/"
-SRC_URI="https://github.com/darktable-org/${PN}/releases/download/release-${MY_PV}/${MY_P}.tar.xz
-	https://dev.gentoo.org/~asturm/distfiles/${P}-gcc9.patch.tar.xz
-	doc? ( https://github.com/darktable-org/${PN}/releases/download/release-${DOC_PV}/${PN}-usermanual.pdf -> ${PN}-usermanual-${DOC_PV}.pdf )"
-
-LICENSE="GPL-3 CC-BY-3.0"
-SLOT="0"
-KEYWORDS="amd64 x86"
-LANGS=" ca cs de es fi fr hu ja nb nl pl pt-BR ru sl"
-# TODO add lua once dev-lang/lua-5.2 is unmasked
-IUSE="colord cups cpu_flags_x86_sse3 doc flickr geolocation gnome-keyring gphoto2 graphicsmagick jpeg2k kwallet
-nls opencl openmp openexr webp
-${LANGS// / l10n_}"
-
-BDEPEND="
-	dev-util/intltool
-	virtual/pkgconfig
-	nls? ( sys-devel/gettext )
-"
-COMMON_DEPEND="
-	dev-db/sqlite:3
-	dev-libs/json-glib
-	dev-libs/libxml2:2
-	dev-libs/pugixml: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/libpng:0=
-	media-libs/tiff:0
-	net-libs/libsoup:2.4
-	net-misc/curl
-	sys-libs/zlib:=
-	virtual/jpeg:0
-	x11-libs/cairo
-	>=x11-libs/gtk+-3.14:3
-	x11-libs/pango
-	colord? ( x11-libs/colord-gtk:0= )
-	cups? ( net-print/cups )
-	flickr? ( media-libs/flickcurl )
-	geolocation? ( >=sci-geosciences/osm-gps-map-1.1.0 )
-	gnome-keyring? ( >=app-crypt/libsecret-0.18 )
-	gphoto2? ( media-libs/libgphoto2:= )
-	graphicsmagick? ( media-gfx/graphicsmagick )
-	jpeg2k? ( media-libs/openjpeg:2= )
-	opencl? ( virtual/opencl )
-	openexr? ( media-libs/openexr:0= )
-	webp? ( media-libs/libwebp:0= )
-"
-DEPEND="${COMMON_DEPEND}"
-RDEPEND="${COMMON_DEPEND}
-	kwallet? ( >=kde-frameworks/kwallet-5.34.0-r1 )
-"
-
-PATCHES=(
-	"${FILESDIR}"/"${PN}"-find-opencl-header.patch
-	"${WORKDIR}"/"${P}"-gcc9.patch
-	"${FILESDIR}"/"${P}"-exiv2-0.27.patch
-)
-
-S="${WORKDIR}/${P/_/~}"
-
-pkg_pretend() {
-	if use openmp ; then
-		tc-has-openmp || die "Please switch to an openmp compatible compiler"
-	fi
-}
-
-src_prepare() {
-	use cpu_flags_x86_sse3 && append-flags -msse3
-
-	cmake_src_prepare
-}
-
-src_configure() {
-	local mycmakeargs=(
-		-DBUILD_PRINT=$(usex cups)
-		-DCUSTOM_CFLAGS=ON
-		-DTESTBUILD_OPENCL_PROGRAMS=OFF
-		-DUSE_CAMERA_SUPPORT=$(usex gphoto2)
-		-DUSE_COLORD=$(usex colord)
-		-DUSE_FLICKR=$(usex flickr)
-		-DUSE_GRAPHICSMAGICK=$(usex graphicsmagick)
-		-DUSE_KWALLET=$(usex kwallet)
-		-DUSE_LIBSECRET=$(usex gnome-keyring)
-		-DUSE_LUA=OFF
-		-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_WEBP=$(usex webp)
-	)
-	CMAKE_BUILD_TYPE="RELWITHDEBINFO"
-	cmake_src_configure
-}
-
-src_install() {
-	cmake_src_install
-	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 "when updating from the currently stable 1.6 series,"
-	elog "please bear in mind that your edits will be preserved during this process,"
-	elog "but it will not be possible to downgrade from 2.0 to 1.6 any more."
-	echo
-	ewarn "It will not be possible to downgrade!"
-}

diff --git a/media-gfx/darktable/files/darktable-2.6.2-exiv2-0.27.patch b/media-gfx/darktable/files/darktable-2.6.2-exiv2-0.27.patch
deleted file mode 100644
index c0eb59bc639..00000000000
--- a/media-gfx/darktable/files/darktable-2.6.2-exiv2-0.27.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-From 556887d7a973bdf0611fcc57231e107b503d9949 Mon Sep 17 00:00:00 2001
-From: Bertrand Antoine <nexus6b@gmail.com>
-Date: Wed, 22 May 2019 21:49:59 +0200
-Subject: [PATCH] Fix build with exif2 >= 0.27
-
----
- tools/basecurve/exif-wrapper.cpp | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/tools/basecurve/exif-wrapper.cpp b/tools/basecurve/exif-wrapper.cpp
-index 72550721f6..f4d4d46e12 100644
---- a/tools/basecurve/exif-wrapper.cpp
-+++ b/tools/basecurve/exif-wrapper.cpp
-@@ -17,6 +17,7 @@
- */
- 
- #include <exiv2/exif.hpp>
-+#include <exiv2/error.hpp>
- #include <exiv2/image.hpp>
- 
- #include <cstdio>
\ No newline at end of file


^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-gfx/darktable/, media-gfx/darktable/files/
@ 2022-01-12 21:52 Marek Szuba
  0 siblings, 0 replies; 9+ messages in thread
From: Marek Szuba @ 2022-01-12 21:52 UTC (permalink / raw
  To: gentoo-commits

commit:     49c92a7901348324311adeadc254a0e5c41574b1
Author:     Marek Szuba <marecki <AT> gentoo <DOT> org>
AuthorDate: Wed Jan 12 14:45:43 2022 +0000
Commit:     Marek Szuba <marecki <AT> gentoo <DOT> org>
CommitDate: Wed Jan 12 21:52:18 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=49c92a79

media-gfx/darktable: support gamepad and MIDI input devices

Closes: https://bugs.gentoo.org/830635
Signed-off-by: Marek Szuba <marecki <AT> gentoo.org>

 ...e-3.8.0-r1.ebuild => darktable-3.8.0-r2.ebuild} | 10 ++++--
 .../darktable-3.8.0_libs-deps-automagic.patch      | 37 ++++++++++++++++++++++
 media-gfx/darktable/metadata.xml                   |  2 ++
 3 files changed, 46 insertions(+), 3 deletions(-)

diff --git a/media-gfx/darktable/darktable-3.8.0-r1.ebuild b/media-gfx/darktable/darktable-3.8.0-r2.ebuild
similarity index 93%
rename from media-gfx/darktable/darktable-3.8.0-r1.ebuild
rename to media-gfx/darktable/darktable-3.8.0-r2.ebuild
index b2adbe18b7ed..b972b07d4be7 100644
--- a/media-gfx/darktable/darktable-3.8.0-r1.ebuild
+++ b/media-gfx/darktable/darktable-3.8.0-r2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=8
@@ -35,8 +35,7 @@ else
 	LANGS=" de eo es fi fr he hu it ja pl pt-BR sl uk zh-CN"
 fi
 
-IUSE="avif colord cpu_flags_x86_avx cpu_flags_x86_sse3 cups doc flickr geolocation gmic gnome-keyring gphoto2 graphicsmagick jpeg2k kwallet
-	lto lua nls opencl openmp openexr test tools webp
+IUSE="avif colord cpu_flags_x86_avx cpu_flags_x86_sse3 cups doc flickr gamepad geolocation gmic gnome-keyring gphoto2 graphicsmagick jpeg2k kwallet lto lua midi nls opencl openmp openexr test tools webp
 	${LANGS// / l10n_}"
 
 REQUIRED_USE="lua? ( ${LUA_REQUIRED_USE} )"
@@ -68,6 +67,7 @@ DEPEND="dev-db/sqlite:3
 	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 )
@@ -75,6 +75,7 @@ DEPEND="dev-db/sqlite:3
 	graphicsmagick? ( media-gfx/graphicsmagick )
 	jpeg2k? ( media-libs/openjpeg:2= )
 	lua? ( ${LUA_DEPS} )
+	midi? ( media-libs/portmidi )
 	opencl? ( virtual/opencl )
 	openexr? ( media-libs/openexr:= )
 	webp? ( media-libs/libwebp:0= )"
@@ -87,6 +88,7 @@ PATCHES=(
 	"${FILESDIR}"/${PN}-3.4.0_jsonschema-automagic.patch
 	"${FILESDIR}"/${PN}-3.4.1_libxcf-cmake.patch
 	"${FILESDIR}"/${PN}-3.6.1_openexr.patch
+	"${FILESDIR}"/${PN}-3.8.0_libs-deps-automagic.patch
 )
 
 S="${WORKDIR}/${P/_/~}"
@@ -140,6 +142,8 @@ src_configure() {
 		-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)
 	)

diff --git a/media-gfx/darktable/files/darktable-3.8.0_libs-deps-automagic.patch b/media-gfx/darktable/files/darktable-3.8.0_libs-deps-automagic.patch
new file mode 100644
index 000000000000..25b89731a7c8
--- /dev/null
+++ b/media-gfx/darktable/files/darktable-3.8.0_libs-deps-automagic.patch
@@ -0,0 +1,37 @@
+--- a/src/libs/CMakeLists.txt
++++ b/src/libs/CMakeLists.txt
+@@ -83,11 +83,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")
+@@ -96,8 +99,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_INCLUDE_DIRS)
+   add_definitions("-DHAVE_SDL")
+   include_directories(${SDL2_INCLUDE_DIRS})
+@@ -105,6 +110,7 @@
+   add_library(gamepad MODULE "tools/gamepad.c")
+   target_link_libraries(gamepad ${SDL2_LIBRARIES})
+ endif()
++endif()
+ 
+ if(BUILD_BATTERY_INDICATOR)
+   add_library(battery_indicator MODULE "tools/battery_indicator.c")

diff --git a/media-gfx/darktable/metadata.xml b/media-gfx/darktable/metadata.xml
index 7fa51feb6f79..c20058315b0b 100644
--- a/media-gfx/darktable/metadata.xml
+++ b/media-gfx/darktable/metadata.xml
@@ -12,10 +12,12 @@
 	<use>
 		<flag name="avif">Support importing and exporting AVIF images</flag>
 		<flag name="flickr">Add support for uploading photos to flickr</flag>
+		<flag name="gamepad">Support using game controllers as input devices</flag>
 		<flag name="geolocation">Enable geotagging support</flag>
 		<flag name="gmic">Use the G'MIC image-processing framework (<pkg>media-gfx/gmic</pkg>), e.g. to support Colour LUTs compressed using their compression scheme</flag>
 		<flag name="kwallet">Enable encrypted storage of passwords with <pkg>kde-frameworks/kwallet</pkg></flag>
 		<flag name="lto">Enable link-time optimisations in the RawSpeed library</flag>
+		<flag name="midi">Support using MIDI input devices such as Behringer X-Touch Mini, Arturia Beatstep or Korg nanoKONTROL2, as input devices</flag>
 		<flag name="opencl">Enable opencl support</flag>
 		<flag name="tools">Install tools for generating base curves and noise profiles</flag>
 	</use>


^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-gfx/darktable/, media-gfx/darktable/files/
@ 2022-09-20  8:51 Marek Szuba
  0 siblings, 0 replies; 9+ messages in thread
From: Marek Szuba @ 2022-09-20  8:51 UTC (permalink / raw
  To: gentoo-commits

commit:     4a2d1f4f56fd80ae2093e993b3c7a78ded7ae7a1
Author:     Marek Szuba <marecki <AT> gentoo <DOT> org>
AuthorDate: Tue Sep 20 08:50:20 2022 +0000
Commit:     Marek Szuba <marecki <AT> gentoo <DOT> org>
CommitDate: Tue Sep 20 08:51:41 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4a2d1f4f

media-gfx/darktable: add 4.0.1

Signed-off-by: Marek Szuba <marecki <AT> gentoo.org>

 media-gfx/darktable/Manifest                       |   1 +
 media-gfx/darktable/darktable-4.0.1.ebuild         | 176 +++++++++++++++++++++
 .../darktable-4.0.1_libs-deps-automagic.patch      |  37 +++++
 3 files changed, 214 insertions(+)

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")


^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-gfx/darktable/, media-gfx/darktable/files/
@ 2022-12-23 18:07 Markus Meier
  0 siblings, 0 replies; 9+ messages in thread
From: Markus Meier @ 2022-12-23 18:07 UTC (permalink / raw
  To: gentoo-commits

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")


^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-gfx/darktable/, media-gfx/darktable/files/
@ 2024-06-22 13:15 Markus Meier
  0 siblings, 0 replies; 9+ messages in thread
From: Markus Meier @ 2024-06-22 13:15 UTC (permalink / raw
  To: gentoo-commits

commit:     43e93c080de1d56162e5e2c6c89bd4fe05b41384
Author:     Markus Meier <maekke <AT> gentoo <DOT> org>
AuthorDate: Sat Jun 22 13:14:44 2024 +0000
Commit:     Markus Meier <maekke <AT> gentoo <DOT> org>
CommitDate: Sat Jun 22 13:14:44 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=43e93c08

media-gfx/darktable: version bump and avoid automagic heif dependency

Bug: https://bugs.gentoo.org/934008
Signed-off-by: Markus Meier <maekke <AT> gentoo.org>

 media-gfx/darktable/Manifest                       |   1 +
 media-gfx/darktable/darktable-4.8.0.ebuild         | 196 +++++++++++++++++++++
 .../darktable-4.8.0_fix-has-attribute-musl.patch   |  26 +++
 3 files changed, 223 insertions(+)

diff --git a/media-gfx/darktable/Manifest b/media-gfx/darktable/Manifest
index cbf2776ca5d3..e0b1a097eb61 100644
--- a/media-gfx/darktable/Manifest
+++ b/media-gfx/darktable/Manifest
@@ -1,5 +1,6 @@
 DIST darktable-4.6.0.tar.xz 6129572 BLAKE2B 170d874f6a35c4fe5a5555f308bc541885968b8b5535402f8087ad4d47ee93f3d22a78c633f9b3e14584d1925a7dd682a5f3e2bd187ef2f58d0dc2a407b9bb27 SHA512 825a63c9b8bd7420f5c4b53a9281587be92088e1cd617faaf1de2b455503092cc7476872803a1d82c7bf57fcc57f85a40fc4af8ca04367e48719030f08726df7
 DIST darktable-4.6.1.tar.xz 6240188 BLAKE2B cf0055a4dd5f0a246b8de8ca5a29488fd77162cf2e0d7b681235499da39e4dad69dc5e5f7083f67364171d89aa76e940e8338eadee959f6529fb27658f43b75b SHA512 a5bcbdded7cacbc22d82cc982ad1387dc316cf4c0369f6f215abf9f60906024f2236a988dc025c0553bc2d8d7ca9d7bee9eb28b164fa1d9312eef1a084156fb6
+DIST darktable-4.8.0.tar.xz 6256036 BLAKE2B 386276776a68887c7b439bf71ecc2ba9cd4cf54c247073908eae0cafd1d1db390c39937dfd4a2fcbe5164317b6090e29f2d2caa66fb7da47a702ba8988833ed5 SHA512 cb0535274a2862dfb2c8d36149cfced828662e423e04347970c0e2546e4d70ed7ab52cb80b6d21785165a294dee74fc23ba749086aab0a78386936341eb8216a
 DIST darktable-usermanual-4.4.en.pdf 34311705 BLAKE2B 98094ed8288be092ec9c0398bf1719992ce80723aa803e3924e9d28c1c5f2717b120ed618cbec6eebb958be59d15fe107428099efd87926622b5d08110e36b67 SHA512 90e8b8912776b674a436a7e2377d16b0ef374d879ba16501a1c8a0c8407776ef362b747121859884e0aac1d9fc94f3bf0a58bbccdc6fce27cbcaf4cf169d6ef3
 DIST darktable-usermanual-4.4.uk.pdf 33796107 BLAKE2B 060218ec9b7fbcec947506ea9fdf355411d0b1242d41b9ffb7abd8dd991ece29e75c06231251d2ec2701e319e1b1e8134c08603649fe7e933d21b4aef597f7c3 SHA512 f2a6837a05114d4254fade358382be5fabcbd980a3c4fad702b1102176c7e261fd8646aeef1c0328001da8f7cb25d50b06c9f1163a54987985f556c616728bf5
 DIST darktable-usermanual-4.6.en.pdf 26844087 BLAKE2B 5bdb5e012cd8ba7bace733006136b1f9e510214179e84a9cba0664a3c2e4b19828e2cc54addaf5999579b910b592bf0e9cd9796cf89f3a4e6ae369e8187fbfce SHA512 a1d610c42ae3d1ae4d0bf3e827ed9ccae6faeea20cbc03e7c12d74c3c41175bf3f61d9eba43406b9ba86750edf976c1539357ddf774733f566a076418c34f558

diff --git a/media-gfx/darktable/darktable-4.8.0.ebuild b/media-gfx/darktable/darktable-4.8.0.ebuild
new file mode 100644
index 000000000000..a03a32b2d03e
--- /dev/null
+++ b/media-gfx/darktable/darktable-4.8.0.ebuild
@@ -0,0 +1,196 @@
+# Copyright 1999-2024 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/"
+S="${WORKDIR}/${P/_/~}"
+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)
+	DOC_PV="4.6"
+	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 es fi fr hu it ja nl pl pt-BR ru sl sq uk zh-CN zh-TW"
+fi
+
+IUSE="avif colord cpu_flags_x86_avx cpu_flags_x86_sse3 cups doc gamepad geolocation keyring gphoto2 graphicsmagick heif jpeg2k jpegxl 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 )
+	gamepad? ( media-libs/libsdl2 )
+	geolocation? ( >=sci-geosciences/osm-gps-map-1.1.0 )
+	keyring? ( >=app-crypt/libsecret-0.18 )
+	gphoto2? ( media-libs/libgphoto2:= )
+	graphicsmagick? ( media-gfx/graphicsmagick )
+	heif? ( media-libs/libheif:= )
+	jpeg2k? ( media-libs/openjpeg:2= )
+	jpegxl? ( media-libs/libjxl:= )
+	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.4.0_jsonschema-automagic.patch
+	"${FILESDIR}"/${PN}-3.4.1_libxcf-cmake.patch
+	"${FILESDIR}"/${PN}-4.2.1_cmake-musl.patch
+	"${FILESDIR}"/${PN}-4.8.0_fix-has-attribute-musl.patch
+)
+
+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() {
+	CMAKE_BUILD_TYPE="Release"
+	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)
+		-DRAWSPEED_ENABLE_WERROR=OFF
+		-DRAWSPEED_MUSL_SYSTEM=$(usex elibc_musl)
+		-DTESTBUILD_OPENCL_PROGRAMS=OFF
+		-DUSE_AVIF=$(usex avif)
+		-DUSE_CAMERA_SUPPORT=$(usex gphoto2)
+		-DUSE_COLORD=$(usex colord)
+		-DUSE_GMIC=OFF
+		-DUSE_GRAPHICSMAGICK=$(usex graphicsmagick)
+		-DUSE_HEIF=$(usex heif)
+		-DUSE_JXL=$(usex jpegxl)
+		-DUSE_KWALLET=$(usex kwallet)
+		-DUSE_LIBSECRET=$(usex 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
+	if use doc; then
+		dodoc "${DISTDIR}"/${PN}-usermanual-${DOC_PV}.en.pdf
+		use l10n_uk && dodoc "${DISTDIR}"/${PN}-usermanual-${DOC_PV}.uk.pdf
+	fi
+
+	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.8.0_fix-has-attribute-musl.patch b/media-gfx/darktable/files/darktable-4.8.0_fix-has-attribute-musl.patch
new file mode 100644
index 000000000000..f6a474acfd24
--- /dev/null
+++ b/media-gfx/darktable/files/darktable-4.8.0_fix-has-attribute-musl.patch
@@ -0,0 +1,26 @@
+From 7601d97268bf5f63f7e53d9c114fe439dcc46b0d Mon Sep 17 00:00:00 2001
+From: Markus Meier <maekke@gentoo.org>
+Date: Fri, 21 Jun 2024 20:35:33 +0200
+Subject: [PATCH] fix musl build
+
+See https://bugs.gentoo.org/915596
+---
+ src/common/darktable.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/common/darktable.h b/src/common/darktable.h
+index a62fd402fe..4d0d571b2b 100644
+--- a/src/common/darktable.h
++++ b/src/common/darktable.h
+@@ -150,7 +150,7 @@ extern "C" {
+ /* Create cloned functions for various CPU SSE generations */
+ /* See for instructions https://hannes.hauswedell.net/post/2017/12/09/fmv/ */
+ /* TL;DR : use only on SIMD functions containing low-level paralellized/vectorized loops */
+-#if __has_attribute(target_clones) && !defined(_WIN32) && !defined(NATIVE_ARCH) && !defined(__APPLE__)
++#if __has_attribute(target_clones) && !defined(_WIN32) && !defined(NATIVE_ARCH) && !defined(__APPLE__) && defined(__GLIBC__)
+ # if defined(__amd64__) || defined(__amd64) || defined(__x86_64__) || defined(__x86_64)
+ #define __DT_CLONE_TARGETS__ __attribute__((target_clones("default", "sse2", "sse3", "sse4.1", "sse4.2", "popcnt", "avx", "avx2", "avx512f", "fma4")))
+ # elif defined(__PPC64__)
+-- 
+2.44.2
+


^ permalink raw reply related	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2024-06-22 13:15 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-09-20  8:51 [gentoo-commits] repo/gentoo:master commit in: media-gfx/darktable/, media-gfx/darktable/files/ Marek Szuba
  -- strict thread matches above, loose matches on Subject: below --
2024-06-22 13:15 Markus Meier
2022-12-23 18:07 Markus Meier
2022-01-12 21:52 Marek Szuba
2021-06-15 10:51 Marek Szuba
2020-12-28 14:34 Marek Szuba
2020-12-26 23:18 Marek Szuba
2020-06-18 16:30 Marek Szuba
2020-06-18 16:30 Marek Szuba

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox