X-Git-Url: http://git.tuebingen.mpg.de/?p=adu.git;a=blobdiff_plain;f=Makefile;h=a0404789cd1bfebf98cecf7e47b05c57ab155072;hp=b590b29492766633a0150f33ee2cf6bfe529b02a;hb=7231c544e2ee3f53f5b2c8bc393b7fd1e0b8d0a7;hpb=2cfa8c8aaa4662f44bc7e7cd4d3591ed6e1326bd diff --git a/Makefile b/Makefile index b590b29..a040478 100644 --- a/Makefile +++ b/Makefile @@ -1,17 +1,34 @@ -objects := adu.o string.o cmdline.o +objects := adu.o string.o cmdline.o fd.o select.o create.o interactive.o select.cmdline.o format.o user.o bloom.o all: adu +version := 0.0.5 +uname_S := $(shell sh -c 'uname -s 2>/dev/null || echo not') DEBUG_CPPFLAGS += -Wno-sign-compare -g -Wunused -Wundef -W DEBUG_CPPFLAGS += -Wredundant-decls -#CPPFLAGS += -Os +CPPFLAGS += -Os CPPFLAGS += -Wall -#CPPFLAGS += -Wuninitialized +CPPFLAGS += -Wuninitialized CPPFLAGS += -Wchar-subscripts CPPFLAGS += -Wformat-security CPPFLAGS += -Werror-implicit-function-declaration CPPFLAGS += -Wmissing-format-attribute CPPFLAGS += -Wunused-macros CPPFLAGS += -Wbad-function-cast +CPPFLAGS += -DVERSION='"$(version)"' +CPPFLAGS += -I/usr/local/include + +LDFLAGS += -L/usr/local/lib + + +ifeq (,$(findstring BSD,$(uname_S))) + CPPFLAGS += -D_LARGEFILE64_SOURCE + CPPFLAGS += $(shell getconf LFS64_CFLAGS) + LDFLAGS += -D_LARGEFILE64_SOURCE + LDFLAGS += $(shell getconf LFS64_LDFLAGS) + LDFLAGS += $(shell getconf LFS64_LIBS) + CPPFLAGS += -DHAVE_STAT64=1 +endif + Makefile.deps: $(wildcard *.c *.h) gcc -MM -MG *.c > $@ @@ -19,17 +36,49 @@ Makefile.deps: $(wildcard *.c *.h) -include Makefile.deps adu: $(objects) - $(CC) -o $@ $(objects) -lcrypto -losl + $(CC) -o $@ $(LDFLAGS) $(objects) -lcrypto -losl cmdline.o: cmdline.c cmdline.h $(CC) -c $(CPPFLAGS) $< cmdline.c cmdline.h: adu.ggo - gengetopt --conf-parser < $< + gengetopt --no-handle-error --no-handle-help --conf-parser < $< %.o: %.c Makefile $(CC) -c $(CPPFLAGS) $(DEBUG_CPPFLAGS) $< +%.ppm: %.sk + sk2ppm $< > $@ +%.png: %.ppm + convert $< $@ + +select.cmdline.c select.cmdline.h: select.ggo + gengetopt --set-package=select \ + --no-handle-help \ + --no-handle-error \ + --no-handle-version \ + --arg-struct-name=select_args_info \ + --file-name=$(subst .ggo,,$<).cmdline \ + --func-name $(subst .ggo,,$<)_cmdline_parser < $< + +select.cmdline.o: select.cmdline.c select.cmdline.h + $(CC) -c $(CPPFLAGS) $< + +adu.1: adu adu.1.inc + help2man -h --detailed-help --include adu.1.inc -N ./$< > $@ + +%.1.html: %.1 + man2html $< | sed -e 's|^
$$|

|g' > $@ + clean: - rm -f *.o adu + rm -f *.o adu *cmdline.c *cmdline.h adu.1 adu.1.html adu.png index.html adu.sk~ + +index.html: adu.1.html index.html.in INSTALL README + sed -e '/@README@/,$$d' index.html.in > $@ + grutatxt -nb < README >> $@ + sed -e '1,/@README@/d' -e '/@INSTALL@/,$$d' index.html.in >> $@ + grutatxt -nb < INSTALL >> $@ + sed -e '1,/@INSTALL@/d' -e '/@MAN_PAGE@/,$$d' index.html.in >> $@ + sed -e '1,/Return to Main Contents/d' -e '/Index/,$$d' adu.1.html >> $@ + sed -e '1,/@MAN_PAGE@/d' index.html.in >> $@