summaryrefslogtreecommitdiff
path: root/app-text/mupdf
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2023-02-26 09:56:20 +0000
committerV3n3RiX <venerix@koprulu.sector>2023-02-26 09:56:20 +0000
commit9b55c1bd600df28af7b9f6ee044b714873e19b49 (patch)
tree9c6d86e5e38b0aed45d07dc73907e9f818783a4d /app-text/mupdf
parent61044571b76d87a2eec42d36c9b7addf3e66e000 (diff)
gentoo auto-resync : 26:02:2023 - 09:56:20
Diffstat (limited to 'app-text/mupdf')
-rw-r--r--app-text/mupdf/Manifest2
-rw-r--r--app-text/mupdf/files/mupdf-1.21.1-fix-url-processing.patch25
-rw-r--r--app-text/mupdf/mupdf-1.21.1-r1.ebuild167
3 files changed, 194 insertions, 0 deletions
diff --git a/app-text/mupdf/Manifest b/app-text/mupdf/Manifest
index e1dca52b3867..46c765dd33c4 100644
--- a/app-text/mupdf/Manifest
+++ b/app-text/mupdf/Manifest
@@ -7,6 +7,7 @@ AUX mupdf-1.19.0-darwin.patch 1056 BLAKE2B ae532c2d68842c3a1bb424c707a51a5ed56a7
AUX mupdf-1.20.0-lcms2.patch 2512 BLAKE2B b641519f069c43ef2e9efdf0e18418e663e3fa39d1fb2a0a4b759f8af0412e3a63f212961d80430de86a8ea3d8228ece07e2a04cbe08ccbe330afcbad18e3527 SHA512 d25a843286f9376f17cc73dd974835eaa7be7a0a7b26fab338ae5b3cf54588f476538c73e3053edc2367bd5856eb1af0ebbffce426f7da287784dcb0ee3fc684
AUX mupdf-1.21.0-add-desktop-pc-files.patch 845 BLAKE2B 8fa08810dd0b797af517c7932a2b81c080721155f607970664ca68a8eb4ec53bcfdda417790bf002aff1b1e1e8257d67c3a2e6bf6d500ee50cc03a7f440b60c6 SHA512 96835698141898a9509321c6125d5bfce1b31d3a0329d3c2be55d9026cff65204112a8ac0774ece1ac1ca7a1ce3dc534437aca1a76eb7716317b2c7e648e549f
AUX mupdf-1.21.1-fix-aliasing-violation.patch 2651 BLAKE2B 649b9cde7eefdf16ba5a57e40128dc57710d63a04281bae4f26f2ee9dc19933628826d52ff4aee95fd7e6141b35c59efe883439b852758bc5075e30a89507564 SHA512 deccc9193d9266a9add6e1d80eb289f4576e12703d8a0af640ebdbfc698cbb3a15ac9da3b752b1f6beb4ad901aa3bfd43d08d34738b5c7545182bf20200ecaac
+AUX mupdf-1.21.1-fix-url-processing.patch 823 BLAKE2B e813dddb4691429f382010a71aefe648b094896290295d8f6366832db1044f2cd0813096dcf0096fe9a05f3dbf8009745118455638d7d8db2c11d65721d14029 SHA512 dcdadf8134fa27e7b089ccd26da3cb43856ec6aa0a30828b5e6f7cd76909ff30028a31877e77ba67f59060b0c648a8842daf295d2eae855e2876372c41210c03
AUX mupdf-1.21.1-no-drm.patch 586 BLAKE2B dad2f0544153830cd8fff32a667edc229e5f149f4a474af065bb3e4b47d0508125077810a652b63837cafa5c441223eb2993a51c8be25809793aa2c098018947 SHA512 6149a8527a3025cb3b9ddc97db8d2638a4f0653b55fd78a86a97aefd2bf44d8b35c42e31c79558d8e8ec396427577ddb792e85e4055b4e4c8d704ba510378579
DIST mupdf-1.19.1-source.tar.xz 64884172 BLAKE2B a0dc3783c70cee1b7eb48d1658eb48186e35a42513aa9e98f7155bb82ed771ed0c5d5032013d09d93cdca4f49deda65553fe0e1af7645893722dafa855b2c958 SHA512 d6bc5b6adb6a418de50021864f4b3a75da653fa534eeedbfe9875cb202efeb13efdec66b4d108ca8fa6b0dc76733468b214e5fdf331bebc35fc6f722203fa3f7
DIST mupdf-1.20.0-source.tar.gz 88455853 BLAKE2B 686d8b02972fc6cb7fa4541e4f0561c11e616f800decd20a79f23b577977785633bd3e17e2007f621db97dab6db1fcf500ac8e283984fbe675a25e7a4301b75b SHA512 6837299c589ece9cc443b027433fa3eee545f5155aeb6359b7a43da239d2e99195e9ae3950ddec6cb6ebae77bc877573c6f89a90754c58723d7e87d9739ed1f4
@@ -17,5 +18,6 @@ EBUILD mupdf-1.19.1.ebuild 4490 BLAKE2B cf556d6ba654118ccd0316fb75f2f970cb96990f
EBUILD mupdf-1.20.0.ebuild 4750 BLAKE2B 7f6c496689aa27a9652b025f06825a7acfe7f642265f479fcf49aa1a4b71bcf4056ec24bbb642d4a667c13686a89a0eeab619fe7881fb9ad50391b4600add06f SHA512 50d58af35937363f58d129931374e4b17ca0864ea9064a14e09ebe40122aba5eb999d139b824440e082f8420181108e641c90eccb0fd1da97946ec7a52489e80
EBUILD mupdf-1.20.3.ebuild 4780 BLAKE2B eb2f4aaf2aa01d067ecc81bc71a4ddb97addf585fa79fca9e49f10d7070c83f2755be77cca15fa81cc71e386670077fb9dc431872b76cc114453084444e22d5e SHA512 d37b11930ab067bb85604cb11c87eda4cca371368b286f49beb5d551d0808677eeb5208ed17b77bc3401ac6c648e5eee4c070d8dc9288acfaf9ea3d869b27053
EBUILD mupdf-1.21.0.ebuild 4744 BLAKE2B 1eedbb5b4aeecd9718c820e40ec40aa517d08b29d7cdca2c7a397824ecbf21a3dfe70cd6aff0afec2a1b5beb4baa7f4eb1703d1ab193be1430e3a226329ddbd6 SHA512 253804764cb8465bfa0b5f534d53e9e561e5ea5c2205cb5b05a1e401d412a05eb12ae0920de348677ad00c73194e372204e5b586d53c92ced42065477bc5e8bf
+EBUILD mupdf-1.21.1-r1.ebuild 4987 BLAKE2B 2af1aa2bbd8d3ff5635fe6d1fda63a3ea2ac8ec8b184781ee77adbd8520c296b52af06b9d3d03cf01727171bf8b52884112598a9135f46cb2b605696454813e1 SHA512 d42b54f055ff0e8fb68ff69174eed381873c48fe0eea43e2835b749ff5c511f125992842527ef6f0ef856943f427f013e13975f49b8924c6e2b85d95cccf73ca
EBUILD mupdf-1.21.1.ebuild 4891 BLAKE2B e3bd33a65d8d488e0b074e0858840bb22f932f51a1da55db4207a85c4af64ca349fac9ff0e5c0fc48d4adae87d98c04213ea623413e983cbd869d04d2764b5f1 SHA512 b244163c4d284b19a60975ed1dd12e9c15124c5ca6f000fdc9fa2474d4a8f8e14e2953938046b93c0fa7728bb08f4f4765153b037f04e25a77b9296167f49b02
MISC metadata.xml 497 BLAKE2B 35e16ef688aa8b046f3e8ceaa7399da31379ba50b2cbc36d842696d1589aeea5a55eede13d79188f08ae8ff411c16385128633a1fbdaba04ee115158ac7e529b SHA512 225727e22fe2756480f3d502f49a62abbd0fe09d6266c1e00c09b04c2b5da181fc46bb06b19020290fa857b1feb0d557e6a77084f6269b5e0fdfec593cd46709
diff --git a/app-text/mupdf/files/mupdf-1.21.1-fix-url-processing.patch b/app-text/mupdf/files/mupdf-1.21.1-fix-url-processing.patch
new file mode 100644
index 000000000000..bebdf3909e81
--- /dev/null
+++ b/app-text/mupdf/files/mupdf-1.21.1-fix-url-processing.patch
@@ -0,0 +1,25 @@
+From 37757db262425d793b17b63821d9014d3655e50a Mon Sep 17 00:00:00 2001
+From: Sebastian Rasmussen <sebras@gmail.com>
+Date: Thu, 1 Dec 2022 00:04:40 +0100
+Subject: [PATCH] gl: Use posix_spawnp() in order to search PATH for binaries.
+
+---
+ platform/gl/gl-main.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/platform/gl/gl-main.c b/platform/gl/gl-main.c
+index d5ae69c95..271ac43a6 100644
+--- a/platform/gl/gl-main.c
++++ b/platform/gl/gl-main.c
+@@ -122,7 +122,7 @@ static void open_browser(const char *uri)
+ argv[0] = (char*) browser;
+ argv[1] = (char*) uri;
+ argv[2] = NULL;
+- err = posix_spawn(&pid, browser, NULL, NULL, argv, environ);
++ err = posix_spawnp(&pid, browser, NULL, NULL, argv, environ);
+ if (err)
+ fz_warn(ctx, "cannot spawn browser '%s': %s", browser, strerror(err));
+
+--
+2.39.1
+
diff --git a/app-text/mupdf/mupdf-1.21.1-r1.ebuild b/app-text/mupdf/mupdf-1.21.1-r1.ebuild
new file mode 100644
index 000000000000..590791e7653f
--- /dev/null
+++ b/app-text/mupdf/mupdf-1.21.1-r1.ebuild
@@ -0,0 +1,167 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Please check upstream git regularly for relevant security-related commits
+# to backport.
+
+inherit desktop flag-o-matic toolchain-funcs xdg
+
+DESCRIPTION="A lightweight PDF viewer and toolkit written in portable C"
+HOMEPAGE="https://mupdf.com/ https://git.ghostscript.com/?p=mupdf.git"
+SRC_URI="https://mupdf.com/downloads/archive/${P}-source.tar.gz"
+S="${WORKDIR}"/${P}-source
+
+LICENSE="AGPL-3"
+SLOT="0/${PV}"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~x86"
+IUSE="+drm +javascript opengl ssl X"
+REQUIRED_USE="opengl? ( javascript )"
+
+# Although we use the bundled, patched version of freeglut in mupdf (because of
+# bug #653298), the best way to ensure that its dependencies are present is to
+# install system's freeglut.
+RDEPEND="
+ dev-libs/gumbo
+ media-libs/freetype:2
+ media-libs/harfbuzz:=[truetype]
+ media-libs/jbig2dec:=
+ media-libs/libpng:0=
+ >=media-libs/openjpeg-2.1:2=
+ >=media-libs/libjpeg-turbo-1.5.3-r2:0=
+ javascript? ( >=dev-lang/mujs-1.2.0:= )
+ opengl? ( >=media-libs/freeglut-3.0.0 )
+ ssl? ( >=dev-libs/openssl-1.1:0= )
+ sys-libs/zlib
+ X? (
+ x11-libs/libX11
+ x11-libs/libXext
+ )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="X? ( x11-base/xorg-proto )
+ virtual/pkgconfig"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.15-CFLAGS.patch
+ "${FILESDIR}"/${PN}-1.19.0-Makefile.patch
+ "${FILESDIR}"/${PN}-1.21.0-add-desktop-pc-files.patch
+ "${FILESDIR}"/${PN}-1.19.0-darwin.patch
+ # See bugs #662352
+ "${FILESDIR}"/${PN}-1.15-openssl-x11.patch
+ # General cross fixes from Debian (refreshed)
+ "${FILESDIR}"/${PN}-1.19.0-cross-fixes.patch
+ "${FILESDIR}"/${P}-no-drm.patch
+ "${FILESDIR}"/${P}-fix-aliasing-violation.patch
+ # See bug 893604
+ # Fixed in upcoming release
+ "${FILESDIR}"/${P}-fix-url-processing.patch
+)
+
+src_prepare() {
+ default
+
+ use hppa && append-cflags -ffunction-sections
+
+ use drm && append-cflags -DGENTOO_MUPDF_DRM
+
+ append-cflags "-DFZ_ENABLE_JS=$(usex javascript 1 0)"
+
+ sed -e "1iOS = Linux" \
+ -e "1iCC = $(tc-getCC)" \
+ -e "1iCXX = $(tc-getCXX)" \
+ -e "1iLD = $(tc-getLD)" \
+ -e "1iAR = $(tc-getAR)" \
+ -e "1iverbose = yes" \
+ -e "1ibuild = debug" \
+ -i Makerules || die "Failed adding build variables to Makerules in src_prepare()"
+
+ # Adjust MuPDF version in .pc file created by the
+ # mupdf-1.10a-add-desktop-pc-xpm-files.patch file
+ sed -e "s/Version: \(.*\)/Version: ${PV}/" \
+ -i platform/debian/${PN}.pc || die "Failed substituting version in ${PN}.pc"
+}
+
+_emake() {
+ # When HAVE_OBJCOPY is yes, we end up with a lot of QA warnings.
+ #
+ # Bundled libs
+ # * General
+ # Note that USE_SYSTEM_LIBS=yes is a metaoption which will set to upstream's
+ # recommendations. It does not mean "always use system libs".
+ # See [0] below for what it means in a specific version.
+ #
+ # * freeglut
+ # We don't use system's freeglut because upstream has a special modified
+ # version of it that gives mupdf clipboard support. See bug #653298
+ #
+ # * mujs
+ # As of v1.15.0, mupdf started using symbols in mujs that were not part
+ # of any release. We then went back to using the bundled version of it.
+ # But v1.17.0 looks ok, so we'll go unbundled again. Be aware of this risk
+ # when bumping and check!
+ # See bug #685244
+ #
+ # * lmms2
+ # mupdf uses a bundled version of lcms2 [0] because Artifex have forked it [1].
+ # It is therefore not appropriate for us to unbundle it at this time.
+ #
+ # [0] https://git.ghostscript.com/?p=mupdf.git;a=blob;f=Makethird;h=c4c540fa4a075df0db85e6fdaab809099881f35a;hb=HEAD#l9
+ # [1] https://www.ghostscript.com/doc/lcms2mt/doc/WhyThisFork.txt
+ local myemakeargs=(
+ GENTOO_PV=${PV}
+ HAVE_GLUT=$(usex opengl)
+ HAVE_LIBCRYPTO=$(usex ssl)
+ HAVE_X11=$(usex X)
+ USE_SYSTEM_LIBS=yes
+ USE_SYSTEM_MUJS=$(usex javascript)
+ USE_SYSTEM_GLUT=no
+ HAVE_OBJCOPY=no
+ "$@"
+ )
+
+ emake "${myemakeargs[@]}"
+}
+
+src_compile() {
+ tc-export PKG_CONFIG
+
+ _emake XCFLAGS="-fPIC"
+}
+
+src_install() {
+ if use opengl || use X ; then
+ domenu platform/debian/${PN}.desktop
+ doicon -s scalable docs/logo/new-${PN}-icon.svg
+ else
+ rm docs/man/${PN}.1 || die "Failed to remove man page in src_install()"
+ fi
+
+ sed -i \
+ -e "1iprefix = ${ED}/usr" \
+ -e "1ilibdir = ${ED}/usr/$(get_libdir)" \
+ -e "1idocdir = ${ED}/usr/share/doc/${PF}" \
+ -i Makerules || die "Failed adding liprefix, lilibdir and lidocdir to Makerules in src_install()"
+
+ _emake install
+
+ dosym libmupdf.so.${PV} /usr/$(get_libdir)/lib${PN}.so
+
+ if use opengl ; then
+ einfo "mupdf symlink points to mupdf-gl (bug 616654)"
+ dosym ${PN}-gl /usr/bin/${PN}
+ elif use X ; then
+ einfo "mupdf symlink points to mupdf-x11 (bug 616654)"
+ dosym ${PN}-x11 /usr/bin/${PN}
+ fi
+
+ # Respect libdir (bug #734898)
+ sed -i -e "s:/lib:/$(get_libdir):" platform/debian/${PN}.pc \
+ || die "Failed to sed pkgconfig file to respect libdir in src_install()"
+
+ insinto /usr/$(get_libdir)/pkgconfig
+ doins platform/debian/${PN}.pc
+
+ dodoc README CHANGES CONTRIBUTORS
+}