Makefile (1415B)
1 .POSIX: 2 3 VERSION = 2.0 4 5 # paths 6 PREFIX = /usr/local 7 MANPREFIX = $(PREFIX)/share/man 8 DOCPREFIX = $(PREFIX)/share/doc 9 10 SRC = ii.c 11 OBJ = $(SRC:.c=.o) 12 13 # use system flags. 14 II_CFLAGS = $(CFLAGS) 15 II_LDFLAGS = $(LDFLAGS) -ltls 16 17 # on systems which provide strlcpy(3), 18 # remove NEED_STRLCPY from CPPFLAGS and 19 # remove strlcpy.o from LIBS 20 II_CPPFLAGS = $(CPPFLAGS) -DVERSION=\"$(VERSION)\" -D_DEFAULT_SOURCE -DNEED_STRLCPY 21 # -tls is easily provided using libretls. 22 LIBS = strlcpy.o 23 24 all: ii 25 26 options: 27 @echo ii build options: 28 @echo "CFLAGS = $(CFLAGS)" 29 @echo "LDFLAGS = $(LDFLAGS)" 30 @echo "CC = $(CC)" 31 32 .c.o: 33 $(CC) -c $< $(II_CFLAGS) $(II_CPPFLAGS) 34 35 ii: $(OBJ) $(LIBS) 36 $(CC) -o $@ $(OBJ) $(LIBS) $(II_LDFLAGS) 37 38 $(OBJ): arg.h 39 40 install: all 41 mkdir -p $(DESTDIR)$(PREFIX)/bin 42 mkdir -p $(DESTDIR)$(MANPREFIX)/man1 43 mkdir -p $(DESTDIR)$(DOCPREFIX)/ii 44 install -m 644 README FAQ LICENSE $(DESTDIR)$(DOCPREFIX)/ii 45 install -m 775 ii $(DESTDIR)$(PREFIX)/bin 46 sed "s/VERSION/$(VERSION)/g" < ii.1 > $(DESTDIR)$(MANPREFIX)/man1/ii.1 47 chmod 644 $(DESTDIR)$(MANPREFIX)/man1/ii.1 48 49 uninstall: all 50 rm -f $(DESTDIR)$(MANPREFIX)/man1/ii.1 $(DESTDIR)$(PREFIX)/bin/ii 51 rm -rf $(DESTDIR)$(DOCPREFIX)/ii 52 53 dist: clean 54 mkdir -p ii-$(VERSION) 55 cp -R Makefile README FAQ LICENSE strlcpy.c arg.h \ 56 ii.c ii.1 ii-$(VERSION) 57 tar -cf - ii-$(VERSION) | gzip -c > ii-$(VERSION).tar.gz 58 rm -rf ii-$(VERSION) 59 60 clean: 61 rm -f ii *.o