#
# Makefile for `Hunt the Wumpus' and `Superhack' games
#
-VERS=1.6
+# SPDX-FileCopyrightText: (C) Eric S. Raymond <esr@thyrsus.com>
+# SPDX-License-Identifier: BSD-2-Clause
+
+VERS=$(shell sed -n <NEWS.adoc '/^[0-9]/s/:.*//p' | head -1)
prefix?=/usr
+CFLAGS = -Wall
+
all: wumpus superhack
wumpus: wumpus.c
$(CC) $(CFLAGS) superhack.c -o superhack
clean:
- rm -f wumpus wumpus.o superhack superhack.o TAGS
+ rm -f wumpus wumpus.o superhack superhack.o TAGS *.6
rm -f *~ *.1 *.html *.tar.gz MANIFEST
TAGS:
etags wumpus.c
-wumpus.6: wumpus.xml
- xmlto man wumpus.xml
+# Note: to suppress the footers with timestamps being generated in HTML,
+# we use "-a nofooter".
+# To debug asciidoc problems, you may need to run "xmllint --nonet --noout --valid"
+# on the intermediate XML that throws an error.
+.SUFFIXES: .html .adoc .6
-wumpus.html: wumpus.xml
- xmlto html-nochunks wumpus.xml
+.adoc.6:
+ asciidoctor -D. -a nofooter -b manpage $<
+.adoc.html:
+ asciidoctor -D. -a nofooter -a webfonts! $<
-SOURCES = README COPYING NEWS Makefile wumpus.c superhack.c wumpus.xml wumpus.png
+SOURCES = README COPYING NEWS control Makefile wumpus.c superhack.c wumpus.adoc wumpus.png wumpus.desktop superhack.desktop
-install: wumpus.6
+install: wumpus superhack wumpus.6
mkdir -p $(prefix)/bin
mkdir -p $(prefix)/share/man/man6
cp wumpus superhack $(prefix)/bin/
rm $(prefix)/bin/wumpus $(prefix)/bin/superhack
rm $(prefix)/share/man/man6/wumpus.6
+reflow:
+ @clang-format --style="{IndentWidth: 8, UseTab: ForIndentation}" -i $$(find . -name "*.[ch]")
+
CPPCHECKOPTS =
cppcheck:
cppcheck -DREVISION=$(VERS) $(CPPCHECKOPTS) wumpus.c
dist: wumpus-$(VERS).tar.gz
-release: wumpus-$(VERS).tar.gz wumpus.html
+release: wumpus-$(VERS).tar.gz wumpus.html wumpus.6
shipper version=$(VERS) | sh -e -x
refresh: wumpus.html