office/mupdf: Updated for version 1.5.
Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
This commit is contained in:
parent
539b2ab872
commit
ce1935d000
|
@ -9,3 +9,14 @@ MuPDF is also small, fast, and yet complete. It supports PDF 1.7 with
|
||||||
transparency, encryption, hyperlinks, annotations, searching and more. It
|
transparency, encryption, hyperlinks, annotations, searching and more. It
|
||||||
also reads XPS and OpenXPS documents. MuPDF is written modularly, so
|
also reads XPS and OpenXPS documents. MuPDF is written modularly, so
|
||||||
features can be added on by integrators if they so desire.
|
features can be added on by integrators if they so desire.
|
||||||
|
|
||||||
|
Notes:
|
||||||
|
|
||||||
|
1. By default, mupdf is built without JavaScript support. If you want
|
||||||
|
to try mupdf's experimental JavaScript support, build with MUJS=yes in
|
||||||
|
the script's environment.
|
||||||
|
|
||||||
|
2. This build is for mupdf-1.5, but it has also been tested with
|
||||||
|
mupdf-1.4. Download mupdf-1.4-source.tar.gz and run the script with
|
||||||
|
VERSION=1.4 set in the environment, if for some reason you need the
|
||||||
|
older version.
|
||||||
|
|
|
@ -1,36 +0,0 @@
|
||||||
diff -Naur mupdf-1.2-source/apps/man/mudraw.1 mupdf-1.2-source.patched/apps/man/mudraw.1
|
|
||||||
--- mupdf-1.2-source/apps/man/mudraw.1 2013-02-13 09:25:07.000000000 -0500
|
|
||||||
+++ mupdf-1.2-source.patched/apps/man/mudraw.1 2013-06-19 02:15:42.000000000 -0400
|
|
||||||
@@ -83,7 +83,6 @@
|
|
||||||
Comma separated list of ranges to render.
|
|
||||||
.SH SEE ALSO
|
|
||||||
.BR mupdf (1),
|
|
||||||
-.BR mupdfclean (1).
|
|
||||||
-.BR mupdfshow (1).
|
|
||||||
+.BR mutool (1).
|
|
||||||
.SH AUTHOR
|
|
||||||
MuPDF is Copyright 2006-2012 Artifex Software, Inc.
|
|
||||||
diff -Naur mupdf-1.2-source/apps/man/mupdf.1 mupdf-1.2-source.patched/apps/man/mupdf.1
|
|
||||||
--- mupdf-1.2-source/apps/man/mupdf.1 2013-02-13 09:25:07.000000000 -0500
|
|
||||||
+++ mupdf-1.2-source.patched/apps/man/mupdf.1 2013-06-19 02:31:19.000000000 -0400
|
|
||||||
@@ -13,6 +13,9 @@
|
|
||||||
.SH OPTIONS
|
|
||||||
A description of each of the supported options is included below.
|
|
||||||
.TP
|
|
||||||
+.B \-b bits
|
|
||||||
+Set anti-aliasing quality in bits (0=off, 8=best).
|
|
||||||
+.TP
|
|
||||||
.B \-p password
|
|
||||||
Uses the given password to open an encrypted PDF file.
|
|
||||||
The password is tried both as user and owner password.
|
|
||||||
@@ -85,8 +88,7 @@
|
|
||||||
Sending a \fBSIGHUP\fR signal to the mupdf process will also cause the viewed
|
|
||||||
file to be reloaded automatically, for use in e.g. build scripts.
|
|
||||||
.SH SEE ALSO
|
|
||||||
-.BR mupdfclean (1),
|
|
||||||
-.BR mupdfdraw (1),
|
|
||||||
-.BR mupdfshow (1).
|
|
||||||
+.BR mutool (1),
|
|
||||||
+.BR mudraw (1).
|
|
||||||
.SH AUTHOR
|
|
||||||
MuPDF is Copyright 2006-2012 Artifex Software, Inc.
|
|
|
@ -2,22 +2,29 @@
|
||||||
|
|
||||||
# Slackware build script for mupdf
|
# Slackware build script for mupdf
|
||||||
|
|
||||||
# Written by Hubert Hesse (slackbuilds@hubertscorner.de)
|
# Originally written by Hubert Hesse (slackbuilds@hubertscorner.de).
|
||||||
|
# Heavily modified by B. Watson (yalhcru@gmail.com).
|
||||||
|
|
||||||
# Modified 20130618 by B. Watson (yalhcru@gmail.com):
|
# 20140822 bkw:
|
||||||
# - Took over maintenance
|
# - Updated for mupdf-1.5.
|
||||||
# - Updated for mupdf 1.2
|
# - Hosting the source on my server, so I know it won't get moved
|
||||||
# - Build library shared, not static
|
# to an archive/ dir when a new release comes out.
|
||||||
# - Build with system zlib, libjpeg, openjpeg, jbig2dec, libtiff, libpng,
|
# - Script also tested with 1.4:
|
||||||
# liblcms2 instead of bundled sources (which made the lib + exes *huge*).
|
# DOWNLOAD="http://urchlay.naptime.net/~urchlay/src/mupdf-1.4-source.tar.gz"
|
||||||
# Also, the included libjpeg is too new (it broke zathura-pdf-mupdf).
|
# MD5SUM="0f6840a7020db0c833b0c090ca1864ec"
|
||||||
# - Include mutool in package (instead of just its man page)
|
# - Add .desktop, .pc, icon
|
||||||
# - Add CHANGES CONTRIBUTORS doc/* to /usr/doc
|
# - Got rid of CVE-2014-2013 patch (integrated by upstream in 1.4).
|
||||||
# - Use DESTDIR libdir mandir instead of patching makefile
|
# - Remove man page patch (not needed for 1.4 and up).
|
||||||
# - Updated README & slack-desc to mention XPS and CBZ
|
# - Replace openjpeg dep with newly-submitted openjpeg2.
|
||||||
# - Fix the man pages slightly
|
# - Small patch to allow building with openjpeg 2.1.0 (rather than 2.0.0).
|
||||||
|
# - For now, revert to static libmupdf. Upstream doesn't support
|
||||||
|
# shared libs, they hate it when distro packages create them,
|
||||||
|
# and rolling my own shared libs is more PITA than it's worth.
|
||||||
|
# - Upstream renamed the binary to mupdf-x11, add symlinks so scripts
|
||||||
|
# or .desktop files can still run it as mupdf, and "man mupdf" will
|
||||||
|
# still work.
|
||||||
|
|
||||||
# Modified 20140224 by B. Watson (yalhcru@gmail.com):
|
# 20140224 bkw:
|
||||||
# - backported security fix for CVE-2014-2013. I will be upgrading this
|
# - backported security fix for CVE-2014-2013. I will be upgrading this
|
||||||
# build to mupdf-1.3, but it'll take more work than I currently have
|
# build to mupdf-1.3, but it'll take more work than I currently have
|
||||||
# time for:
|
# time for:
|
||||||
|
@ -31,11 +38,24 @@
|
||||||
# The security fix is needed now, it's a tiny patch, and shouldn't have
|
# The security fix is needed now, it's a tiny patch, and shouldn't have
|
||||||
# to wait on all that other stuff.
|
# to wait on all that other stuff.
|
||||||
|
|
||||||
# 20140318 bkw: fix permissions on headers and man pages
|
# 20140318 bkw: fix permissions on headers and man pages.
|
||||||
|
|
||||||
|
# 20130618 bkw:
|
||||||
|
# - Took over maintenance.
|
||||||
|
# - Updated for mupdf 1.2.
|
||||||
|
# - Build library shared, not static.
|
||||||
|
# - Build with system zlib, libjpeg, openjpeg, jbig2dec, libtiff, libpng,
|
||||||
|
# liblcms2 instead of bundled sources (which made the lib + exes *huge*).
|
||||||
|
# Also, the included libjpeg is too new (it broke zathura-pdf-mupdf).
|
||||||
|
# - Include mutool in package (instead of just its man page).
|
||||||
|
# - Add CHANGES CONTRIBUTORS doc/* to /usr/doc.
|
||||||
|
# - Use DESTDIR libdir mandir instead of patching makefile.
|
||||||
|
# - Updated README & slack-desc to mention XPS and CBZ.
|
||||||
|
# - Fix the man pages slightly.
|
||||||
|
|
||||||
PRGNAM=mupdf
|
PRGNAM=mupdf
|
||||||
VERSION=${VERSION:-1.2}
|
VERSION=${VERSION:-1.5}
|
||||||
BUILD=${BUILD:-3}
|
BUILD=${BUILD:-1}
|
||||||
TAG=${TAG:-_SBo}
|
TAG=${TAG:-_SBo}
|
||||||
|
|
||||||
if [ -z "$ARCH" ]; then
|
if [ -z "$ARCH" ]; then
|
||||||
|
@ -70,36 +90,45 @@ rm -rf $PKG
|
||||||
mkdir -p $TMP $PKG $OUTPUT
|
mkdir -p $TMP $PKG $OUTPUT
|
||||||
cd $TMP
|
cd $TMP
|
||||||
rm -rf $PRGNAM-$VERSION-source
|
rm -rf $PRGNAM-$VERSION-source
|
||||||
unzip $CWD/$PRGNAM-$VERSION-source.zip
|
tar xvf $CWD/$PRGNAM-$VERSION-source.tar.gz
|
||||||
cd $PRGNAM-$VERSION-source
|
cd $PRGNAM-$VERSION-source
|
||||||
|
|
||||||
|
# don't find/chown/chmod until after the thirdparty junk is removed.
|
||||||
|
|
||||||
|
# Build against system libs instead of bundled ones. If we didn't do this,
|
||||||
|
# libmupdf.a would be useless for building anything else.
|
||||||
|
|
||||||
|
# Everything removed from thirdparty/ has to be installed systemwide, and must
|
||||||
|
# either be a Slackware core pkg, or mentioned in REQUIRES= in the .info
|
||||||
|
# file... except mujs, which is mupdf's javascript support lib. If missing,
|
||||||
|
# we end up with a mupdf with no JS support, which is probably a good idea
|
||||||
|
# for the default build. If you want javascript, MUJS=yes in the env.
|
||||||
|
|
||||||
|
MUJS="${MUJS:-no}"
|
||||||
|
[ "$MUJS" = "yes" ] && mv thirdparty/mujs .keep
|
||||||
|
rm -rf thirdparty/*
|
||||||
|
[ "$MUJS" = "yes" ] && mv .keep thirdparty/mujs
|
||||||
|
|
||||||
chown -R root:root .
|
chown -R root:root .
|
||||||
find -L . \
|
find -L . \
|
||||||
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
|
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
|
||||||
-exec chmod 755 {} \; -o \
|
-o -perm 511 \) -exec chmod 755 {} \; -o \
|
||||||
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
|
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
|
||||||
-exec chmod 644 {} \;
|
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
|
||||||
|
|
||||||
# We want a shared library, not static.
|
# opj_stream_set_user_data() now takes 3 args in openjpeg 2.1.
|
||||||
# This patch based on http://bugs.ghostscript.com/show_bug.cgi?id=693009
|
# Patch applies to both 1.4 and 1.5.
|
||||||
# with the following changes:
|
patch -p1 < $CWD/openjpeg-2.1-api-change.diff
|
||||||
# - actually applies to mupdf-1.2
|
|
||||||
# - links the applications dynamically
|
|
||||||
# - doesn't even build/install the static lib by default
|
|
||||||
# - adds mutool to list of stuff installed to $prefix/bin
|
|
||||||
patch -p1 < $CWD/shared_libfitz.diff
|
|
||||||
|
|
||||||
# 'see also' mentions nonexistent stuff (mupdfclean, mupdfshow), also
|
# Makerules incorrectly tries to build with openjpeg-1.x system lib, while
|
||||||
# the -b option to mupdf was missing.
|
# the bundled version is 2.0, and the code uses the 2.0 API.
|
||||||
patch -p1 < $CWD/man_page.diff
|
# Actually this was fixed in 1.5, but I leave this here in case someone
|
||||||
|
# wants to use this script to build mupdf-1.4 for some reason.
|
||||||
|
sed -i 's,libopenjpeg1,libopenjp2,g' Makerules
|
||||||
|
|
||||||
# Build against system libs instead of shipped ones
|
# Hard-code the version number so it'll stop trying to use git to retrieve
|
||||||
sed -i 's,libopenjpeg,libopenjpeg1,' Makerules
|
# it and spewing harmless but scary 'fatal: Not a git repository' errors.
|
||||||
rm -rf thirdparty
|
sed -i "/^VERSION/s,=.*,= $VERSION," Makefile
|
||||||
|
|
||||||
# patch from upstream git, fix security vulnerability CVE-2014-2013.
|
|
||||||
# from here: http://git.ghostscript.com/?p=user/zeniko/mupdf.git;h=60dabde18d
|
|
||||||
# Patch is for mupdf-1.3, I've backported it to 1.2 for now.
|
|
||||||
patch -p1 < $CWD/xps_parse_color_overflow_fix.diff
|
|
||||||
|
|
||||||
make build=release prefix=/usr XCFLAGS="$SLKCFLAGS"
|
make build=release prefix=/usr XCFLAGS="$SLKCFLAGS"
|
||||||
make \
|
make \
|
||||||
|
@ -110,20 +139,61 @@ make \
|
||||||
DESTDIR=$PKG \
|
DESTDIR=$PKG \
|
||||||
install
|
install
|
||||||
|
|
||||||
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
|
if [ "$MUJS" = "yes" ]; then
|
||||||
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
|
# If JS support included, applications will need to link with this:
|
||||||
|
install -m0664 build/release/libmujs.a $PKG/usr/lib$LIBDIRSUFFIX/
|
||||||
|
install -m0664 thirdparty/mujs/mujs.h $PKG/usr/include/
|
||||||
|
else
|
||||||
|
# Don't need mujstest if no javascript support.
|
||||||
|
rm -f $PKG/usr/bin/mujstest
|
||||||
|
fi
|
||||||
|
|
||||||
|
strip $PKG/usr/bin/*
|
||||||
|
|
||||||
find $PKG/usr/man -type f -exec gzip -9 {} \;
|
find $PKG/usr/man -type f -exec gzip -9 {} \;
|
||||||
for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
|
for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
|
||||||
|
|
||||||
chmod -x $PKG/usr/include/*.h $PKG/usr/man/man?/*
|
# Compatibility symlinks. Older versions, the binary is just "mupdf".
|
||||||
|
# Separate -curl binary exists in 1.5 but not 1.4.
|
||||||
|
ln -s $PRGNAM-x11 $PKG/usr/bin/$PRGNAM
|
||||||
|
ln -s $PRGNAM.1.gz $PKG/usr/man/man1/$PRGNAM-x11.1.gz
|
||||||
|
[ -e $PKG/usr/bin/$PRGNAM-x11-curl ] && \
|
||||||
|
ln -s $PRGNAM.1.gz $PKG/usr/man/man1/$PRGNAM-x11-curl.1.gz
|
||||||
|
|
||||||
|
# Installed permissions are atrocious (everything 755).
|
||||||
|
find $PKG -type f | xargs chmod 644
|
||||||
|
chmod 755 $PKG/usr/bin/*
|
||||||
|
|
||||||
|
# .desktop taken from debian and modified:
|
||||||
|
# - make it validate.
|
||||||
|
# - add mime types for cbz and xps.
|
||||||
|
mkdir -p $PKG/usr/share/applications
|
||||||
|
cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
|
||||||
|
|
||||||
|
# Icon converted from platform/x11/mupdf.ico, with icotool.
|
||||||
|
mkdir -p $PKG/usr/share/pixmaps
|
||||||
|
cat $CWD/$PRGNAM.png > $PKG/usr/share/pixmaps/$PRGNAM.png
|
||||||
|
|
||||||
|
# .pc file taken from debian and parameterized.
|
||||||
|
PCLIBS="-l$PRGNAM"
|
||||||
|
[ "$MUJS" = "yes" ] && PCLIBS="$PCLIBS -lmujs"
|
||||||
|
|
||||||
|
mkdir -p $PKG/usr/lib$LIBDIRSUFFIX/pkgconfig/
|
||||||
|
sed -e "s,@LIB@,lib$LIBDIRSUFFIX,g" \
|
||||||
|
-e "s,@VERSION@,$VERSION,g" \
|
||||||
|
-e "s,@PCLIBS@,$PCLIBS,g" \
|
||||||
|
$CWD/$PRGNAM.pc > $PKG/usr/lib$LIBDIRSUFFIX/pkgconfig/$PRGNAM.pc
|
||||||
|
|
||||||
|
# slack-desc will conveniently say whether javascript is built in.
|
||||||
|
WITH=without
|
||||||
|
[ "$MUJS" = "yes" ] && WITH=with
|
||||||
|
|
||||||
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
|
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
|
||||||
cp -a README COPYING CHANGES CONTRIBUTORS doc/* $PKG/usr/doc/$PRGNAM-$VERSION
|
cp -a README COPYING CHANGES CONTRIBUTORS docs/*.* $PKG/usr/doc/$PRGNAM-$VERSION
|
||||||
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
|
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
|
||||||
|
|
||||||
mkdir -p $PKG/install
|
mkdir -p $PKG/install
|
||||||
cat $CWD/slack-desc > $PKG/install/slack-desc
|
sed "s,@WITH@,$WITH," < $CWD/slack-desc > $PKG/install/slack-desc
|
||||||
|
|
||||||
cd $PKG
|
cd $PKG
|
||||||
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
|
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
|
||||||
|
|
|
@ -0,0 +1,17 @@
|
||||||
|
[Desktop Entry]
|
||||||
|
Name=MuPDF
|
||||||
|
GenericName=Document viewer
|
||||||
|
Comment=PDF/CBZ/XPS file viewer
|
||||||
|
Exec=mupdf %f
|
||||||
|
TryExec=mupdf
|
||||||
|
Icon=mupdf
|
||||||
|
Terminal=false
|
||||||
|
Type=Application
|
||||||
|
MimeType=application/pdf;application/x-pdf;application/x-cbz;application/vnd.ms-xpsdocument;application/oxps;
|
||||||
|
Categories=Viewer;Graphics;
|
||||||
|
NoDisplay=true
|
||||||
|
Actions=View;
|
||||||
|
|
||||||
|
[Desktop Action View]
|
||||||
|
Name=View
|
||||||
|
Exec=mupdf %f
|
|
@ -1,10 +1,10 @@
|
||||||
PRGNAM="mupdf"
|
PRGNAM="mupdf"
|
||||||
VERSION="1.2"
|
VERSION="1.5"
|
||||||
HOMEPAGE="http://www.mupdf.com/"
|
HOMEPAGE="http://www.mupdf.com/"
|
||||||
DOWNLOAD="http://mupdf.googlecode.com/files/mupdf-1.2-source.zip"
|
DOWNLOAD="http://urchlay.naptime.net/~urchlay/src/mupdf-1.5-source.tar.gz"
|
||||||
MD5SUM="230e7d679f54c91edd1ebe54f6f8bc15"
|
MD5SUM="89bd4ddc74c266062ebf2702741bb173"
|
||||||
DOWNLOAD_x86_64=""
|
DOWNLOAD_x86_64=""
|
||||||
MD5SUM_x86_64=""
|
MD5SUM_x86_64=""
|
||||||
REQUIRES="jbig2dec openjpeg"
|
REQUIRES="openjpeg2 jbig2dec"
|
||||||
MAINTAINER="B. Watson"
|
MAINTAINER="B. Watson"
|
||||||
EMAIL="yalhcru@gmail.com"
|
EMAIL="yalhcru@gmail.com"
|
||||||
|
|
|
@ -0,0 +1,12 @@
|
||||||
|
prefix=/usr
|
||||||
|
exec_prefix=${prefix}
|
||||||
|
libdir=${exec_prefix}/@LIB@
|
||||||
|
includedir=${prefix}/include
|
||||||
|
|
||||||
|
Name: mupdf
|
||||||
|
Description: Library for rendering PDF documents
|
||||||
|
Requires.private: freetype2
|
||||||
|
Version: @VERSION@
|
||||||
|
Libs: -L${libdir} @PCLIBS@
|
||||||
|
Libs.private: -lopenjp2 -ljbig2dec -ljpeg -lz -lm
|
||||||
|
Cflags: -I${includedir}
|
Binary file not shown.
After Width: | Height: | Size: 3.2 KiB |
|
@ -0,0 +1,13 @@
|
||||||
|
diff -Naur mupdf-1.5-source/source/fitz/load-jpx.c mupdf-1.5-source.patched/source/fitz/load-jpx.c
|
||||||
|
--- mupdf-1.5-source/source/fitz/load-jpx.c 2014-06-10 11:09:28.000000000 -0400
|
||||||
|
+++ mupdf-1.5-source.patched/source/fitz/load-jpx.c 2014-08-21 23:49:21.000000000 -0400
|
||||||
|
@@ -116,7 +116,8 @@
|
||||||
|
opj_stream_set_read_function(stream, fz_opj_stream_read);
|
||||||
|
opj_stream_set_skip_function(stream, fz_opj_stream_skip);
|
||||||
|
opj_stream_set_seek_function(stream, fz_opj_stream_seek);
|
||||||
|
- opj_stream_set_user_data(stream, &sb);
|
||||||
|
+ opj_stream_set_user_data(stream, &sb, NULL);
|
||||||
|
+
|
||||||
|
/* Set the length to avoid an assert */
|
||||||
|
opj_stream_set_user_data_length(stream, size);
|
||||||
|
|
|
@ -1,109 +0,0 @@
|
||||||
diff -Naur mupdf-1.2-source/Makefile mupdf-1.2-source.patched/Makefile
|
|
||||||
--- mupdf-1.2-source/Makefile 2013-02-13 09:25:07.000000000 -0500
|
|
||||||
+++ mupdf-1.2-source.patched/Makefile 2013-06-19 00:18:06.000000000 -0400
|
|
||||||
@@ -12,7 +12,7 @@
|
|
||||||
# Do not specify CFLAGS or LIBS on the make invocation line - specify
|
|
||||||
# XCFLAGS or XLIBS instead. Make ignores any lines in the makefile that
|
|
||||||
# set a variable that was set on the command line.
|
|
||||||
-CFLAGS += $(XCFLAGS) -Ifitz -Ipdf -Ixps -Icbz -Iscripts
|
|
||||||
+CFLAGS += $(XCFLAGS) -fPIC -Ifitz -Ipdf -Ixps -Icbz -Iscripts
|
|
||||||
LIBS += $(XLIBS) -lfreetype -ljbig2dec -ljpeg -lopenjpeg -lz -lm
|
|
||||||
LIBS_V8 = $(LIBS) $(V8LIBS)
|
|
||||||
|
|
||||||
@@ -37,6 +37,7 @@
|
|
||||||
CC_CMD = $(QUIET_CC) $(CC) $(CFLAGS) -o $@ -c $<
|
|
||||||
CXX_CMD = $(QUIET_CXX) $(CXX) $(CFLAGS) -o $@ -c $<
|
|
||||||
AR_CMD = $(QUIET_AR) $(AR) cr $@ $^
|
|
||||||
+SO_CMD = $(QUIET_LINK) $(CC) -fPIC --shared -Wl,-soname -Wl,`basename $@ | sed 's,\.[^.]*$$,,'` $^ -o $@
|
|
||||||
LINK_CMD = $(QUIET_LINK) $(CC) $(LDFLAGS) -o $@ $^ $(LIBS)
|
|
||||||
LINK_V8_CMD = $(QUIET_LINK) $(CXX) $(LDFLAGS) -o $@ $^ $(LIBS_V8)
|
|
||||||
MKDIR_CMD = $(QUIET_MKDIR) mkdir -p $@
|
|
||||||
@@ -79,7 +80,9 @@
|
|
||||||
|
|
||||||
# --- Fitz, MuPDF, MuXPS and MuCBZ library ---
|
|
||||||
|
|
||||||
-FITZ_LIB := $(OUT)/libfitz.a
|
|
||||||
+FITZ_LIB_A := $(OUT)/libfitz.a
|
|
||||||
+FITZ_LIB_SO := $(OUT)/libfitz.so.1.0
|
|
||||||
+FITZ_LIB_SO1 := $(OUT)/libfitz.so.1
|
|
||||||
FITZ_V8_LIB := $(OUT)/libfitzv8.a
|
|
||||||
|
|
||||||
FITZ_SRC := $(notdir $(wildcard fitz/*.c draw/*.c))
|
|
||||||
@@ -91,10 +94,10 @@
|
|
||||||
MUXPS_SRC := $(notdir $(wildcard xps/*.c))
|
|
||||||
MUCBZ_SRC := $(notdir $(wildcard cbz/*.c))
|
|
||||||
|
|
||||||
-$(FITZ_LIB) : $(addprefix $(OUT)/, $(FITZ_SRC:%.c=%.o))
|
|
||||||
-$(FITZ_LIB) : $(addprefix $(OUT)/, $(MUPDF_SRC:%.c=%.o))
|
|
||||||
-$(FITZ_LIB) : $(addprefix $(OUT)/, $(MUXPS_SRC:%.c=%.o))
|
|
||||||
-$(FITZ_LIB) : $(addprefix $(OUT)/, $(MUCBZ_SRC:%.c=%.o))
|
|
||||||
+FITZ_OBJECT_FILES := $(addprefix $(OUT)/, $(FITZ_SRC:%.c=%.o)) \
|
|
||||||
+ $(addprefix $(OUT)/, $(MUPDF_SRC:%.c=%.o)) \
|
|
||||||
+ $(addprefix $(OUT)/, $(MUXPS_SRC:%.c=%.o)) \
|
|
||||||
+ $(addprefix $(OUT)/, $(MUCBZ_SRC:%.c=%.o))
|
|
||||||
|
|
||||||
$(FITZ_V8_LIB) : $(addprefix $(OUT)/, $(FITZ_SRC:%.c=%.o))
|
|
||||||
$(FITZ_V8_LIB) : $(addprefix $(OUT)/, $(MUPDF_V8_SRC:%.c=%.o))
|
|
||||||
@@ -102,9 +105,19 @@
|
|
||||||
$(FITZ_V8_LIB) : $(addprefix $(OUT)/, $(MUXPS_SRC:%.c=%.o))
|
|
||||||
$(FITZ_V8_LIB) : $(addprefix $(OUT)/, $(MUCBZ_SRC:%.c=%.o))
|
|
||||||
|
|
||||||
-libs: $(FITZ_LIB) $(THIRD_LIBS)
|
|
||||||
libs_v8: libs $(FITZ_V8_LIB)
|
|
||||||
|
|
||||||
+$(FITZ_LIB_A) : $(FITZ_OBJECT_FILES)
|
|
||||||
+$(FITZ_LIB_SO) : $(FITZ_OBJECT_FILES)
|
|
||||||
+
|
|
||||||
+libs: $(FITZ_LIB_A) $(FITZ_LIB_SO1) $(THIRD_LIBS)
|
|
||||||
+
|
|
||||||
+$(FITZ_LIB_SO) :
|
|
||||||
+ $(SO_CMD)
|
|
||||||
+
|
|
||||||
+$(FITZ_LIB_SO1) : $(FITZ_LIB_SO)
|
|
||||||
+ @cd $(OUT) && ln -s `basename $(FITZ_LIB_SO)` libfitz.so.1
|
|
||||||
+
|
|
||||||
# --- Generated CMAP, FONT and JAVASCRIPT files ---
|
|
||||||
|
|
||||||
CMAPDUMP := $(OUT)/cmapdump
|
|
||||||
@@ -162,14 +175,14 @@
|
|
||||||
# --- Tools and Apps ---
|
|
||||||
|
|
||||||
MUDRAW := $(addprefix $(OUT)/, mudraw)
|
|
||||||
-$(MUDRAW) : $(FITZ_LIB) $(THIRD_LIBS)
|
|
||||||
+$(MUDRAW) : $(FITZ_LIB_SO1) $(THIRD_LIBS)
|
|
||||||
|
|
||||||
MUTOOL := $(addprefix $(OUT)/, mutool)
|
|
||||||
-$(MUTOOL) : $(addprefix $(OUT)/, pdfclean.o pdfextract.o pdfinfo.o pdfposter.o pdfshow.o) $(FITZ_LIB) $(THIRD_LIBS)
|
|
||||||
+$(MUTOOL) : $(addprefix $(OUT)/, pdfclean.o pdfextract.o pdfinfo.o pdfposter.o pdfshow.o) $(FITZ_LIB_SO1) $(THIRD_LIBS)
|
|
||||||
|
|
||||||
ifeq "$(NOX11)" ""
|
|
||||||
MUVIEW := $(OUT)/mupdf
|
|
||||||
-$(MUVIEW) : $(FITZ_LIB) $(THIRD_LIBS)
|
|
||||||
+$(MUVIEW) : $(FITZ_LIB_SO1) $(THIRD_LIBS)
|
|
||||||
$(MUVIEW) : $(addprefix $(OUT)/, x11_main.o x11_image.o pdfapp.o)
|
|
||||||
$(LINK_CMD) $(X11_LIBS)
|
|
||||||
|
|
||||||
@@ -208,18 +221,19 @@
|
|
||||||
incdir ?= $(prefix)/include
|
|
||||||
mandir ?= $(prefix)/share/man
|
|
||||||
|
|
||||||
-install: $(FITZ_LIB) $(MUVIEW) $(MUDRAW) $(MUTOOL)
|
|
||||||
+install: $(FITZ_LIB_SO) $(MUVIEW) $(MUDRAW) $(MUTOOL)
|
|
||||||
install -d $(DESTDIR)$(bindir) $(DESTDIR)$(libdir) $(DESTDIR)$(incdir) $(DESTDIR)$(mandir)/man1
|
|
||||||
- install $(FITZ_LIB) $(DESTDIR)$(libdir)
|
|
||||||
+ install $(FITZ_LIB_SO) $(DESTDIR)$(libdir)
|
|
||||||
+ ln -s `basename $(FITZ_LIB_SO)` $(DESTDIR)$(libdir)/libfitz.so
|
|
||||||
install fitz/memento.h fitz/fitz.h pdf/mupdf.h xps/muxps.h cbz/mucbz.h $(DESTDIR)$(incdir)
|
|
||||||
- install $(MUVIEW) $(MUDRAW) $(MUBUSY) $(DESTDIR)$(bindir)
|
|
||||||
+ install $(MUVIEW) $(MUDRAW) $(MUTOOL) $(MUBUSY) $(DESTDIR)$(bindir)
|
|
||||||
install $(wildcard apps/man/*.1) $(DESTDIR)$(mandir)/man1
|
|
||||||
|
|
||||||
# --- Clean and Default ---
|
|
||||||
|
|
||||||
all: all-nojs $(JSTARGETS)
|
|
||||||
|
|
||||||
-all-nojs: $(THIRD_LIBS) $(FITZ_LIB) $(MUVIEW) $(MUDRAW) $(MUTOOL)
|
|
||||||
+all-nojs: $(THIRD_LIBS) $(FITZ_LIB_SO) $(MUVIEW) $(MUDRAW) $(MUTOOL)
|
|
||||||
|
|
||||||
third: $(THIRD_LIBS)
|
|
||||||
|
|
|
@ -15,5 +15,5 @@ mupdf: the look of a printed page on screen.
|
||||||
mupdf:
|
mupdf:
|
||||||
mupdf: http://www.mupdf.com/
|
mupdf: http://www.mupdf.com/
|
||||||
mupdf:
|
mupdf:
|
||||||
mupdf:
|
mupdf: This package was built @WITH@ JavaSscript support.
|
||||||
mupdf:
|
mupdf:
|
||||||
|
|
|
@ -1,60 +0,0 @@
|
||||||
diff -Naur mupdf-1.2-source/xps/xps_common.c mupdf-1.2-source.patched/xps/xps_common.c
|
|
||||||
--- mupdf-1.2-source/xps/xps_common.c 2013-02-13 15:25:08.000000000 -0500
|
|
||||||
+++ mupdf-1.2-source.patched/xps/xps_common.c 2014-02-24 15:25:35.000000000 -0500
|
|
||||||
@@ -89,7 +89,7 @@
|
|
||||||
if (scb_color_att)
|
|
||||||
{
|
|
||||||
fz_colorspace *colorspace;
|
|
||||||
- float samples[32];
|
|
||||||
+ float samples[FZ_MAX_COLORS];
|
|
||||||
xps_parse_color(doc, base_uri, scb_color_att, &colorspace, samples);
|
|
||||||
opacity = opacity * samples[0];
|
|
||||||
}
|
|
||||||
@@ -273,6 +273,11 @@
|
|
||||||
|
|
||||||
*p++ = 0;
|
|
||||||
n = count_commas(p) + 1;
|
|
||||||
+ if (n > FZ_MAX_COLORS)
|
|
||||||
+ {
|
|
||||||
+ fz_warn(doc->ctx, "ignoring %d color components (max %d allowed)", n - FZ_MAX_COLORS, FZ_MAX_COLORS);
|
|
||||||
+ n = FZ_MAX_COLORS;
|
|
||||||
+ }
|
|
||||||
i = 0;
|
|
||||||
while (i < n)
|
|
||||||
{
|
|
||||||
diff -Naur mupdf-1.2-source/xps/xps_glyphs.c mupdf-1.2-source.patched/xps/xps_glyphs.c
|
|
||||||
--- mupdf-1.2-source/xps/xps_glyphs.c 2013-02-13 15:25:08.000000000 -0500
|
|
||||||
+++ mupdf-1.2-source.patched/xps/xps_glyphs.c 2014-02-24 15:25:57.000000000 -0500
|
|
||||||
@@ -591,7 +591,7 @@
|
|
||||||
|
|
||||||
if (fill_att)
|
|
||||||
{
|
|
||||||
- float samples[32];
|
|
||||||
+ float samples[FZ_MAX_COLORS];
|
|
||||||
fz_colorspace *colorspace;
|
|
||||||
|
|
||||||
xps_parse_color(doc, base_uri, fill_att, &colorspace, samples);
|
|
||||||
diff -Naur mupdf-1.2-source/xps/xps_gradient.c mupdf-1.2-source.patched/xps/xps_gradient.c
|
|
||||||
--- mupdf-1.2-source/xps/xps_gradient.c 2013-02-13 15:25:08.000000000 -0500
|
|
||||||
+++ mupdf-1.2-source.patched/xps/xps_gradient.c 2014-02-24 15:26:30.000000000 -0500
|
|
||||||
@@ -38,7 +38,7 @@
|
|
||||||
struct stop *stops, int maxcount)
|
|
||||||
{
|
|
||||||
fz_colorspace *colorspace;
|
|
||||||
- float sample[8];
|
|
||||||
+ float sample[FZ_MAX_COLORS];
|
|
||||||
float rgb[3];
|
|
||||||
int before, after;
|
|
||||||
int count;
|
|
||||||
diff -Naur mupdf-1.2-source/xps/xps_path.c mupdf-1.2-source.patched/xps/xps_path.c
|
|
||||||
--- mupdf-1.2-source/xps/xps_path.c 2013-02-13 15:25:08.000000000 -0500
|
|
||||||
+++ mupdf-1.2-source.patched/xps/xps_path.c 2014-02-24 15:27:07.000000000 -0500
|
|
||||||
@@ -826,7 +826,7 @@
|
|
||||||
|
|
||||||
fz_stroke_state *stroke = NULL;
|
|
||||||
fz_matrix transform;
|
|
||||||
- float samples[32];
|
|
||||||
+ float samples[FZ_MAX_COLORS];
|
|
||||||
fz_colorspace *colorspace;
|
|
||||||
fz_path *path;
|
|
||||||
fz_path *stroke_path = NULL;
|
|
Loading…
Reference in New Issue