old-website/Makefile

31 lines
1.3 KiB
Makefile

SHELL = umask 002; exec /bin/sh
FILES = events.ics events.atom news.atom index.html \
favicon.ico default.css robots.txt csclub.der csclub.pem
SUBDIRS = about events office news services media buttons logos flash
include common.mk
common.mk: common.mk.in
echo 'ROOT = '`pwd` > $@
cat $< >> $@
build: noroot mkoutdir common.mk $(OUTPUTS)
@for i in $(SUBDIRS) ; do cd $$i && ($(MAKE) || exit 1) && cd .. ; done
find ! -regex '.*/\..*' -type f ! -perm -0664 -print0 | xargs -r0 chmod u=rwX,g=rwX,o=rX || true
find ! -regex '.*/\..*' -type d ! -perm 2775 -print0 | xargs -r0 chmod 2775 || true
find ! -regex '.*/\..*' -type d ! -group www -print0 | xargs -r0 chgrp www || true
.PHONY: noroot
noroot:
if test $$UID = 0; then echo "don't build as root!"; exit 1; fi
members.xml:
test -e /usr/bin/ceoquery || (echo 'Error: ceoquery not found'; exit 1)
echo '<?xml version='\''1.0'\''?>' > $@
echo '<memberlist>' >> $@
ceoquery memberlist | sort | awk -F \| '{ name = $$1; program = $$2; userid = $$3; gsub(/&/, "\\&amp;", name); gsub(/&/, "\\&amp;", program); gsub(/"/, "\\&quot;", name); gsub(/"/, "\\&quot;", program); print "<member name=\"" name "\" program=\"" program "\" userid=\"" userid "\" />"; }' >> $@
echo '</memberlist>' >> $@
$(OUTDIR)index.html: events.xml news.xml