diff options
author | Tor Andersson <tor.andersson@artifex.com> | 2011-04-05 12:04:13 +0200 |
---|---|---|
committer | Tor Andersson <tor.andersson@artifex.com> | 2011-04-05 12:04:13 +0200 |
commit | c61a13b445c2d4d7b6468a0f2fe7ab998e210e90 (patch) | |
tree | 358cc5fc883fdf34f8fecad0965d5fc5426e75c3 | |
parent | 68f9077504d387a396efd0af6b8ee4147c3451f3 (diff) | |
download | mupdf-c61a13b445c2d4d7b6468a0f2fe7ab998e210e90.tar.xz |
Makefile tweaks.
-rw-r--r-- | Makefile | 44 | ||||
-rw-r--r-- | Makethird | 204 | ||||
-rw-r--r-- | draw/draw_device.c (renamed from fitz/dev_draw.c) | 0 |
3 files changed, 130 insertions, 118 deletions
@@ -50,10 +50,10 @@ AR_CMD = rm -f $@ && $(AR) cru $@ $^ else -GENFILE_CMD = @ echo GENFILE $@ && $(firstword $^) $@ $(wordlist 2, 999, $^) -CC_CMD = @ echo CC $@ && $(CC) -o $@ -c $< $(CFLAGS) -LD_CMD = @ echo LD $@ && $(CC) -o $@ $^ $(LDFLAGS) $(LIBS) -AR_CMD = @ echo AR $@ && rm -f $@ && $(AR) cru $@ $^ +GENFILE_CMD = @ echo " GENFILE" $@ && $(firstword $^) $@ $(wordlist 2, 999, $^) +CC_CMD = @ echo " CC" $@ && $(CC) -o $@ -c $< $(CFLAGS) +LD_CMD = @ echo " LD" $@ && $(CC) -o $@ $^ $(LDFLAGS) $(LIBS) +AR_CMD = @ echo " AR" $@ && rm -f $@ && $(AR) cru $@ $^ endif @@ -87,7 +87,6 @@ FITZ_SRC := \ fitz/crypt_md5.c \ fitz/crypt_sha2.c \ fitz/dev_bbox.c \ - fitz/dev_draw.c \ fitz/dev_list.c \ fitz/dev_null.c \ fitz/dev_text.c \ @@ -120,6 +119,7 @@ DRAW_SRC := $(DRAW_ARCH_SRC) \ draw/arch_port.c \ draw/draw_affine.c \ draw/draw_blend.c \ + draw/draw_device.c \ draw/draw_edge.c \ draw/draw_glyph.c \ draw/draw_mesh.c \ @@ -312,14 +312,26 @@ CMAP_OBJ := $(CMAP_SRC:$(GENDIR)/%.c=$(OBJDIR)/%.o) # Library # +FITZ_LIB = $(OBJDIR)/libfitz.a +$(FITZ_LIB): $(FITZ_OBJ) $(DRAW_OBJ) + $(AR_CMD) + +DATA_LIB = $(OBJDIR)/libmupdfdata.a +$(DATA_LIB): $(CMAP_OBJ) $(FONT_OBJ) + $(AR_CMD) + MUPDF_LIB = $(OBJDIR)/libmupdf.a -$(MUPDF_LIB): $(FITZ_OBJ) $(DRAW_OBJ) $(MUPDF_OBJ) $(CMAP_OBJ) $(FONT_OBJ) +$(MUPDF_LIB): $(MUPDF_OBJ) $(AR_CMD) MUXPS_LIB = $(OBJDIR)/libmuxps.a -$(MUXPS_LIB): $(FITZ_OBJ) $(DRAW_OBJ) $(MUXPS_OBJ) +$(MUXPS_LIB): $(MUXPS_OBJ) $(AR_CMD) +ALL_LIBS = $(MUXPS_LIB) $(MUPDF_LIB) $(DATA_LIB) $(FITZ_LIB) +PDF_LIBS = $(MUPDF_LIB) $(DATA_LIB) $(FITZ_LIB) +XPS_LIBS = $(MUXPS_LIB) $(FITZ_LIB) + # # Applications # @@ -339,42 +351,42 @@ PDFSHOW_SRC=apps/pdfshow.c PDFSHOW_OBJ=$(PDFSHOW_SRC:apps/%.c=$(OBJDIR)/%.o) PDFSHOW_EXE=$(OBJDIR)/pdfshow $(PDFSHOW_OBJ): $(MUPDF_HDR) $(FITZ_HDR) -$(PDFSHOW_EXE): $(PDFSHOW_OBJ) $(MUPDF_LIB) $(THIRD_LIBS) +$(PDFSHOW_EXE): $(PDFSHOW_OBJ) $(PDF_LIBS) $(THIRD_LIBS) $(LD_CMD) PDFCLEAN_SRC=apps/pdfclean.c PDFCLEAN_OBJ=$(PDFCLEAN_SRC:apps/%.c=$(OBJDIR)/%.o) PDFCLEAN_EXE=$(OBJDIR)/pdfclean $(PDFCLEAN_OBJ): $(MUPDF_HDR) $(FITZ_HDR) -$(PDFCLEAN_EXE): $(PDFCLEAN_OBJ) $(MUPDF_LIB) $(THIRD_LIBS) +$(PDFCLEAN_EXE): $(PDFCLEAN_OBJ) $(PDF_LIBS) $(THIRD_LIBS) $(LD_CMD) PDFDRAW_SRC=apps/pdfdraw.c PDFDRAW_OBJ=$(PDFDRAW_SRC:apps/%.c=$(OBJDIR)/%.o) PDFDRAW_EXE=$(OBJDIR)/pdfdraw $(PDFDRAW_OBJ): $(MUPDF_HDR) $(FITZ_HDR) -$(PDFDRAW_EXE): $(PDFDRAW_OBJ) $(MUPDF_LIB) $(THIRD_LIBS) +$(PDFDRAW_EXE): $(PDFDRAW_OBJ) $(PDF_LIBS) $(THIRD_LIBS) $(LD_CMD) PDFEXTRACT_SRC=apps/pdfextract.c PDFEXTRACT_OBJ=$(PDFEXTRACT_SRC:apps/%.c=$(OBJDIR)/%.o) PDFEXTRACT_EXE=$(OBJDIR)/pdfextract $(PDFEXTRACT_OBJ): $(MUPDF_HDR) $(FITZ_HDR) -$(PDFEXTRACT_EXE): $(PDFEXTRACT_OBJ) $(MUPDF_LIB) $(THIRD_LIBS) +$(PDFEXTRACT_EXE): $(PDFEXTRACT_OBJ) $(PDF_LIBS) $(THIRD_LIBS) $(LD_CMD) PDFINFO_SRC=apps/pdfinfo.c PDFINFO_OBJ=$(PDFINFO_SRC:apps/%.c=$(OBJDIR)/%.o) PDFINFO_EXE=$(OBJDIR)/pdfinfo $(PDFINFO_OBJ): $(MUPDF_HDR) $(FITZ_HDR) -$(PDFINFO_EXE): $(PDFINFO_OBJ) $(MUPDF_LIB) $(THIRD_LIBS) +$(PDFINFO_EXE): $(PDFINFO_OBJ) $(PDF_LIBS) $(THIRD_LIBS) $(LD_CMD) XPSDRAW_SRC=apps/xpsdraw.c XPSDRAW_OBJ=$(XPSDRAW_SRC:apps/%.c=$(OBJDIR)/%.o) XPSDRAW_EXE=$(OBJDIR)/xpsdraw $(XPSDRAW_OBJ): $(MUXPS_HDR) $(FITZ_HDR) -$(XPSDRAW_EXE): $(XPSDRAW_OBJ) $(MUXPS_LIB) $(THIRD_LIBS) +$(XPSDRAW_EXE): $(XPSDRAW_OBJ) $(XPS_LIBS) $(THIRD_LIBS) $(LD_CMD) PDFAPP_HDR = apps/pdfapp.h @@ -384,7 +396,7 @@ X11VIEW_OBJ=$(X11VIEW_SRC:apps/%.c=$(OBJDIR)/%.o) X11VIEW_EXE=$(OBJDIR)/mupdf $(X11VIEW_OBJ): $(PDFAPP_HDR) $(MUPDF_HDR) $(MUXPS_HDR) $(FITZ_HDR) -$(X11VIEW_EXE): $(X11VIEW_OBJ) $(MUPDF_LIB) $(MUXPS_LIB) $(THIRD_LIBS) +$(X11VIEW_EXE): $(X11VIEW_OBJ) $(ALL_LIBS) $(THIRD_LIBS) $(LD_CMD) $(X11LIBS) WINVIEW_SRC=apps/win_main.c apps/pdfapp.c @@ -396,7 +408,7 @@ $(OBJDIR)/%.o: apps/%.rc $(WINDRES) -i $< -o $@ --include-dir=apps $(WINVIEW_OBJ): $(PDFAPP_HDR) $(MUPDF_HDR) $(MUXPS_HDR) $(FITZ_HDR) -$(WINVIEW_EXE): $(WINVIEW_OBJ) $(MUPDF_LIB) $(MUXPS_LIB) $(THIRD_LIBS) +$(WINVIEW_EXE): $(WINVIEW_OBJ) $(ALL_LIBS) $(THIRD_LIBS) $(LD_CMD) $(W32LIBS) # @@ -405,7 +417,7 @@ $(WINVIEW_EXE): $(WINVIEW_OBJ) $(MUPDF_LIB) $(MUXPS_LIB) $(THIRD_LIBS) .PHONY: default all pregen clean nuke install -all: $(OBJDIR) $(GENDIR) $(THIRD_LIBS) $(MUPDF_LIB) $(APPS) +all: $(OBJDIR) $(GENDIR) $(THIRD_LIBS) $(FITZ_LIB) $(DATA_LIB) $(MUPDF_LIB) $(MUXPS_LIB) $(APPS) clean: rm -rf $(OBJDIR)/* @@ -4,12 +4,73 @@ # static libraries. Download and unzip the the mupdf-thirdparty.zip archive # in the source directory. -jbig2dec_dir := $(wildcard thirdparty/jbig2dec*) -openjpeg_dir := $(wildcard thirdparty/openjpeg*/libopenjpeg) freetype_dir := $(wildcard thirdparty/freetype*) +jbig2dec_dir := $(wildcard thirdparty/jbig2dec*) jpeg_dir := $(wildcard thirdparty/jpeg*) +openjpeg_dir := $(wildcard thirdparty/openjpeg*/libopenjpeg) zlib_dir := $(wildcard thirdparty/zlib*) +ifneq "$(freetype_dir)" "" + +THIRD_LIBS += $(FREETYPE_LIB) +THIRD_INCS += -I$(freetype_dir)/include +LIBS := $(filter-out -lfreetype, $(LIBS)) + +SYS_FREETYPE_INC := + +FREETYPE_OBJ=$(addprefix $(OBJDIR)/ft_, \ + ftbase.o ftbbox.o ftbitmap.o ftgasp.o ftglyph.o ftinit.o \ + ftstroke.o ftsynth.o ftsystem.o fttype1.o ftxf86.o \ + cff.o type1cid.o psaux.o psnames.o smooth.o sfnt.o truetype.o type1.o ) +FREETYPE_LIB=$(OBJDIR)/libfreetype.a +$(FREETYPE_LIB): $(FREETYPE_OBJ) + $(AR_CMD) + +FTCC_CMD = $(CC_CMD) -DFT2_BUILD_LIBRARY -DDARWIN_NO_CARBON -Iwin32 \ + '-DFT_CONFIG_MODULES_H="slimftmodules.h"' \ + '-DFT_CONFIG_OPTIONS_H="slimftoptions.h"' + +$(OBJDIR)/ft_ftbase.o: $(freetype_dir)/src/base/ftbase.c + $(FTCC_CMD) +$(OBJDIR)/ft_ftbbox.o: $(freetype_dir)/src/base/ftbbox.c + $(FTCC_CMD) +$(OBJDIR)/ft_ftbitmap.o: $(freetype_dir)/src/base/ftbitmap.c + $(FTCC_CMD) +$(OBJDIR)/ft_ftgasp.o: $(freetype_dir)/src/base/ftgasp.c + $(FTCC_CMD) +$(OBJDIR)/ft_ftglyph.o: $(freetype_dir)/src/base/ftglyph.c + $(FTCC_CMD) +$(OBJDIR)/ft_ftinit.o: $(freetype_dir)/src/base/ftinit.c + $(FTCC_CMD) +$(OBJDIR)/ft_ftstroke.o: $(freetype_dir)/src/base/ftstroke.c + $(FTCC_CMD) +$(OBJDIR)/ft_ftsynth.o: $(freetype_dir)/src/base/ftsynth.c + $(FTCC_CMD) +$(OBJDIR)/ft_ftsystem.o: $(freetype_dir)/src/base/ftsystem.c + $(FTCC_CMD) +$(OBJDIR)/ft_fttype1.o: $(freetype_dir)/src/base/fttype1.c + $(FTCC_CMD) +$(OBJDIR)/ft_ftxf86.o: $(freetype_dir)/src/base/ftxf86.c + $(FTCC_CMD) +$(OBJDIR)/ft_cff.o: $(freetype_dir)/src/cff/cff.c + $(FTCC_CMD) +$(OBJDIR)/ft_type1cid.o: $(freetype_dir)/src/cid/type1cid.c + $(FTCC_CMD) +$(OBJDIR)/ft_psaux.o: $(freetype_dir)/src/psaux/psaux.c + $(FTCC_CMD) +$(OBJDIR)/ft_psnames.o: $(freetype_dir)/src/psnames/psnames.c + $(FTCC_CMD) +$(OBJDIR)/ft_smooth.o: $(freetype_dir)/src/smooth/smooth.c + $(FTCC_CMD) +$(OBJDIR)/ft_sfnt.o: $(freetype_dir)/src/sfnt/sfnt.c + $(FTCC_CMD) +$(OBJDIR)/ft_truetype.o: $(freetype_dir)/src/truetype/truetype.c + $(FTCC_CMD) +$(OBJDIR)/ft_type1.o: $(freetype_dir)/src/type1/type1.c + $(FTCC_CMD) + +endif + ifneq "$(jbig2dec_dir)" "" THIRD_LIBS += $(JBIG2DEC_LIB) @@ -40,45 +101,6 @@ $(OBJDIR)/%.o: $(jbig2dec_dir)/%.c endif -ifneq "$(openjpeg_dir)" "" - -THIRD_LIBS += $(OPENJPEG_LIB) -THIRD_INCS += -I$(openjpeg_dir) -LIBS := $(filter-out -lopenjpeg, $(LIBS)) - -# opj_config.h does not exist in the pristine source -$(OBJDIR)/opj_config.h: - cp $(openjpeg_dir)/../opj_config.h.in.user $@ - -OPENJPEG_SRC=$(addprefix $(openjpeg_dir)/, \ - bio.c \ - cio.c \ - dwt.c \ - event.c \ - image.c \ - j2k.c \ - j2k_lib.c \ - jp2.c \ - jpt.c \ - mct.c \ - mqc.c \ - openjpeg.c \ - pi.c \ - raw.c \ - t1.c \ - t2.c \ - tcd.c \ - tgt.c ) -OPENJPEG_OBJ=$(OPENJPEG_SRC:$(openjpeg_dir)/%.c=$(OBJDIR)/opj_%.o) -OPENJPEG_LIB=$(OBJDIR)/libopenjpeg.a -$(OPENJPEG_OBJ): $(OBJDIR)/opj_config.h -$(OPENJPEG_LIB): $(OPENJPEG_OBJ) - $(AR_CMD) -$(OBJDIR)/opj_%.o: $(openjpeg_dir)/%.c - $(CC_CMD) -I$(OBJDIR) -DOPJ_STATIC - -endif - ifneq "$(jpeg_dir)" "" THIRD_LIBS += $(JPEG_LIB) @@ -131,6 +153,45 @@ $(OBJDIR)/jpeg_%.o: $(jpeg_dir)/%.c endif +ifneq "$(openjpeg_dir)" "" + +THIRD_LIBS += $(OPENJPEG_LIB) +THIRD_INCS += -I$(openjpeg_dir) +LIBS := $(filter-out -lopenjpeg, $(LIBS)) + +# opj_config.h does not exist in the pristine source +$(OBJDIR)/opj_config.h: + cp $(openjpeg_dir)/../opj_config.h.in.user $@ + +OPENJPEG_SRC=$(addprefix $(openjpeg_dir)/, \ + bio.c \ + cio.c \ + dwt.c \ + event.c \ + image.c \ + j2k.c \ + j2k_lib.c \ + jp2.c \ + jpt.c \ + mct.c \ + mqc.c \ + openjpeg.c \ + pi.c \ + raw.c \ + t1.c \ + t2.c \ + tcd.c \ + tgt.c ) +OPENJPEG_OBJ=$(OPENJPEG_SRC:$(openjpeg_dir)/%.c=$(OBJDIR)/opj_%.o) +OPENJPEG_LIB=$(OBJDIR)/libopenjpeg.a +$(OPENJPEG_OBJ): $(OBJDIR)/opj_config.h +$(OPENJPEG_LIB): $(OPENJPEG_OBJ) + $(AR_CMD) +$(OBJDIR)/opj_%.o: $(openjpeg_dir)/%.c + $(CC_CMD) -I$(OBJDIR) -DOPJ_STATIC + +endif + ifneq "$(zlib_dir)" "" THIRD_LIBS += $(ZLIB_LIB) @@ -156,64 +217,3 @@ $(OBJDIR)/zlib_%.o: $(zlib_dir)/%.c $(CC_CMD) endif - -ifneq "$(freetype_dir)" "" - -THIRD_LIBS += $(FREETYPE_LIB) -THIRD_INCS += -I$(freetype_dir)/include -LIBS := $(filter-out -lfreetype, $(LIBS)) - -SYS_FREETYPE_INC := - -FREETYPE_OBJ=$(addprefix $(OBJDIR)/ft_, \ - ftbase.o ftbbox.o ftbitmap.o ftgasp.o ftglyph.o ftinit.o \ - ftstroke.o ftsynth.o ftsystem.o fttype1.o ftxf86.o \ - cff.o type1cid.o psaux.o psnames.o smooth.o sfnt.o truetype.o type1.o ) -FREETYPE_LIB=$(OBJDIR)/libfreetype.a -$(FREETYPE_LIB): $(FREETYPE_OBJ) - $(AR_CMD) - -FTCC_CMD = $(CC_CMD) -DFT2_BUILD_LIBRARY -DDARWIN_NO_CARBON -Iwin32 \ - '-DFT_CONFIG_MODULES_H="slimftmodules.h"' \ - '-DFT_CONFIG_OPTIONS_H="slimftoptions.h"' - -$(OBJDIR)/ft_ftbase.o: $(freetype_dir)/src/base/ftbase.c - $(FTCC_CMD) -$(OBJDIR)/ft_ftbbox.o: $(freetype_dir)/src/base/ftbbox.c - $(FTCC_CMD) -$(OBJDIR)/ft_ftbitmap.o: $(freetype_dir)/src/base/ftbitmap.c - $(FTCC_CMD) -$(OBJDIR)/ft_ftgasp.o: $(freetype_dir)/src/base/ftgasp.c - $(FTCC_CMD) -$(OBJDIR)/ft_ftglyph.o: $(freetype_dir)/src/base/ftglyph.c - $(FTCC_CMD) -$(OBJDIR)/ft_ftinit.o: $(freetype_dir)/src/base/ftinit.c - $(FTCC_CMD) -$(OBJDIR)/ft_ftstroke.o: $(freetype_dir)/src/base/ftstroke.c - $(FTCC_CMD) -$(OBJDIR)/ft_ftsynth.o: $(freetype_dir)/src/base/ftsynth.c - $(FTCC_CMD) -$(OBJDIR)/ft_ftsystem.o: $(freetype_dir)/src/base/ftsystem.c - $(FTCC_CMD) -$(OBJDIR)/ft_fttype1.o: $(freetype_dir)/src/base/fttype1.c - $(FTCC_CMD) -$(OBJDIR)/ft_ftxf86.o: $(freetype_dir)/src/base/ftxf86.c - $(FTCC_CMD) -$(OBJDIR)/ft_cff.o: $(freetype_dir)/src/cff/cff.c - $(FTCC_CMD) -$(OBJDIR)/ft_type1cid.o: $(freetype_dir)/src/cid/type1cid.c - $(FTCC_CMD) -$(OBJDIR)/ft_psaux.o: $(freetype_dir)/src/psaux/psaux.c - $(FTCC_CMD) -$(OBJDIR)/ft_psnames.o: $(freetype_dir)/src/psnames/psnames.c - $(FTCC_CMD) -$(OBJDIR)/ft_smooth.o: $(freetype_dir)/src/smooth/smooth.c - $(FTCC_CMD) -$(OBJDIR)/ft_sfnt.o: $(freetype_dir)/src/sfnt/sfnt.c - $(FTCC_CMD) -$(OBJDIR)/ft_truetype.o: $(freetype_dir)/src/truetype/truetype.c - $(FTCC_CMD) -$(OBJDIR)/ft_type1.o: $(freetype_dir)/src/type1/type1.c - $(FTCC_CMD) - -endif diff --git a/fitz/dev_draw.c b/draw/draw_device.c index 05f96f28..05f96f28 100644 --- a/fitz/dev_draw.c +++ b/draw/draw_device.c |