summaryrefslogtreecommitdiff
path: root/office/mupdf/shared_libfitz.diff
diff options
context:
space:
mode:
Diffstat (limited to 'office/mupdf/shared_libfitz.diff')
-rw-r--r--office/mupdf/shared_libfitz.diff109
1 files changed, 109 insertions, 0 deletions
diff --git a/office/mupdf/shared_libfitz.diff b/office/mupdf/shared_libfitz.diff
new file mode 100644
index 0000000000..86e9109e0c
--- /dev/null
+++ b/office/mupdf/shared_libfitz.diff
@@ -0,0 +1,109 @@
+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)
+