diff options
| -rw-r--r-- | media-libs/glycin-loaders/Manifest | 2 | ||||
| -rw-r--r-- | media-libs/glycin-loaders/glycin-loaders-2.0.7.ebuild | 111 |
2 files changed, 113 insertions, 0 deletions
diff --git a/media-libs/glycin-loaders/Manifest b/media-libs/glycin-loaders/Manifest index f5b9e885291c..3b002413c4d7 100644 --- a/media-libs/glycin-loaders/Manifest +++ b/media-libs/glycin-loaders/Manifest @@ -7,4 +7,6 @@ DIST glycin-2.0.5-crates.tar.xz 27561200 BLAKE2B 6a333ef0d046972682acc3dc3211687 DIST glycin-2.0.5.tar.bz2 151345 BLAKE2B 2a534907a460f6b1c9622135d92879d73b5549d6e1dde0daa98635f9c7561216f4d610e743ada1de4364117e26dc84bae7ee94697108cb7af391ad6de81a3dfe SHA512 9a049e5a48eb8c5a3a9d76c706e3521f1e1c5cf6cdc650eef0e4e9a12134d9dee0aecf368b24dac278352c590376fb077f10fc64fa78d9beed2c910c7b082ec0 DIST glycin-2.0.6-crates.tar.xz 27561200 BLAKE2B 6a333ef0d046972682acc3dc3211687894112d621d98cda67eab7b5dd6b370282abe0c8b30d37f1c21afc59d3c43ebc1b02405aeac0286870c323573dc16631c SHA512 9ac910493bd9359ea98fbecf37964c810073cecabc0e2c33b98d79eb4ef3186305c7fb94d054196cf697d4717836625a39dcd0e8bd6f4f0a3752439c64d9e030 DIST glycin-2.0.6.tar.bz2 151430 BLAKE2B 483d4e2615bf5949362a318eaddfc62740e4d71605f3e3969f9d486b7d266a4f05b4f31a3f9653d721231a5d7928e2d4894aa25d370aff0f4f4c392502955984 SHA512 e48b6398be424075c27e6c6857491364de8cc1b1efd3269654f493115b56bdc98a6ec11e718d4aa64c02c80257e1561b717245ac60e7eac1c6ffc49edbbc9292 +DIST glycin-2.0.7-crates.tar.xz 27561200 BLAKE2B 6a333ef0d046972682acc3dc3211687894112d621d98cda67eab7b5dd6b370282abe0c8b30d37f1c21afc59d3c43ebc1b02405aeac0286870c323573dc16631c SHA512 9ac910493bd9359ea98fbecf37964c810073cecabc0e2c33b98d79eb4ef3186305c7fb94d054196cf697d4717836625a39dcd0e8bd6f4f0a3752439c64d9e030 +DIST glycin-2.0.7.tar.bz2 151441 BLAKE2B b195f1a2745011b007295f5cc3fd7d667742857ec7ec608b3cc049ea634ba9197d716ab87d21ff43de4f3f3fb0202edcfefff26f66d9a8d099254280cf061f9c SHA512 81963a4d2ce858b43e2f9a9021304be7c7bf4befd6754d2a52f5cde77008ec1000db03d56de9fe7b8ebc6c7053a03ebf83843b3f0a9aa6051e63a5517bc20baf DIST glycin-test-images-b148bcf70847d6f126a8e83e27e1c59d2e474adf.tar.bz2 8260055 BLAKE2B 5e1f802283e4b7212b7498ef9093bd5ad7a2bb66f8585aacff0a73d9a15b9fe7467bc06508cc0c910285d8a158287ed0c62fe793d78e8355613dd50f0e2e00c3 SHA512 0839108bcc60927b83f7cc821a6834781712d4e0489af30a3a0b1578da48c35b371e312cf11d39aefd9e3a2e051f005ee6eabda1beaa718d4ff77960def4aa71 diff --git a/media-libs/glycin-loaders/glycin-loaders-2.0.7.ebuild b/media-libs/glycin-loaders/glycin-loaders-2.0.7.ebuild new file mode 100644 index 000000000000..1e775dabc229 --- /dev/null +++ b/media-libs/glycin-loaders/glycin-loaders-2.0.7.ebuild @@ -0,0 +1,111 @@ +# Copyright 2024-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +CRATES=" +" +RUST_MIN_VER=1.85.0 + +inherit cargo meson + +MY_PV=${PV/_/.} +MY_P=glycin-${MY_PV} +TEST_IMAGE_COMMIT=b148bcf70847d6f126a8e83e27e1c59d2e474adf + +DESCRIPTION="Loaders for glycin clients (glycin crate or libglycin)" +HOMEPAGE="https://gitlab.gnome.org/GNOME/glycin/" +# upstream release tarballs are useless, as upstream is deliberately +# stripping glycin crate from them +SRC_URI=" + https://gitlab.gnome.org/GNOME/glycin/-/archive/${MY_PV}/${MY_P}.tar.bz2 + https://github.com/gentoo-crate-dist/glycin/releases/download/${MY_PV}/${MY_P}-crates.tar.xz + test? ( + https://gitlab.gnome.org/sophie-h/test-images/-/archive/${TEST_IMAGE_COMMIT}/test-images-${TEST_IMAGE_COMMIT}.tar.bz2 + -> glycin-test-images-${TEST_IMAGE_COMMIT}.tar.bz2 + ) +" +S=${WORKDIR}/${MY_P} + +LICENSE="|| ( LGPL-2.1+ MPL-2.0 )" +# Dependent crate licenses +LICENSE+=" + Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD-2 BSD GPL-3+ IJG ISC + LGPL-3+ MIT Unicode-3.0 + || ( LGPL-2.1+ MPL-2.0 ) +" +SLOT="2" +KEYWORDS="~amd64 ~arm64" +IUSE="heif jpeg2k jpegxl svg test" +REQUIRED_USE="test? ( heif jpegxl )" +RESTRICT="!test? ( test )" + +RDEPEND=" + !>=media-libs/glycin-loaders-2:0 + >=dev-libs/glib-2.68.0:2 + >=sys-libs/libseccomp-2.5.0 + heif? ( >=media-libs/libheif-1.17.0:= ) + jpegxl? ( >=media-libs/libjxl-0.11.0:= ) + svg? ( + >=gnome-base/librsvg-2.52.0:2 + >=x11-libs/cairo-1.17.0 + ) +" +DEPEND=" + ${RDEPEND} + test? ( + >=gui-libs/gtk-4.16.0:4 + >=media-libs/lcms-2.14:2 + ) +" +BDEPEND=" + test? ( + sys-apps/bubblewrap + sys-apps/dbus + ) +" + +QA_FLAGS_IGNORED="usr/libexec/glycin-loaders/.*" + +src_unpack() { + cargo_src_unpack + + if use test; then + mv "test-images-${TEST_IMAGE_COMMIT}"/* \ + "${S}/tests/test-images/" || die + fi +} + +src_configure() { + local formats=( + $(usev heif glycin-heif) + $(usev jpeg2k glycin-jpeg2000) + $(usev jpegxl glycin-jxl) + $(usev svg glycin-svg) + glycin-image-rs + ) + local formats_s=${formats[*]} + local emesonargs=( + -Dprofile=$(usex debug dev release) + -Dglycin-loaders=true + -Dloaders="${formats_s// /,}" + -Dtests=$(usex test true false) + -Dlibglycin=false + -Dlibglycin-gtk4=false + -Dglycin-thumbnailer=false + + # TODO: figure out why it fails + # https://gitlab.gnome.org/GNOME/glycin/-/issues/167 + -Dtest_skip_ext=heic + ) + + meson_src_configure + ln -s "${CARGO_HOME}" "${BUILD_DIR}/cargo-home" || die +} + +src_test() { + # tests write to /proc/*/uid_map + # apparently, "addpredict /" in Portage breaks it + local -x SANDBOX_ON=0 + meson_src_test +} |
