diff options
author | Markus Meier <maekke@gentoo.org> | 2023-07-02 10:14:02 +0200 |
---|---|---|
committer | Markus Meier <maekke@gentoo.org> | 2023-07-02 10:14:02 +0200 |
commit | b43574c6163ec87e8db6c3d9c218a01370b7b365 (patch) | |
tree | 5992e53c165a8c2d9f78ec7446fde4ddf0721c13 | |
parent | media-gfx/darktable: sync with main tree (diff) | |
download | maekke-b43574c6163ec87e8db6c3d9c218a01370b7b365.tar.gz maekke-b43574c6163ec87e8db6c3d9c218a01370b7b365.tar.bz2 maekke-b43574c6163ec87e8db6c3d9c218a01370b7b365.zip |
media-gfx/darktable: sync with main tree
Signed-off-by: Markus Meier <maekke@gentoo.org>
-rw-r--r-- | media-gfx/darktable/Manifest | 4 | ||||
-rw-r--r-- | media-gfx/darktable/darktable-4.4.0-r1.ebuild | 190 |
2 files changed, 194 insertions, 0 deletions
diff --git a/media-gfx/darktable/Manifest b/media-gfx/darktable/Manifest index f2e3257..0d9f9d9 100644 --- a/media-gfx/darktable/Manifest +++ b/media-gfx/darktable/Manifest @@ -4,7 +4,11 @@ AUX darktable-3.4.1_libxcf-cmake.patch 788 BLAKE2B b6ecb84de804b0bf16f907f825d93 AUX darktable-4.2.1-exiv2-0.28.patch 9139 BLAKE2B 82eb190e1fe9d93af8bce40fdfd7647e69bf620915d5d1cc76faefda17577f7480c7c5b9649b2f5ce7efb86b274b19c426393e2c943383637fe8c18a9ceac372 SHA512 dcdfdf9d62983428c4b0bfc87a747a437cd07cc640cba948309095680c077f118da1a4208362b76eba14044ad0fd8dabbb3715335d30e35e2f84a171ca275c6e AUX darktable-4.2.1_cmake-musl.patch 796 BLAKE2B 2e26cc969f01dc948f4f92f42c768a28bb879b3592d98dc1de0c3b5b7335a2985fbb5659c58b421fbca896b1f2585a5cb993b5cdf3ee6f87d9834afe3fd1a23a SHA512 82c7a4f6d6112fa024503a99e05d3050922b120821c93922ae846f9da6b02cd6f2e27315448c20ed1032c5526b85cb6d01dd6eec5109db1af3f8e92e4818ea06 DIST darktable-4.2.1.tar.xz 6112480 BLAKE2B bf6f60b1f01b16c7cc4ffae7fbb46c7d2ce465d6fafd507564b8dd20aeadb3cd1116e434214d07c9c53ca621228ea6f7ce75a01650d04d596d1e246789bae752 SHA512 05423c16ff813c10fa2bedbb22bbc886f2cff81aad2493c720f4b2fe32ba89b55c428287cd1c4b24cc98121d441375752015f88c30f796ea46db18461e212d5d +DIST darktable-4.4.0.tar.xz 5794168 BLAKE2B 39bc8225175d7e5ea54924d50c9083752ae32bff82bb9630ed774c7f6e9254a61e6e5d912287825d0922d7c58a6504c261fb8d13ba73f4c64eaae11cc26c18c4 SHA512 61a0280b78c6862cc1cac009ee41a20077b17f75eede28c3598ce01951dd122fd65e2baf891ae69be9202736d139bb8cf53ad71afd87ab112e66ce389d635861 DIST darktable-usermanual-4.2.en.pdf 26559897 BLAKE2B 144b7e76567e92138c7e75c996a63f818dce7eb4f485f0d988d184874d2ee2a72e89efae1d0fb16bc25aac831da040ffbd4a7bbda08d8c750169f06668a98f88 SHA512 a23e9544026d9aff7b92b3ca874217ebc12e1dc876e9d7873e0e7e61a53090179a1377cc4409f2bb8f6d005133e4501ce444c1533c8d66f04b7cc0c5fc5a3531 DIST darktable-usermanual-4.2.uk.pdf 26454596 BLAKE2B e497c87903f85ae7ebb9b9624124ba19936869db6d19d229182e5d249938f5d9461435ac7ae15f9a2fd64b367aa712ac1de5f32d053cc08a99a3bd672e8cac0b SHA512 ba37d680f29d2d79f517360a1b43d88b49cf5810b638aa5bc6eeeb8016bd1634801119c2d283473bafc72920db2525b122815fa475bac0c41a6cc8d2ac579a61 +DIST darktable-usermanual-4.4.en.pdf 34311705 BLAKE2B 98094ed8288be092ec9c0398bf1719992ce80723aa803e3924e9d28c1c5f2717b120ed618cbec6eebb958be59d15fe107428099efd87926622b5d08110e36b67 SHA512 90e8b8912776b674a436a7e2377d16b0ef374d879ba16501a1c8a0c8407776ef362b747121859884e0aac1d9fc94f3bf0a58bbccdc6fce27cbcaf4cf169d6ef3 +DIST darktable-usermanual-4.4.uk.pdf 33796107 BLAKE2B 060218ec9b7fbcec947506ea9fdf355411d0b1242d41b9ffb7abd8dd991ece29e75c06231251d2ec2701e319e1b1e8134c08603649fe7e933d21b4aef597f7c3 SHA512 f2a6837a05114d4254fade358382be5fabcbd980a3c4fad702b1102176c7e261fd8646aeef1c0328001da8f7cb25d50b06c9f1163a54987985f556c616728bf5 EBUILD darktable-4.2.1.ebuild 5867 BLAKE2B ef5d2906890ce74564a1d7f7968849f6975e3f57e62db9fccbe9825a7daf2982e6ed63a625630f67b56a74fce25f0fb90df41464e7a4d49a78410806a18265a6 SHA512 413b43340abce057c736ee124cc7c4c6344a2db48d2a204669ad3813eb8229f288e8d4c8cd5cf87a35d0024df166643eb417f17514fc7b91f28d04b265dd75f4 +EBUILD darktable-4.4.0-r1.ebuild 5648 BLAKE2B 118564defe98548f162d8b98be733b20b77cccfd9096ebe62157b7a549b5e4a1c4cdd61620bc25b4e09f91b99109b75bd119f067a0a88f8db3ad57c44255273d SHA512 45de7ac4f3df85fb40d5298ad497dfd301a86b7a1befd210a2edde116f787cd8444929171c967aa278a80daa428e845b5117794e8d708b31507e65163aafeac1 MISC metadata.xml 1378 BLAKE2B 7373550c5362c32832830bd94dbd712f963246805af5119214a43cfe4dfb1aac9e7bb03d4af6f4f1dfae3cc44e09d6ba8baff53d67b5ddd96115c460b5e19ad9 SHA512 ffdc1ff8eb068372b1f24691bb0832d5a845e49b41adf211dec1c2faf0d1a573a0e4c62c38e97758a8f87de15569ce6f3cd2c7a768c95eb0d2b166e30b20ae3a diff --git a/media-gfx/darktable/darktable-4.4.0-r1.ebuild b/media-gfx/darktable/darktable-4.4.0-r1.ebuild new file mode 100644 index 0000000..79cd8fb --- /dev/null +++ b/media-gfx/darktable/darktable-4.4.0-r1.ebuild @@ -0,0 +1,190 @@ +# Copyright 1999-2023 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 fr he hu ja pl 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 gmic 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 ) + gamepad? ( media-libs/libsdl2 ) + geolocation? ( >=sci-geosciences/osm-gps-map-1.1.0 ) + gmic? ( media-gfx/gmic ) + 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.4.0_jsonschema-automagic.patch + "${FILESDIR}"/${PN}-3.4.1_libxcf-cmake.patch + "${FILESDIR}"/${PN}-4.2.1_cmake-musl.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) + -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=$(usex gmic) + -DUSE_GRAPHICSMAGICK=$(usex graphicsmagick) + -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 + 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 +} |