2016-01-21 23:41:46 +01:00

276 lines
9.9 KiB
Plaintext

$NetBSD: patch-ac,v 1.10 2015/04/17 07:18:21 wiz Exp $
o libtool support
o Install target cleanup
o Install only one "mupdf" binary, prefer the featureful one and always
install it as "mupdf"
o libmujs support: install like a non-thirdparty mupdf's library
--- Makefile.orig 2015-04-08 15:04:10.000000000 +0000
+++ Makefile
@@ -41,22 +41,12 @@ CFLAGS += $(ZLIB_CFLAGS)
# --- Commands ---
-ifneq "$(verbose)" "yes"
-QUIET_AR = @ echo ' ' ' ' AR $@ ;
-QUIET_CC = @ echo ' ' ' ' CC $@ ;
-QUIET_CXX = @ echo ' ' ' ' CXX $@ ;
-QUIET_GEN = @ echo ' ' ' ' GEN $@ ;
-QUIET_LINK = @ echo ' ' ' ' LINK $@ ;
-QUIET_MKDIR = @ echo ' ' ' ' MKDIR $@ ;
-QUIET_RM = @ echo ' ' ' ' RM $@ ;
-endif
-
-CC_CMD = $(QUIET_CC) $(CC) $(CFLAGS) -o $@ -c $<
-CXX_CMD = $(QUIET_CXX) $(CXX) $(CFLAGS) -o $@ -c $<
-AR_CMD = $(QUIET_AR) $(AR) cr $@ $^
-LINK_CMD = $(QUIET_LINK) $(CC) $(LDFLAGS) -o $@ $^ $(LIBS)
-MKDIR_CMD = $(QUIET_MKDIR) mkdir -p $@
-RM_CMD = $(QUIET_RM) rm -f $@
+CC_CMD = ${LIBTOOL} --mode=compile $(CC) $(CFLAGS) -o $@ -c $<
+CXX_CMD = ${LIBTOOL} --mode=compile $(CXX) $(CFLAGS) -o $@ -c $<
+AR_CMD = ${LIBTOOL} --mode=link $(CC) -o $@ -version-info 0:0:0 -rpath ${PREFIX}/lib $^
+LINK_CMD = ${LIBTOOL} --mode=link $(CC) -o $@ $^ $(LDFLAGS) $(LIBS)
+MKDIR_CMD = mkdir -p $@
+RM_CMD = rm -f $@
# --- File lists ---
@@ -87,32 +77,32 @@ PDF_SRC_HDR := $(wildcard source/pdf/*.h
XPS_SRC_HDR := $(wildcard source/xps/*.h)
HTML_SRC_HDR := $(wildcard source/html/*.h)
-FITZ_OBJ := $(subst source/, $(OUT)/, $(addsuffix .o, $(basename $(FITZ_SRC))))
-PDF_OBJ := $(subst source/, $(OUT)/, $(addsuffix .o, $(basename $(PDF_SRC))))
-XPS_OBJ := $(subst source/, $(OUT)/, $(addsuffix .o, $(basename $(XPS_SRC))))
-CBZ_OBJ := $(subst source/, $(OUT)/, $(addsuffix .o, $(basename $(CBZ_SRC))))
-HTML_OBJ := $(subst source/, $(OUT)/, $(addsuffix .o, $(basename $(HTML_SRC))))
+FITZ_OBJ := $(subst source/, $(OUT)/, $(addsuffix .lo, $(basename $(FITZ_SRC))))
+PDF_OBJ := $(subst source/, $(OUT)/, $(addsuffix .lo, $(basename $(PDF_SRC))))
+XPS_OBJ := $(subst source/, $(OUT)/, $(addsuffix .lo, $(basename $(XPS_SRC))))
+CBZ_OBJ := $(subst source/, $(OUT)/, $(addsuffix .lo, $(basename $(CBZ_SRC))))
+HTML_OBJ := $(subst source/, $(OUT)/, $(addsuffix .lo, $(basename $(HTML_SRC))))
# --- Choice of Javascript library ---
ifeq "$(HAVE_MUJS)" "yes"
-PDF_OBJ += $(OUT)/pdf/js/pdf-js.o
-PDF_OBJ += $(OUT)/pdf/js/pdf-jsimp-mu.o
+PDF_OBJ += $(OUT)/pdf/js/pdf-js.lo
+PDF_OBJ += $(OUT)/pdf/js/pdf-jsimp-mu.lo
THIRD_LIBS += $(MUJS_LIB)
LIBS += $(MUJS_LIBS)
CFLAGS += $(MUJS_CFLAGS)
else ifeq "$(HAVE_JSCORE)" "yes"
-PDF_OBJ += $(OUT)/pdf/js/pdf-js.o
-PDF_OBJ += $(OUT)/pdf/js/pdf-jsimp-jscore.o
+PDF_OBJ += $(OUT)/pdf/js/pdf-js.lo
+PDF_OBJ += $(OUT)/pdf/js/pdf-jsimp-jscore.lo
LIBS += $(JSCORE_LIBS)
CFLAGS += $(JSCORE_CFLAGS)
else ifeq "$(HAVE_V8)" "yes"
-PDF_OBJ += $(OUT)/pdf/js/pdf-js.o
-PDF_OBJ += $(OUT)/pdf/js/pdf-jsimp-cpp.o $(OUT)/pdf/js/pdf-jsimp-v8.o
+PDF_OBJ += $(OUT)/pdf/js/pdf-js.lo
+PDF_OBJ += $(OUT)/pdf/js/pdf-jsimp-cpp.lo $(OUT)/pdf/js/pdf-jsimp-v8.lo
LIBS += $(V8_LIBS)
CFLAGS += $(V8_CFLAGS)
else
-PDF_OBJ += $(OUT)/pdf/js/pdf-js-none.o
+PDF_OBJ += $(OUT)/pdf/js/pdf-js-none.lo
endif
$(FITZ_OBJ) : $(FITZ_HDR) $(FITZ_SRC_HDR)
@@ -123,44 +113,47 @@ $(HTML_OBJ) : $(FITZ_HDR) $(HTML_HDR) $(
# --- Library ---
-MUPDF_LIB := $(OUT)/libmupdf.a
+MUPDF_LIB := $(OUT)/libmupdf.la
$(MUPDF_LIB) : $(FITZ_OBJ) $(PDF_OBJ) $(XPS_OBJ) $(CBZ_OBJ) $(HTML_OBJ)
INSTALL_LIBS := $(MUPDF_LIB)
+ifeq "$(HAVE_MUJS)" "yes"
+INSTALL_LIBS += $(MUJS_LIB)
+endif
# --- Rules ---
$(ALL_DIR) $(OUT) $(GEN) :
$(MKDIR_CMD)
-$(OUT)/%.a :
+$(OUT)/%.la :
$(RM_CMD)
$(AR_CMD)
$(RANLIB_CMD)
-$(OUT)/%: $(OUT)/%.o
+$(OUT)/%: $(OUT)/%.lo
$(LINK_CMD)
-$(OUT)/%.o : source/%.c | $(ALL_DIR)
+$(OUT)/%.lo : source/%.c | $(ALL_DIR)
$(CC_CMD)
-$(OUT)/%.o : source/%.cpp | $(ALL_DIR)
+$(OUT)/%.lo : source/%.cpp | $(ALL_DIR)
$(CXX_CMD)
-$(OUT)/%.o : scripts/%.c | $(OUT)
+$(OUT)/%.lo : scripts/%.c | $(OUT)
$(CC_CMD)
-$(OUT)/platform/x11/%.o : platform/x11/%.c | $(ALL_DIR)
+$(OUT)/platform/x11/%.lo : platform/x11/%.c | $(ALL_DIR)
$(CC_CMD) $(X11_CFLAGS)
-$(OUT)/platform/x11/%.o: platform/x11/%.rc | $(OUT)
+$(OUT)/platform/x11/%.lo: platform/x11/%.rc | $(OUT)
windres $< $@
-$(OUT)/platform/x11/curl/%.o : platform/x11/%.c | $(ALL_DIR)
+$(OUT)/platform/x11/curl/%.lo : platform/x11/%.c | $(ALL_DIR)
$(CC_CMD) $(X11_CFLAGS) $(CURL_CFLAGS) -DHAVE_CURL
-.PRECIOUS : $(OUT)/%.o # Keep intermediates from chained rules
+.PRECIOUS : $(OUT)/%.lo # Keep intermediates from chained rules
# --- Generated CMAP, FONT and JAVASCRIPT files ---
@@ -224,24 +217,24 @@ endif
generate: $(CMAP_GEN) $(FONT_GEN) $(JAVASCRIPT_GEN) $(ADOBECA_GEN) $(NAME_GEN)
-$(OUT)/pdf/pdf-cmap-table.o : $(CMAP_GEN)
-$(OUT)/pdf/pdf-fontfile.o : $(FONT_GEN)
-$(OUT)/pdf/pdf-pkcs7.o : $(ADOBECA_GEN)
-$(OUT)/pdf/js/pdf-js.o : $(JAVASCRIPT_GEN)
-$(OUT)/pdf/pdf-object.o : source/pdf/pdf-name-table.h
-$(OUT)/cmapdump.o : include/mupdf/pdf/cmap.h source/pdf/pdf-cmap.c source/pdf/pdf-cmap-parse.c source/pdf/pdf-name-table.h
+$(OUT)/pdf/pdf-cmap-table.lo : $(CMAP_GEN)
+$(OUT)/pdf/pdf-fontfile.lo : $(FONT_GEN)
+$(OUT)/pdf/pdf-pkcs7.lo : $(ADOBECA_GEN)
+$(OUT)/pdf/js/pdf-js.lo : $(JAVASCRIPT_GEN)
+$(OUT)/pdf/pdf-object.lo : source/pdf/pdf-name-table.h
+$(OUT)/cmapdump.lo : include/mupdf/pdf/cmap.h source/pdf/pdf-cmap.c source/pdf/pdf-cmap-parse.c source/pdf/pdf-name-table.h
# --- Tools and Apps ---
MUDRAW := $(addprefix $(OUT)/, mudraw)
-MUDRAW_OBJ := $(addprefix $(OUT)/tools/, mudraw.o)
+MUDRAW_OBJ := $(addprefix $(OUT)/tools/, mudraw.lo)
$(MUDRAW_OBJ) : $(FITZ_HDR) $(PDF_HDR)
$(MUDRAW) : $(MUPDF_LIB) $(THIRD_LIBS)
$(MUDRAW) : $(MUDRAW_OBJ)
$(LINK_CMD)
MUTOOL := $(addprefix $(OUT)/, mutool)
-MUTOOL_OBJ := $(addprefix $(OUT)/tools/, mutool.o pdfclean.o pdfextract.o pdfinfo.o pdfposter.o pdfshow.o pdfpages.o)
+MUTOOL_OBJ := $(addprefix $(OUT)/tools/, mutool.lo pdfclean.lo pdfextract.lo pdfinfo.lo pdfposter.lo pdfshow.lo pdfpages.lo)
$(MUTOOL_OBJ): $(FITZ_HDR) $(PDF_HDR)
$(MUTOOL) : $(MUPDF_LIB) $(THIRD_LIBS)
$(MUTOOL) : $(MUTOOL_OBJ)
@@ -249,27 +242,27 @@ $(MUTOOL) : $(MUTOOL_OBJ)
MJSGEN := $(OUT)/mjsgen
$(MJSGEN) : $(MUPDF_LIB) $(THIRD_LIBS)
-$(MJSGEN) : $(addprefix $(OUT)/tools/, mjsgen.o)
+$(MJSGEN) : $(addprefix $(OUT)/tools/, mjsgen.lo)
$(LINK_CMD)
MUJSTEST := $(OUT)/mujstest
-MUJSTEST_OBJ := $(addprefix $(OUT)/platform/x11/, jstest_main.o pdfapp.o)
+MUJSTEST_OBJ := $(addprefix $(OUT)/platform/x11/, jstest_main.lo pdfapp.lo)
$(MUJSTEST_OBJ) : $(FITZ_HDR) $(PDF_HDR)
$(MUJSTEST) : $(MUPDF_LIB) $(THIRD_LIBS)
$(MUJSTEST) : $(MUJSTEST_OBJ)
$(LINK_CMD)
ifeq "$(HAVE_X11)" "yes"
-MUVIEW_X11 := $(OUT)/mupdf-x11
-MUVIEW_X11_OBJ := $(addprefix $(OUT)/platform/x11/, x11_main.o x11_image.o pdfapp.o)
+MUVIEW_X11 := $(OUT)/platform/x11/mupdf
+MUVIEW_X11_OBJ := $(addprefix $(OUT)/platform/x11/, x11_main.lo x11_image.lo pdfapp.lo)
$(MUVIEW_X11_OBJ) : $(FITZ_HDR) $(PDF_HDR)
$(MUVIEW_X11) : $(MUPDF_LIB) $(THIRD_LIBS)
$(MUVIEW_X11) : $(MUVIEW_X11_OBJ)
$(LINK_CMD) $(X11_LIBS)
ifeq "$(HAVE_CURL)" "yes"
-MUVIEW_X11_CURL := $(OUT)/mupdf-x11-curl
-MUVIEW_X11_CURL_OBJ := $(addprefix $(OUT)/platform/x11/curl/, x11_main.o x11_image.o pdfapp.o curl_stream.o)
+MUVIEW_X11_CURL := $(OUT)/platform/x11/curl/mupdf
+MUVIEW_X11_CURL_OBJ := $(addprefix $(OUT)/platform/x11/curl/, x11_main.lo x11_image.lo pdfapp.lo curl_stream.lo)
$(MUVIEW_X11_CURL_OBJ) : $(FITZ_HDR) $(PDF_HDR)
$(MUVIEW_X11_CURL) : $(MUPDF_LIB) $(THIRD_LIBS) $(CURL_LIB)
$(MUVIEW_X11_CURL) : $(MUVIEW_X11_CURL_OBJ)
@@ -279,7 +272,7 @@ endif
ifeq "$(HAVE_WIN32)" "yes"
MUVIEW_WIN32 := $(OUT)/mupdf
-MUVIEW_WIN32_OBJ := $(addprefix $(OUT)/platform/x11/, win_main.o pdfapp.o win_res.o)
+MUVIEW_WIN32_OBJ := $(addprefix $(OUT)/platform/x11/, win_main.lo pdfapp.lo win_res.lo)
$(MUVIEW_WIN32_OBJ) : $(FITZ_HDR) $(PDF_HDR)
$(MUVIEW_WIN32) : $(MUPDF_LIB) $(THIRD_LIBS)
$(MUVIEW_WIN32) : $(MUVIEW_WIN32_OBJ)
@@ -289,7 +282,12 @@ endif
MUVIEW := $(MUVIEW_X11) $(MUVIEW_WIN32)
MUVIEW_CURL := $(MUVIEW_X11_CURL) $(MUVIEW_WIN32_CURL)
-INSTALL_APPS := $(MUDRAW) $(MUTOOL) $(MUVIEW) $(MUJSTEST) $(MUVIEW_CURL)
+INSTALL_APPS := $(MUDRAW) $(MUTOOL) $(MUJSTEST)
+ifeq "$(HAVE_CURL)" "yes"
+INSTALL_APPS += $(MUVIEW_CURL)
+else ifeq "$(HAVE_X11)" "yes"
+INSTALL_APPS += $(MUVIEW)
+endif
# --- Examples ---
@@ -331,24 +329,26 @@ libs: $(INSTALL_LIBS)
apps: $(INSTALL_APPS)
install: libs apps
- install -d $(DESTDIR)$(incdir)/mupdf
- install -d $(DESTDIR)$(incdir)/mupdf/fitz
- install -d $(DESTDIR)$(incdir)/mupdf/pdf
- install include/mupdf/*.h $(DESTDIR)$(incdir)/mupdf
- install include/mupdf/fitz/*.h $(DESTDIR)$(incdir)/mupdf/fitz
- install include/mupdf/pdf/*.h $(DESTDIR)$(incdir)/mupdf/pdf
-
- install -d $(DESTDIR)$(libdir)
- install $(INSTALL_LIBS) $(DESTDIR)$(libdir)
-
- install -d $(DESTDIR)$(bindir)
- install $(INSTALL_APPS) $(DESTDIR)$(bindir)
+ ${BSD_INSTALL_DATA_DIR} $(DESTDIR)$(incdir) $(DESTDIR)$(incdir)/mupdf $(DESTDIR)$(incdir)/mupdf/fitz $(DESTDIR)$(incdir)/mupdf/pdf
+ ${BSD_INSTALL_DATA} include/mupdf/*.h $(DESTDIR)$(incdir)/mupdf
+ ${BSD_INSTALL_DATA} include/mupdf/fitz/*.h $(DESTDIR)$(incdir)/mupdf/fitz
+ ${BSD_INSTALL_DATA} include/mupdf/pdf/*.h $(DESTDIR)$(incdir)/mupdf/pdf
+
+ ${BSD_INSTALL_LIB_DIR} $(DESTDIR)$(libdir)
+ for f in $(INSTALL_LIBS); do \
+ ${LIBTOOL} --mode=install ${BSD_INSTALL_LIB} $$f $(DESTDIR)$(libdir); \
+ done
+
+ ${BSD_INSTALL_PROGRAM_DIR} $(DESTDIR)$(bindir)
+ for f in $(INSTALL_APPS); do \
+ ${LIBTOOL} --mode=install ${BSD_INSTALL_PROGRAM} $$f $(DESTDIR)$(bindir); \
+ done
- install -d $(DESTDIR)$(mandir)/man1
- install docs/man/*.1 $(DESTDIR)$(mandir)/man1
+ ${BSD_INSTALL_MAN_DIR} $(DESTDIR)$(mandir)/man1
+ ${BSD_INSTALL_MAN} docs/man/*.1 $(DESTDIR)$(mandir)/man1
- install -d $(DESTDIR)$(docdir)
- install README COPYING CHANGES docs/*.txt $(DESTDIR)$(docdir)
+ ${BSD_INSTALL_DATA_DIR} $(DESTDIR)$(docdir)
+ ${BSD_INSTALL_DATA} README COPYING CHANGES docs/*.txt $(DESTDIR)$(docdir)
tarball:
bash scripts/archive.sh