aboutsummaryrefslogtreecommitdiffstats
path: root/make
diff options
context:
space:
mode:
authorJay Berkenbilt <ejb@ql.org>2009-10-10 16:22:49 +0200
committerJay Berkenbilt <ejb@ql.org>2009-10-10 16:22:49 +0200
commita6915c5da21a7c3233c8c7127d0b4d81aa9e1b40 (patch)
tree2588006e1695c11cd72b78996d05dd77acff9c84 /make
parentcaa397ed157ada95129dbe784c01c6a1f95b226f (diff)
downloadqpdf-a6915c5da21a7c3233c8c7127d0b4d81aa9e1b40.tar.zst
mingw -- untested
git-svn-id: svn+q:///qpdf/trunk@754 71b93d88-0707-0410-a8cf-f5a4172ac649
Diffstat (limited to 'make')
-rw-r--r--make/mingw.mk52
1 files changed, 52 insertions, 0 deletions
diff --git a/make/mingw.mk b/make/mingw.mk
new file mode 100644
index 00000000..aa548931
--- /dev/null
+++ b/make/mingw.mk
@@ -0,0 +1,52 @@
+# --- Required interface definitions ---
+
+OBJ=o
+LOBJ=o
+
+# Usage: $(call libname,base)
+define libname
+lib$(1).a
+endef
+
+# Usage: $(call binname,base)
+define binname
+$(1)
+endef
+
+# --- Required rule definitions ---
+
+# 1 2
+# Usage: $(call compile,src,includes)
+define compile
+ $(CXX) $(CPPFLAGS) $(CXXFLAGS) \
+ $(call depflags,$(basename $(call src_to_obj,$(1)))) \
+ $(foreach I,$(2),-I$(I)) \
+ -c $(1) -o $(call src_to_obj,$(1))
+endef
+
+# 1 2
+# Usage: $(call c_compile,src,includes)
+define c_compile
+ $(CC) $(CPPFLAGS) $(CFLAGS) \
+ $(call depflags,$(basename $(call src_to_obj,$(1)))) \
+ $(foreach I,$(2),-I$(I)) \
+ -c $(1) -o $(call c_src_to_obj,$(1))
+endef
+
+libcompile = $(compile)
+
+# 1 2 3 4 5
+# Usage: $(call makelib,objs,library,current,revision,age)
+define makelib
+ ar cru $(2) $(1);
+ ranlib $(2);
+ dlltool -l $(2) -D `echo $(2) | sed -e 's,lib\(.*\).a,\1'`$(3).dll \
+ $(1) $(LDFLAGS) $(LIBS)
+endef
+
+# 1 2
+# Usage: $(call makebin,objs,binary)
+define makebin
+ $(CXX) $(CXXFLAGS) $(1) -o $(2) $(LDFLAGS) \
+ -Llibqpdf/$(OUTPUT_DIR) -lqpdf $(LIBS)
+endef