forked from gentoo/gentoo
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
app-text/mupdf: Version bump (thanks Hadrien Lacour), add USE=lcms fo…
…r bundled/modified lcms2. Closes: https://bugs.gentoo.org/641862 Package-Manager: Portage-2.3.20, Repoman-2.3.6
- Loading branch information
Showing
4 changed files
with
183 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1,2 @@ | ||
DIST mupdf-1.11-source.tar.gz 40156070 BLAKE2B 2a9991a11355a449b91955bd897b5da175d3a89943277345779ea52c74f57c58226ee4087b23e3f434c0a45ae7a39df95c81c26c55d959f362bd1a0d0216716d SHA512 501670f540e298a8126806ebbd9db8b29866f663b7bbf26c9ade1933e42f0c00ad410b9d93f3ddbfb3e45c38722869095de28d832fe3fb3703c55cc9a01dbf63 | ||
DIST mupdf-1.12.0-source.tar.gz 51508917 BLAKE2B c34df17f0df7a200897d678514ff4012e02b1cef71189fe48740948c88cb544c6ce80f52a5dc335d70002806a7b413e5f79a1edee88865e42daf76e49416d9bf SHA512 11ae620e55e9ebd5844abd7decacc0dafc90dd1f4907ba6ed12f5c725d3920187fc730a7fc33979bf3ff9451da7dbb51f34480a878083e2064f3455555f47d96 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
--- mupdf-1.12.0-source/Makerules | ||
+++ mupdf-1.12.0-source/Makerules | ||
@@ -22,8 +22,6 @@ | ||
endif | ||
|
||
ifeq "$(build)" "debug" | ||
-CFLAGS += -pipe -g | ||
-LDFLAGS += -g | ||
else ifeq "$(build)" "release" | ||
CFLAGS += -pipe -O2 -DNDEBUG -fomit-frame-pointer | ||
LDFLAGS += $(LDREMOVEUNREACH) -Wl,-s |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,160 @@ | ||
# Copyright 1999-2018 Gentoo Foundation | ||
# Distributed under the terms of the GNU General Public License v2 | ||
|
||
EAPI=6 | ||
|
||
inherit flag-o-matic toolchain-funcs xdg | ||
|
||
DESCRIPTION="a lightweight PDF viewer and toolkit written in portable C" | ||
HOMEPAGE="http://mupdf.com/" | ||
SRC_URI="http://mupdf.com/downloads/${P}-source.tar.gz" | ||
|
||
LICENSE="AGPL-3" | ||
SLOT="0/${PV}" | ||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~ppc-macos ~x64-macos ~x86-macos" | ||
IUSE="X +curl javascript lcms libressl opengl +openssl static static-libs vanilla" | ||
|
||
LIB_DEPEND=" | ||
!libressl? ( dev-libs/openssl:0[static-libs?] ) | ||
libressl? ( dev-libs/libressl[static-libs?] ) | ||
javascript? ( >=dev-lang/mujs-0_p20160504 ) | ||
media-libs/freetype:2[static-libs?] | ||
media-libs/harfbuzz[static-libs?] | ||
media-libs/jbig2dec[static-libs?] | ||
media-libs/libpng:0[static-libs?] | ||
>=media-libs/openjpeg-2.1:2[static-libs?] | ||
net-misc/curl[static-libs?] | ||
virtual/jpeg[static-libs?] | ||
X? ( x11-libs/libX11[static-libs?] | ||
x11-libs/libXext[static-libs?] ) | ||
opengl? ( >=media-libs/glfw-3.2 )" | ||
RDEPEND="${LIB_DEPEND}" | ||
DEPEND="${RDEPEND} | ||
virtual/pkgconfig | ||
static-libs? ( ${LIB_DEPEND} ) | ||
static? ( ${LIB_DEPEND//?} | ||
app-arch/bzip2[static-libs] | ||
x11-libs/libXau[static-libs] | ||
x11-libs/libXdmcp[static-libs] | ||
x11-libs/libxcb[static-libs] )" | ||
|
||
REQUIRED_USE="opengl? ( !static !static-libs )" | ||
|
||
S=${WORKDIR}/${P}-source | ||
|
||
PATCHES=( | ||
"${FILESDIR}"/${PN}-1.12-CFLAGS.patch | ||
"${FILESDIR}"/${PN}-1.9a-debug-build.patch | ||
"${FILESDIR}"/${PN}-1.10a-add-desktop-pc-xpm-files.patch | ||
"${FILESDIR}"/${PN}-1.11-openssl-curl-x11.patch | ||
"${FILESDIR}"/${PN}-1.11-system-glfw.patch | ||
"${FILESDIR}"/${PN}-1.11-drop-libmupdfthird.patch | ||
) | ||
|
||
src_prepare() { | ||
xdg_src_prepare | ||
use hppa && append-cflags -ffunction-sections | ||
|
||
# specialized lcms2, keep it if wanted inside lubmupdfthird | ||
if ! use lcms ; then | ||
rm -rf thirdparty/lcms2 | ||
fi | ||
|
||
rm -rf thirdparty/{README,curl,freeglut,freetype,harfbuzz,jbig2dec,libjpeg,mujs,openjpeg,zlib} || die | ||
for my_third in thirdparty/* ; do | ||
ewarn "Bundled thirdparty lib: ${my_third}" | ||
done | ||
|
||
if has_version ">=media-libs/openjpeg-2.1:2" ; then | ||
# Remove a switch, which prevents using shared libraries for openjpeg2. | ||
# See http://www.linuxfromscratch.org/blfs/view/cvs/pst/mupdf.html | ||
sed '/OPJ_STATIC$/d' -i source/fitz/load-jpx.c | ||
fi | ||
|
||
use javascript || \ | ||
sed -e '/* #define FZ_ENABLE_JS/ a\#define FZ_ENABLE_JS 0' \ | ||
-i include/mupdf/fitz/config.h | ||
|
||
sed -e "/^libdir=/s:/lib:/$(get_libdir):" \ | ||
-e "/^prefix=/s:=.*:=${EROOT}/usr:" \ | ||
-i platform/debian/${PN}.pc || die | ||
|
||
use vanilla || eapply \ | ||
"${FILESDIR}"/${PN}-1.3-zoom-2.patch | ||
|
||
sed -e "1iOS = Linux" \ | ||
-e "1iCC = $(tc-getCC)" \ | ||
-e "1iLD = $(tc-getCC)" \ | ||
-e "1iAR = $(tc-getAR)" \ | ||
-e "1iverbose = yes" \ | ||
-e "1ibuild = debug" \ | ||
-e "1iprefix = ${ED}usr" \ | ||
-e "1ilibdir = ${ED}usr/$(get_libdir)" \ | ||
-e "1idocdir = ${ED}usr/share/doc/${PF}" \ | ||
-e "1iWANT_X11 = $(usex X)" \ | ||
-e "1iWANT_OPENSSL = $(usex openssl)" \ | ||
-e "1iWANT_CURL = $(usex curl)" \ | ||
-e "1iHAVE_MUJS = $(usex javascript)" \ | ||
-e "1iMUJS_LIBS = $(usex javascript -lmujs '')" \ | ||
-e "1iMUJS_CFLAGS =" \ | ||
-e "1iHAVE_GLFW = $(usex opengl yes no)" \ | ||
-i Makerules || die | ||
|
||
if use static-libs || use static ; then | ||
cp -a "${S}" "${S}"-static || die | ||
#add missing Libs.private for xcb and freetype | ||
sed -e 's:\(pkg-config --libs\):\1 --static:' \ | ||
-e '/^SYS_X11_LIBS = /s:\(.*\):\1 -lpthread:' \ | ||
-e '/^SYS_FREETYPE_LIBS = /s:\(.*\):\1 -lbz2:' \ | ||
-i "${S}"-static/Makerules || die | ||
fi | ||
|
||
my_soname=libmupdf.so.${PV} | ||
my_soname_js_none=libmupdf-js-none.so.${PV} | ||
sed -e "\$a\$(MUPDF_LIB): \$(MUPDF_JS_NONE_LIB)" \ | ||
-e "\$a\\\t\$(QUIET_LINK) \$(CC) \$(LDFLAGS) --shared -Wl,-soname -Wl,${my_soname} -Wl,--no-undefined -o \$@ \$^ \$(MUPDF_JS_NONE_LIB) \$(LIBS)" \ | ||
-e "/^MUPDF_LIB =/s:=.*:= \$(OUT)/${my_soname}:" \ | ||
-e "\$a\$(MUPDF_JS_NONE_LIB):" \ | ||
-e "\$a\\\t\$(QUIET_LINK) \$(CC) \$(LDFLAGS) --shared -Wl,-soname -Wl,${my_soname_js_none} -Wl,--no-undefined -o \$@ \$^ \$(LIBS)" \ | ||
-e "/install/s: COPYING : :" \ | ||
-i Makefile || die | ||
} | ||
|
||
src_compile() { | ||
use lcms && emake XCFLAGS="-fpic" third | ||
emake XCFLAGS="-fpic" | ||
use static-libs && \ | ||
emake -C "${S}"-static build/debug/lib${PN}{,-js-none}.a | ||
use static && \ | ||
emake -C "${S}"-static XLIBS="-static" | ||
} | ||
|
||
src_install() { | ||
if use X || use opengl ; then | ||
domenu platform/debian/${PN}.desktop | ||
doicon platform/debian/${PN}.xpm | ||
else | ||
rm docs/man/${PN}.1 | ||
fi | ||
|
||
emake install | ||
dosym ${my_soname} /usr/$(get_libdir)/lib${PN}.so | ||
|
||
use static-libs && \ | ||
dolib.a "${S}"-static/build/debug/lib${PN}{,-js-none}.a | ||
if use static ; then | ||
dobin "${S}"-static/build/debug/mu{tool,draw} | ||
use X && dobin "${S}"-static/build/debug/${PN}-x11 | ||
fi | ||
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 | ||
insinto /usr/$(get_libdir)/pkgconfig | ||
doins platform/debian/${PN}.pc | ||
|
||
dodoc README CHANGES CONTRIBUTORS | ||
} |