CHROOT_USER = torus CHROOT_GROUP = ${CHROOT_USER} WEBROOT = /var/www/ascii.town CFLAGS += -std=c11 -Wall -Wextra -Wpedantic LDFLAGS = -static LDLIBS = -lncursesw -lz -include config.mk BINS = client image merge meta server OBJS = ${BINS:%=%.o} all: tags ${BINS} ${OBJS}: torus.h client.o: help.h image.o: png.h .o: ${CC} ${LDFLAGS} $< ${LDLIBS} -o $@ tags: *.h *.c ctags -w *.h *.c chroot.tar: client image server default8x16.psfu install -d -o root -g wheel \ root \ root/bin \ root/home \ root/usr/share/torus install -d -o ${CHROOT_USER} -g ${CHROOT_GROUP} root/home/${CHROOT_USER} cp -af /usr/share/locale root/usr/share cp -af /usr/share/terminfo root/usr/share cp -fp /bin/sh root/bin install client image server root/bin install -m 644 default8x16.psfu root/usr/share/torus tar -c -f chroot.tar -C root bin home usr install: chroot.tar explore.html index.html tar -px -f chroot.tar -C /home/${CHROOT_USER} install -o ${CHROOT_USER} -g ${CHROOT_GROUP} -m 644 \ explore.html index.html ${WEBROOT} clean: rm -fr ${OBJS} ${BINS} tags root chroot.tar help.h: head -c 4096 torus.dat \ | file2c -sx 'static const uint8_t HelpData[] = {' '};' \ > help.h echo 'static const struct Tile *Help = (const struct Tile *)HelpData;' \ >> help.h