# See COPYING file for copyright, license and warranty details. NAME = spout SRC = spout.c TARGETS = $(NAME) OBJ = $(SRC:.c=.o) MAN = $(TARGETS:=.1) HEADERS = spout.h config.def.h font.h sintable.h WEB = web/index.html include config.mk all: $(TARGETS) $(OBJ): config.mk config.h $(HEADERS) .c.o: @echo CC $< @cc -c $(CFLAGS) $< $(TARGETS): $(OBJ) @echo LD $@ @cc -o $@ $(OBJ) $(LDFLAGS) config.h: @echo creating $@ from config.def.h @cp config.def.h $@ $(WEB): web/index.txt web/header.html web/footer.html web/doap.ttl @echo making webpage @cat web/header.html > $@ @sed 's/VERSION/$(VERSION)/g' < web/index.txt | smu >> $@ @echo '
' >> $@ @sh web/summary.sh web/doap.ttl | smu >> $@ @cat web/footer.html >> $@ clean: rm -f -- $(TARGETS) $(WEB) $(OBJ) $(NAME)-$(VERSION).tar.bz2 $(NAME)-$(VERSION).tar.bz2.sig dist: clean @mkdir -p $(NAME)-$(VERSION) @cp -R $(SRC) $(HEADERS) Makefile config.mk COPYING README $(NAME)-$(VERSION) @for i in $(MAN); do \ sed "s/VERSION/$(VERSION)/g" < $$i > $(NAME)-$(VERSION)/$$i; done @tar -c $(NAME)-$(VERSION) | bzip2 -c > web/releases/$(NAME)-$(VERSION).tar.bz2 @gpg -b < web/releases/$(NAME)-$(VERSION).tar.bz2 > web/releases/$(NAME)-$(VERSION).tar.bz2.sig @rm -rf $(NAME)-$(VERSION) @echo $(NAME)-$(VERSION).tar.bz2 $(NAME)-$(VERSION).tar.bz2.sig install: all @echo installing executables to $(DESTDIR)$(PREFIX)/bin @mkdir -p $(DESTDIR)$(PREFIX)/bin @for i in $(TARGETS); do \ cp -f $$i $(DESTDIR)$(PREFIX)/bin/$$i; \ chmod 755 $(DESTDIR)$(PREFIX)/bin/$$i; done @echo installing manual pages to $(DESTDIR)$(MANPREFIX)/man1 @mkdir -p $(DESTDIR)$(MANPREFIX)/man1 @for i in $(MAN); do \ sed "s/VERSION/$(VERSION)/g" < $$i > $(DESTDIR)$(MANPREFIX)/man1/$$i; \ chmod 644 $(DESTDIR)$(MANPREFIX)/man1/$$i; done uninstall: @echo uninstalling executables from $(DESTDIR)$(PREFIX)/bin @for i in $(TARGETS); do rm -f $(DESTDIR)$(PREFIX)/bin/$$i; done @echo uninstalling manual pages from $(DESTDIR)$(MANPREFIX)/man1 @for i in $(MAN); do rm -f $(DESTDIR)$(MANPREFIX)/man1/$$i; done .PHONY: all clean dist install uninstall test