summaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
authorJohn MacFarlane <jgm@berkeley.edu>2014-11-14 08:28:53 -0800
committerJohn MacFarlane <jgm@berkeley.edu>2014-11-14 08:28:53 -0800
commitad0d423bd57d2ac261ef921a9784dbfe666a89d2 (patch)
tree068d585980815ff6c2935b78a8080baed0edd9b6 /Makefile
parentdafd433b61f9f1df7a4294a8b0a86ddc66d7d3f4 (diff)
Added mingw target for compiling windows exe and dll.
They can be compiled on linux; all that is needed is the mingw32 package.
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile12
1 files changed, 10 insertions, 2 deletions
diff --git a/Makefile b/Makefile
index dcc317c..350f177 100644
--- a/Makefile
+++ b/Makefile
@@ -1,6 +1,8 @@
SRCDIR?=src
DATADIR?=data
BUILDDIR?=build
+MINGW_BUILDDIR?=build-mingw
+MINGW_INSTALLDIR?=windows
SPEC=spec.txt
SITE=_site
SPECVERSION=$(shell perl -ne 'print $$1 if /^version: *([0-9.]+)/' $(SPEC))
@@ -11,7 +13,7 @@ PROG?=$(BUILDDIR)/src/cmark
BENCHINP?=README.md
JSMODULES=$(wildcard js/lib/*.js)
-.PHONY: all spec leakcheck clean fuzztest dingus upload jshint test testjs benchjs update-site upload-site check npm debug tarball
+.PHONY: all spec leakcheck clean fuzztest dingus upload jshint test testjs benchjs update-site upload-site check npm debug mingw tarball
all: $(BUILDDIR)
@make -C $(BUILDDIR)
@@ -33,6 +35,12 @@ debug:
cmake .. -DCMAKE_BUILD_TYPE=Debug; \
make
+mingw:
+ mkdir -p $(MINGW_BUILDDIR); \
+ cd $(MINGW_BUILDDIR); \
+ cmake .. -DCMAKE_TOOLCHAIN_FILE=../toolchain-mingw32.cmake -DCMAKE_INSTALL_PREFIX=$(MINGW_INSTALLDIR) ;\
+ make && make install
+
tarball: spec.html $(SRCDIR)/scanners.c
rm -rf $(PKGDIR); \
mkdir -p $(PKGDIR)/man/man1; \
@@ -49,7 +57,7 @@ tarball: spec.html $(SRCDIR)/scanners.c
rm -rf $(PKGDIR)
clean:
- rm -rf $(BUILDDIR)
+ rm -rf $(BUILDDIR) $(MINGW_BUILDDIR) $(MINGW_INSTALLDIR)
$(PROG): all