- Commit
- 52045957a87f2c86f61f2054cafbebe050a1299b
- Parent
- cdc270613f605375a790b5d722f21fedb4203710
- Author
- Nick Wellnhofer <wellnhofer@aevum.de>
- Date
Add Makefile and wrapper for nmake
My personal build of CMark ✏️
Add Makefile and wrapper for nmake
2 files changed, 61 insertions, 0 deletions
Status | File Name | N° Changes | Insertions | Deletions |
Added | Makefile.nmake | 60 | 60 | 0 |
Added | nmake.bat | 1 | 1 | 0 |
diff --git a/Makefile.nmake b/Makefile.nmake @@ -0,0 +1,60 @@ +SRCDIR=src +DATADIR=data +BUILDDIR=build +INSTALLDIR=windows +SPEC=spec.txt +PROG=$(BUILDDIR)\src\cmark.exe +GENERATOR=NMake Makefiles + +all: $(BUILDDIR) + @pushd $(BUILDDIR) && $(MAKE) /nologo && popd + +$(BUILDDIR): + @cmake --version > nul || (echo "You need cmake to build this program: http://www.cmake.org/download/" && exit 1) + -mkdir $(BUILDDIR) 2> nul + pushd $(BUILDDIR) && \ + cmake \ + -G "$(GENERATOR)" \ + -D CMAKE_BUILD_TYPE=$(BUILD_TYPE) \ + -D CMAKE_INSTALL_PREFIX=$(INSTALLDIR) \ + .. && \ + popd + +install: all + @pushd $(BUILDDIR) && $(MAKE) /nologo install && popd + +clean: + -rmdir /s /q $(BUILDDIR) $(MINGW_INSTALLDIR) 2> nul + +$(SRCDIR)\case_fold_switch.inc: $(DATADIR)\CaseFolding-3.2.0.txt + perl mkcasefold.pl < $? > $@ + +man\man1\cmark.1: man\cmark.1.md + pandoc $? -o $@ -s -t man + +test: $(SPEC) all + perl runtests.pl $(SPEC) $(PROG) + +testlib: $(SPEC) all + perl runtests.pl $(SPEC) .\wrapper.py + +distclean: clean + del /q src\scanners.c 2> nul + del /q spec.md spec.html 2> nul + +### Spec ### + +spec.md: $(SPEC) + perl spec2md.pl < $? > $@ + +spec.html: spec.md template.html + pandoc --no-highlight --number-sections --template template.html -s --toc -S $? | \ + perl -pe "s/a href=\"@([^"]*)\"/a id=\"\\1\" href=\"#\\1\" class=\"definition\"/g" | \ + perl -pe "s/\\x{2423}/<span class=\"space\"> <\\/span>/g" \ + > $@ + +spec.pdf: spec.md template.tex specfilter.hs + pandoc -s $? --template template.tex \ + --filter specfilter.hs -o $@ --latex-engine=xelatex --toc \ + --number-sections -V documentclass=report -V tocdepth=2 \ + -V classoption=twosides
diff --git a/nmake.bat b/nmake.bat @@ -0,0 +1 @@ +@nmake.exe /nologo /f Makefile.nmake %*