aboutsummaryrefslogtreecommitdiffstats
path: root/make
diff options
context:
space:
mode:
authorJay Berkenbilt <ejb@ql.org>2009-10-11 02:24:22 +0200
committerJay Berkenbilt <ejb@ql.org>2009-10-11 02:24:22 +0200
commit2b5ac676ed1cbde1092d41acf0775b1c8d9a2baf (patch)
tree0d3a5ebe8e83f80dbc6e808efa6abc7c3921b5d9 /make
parent9e05a15d7b3ed099fcc605b782c1f0ca6326dde2 (diff)
downloadqpdf-2b5ac676ed1cbde1092d41acf0775b1c8d9a2baf.tar.zst
generalize build
git-svn-id: svn+q:///qpdf/trunk@776 71b93d88-0707-0410-a8cf-f5a4172ac649
Diffstat (limited to 'make')
-rw-r--r--make/gcc-linux.mk17
-rw-r--r--make/libtool.mk16
-rw-r--r--make/mingw.mk17
-rw-r--r--make/msvc.mk25
4 files changed, 36 insertions, 39 deletions
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; \