cmark

My personal build of CMark ✏️

Commit
52045957a87f2c86f61f2054cafbebe050a1299b
Parent
cdc270613f605375a790b5d722f21fedb4203710
Author
Nick Wellnhofer <wellnhofer@aevum.de>
Date

Add Makefile and wrapper for nmake

Diffstat

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 %*