diff options
-rw-r--r-- | examples/build.mk | 2 | ||||
-rw-r--r-- | external-libs/build.mk | 3 | ||||
-rw-r--r-- | libqpdf/build.mk | 4 | ||||
-rw-r--r-- | libtests/build.mk | 2 | ||||
-rw-r--r-- | make/gcc-linux.mk | 17 | ||||
-rw-r--r-- | make/libtool.mk | 16 | ||||
-rw-r--r-- | make/mingw.mk | 17 | ||||
-rw-r--r-- | make/msvc.mk | 25 | ||||
-rw-r--r-- | qpdf/build.mk | 2 | ||||
-rw-r--r-- | zlib-flate/build.mk | 2 |
10 files changed, 44 insertions, 46 deletions
diff --git a/examples/build.mk b/examples/build.mk index 41053798..404d40ce 100644 --- a/examples/build.mk +++ b/examples/build.mk @@ -31,4 +31,4 @@ $(foreach B,$(CBINS_examples),$(eval \ $(foreach B,$(BINS_examples) $(CBINS_examples),$(eval \ examples/$(OUTPUT_DIR)/$(call binname,$(B)): $(OBJS_$(B)) ; \ - $(call makebin,$(OBJS_$(B)),$$@))) + $(call makebin,$(OBJS_$(B)),$$@,$(LDFLAGS) $(LDFLAGS_libqpdf),$(LIBS) $(LIBS_libqpdf)))) diff --git a/external-libs/build.mk b/external-libs/build.mk index 9dfa0bce..597d3a6e 100644 --- a/external-libs/build.mk +++ b/external-libs/build.mk @@ -54,6 +54,5 @@ OBJS_dftables = $(call c_src_to_obj,external-libs/pcre/dftables.c) $(OBJS_dftables): external-libs/pcre/dftables.c $(call c_compile,$<,) -external-libs/$(OUTPUT_DIR)/$(call binname,dftables): LIBS= external-libs/$(OUTPUT_DIR)/$(call binname,dftables): $(OBJS_dftables) - $(call makebin,$(OBJS_dftables),$@) + $(call makebin,$(OBJS_dftables),$@,,) diff --git a/libqpdf/build.mk b/libqpdf/build.mk index 03408e06..6d6b3ae7 100644 --- a/libqpdf/build.mk +++ b/libqpdf/build.mk @@ -3,6 +3,8 @@ TARGETS_libqpdf = libqpdf/$(OUTPUT_DIR)/$(call libname,qpdf) $(TARGETS_libqpdf): $(TARGETS_external-libs) INCLUDES_libqpdf = include libqpdf $(INCLUDES_external-libs) +LDFLAGS_libqpdf = -Llibqpdf/$(OUTPUT_DIR) +LIBS_libqpdf = -lqpdf SRCS_libqpdf = \ libqpdf/BitStream.cc \ @@ -70,4 +72,4 @@ $(OBJS_libqpdf): libqpdf/$(OUTPUT_DIR)/%.$(LOBJ): libqpdf/%.cc # * Otherwise, increment REVISION $(TARGETS_libqpdf): $(OBJS_libqpdf) - $(call makelib,$(OBJS_libqpdf),$@,3,0,0) + $(call makelib,$(OBJS_libqpdf),$@,$(LDFLAGS),$(LIBS),3,0,0) diff --git a/libtests/build.mk b/libtests/build.mk index e4fc7ae3..8b996fb8 100644 --- a/libtests/build.mk +++ b/libtests/build.mk @@ -36,4 +36,4 @@ $(foreach B,$(BINS_libtests),$(eval \ $(foreach B,$(BINS_libtests),$(eval \ libtests/$(OUTPUT_DIR)/$(call binname,$(B)): $(OBJS_$(B)) ; \ - $(call makebin,$(OBJS_$(B)),$$@))) + $(call makebin,$(OBJS_$(B)),$$@,$(LDFLAGS) $(LDFLAGS_libqpdf),$(LIBS) $(LIBS_libqpdf)))) diff --git a/make/gcc-linux.mk b/make/gcc-linux.mk index f24013e8..6450ce75 100644 --- a/make/gcc-linux.mk +++ b/make/gcc-linux.mk @@ -62,22 +62,21 @@ define makeslib $(RANLIB) $(2) endef -# 1 2 3 4 5 -# Usage: $(call makelib,objs,library,current,revision,age) +# 1 2 3 4 5 6 7 +# Usage: $(call makelib,objs,library,ldflags,libs,current,revision,age) define makelib $(RM) $(2) $(2).* - major=$$(( $(3) - $(5))); \ - versuffix=$$major.$5.$4; \ + major=$$(( $(5) - $(7))); \ + versuffix=$$major.$(7).$(6); \ $(CXX) $(CXXFLAGS) -shared -o $(2).$$versuffix $(1) \ -Wl,--soname -Wl,`basename $(2)`.$$major \ - $(LDFLAGS) $(LIBS); \ + $(3) $(4); \ ln -s `basename $(2)`.$$versuffix $(2); \ ln -s `basename $(2)`.$$versuffix $(2).$$major endef -# 1 2 -# Usage: $(call makebin,objs,binary) +# 1 2 3 4 +# Usage: $(call makebin,objs,binary,ldflags,libs) define makebin - $(CXX) $(CXXFLAGS) $(1) -o $(2) $(LDFLAGS) \ - -Llibqpdf/$(OUTPUT_DIR) -lqpdf $(LIBS) + $(CXX) $(CXXFLAGS) $(1) -o $(2) $(LDFLAGS) $(3) $(4) endef diff --git a/make/libtool.mk b/make/libtool.mk index bc4ec120..3211b604 100644 --- a/make/libtool.mk +++ b/make/libtool.mk @@ -76,18 +76,16 @@ define makeslib $(RANLIB) $(2) endef -# 1 2 3 4 5 -# Usage: $(call makelib,objs,library,current,revision,age) +# 1 2 3 4 5 6 7 +# Usage: $(call makelib,objs,library,ldflags,libs,current,revision,age) define makelib $(LIBTOOL) --mode=link \ - $(CXX) $(CXXFLAGS) -o $(2) $(1) $(LDFLAGS) $(LIBS) \ - -rpath $(libdir) -version-info $(3):$(4):$(5) + $(CXX) $(CXXFLAGS) -o $(2) $(1) $(3) $(4) \ + -rpath $(libdir) -version-info $(5):$(6):$(7) endef -# 1 2 -# Usage: $(call makebin,objs,binary) +# 1 2 3 4 +# Usage: $(call makebin,objs,binary,ldflags,libs) define makebin - $(LIBTOOL) --mode=link \ - $(CXX) $(CXXFLAGS) $(1) -o $(2) $(LDFLAGS) \ - -Llibqpdf/$(OUTPUT_DIR) -lqpdf $(LIBS) + $(LIBTOOL) --mode=link $(CXX) $(CXXFLAGS) $(1) -o $(2) $(3) $(4) endef diff --git a/make/mingw.mk b/make/mingw.mk index f0442c96..ae599393 100644 --- a/make/mingw.mk +++ b/make/mingw.mk @@ -44,17 +44,16 @@ define makeslib $(RANLIB) $(2) endef -# 1 2 3 4 5 -# Usage: $(call makelib,objs,library,current,revision,age) +# 1 2 3 4 5 6 7 +# Usage: $(call makelib,objs,library,ldflags,libs,current,revision,age) define makelib - dlltool -l $(2) -D $$(basename `echo $(2) | sed -e 's,/lib\(.*\).a,/\1,'`$(3).dll) $(1); \ - $(CXX) -shared -o `echo $(2) | sed -e 's,/lib\(.*\).a,/\1,'`$(3).dll \ - $(1) $(LDFLAGS) $(LIBS) + dlltool -l $(2) -D $$(basename `echo $(2) | sed -e 's,/lib\(.*\).a,/\1,'`$(5).dll) $(1); \ + $(CXX) -shared -o `echo $(2) | sed -e 's,/lib\(.*\).a,/\1,'`$(5).dll \ + $(1) $(3) $(4) endef -# 1 2 -# Usage: $(call makebin,objs,binary) +# 1 2 3 4 +# Usage: $(call makebin,objs,binary,ldflags,libs) define makebin - $(CXX) $(CXXFLAGS) $(1) -o $(2) $(LDFLAGS) \ - -Llibqpdf/$(OUTPUT_DIR) -lqpdf $(LIBS) + $(CXX) $(CXXFLAGS) $(1) -o $(2) $(3) $(4) endef diff --git a/make/msvc.mk b/make/msvc.mk index b60abc03..c5961c03 100644 --- a/make/msvc.mk +++ b/make/msvc.mk @@ -40,26 +40,27 @@ define makeslib lib /nologo /OUT:$(2) $(1) endef -# 1 2 3 4 5 -# Usage: $(call makelib,objs,library,current,revision,age) +# 1 2 3 4 5 6 7 +# Usage: $(call makelib,objs,library,ldflags,libs,current,revision,age) define makelib - cl /nologo /Zi /Gy /EHsc /MD /LD /Fe$(basename $(2))$(3).dll $(1) \ + cl /nologo /Zi /Gy /EHsc /MD /LD /Fe$(basename $(2))$(5).dll $(1) \ /link /incremental:no \ - $(foreach L,$(subst -L,,$(LDFLAGS)),/LIBPATH:$(L)) \ - $(foreach L,$(subst -l,,$(LIBS)),$(L).lib) - if [ -f $(basename $(2))$(3).dll.manifest ]; then \ - mt.exe -nologo -manifest $(basename $(2))$(3).dll.manifest \ - -outputresource:$(basename $(2))$(3).dll\;2; \ + $(foreach L,$(subst -L,,$(3)),/LIBPATH:$(L)) \ + $(foreach L,$(subst -l,,$(4)),$(L).lib) + if [ -f $(basename $(2))$(5).dll.manifest ]; then \ + mt.exe -nologo -manifest $(basename $(2))$(5).dll.manifest \ + -outputresource:$(basename $(2))$(5).dll\;2; \ fi + mv $(2)$(5).lib $(2).lib endef -# 1 2 -# Usage: $(call makebin,objs,binary) +# 1 2 3 4 +# Usage: $(call makebin,objs,binary,ldflags,libs) define makebin cl /nologo /Zi /Gy /EHsc /MD $(1) \ /link /incremental:no /OUT:$(2) \ - $(foreach L,$(subst -L,,$(LDFLAGS)),/LIBPATH:$(L)) \ - $(foreach L,$(subst -l,,$(LIBS)),$(L).lib) + $(foreach L,$(subst -L,,$(3)),/LIBPATH:$(L)) \ + $(foreach L,$(subst -l,,$(4)),$(L).lib) if [ -f $(2).manifest ]; then \ mt.exe -nologo -manifest $(2).manifest \ -outputresource:$(2)\;2; \ diff --git a/qpdf/build.mk b/qpdf/build.mk index bf9e6e51..4c0f0e76 100644 --- a/qpdf/build.mk +++ b/qpdf/build.mk @@ -30,4 +30,4 @@ $(foreach B,$(CBINS_qpdf),$(eval \ $(foreach B,$(BINS_qpdf) $(CBINS_qpdf),$(eval \ qpdf/$(OUTPUT_DIR)/$(call binname,$(B)): $(OBJS_$(B)) ; \ - $(call makebin,$(OBJS_$(B)),$$@))) + $(call makebin,$(OBJS_$(B)),$$@,$(LDFLAGS) $(LDFLAGS_libqpdf),$(LIBS) $(LIBS_libqpdf)))) diff --git a/zlib-flate/build.mk b/zlib-flate/build.mk index f4cca29d..955489b1 100644 --- a/zlib-flate/build.mk +++ b/zlib-flate/build.mk @@ -19,4 +19,4 @@ $(OBJS_zlib-flate): zlib-flate/$(OUTPUT_DIR)/%.$(OBJ): zlib-flate/%.cc $(call compile,$<,$(INCLUDES_zlib-flate)) zlib-flate/$(OUTPUT_DIR)/$(call binname,zlib-flate): $(OBJS_zlib-flate) - $(call makebin,$(OBJS_zlib-flate),$@) + $(call makebin,$(OBJS_zlib-flate),$@,$(LDFLAGS) $(LDFLAGS_libqpdf),$(LIBS) $(LIBS_libqpdf)) |