mupdf: generate shared libraries
This allows to have the font information (around 35 MB) at one place only, instead of in all the executables.
This commit is contained in:
parent
92ca6c9d5e
commit
6891aad0bc
4 changed files with 84 additions and 12 deletions
|
@ -2831,3 +2831,6 @@ libccext2-1.8.so.0 commoncpp2-1.8.1_1
|
|||
libucommon.so.8 ucommon-7.0.0_1
|
||||
libusecure.so.8 ucommon-7.0.0_1
|
||||
libcommoncpp.so.8 ucommon-7.0.0_1
|
||||
libmupdf.so.1.11 libmupdf-1.11_4
|
||||
libmupdfthird.so.1.11 libmupdf-1.11_4
|
||||
libmuthreads.so.1.11 libmupdf-1.11_4
|
||||
|
|
1
srcpkgs/libmupdf
Symbolic link
1
srcpkgs/libmupdf
Symbolic link
|
@ -0,0 +1 @@
|
|||
mupdf
|
50
srcpkgs/mupdf/patches/0002-mupdf-shared-libs.patch
Normal file
50
srcpkgs/mupdf/patches/0002-mupdf-shared-libs.patch
Normal file
|
@ -0,0 +1,50 @@
|
|||
Submitted By: Pierre Labastie <pierre dot labastie at neuf dot fr>
|
||||
Date: 2016-11-27
|
||||
Initial Package Version: 1.10
|
||||
Upstream Status: N/A
|
||||
Origin: Armin K and Gentoo
|
||||
Description: Generate shared libraries for mupdf, instead of static ones. This
|
||||
allows to have the font information (around 35 MB) at one place
|
||||
only, instead of in all the executables.
|
||||
Update: Bruce Dubbs 2017/07/15. Changes to include new threads library.
|
||||
|
||||
diff -Naur mupdf-1.11-source.orig/Makefile mupdf-1.11-source/Makefile
|
||||
--- Makefile 2017-04-05 06:02:21.000000000 -0500
|
||||
+++ Makefile 2017-04-15 18:26:46.286239623 -0500
|
||||
@@ -14,7 +14,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) -Iinclude -Igenerated
|
||||
+CFLAGS += $(XCFLAGS) -Iinclude -Igenerated -fPIC
|
||||
LIBS += $(XLIBS) -lm
|
||||
|
||||
LIBS += $(FREETYPE_LIBS)
|
||||
@@ -300,19 +300,22 @@
|
||||
|
||||
# --- Library ---
|
||||
|
||||
-MUPDF_LIB = $(OUT)/libmupdf.a
|
||||
-THIRD_LIB = $(OUT)/libmupdfthird.a
|
||||
-THREAD_LIB = $(OUT)/libmuthreads.a
|
||||
+MUPDF_LIB = $(OUT)/libmupdf.so.$(VOID_VERSION)
|
||||
+THIRD_LIB = $(OUT)/libmupdfthird.so.$(VOID_VERSION)
|
||||
+THREAD_LIB = $(OUT)/libmuthreads.so.$(VOID_VERSION)
|
||||
|
||||
MUPDF_OBJ := $(FITZ_OBJ) $(FONT_OBJ) $(PDF_OBJ) $(XPS_OBJ) $(SVG_OBJ) $(CBZ_OBJ) $(HTML_OBJ) $(GPRF_OBJ)
|
||||
THIRD_OBJ := $(FREETYPE_OBJ) $(HARFBUZZ_OBJ) $(JBIG2DEC_OBJ) $(LIBJPEG_OBJ) $(JPEGXR_OBJ) $(LURATECH_OBJ) $(MUJS_OBJ) $(OPENJPEG_OBJ) $(ZLIB_OBJ)
|
||||
THREAD_OBJ := $(THREAD_OBJ)
|
||||
|
||||
-$(MUPDF_LIB) : $(MUPDF_OBJ)
|
||||
+$(MUPDF_LIB) : $(MUPDF_OBJ) $(THIRD_LIB) $(THREAD_LIB)
|
||||
+ $(LINK_CMD) -shared -Wl,-soname -Wl,libmupdf.so.$(VOID_VERSION) -Wl,--no-undefined
|
||||
$(THIRD_LIB) : $(THIRD_OBJ)
|
||||
+ $(LINK_CMD) -shared -Wl,-soname -Wl,libmupdfthird.so.$(VOID_VERSION) -Wl,--no-undefined
|
||||
$(THREAD_LIB) : $(THREAD_OBJ)
|
||||
+ $(LINK_CMD) -shared -Wl,-soname -Wl,libmuthreads.so.$(VOID_VERSION) -Wl,--no-undefined -lpthread
|
||||
|
||||
-INSTALL_LIBS := $(MUPDF_LIB) $(THIRD_LIB)
|
||||
+INSTALL_LIBS := $(MUPDF_LIB) $(THIRD_LIB) $(THREAD_LIB)
|
||||
|
||||
# --- Tools and Apps ---
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
# Template file for 'mupdf'
|
||||
pkgname=mupdf
|
||||
version=1.11
|
||||
revision=3
|
||||
revision=4
|
||||
wrksrc="${pkgname}-${version}-source"
|
||||
hostmakedepends="pkg-config zlib-devel libcurl-devel freetype-devel
|
||||
libjpeg-turbo-devel jbig2dec-devel libXext-devel libXcursor-devel
|
||||
|
@ -15,10 +15,12 @@ license="AGPL-3"
|
|||
homepage="http://mupdf.com"
|
||||
distfiles="http://mupdf.com/downloads/archive/${pkgname}-${version}-source.tar.gz"
|
||||
checksum=209474a80c56a035ce3f4958a63373a96fad75c927c7b1acdc553fc85855f00a
|
||||
export VOID_VERSION="${version}"
|
||||
|
||||
pre_configure() {
|
||||
rm -rf thirdparty/{curl,freetype,harfbuzz,libjpeg,zlib,jbig2dec,openjpeg}
|
||||
}
|
||||
|
||||
do_configure() {
|
||||
if [ "$CROSS_BUILD" ]; then
|
||||
export CFLAGS="-fPIC"
|
||||
|
@ -26,38 +28,54 @@ do_configure() {
|
|||
make CC=cc LD=ld AR=ar build=release generate
|
||||
fi
|
||||
}
|
||||
|
||||
do_build() {
|
||||
CFLAGS+=" -fPIC"
|
||||
CFLAGS+=" $(pkg-config --cflags libopenjp2)"
|
||||
if [ "$CROSS_BUILD" ]; then
|
||||
make CROSSCOMPILE=yes CURL_LIBS='-lcurl -lpthread' build=release
|
||||
make CROSSCOMPILE=yes CFLAGS="$CFLAGS" build=release -C thirdparty/mujs
|
||||
make CURL_LIBS='-lcurl -lpthread' build=release CROSSCOMPILE=yes
|
||||
make CFLAGS="$CFLAGS" build=release -C thirdparty/mujs CROSSCOMPILE=yes
|
||||
else
|
||||
make CURL_LIBS='-lcurl -lpthread' build=release
|
||||
make build=release CFLAGS="$CFLAGS" -C thirdparty/mujs
|
||||
make CFLAGS="$CFLAGS" build=release -C thirdparty/mujs
|
||||
fi
|
||||
}
|
||||
|
||||
do_install() {
|
||||
make build=release prefix=${DESTDIR}/usr install
|
||||
|
||||
mv ${DESTDIR}/usr/bin/mupdf-x11-curl ${DESTDIR}/usr/bin/mupdf
|
||||
rm ${DESTDIR}/usr/bin/mupdf-x11
|
||||
ln -s mupdf-x11-curl ${DESTDIR}/usr/bin/mupdf
|
||||
|
||||
vinstall build/release/libmupdf.a 644 usr/lib
|
||||
vinstall build/release/libmupdf.so.${version} 644 usr/lib
|
||||
vinstall build/release/libmupdfthird.so.${version} 644 usr/lib
|
||||
vinstall build/release/libmuthreads.so.${version} 644 usr/lib
|
||||
vinstall thirdparty/mujs/build/libmujs.a 644 usr/lib
|
||||
|
||||
vinstall ${FILESDIR}/mupdf.xpm 644 usr/share/pixmaps
|
||||
vinstall ${FILESDIR}/mupdf.desktop 644 usr/share/applications
|
||||
}
|
||||
|
||||
mupdf-devel_package() {
|
||||
short_desc+=" - development files"
|
||||
depends="libjpeg-turbo-devel jbig2dec-devel libopenjpeg2-devel"
|
||||
libmupdf_package() {
|
||||
short_desc+=" - shared libraries"
|
||||
pkg_install() {
|
||||
vmove usr/include
|
||||
vmove usr/lib
|
||||
vmove usr/lib/libmupdf.so.${version}
|
||||
vmove usr/lib/libmupdfthird.so.${version}
|
||||
vmove usr/lib/libmuthreads.so.${version}
|
||||
}
|
||||
}
|
||||
|
||||
mupdf-devel_package() {
|
||||
short_desc+=" - development files"
|
||||
depends="libmupdf libjpeg-turbo-devel jbig2dec-devel libopenjpeg2-devel"
|
||||
pkg_install() {
|
||||
vmove usr/include
|
||||
vmove usr/lib/libmujs.a
|
||||
ln -s libmupdf.so.${version} ${PKGDESTDIR}/usr/lib/libmupdf.so
|
||||
ln -s libmupdfthird.so.${version} ${PKGDESTDIR}/usr/lib/libmupdfthird.so
|
||||
ln -s libmuthreads.so.${version} ${PKGDESTDIR}/usr/lib/libmuthreads.so
|
||||
}
|
||||
}
|
||||
|
||||
mupdf-tools_package() {
|
||||
short_desc+=" - tools"
|
||||
pkg_install() {
|
||||
|
|
Loading…
Reference in a new issue