about summary refs log tree commit diff
path: root/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile84
1 files changed, 31 insertions, 53 deletions
diff --git a/Makefile b/Makefile
index 80c41b6..275d6ac 100644
--- a/Makefile
+++ b/Makefile
@@ -1,63 +1,41 @@
-PREFIX = /usr/local
-SHAREDIR = ${PREFIX}/share
-MANDIR = ${SHAREDIR}/man
+PREFIX ?= /usr/local
+SHAREDIR ?= ${PREFIX}/share
+MANDIR ?= ${SHAREDIR}/man
+EXMANDIR ?= ${SHAREDIR}/exman
 
-CURL ?= curl
-TAR ?= tar
+SYSTEMS += FreeBSD
+SYSTEMS += Linux
+SYSTEMS += NetBSD
+SYSTEMS += OpenBSD
+SYSTEMS += POSIX
 
-SYSTEMS += freebsd
-SYSTEMS += linux
-SYSTEMS += netbsd
-SYSTEMS += openbsd
-SYSTEMS += posix
+all: exman
+.for system in ${SYSTEMS}
+	${MAKE} -C ${system} ${.TARGET}
+.endfor
 
-all: exman ${SYSTEMS}
+.SUFFIXES: .in
 
-.SUFFIXES: .tar .url
-
-.PRECIOUS: ${SYSTEMS:=.tar}
-
-.url.tar:
-	${CURL} -f -o $@ "$$(cat $<)"
-
-.tar:
-	mkdir -p $@
-	${TAR} -x -f $< -C $@ --strip-components ${STRIP.$@} ${FILES.$@}
-
-netbsd: netbsd-man.tar netbsd-comp.tar
-	mkdir -p $@
-	${TAR} -x -f netbsd-man.tar -C $@ --strip-components ${STRIP.$@} ${FILES.$@}
-	${TAR} -x -f netbsd-comp.tar -C $@ --strip-components ${STRIP.$@} ${FILES.$@}
-
-.PRECIOUS: netbsd-man.tar netbsd-comp.tar
-
-openbsd: openbsd-man.tar openbsd-comp.tar
-	mkdir -p $@
-	${TAR} -x -f openbsd-man.tar -C $@ --strip-components ${STRIP.$@} ${FILES.$@}
-	${TAR} -x -f openbsd-comp.tar -C $@ --strip-components ${STRIP.$@} ${FILES.$@}
-
-.PRECIOUS: openbsd-man.tar openbsd-comp.tar
-
-FILES.freebsd = './usr/share/man/man[1-9]/'
-FILES.netbsd = './usr/share/man/man[1-9]*/'
-FILES.openbsd = './usr/share/man/man[1-9]*/'
-FILES.linux = '*/man[1-9]/'
-FILES.posix = '*/man[0-3]p/'
-
-STRIP.freebsd = 4
-STRIP.netbsd = 4
-STRIP.openbsd = 4
-STRIP.linux = 1
-STRIP.posix = 1
+.in:
+	sed 's|%%EXMANDIR%%|${EXMANDIR}|g' ${.IMPSRC} > ${.TARGET}
+	chmod a+x ${.TARGET}
 
 clean:
-	rm -fr ${SYSTEMS} *.tar
+	rm -f exman
+.for system in ${SYSTEMS}
+	${MAKE} -C ${system} ${.TARGET}
+.endfor
 
-install: exman exman.1 ${SYSTEMS}
-	install -d ${PREFIX}/bin ${MANDIR}/man1 ${SHAREDIR}/exman
+install: exman exman.1
+	install -d ${PREFIX}/bin ${MANDIR}/man1
 	install exman ${PREFIX}/bin
-	gzip -c exman.1 > ${MANDIR}/man1/exman.1.gz
-	${TAR} -c -f - ${SYSTEMS} | ${TAR} -xo -f - -C ${SHAREDIR}/exman
+	install -m 644 exman.1 ${MANDIR}/man1
+.for system in ${SYSTEMS}
+	${MAKE} -C ${system} ${.TARGET}
+.endfor
 
 uninstall:
-	rm -fr ${PREFIX}/bin/exman ${MANDIR}/man1/exman.1.gz ${SHAREDIR}/exman
+	rm -f ${PREFIX}/bin/exman ${MANDIR}/man1/exman.1
+.for system in ${SYSTEMS}
+	${MAKE} -C ${system} ${.TARGET}
+.endfor
21:13:12 +0000'>2021-09-22Call sandbox in CGI modeJune McEnroe Otherwise upload won't actually work. 2021-09-22Support HTTP PUT in upJune McEnroe For use by Palaver[1]. Unfortunately, at least in the current App Store version of Palaver, this doesn't work correctly with basic auth. [1]: https://palaverapp.com/guides/commands/set.html#ui-image_service 2021-09-22Remove default faviconJune McEnroe I hate these things and also this one sucks. 2021-09-21Use Z_FILTERED strategyJune McEnroe 2021-09-21Recalculate various lengths only as neededJune McEnroe This actually speeds things up quite a bit, saving roughly a second on a big PNG screenshot. Almost all the remaining time is spent in deflate. 2021-09-21Rewrite pngo, add explicit optionsJune McEnroe Interesting to see how my code habits have changed. 2021-09-16Fix /* **/ comment matchingJune McEnroe 2021-09-15Remove typer, add downgrade to READMEJune McEnroe 2021-09-15Set bot mode on downgradeJune McEnroe 2021-09-15Enter capsicum in downgradeJune McEnroe 2021-09-15Factor out common parts of downgrade messagesJune McEnroe Also bump the message cap to 1024 because that is ostensibly useful for replying to older messages. 2021-09-14Add downgrade IRC botJune McEnroe 2021-09-14Sort by title if authors matchJune McEnroe There are probably better things to sort by but title definitely always exists. 2021-09-13Swap-remove tags as they're foundJune McEnroe This makes it even faster. From ~1s on a sqlite3.c amalgamation to ~0.85s. 2021-09-12Replace htagml regex with strncmpJune McEnroe Since ctags only ever produces regular expressions of the form /^re$/ or /^re/ with no other special characters, instead unescape the pattern and simply use strncmp. Running on a sqlite3.c amalgamation, the regex version takes ~37s while the strncmp version takes ~1s, producing identical output. Big win! 2021-09-11Also defer printing comment for lone close-parensJune McEnroe 2021-09-10Publish "git-comment"June McEnroe 2021-09-10Add git comment --pretty optionJune McEnroe 2021-09-08Defer printing comment if line is blank or closing braceJune McEnroe This fixes badly indented comments. 2021-09-08Up default min-repeat to 30 linesJune McEnroe 2021-09-08Handle dirty lines in git-commentJune McEnroe 2021-09-08Document and install git-commentJune McEnroe 2021-09-08Add repeat and all options to git-commentJune McEnroe 2021-09-08Add group threshold to git-commentJune McEnroe