media-gfx/darktable: add 5.0.1

Closes: https://bugs.gentoo.org/953974
Closes: https://bugs.gentoo.org/953627
Closes: https://bugs.gentoo.org/946892
Signed-off-by: Paul Zander <negril.nx+gentoo@gmail.com>
Signed-off-by: Sam James <sam@gentoo.org>
This commit is contained in:
Paul Zander
2025-04-26 01:32:29 +02:00
committed by Sam James
parent a341f7bcb4
commit 715d8dc1ff
4 changed files with 269 additions and 0 deletions

View File

@@ -1,4 +1,5 @@
DIST darktable-4.8.0.tar.xz 6256036 BLAKE2B 386276776a68887c7b439bf71ecc2ba9cd4cf54c247073908eae0cafd1d1db390c39937dfd4a2fcbe5164317b6090e29f2d2caa66fb7da47a702ba8988833ed5 SHA512 cb0535274a2862dfb2c8d36149cfced828662e423e04347970c0e2546e4d70ed7ab52cb80b6d21785165a294dee74fc23ba749086aab0a78386936341eb8216a
DIST darktable-5.0.0.tar.xz 6928316 BLAKE2B 0fd2f6e73d2a78b09c7d7490885301420ceb93230dfc8372be66c165fa76dd51ae4400cb46561abca0a0f3222ab5749d9f3cdb7e4c9822e4bc8ee75fd616da7d SHA512 84ccf8e30911d2d8c3d2fc2e5bd51962701a1d755ff3859da3e630d0d405d00c03ae8a3968ede33ec53a3de5f8b185ffcb9063355f09149573ce01ede15039de
DIST darktable-5.0.1.tar.xz 7247072 BLAKE2B 797fdfc6535807f23990dd846d3199163dc82e6c05e7796ecf4d3888b809b909291477c2b2f38d131b354188fa5d7049231b99802f3d12f0a458bac1e9555585 SHA512 ce1550221f8806979e073be61f2e96e7fa20b38f37a673868f938e94e37000da8f27c7dd8de04b94635d2252a4d991481f7c8a9af2182285032fb52e6cf25c53
DIST darktable-usermanual-4.6.en.pdf 26844087 BLAKE2B 5bdb5e012cd8ba7bace733006136b1f9e510214179e84a9cba0664a3c2e4b19828e2cc54addaf5999579b910b592bf0e9cd9796cf89f3a4e6ae369e8187fbfce SHA512 a1d610c42ae3d1ae4d0bf3e827ed9ccae6faeea20cbc03e7c12d74c3c41175bf3f61d9eba43406b9ba86750edf976c1539357ddf774733f566a076418c34f558
DIST darktable-usermanual-4.6.uk.pdf 27013345 BLAKE2B 4c0da0038576e8ea97da88a4481e1afdf4e5b5df6b8a52475d18b488ac10066db4ef679681a38a194dd84771e340f58beea0450ec60726abd19d600e73fc40f1 SHA512 6e2f036e3f845791aa8b6eb565230136bfb6ae7f9b1ee56a9201cd25bb09391fd2ec45ba7fa1ddd11b4c193ab6b097fae32107af6c11b6cd6eeada60b002d4b3

View File

@@ -0,0 +1,195 @@
# Copyright 1999-2025 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 ja nl pt-BR 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 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 llvm-core/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 dev-lang/rust) which
# by default pull in llvm-core/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
sys-devel/gettext
virtual/pkgconfig
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-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}-5.0.1-no-Werror.patch"
"${FILESDIR}/${PN}-5.0.1-fix-c-linkage-gcc-15.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 # honor user choice
-DRAWSPEED_MARCH= # honor user choice #946892
-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_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
for lang in ${LANGS} ; do
if ! use l10n_${lang}; then
rm -r "${ED}"/usr/share/locale/${lang/-/_} || die
fi
done
}
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
}

View File

@@ -0,0 +1,46 @@
From 70749107b9f2a7078982fecc998f8d96d1cc8f19 Mon Sep 17 00:00:00 2001
From: Paul Zander <negril.nx@gmail.com>
Date: Sat, 26 Apr 2025 01:21:08 +0200
Subject: [PATCH] fix c linkage gcc-15
Bug: https://bugs.gentoo.org/953974
Signed-off-by: Paul Zander <negril.nx@gmail.com>
diff --git a/src/imageio/format/imageio_format_api.h b/src/imageio/format/imageio_format_api.h
index 85d4290..8af9c81 100644
--- a/src/imageio/format/imageio_format_api.h
+++ b/src/imageio/format/imageio_format_api.h
@@ -20,10 +20,6 @@
#ifdef FULL_API_H
-#ifdef __cplusplus
-extern "C" {
-#endif
-
#include <stddef.h>
#include <stdint.h>
@@ -33,6 +29,8 @@ struct dt_dev_pixelpipe_t;
#include "common/colorspaces.h" // because forward declaring enums doesn't work in C++ :(
+G_BEGIN_DECLS
+
/* early definition of modules to do type checking */
#pragma GCC visibility push(default)
@@ -96,9 +94,7 @@ OPTIONAL(int, read_image, struct dt_imageio_module_data_t *data, uint8_t *out);
#pragma GCC visibility pop
-#ifdef __cplusplus
-}
-#endif
+G_END_DECLS
#endif // FULL_API_H
--
2.49.0

View File

@@ -0,0 +1,27 @@
From 3640422089efa4323b6150d05c089ed444a24e3b Mon Sep 17 00:00:00 2001
From: Paul Zander <negril.nx@gmail.com>
Date: Sat, 26 Apr 2025 01:18:46 +0200
Subject: [PATCH] no Werror
Signed-off-by: Paul Zander <negril.nx@gmail.com>
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 6c4e4e4..6c36fd1 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -787,9 +787,9 @@ find_package(Pugixml 1.5 REQUIRED)
include_directories(SYSTEM ${Pugixml_INCLUDE_DIRS})
list(APPEND LIBS ${Pugixml_LIBRARIES})
-if(NOT SOURCE_PACKAGE)
- add_definitions(-Werror -Wfatal-errors )
-endif()
+# if(NOT SOURCE_PACKAGE)
+# add_definitions(-Werror -Wfatal-errors )
+# endif()
if(CMAKE_CXX_COMPILER_ID STREQUAL "AppleClang" OR CMAKE_CXX_COMPILER_ID STREQUAL "Clang")
# do not error out on "loop not vectorized" clang OpenMP warnings
--
2.49.0