1################################################################# 2# 3# @(#) Makefile for dnssec zone key tool (c) Mar 2005 hoz 4# 5################################################################# 6 7prefix = @prefix@ 8mandir = @mandir@ 9 10CC = @CC@ 11 12PROFILE = # -pg 13OPTIM = # -O3 -DNDEBUG 14 15#CFLAGS ?= @CFLAGS@ @DEFS@ -I@top_srcdir@ 16CFLAGS += -g @DEFS@ -I@top_srcdir@ 17CFLAGS += -Wall #-DDBG 18CFLAGS += -Wmissing-prototypes 19CFLAGS += $(PROFILE) $(OPTIM) 20LDFLAGS += $(PROFILE) 21LIBS = @LIBS@ 22 23PROJECT = @PACKAGE_TARNAME@ 24VERSION = @PACKAGE_VERSION@ 25 26HEADER = dki.h misc.h domaincmp.h zconf.h config_zkt.h \ 27 config.h.in strlist.h zone.h zkt.h debug.h \ 28 ncparse.h log.h rollover.h nscomm.h soaserial.h \ 29 zfparse.h tcap.h 30SRC_ALL = dki.c misc.c domaincmp.c zconf.c log.c 31OBJ_ALL = $(SRC_ALL:.c=.o) 32 33SRC_SIG = zkt-signer.c zone.c ncparse.c rollover.c \ 34 nscomm.c soaserial.c 35OBJ_SIG = $(SRC_SIG:.c=.o) 36MAN_SIG = zkt-signer.8 37PROG_SIG= zkt-signer 38 39SRC_CNF = zkt-conf.c zfparse.c 40OBJ_CNF = $(SRC_CNF:.c=.o) 41MAN_CNF = zkt-conf.8 42PROG_CNF= zkt-conf 43 44# shared sources 45SRC_KLS = strlist.c zkt.c tcap.c 46OBJ_KLS = $(SRC_KLS:.c=.o) 47 48SRC_KEY = zkt-keyman.c 49OBJ_KEY = $(SRC_KEY:.c=.o) $(OBJ_KLS) 50MAN_KEY = zkt-keyman.8 51PROG_KEY= zkt-keyman 52 53SRC_LS = zkt-ls.c 54OBJ_LS = $(SRC_LS:.c=.o) $(OBJ_KLS) 55MAN_LS = zkt-ls.8 56PROG_LS= zkt-ls 57 58SRC_SER = zkt-soaserial.c 59OBJ_SER = $(SRC_SER:.c=.o) 60#MAN_SER = zkt-soaserial.8 61PROG_SER= zkt-soaserial 62 63SRC_PRG = $(SRC_SIG) $(SRC_CNF) $(SRC_LS) $(SRC_SER) $(SRC_KEY) 64OBJ_PRG = $(SRC_PRG:.c=.o) 65PROG_PRG= $(PROG_SIG) $(PROG_CNF) $(PROG_LS) $(PROG_SER) $(PROG_KEY) 66 67MAN_ALL = $(MAN_SIG) $(MAN_LS) $(MAN_CNF) $(MAN_KEY) 68OTHER = README README.logging TODO LICENSE CHANGELOG tags Makefile.in \ 69 configure distribute.sh examples 70SAVE = $(HEADER) $(SRC_ALL) $(SRC_SIG) $(SRC_CNF) $(SRC_KLS) \ 71 $(SRC_LS) $(SRC_KEY) $(SRC_SER) $(OTHER) \ 72 man configure.ac config.h.in doc 73#MNTSAVE = $(SAVE) configure.ac config.h.in doc 74 75 76all: $(PROG_CNF) $(PROG_LS) $(PROG_SIG) $(PROG_SER) $(PROG_KEY) 77 78macos: ## for MAC OS (depreciated) 79macos: 80 $(MAKE) CFLAGS="$(CFLAGS) -D HAS_UTYPES=0" all 81 82solaris: ## for solaris (depreciated) 83solaris: 84 @$(MAKE) CFLAGS="$(CFLAGS) -D HAVE_GETOPT_LONG=0" all 85 86linux: ## for linux (default) 87linux: 88 @$(MAKE) all 89 90$(PROG_SIG): $(OBJ_SIG) $(OBJ_ALL) Makefile 91 $(CC) $(LDFLAGS) $(OBJ_SIG) $(OBJ_ALL) -o $(PROG_SIG) 92 93$(PROG_CNF): $(OBJ_CNF) $(OBJ_ALL) Makefile 94 $(CC) $(LDFLAGS) $(OBJ_CNF) $(OBJ_ALL) -o $(PROG_CNF) 95 96$(PROG_KEY): $(OBJ_KEY) $(OBJ_ALL) Makefile 97 $(CC) $(LDFLAGS) $(LIBS) $(OBJ_KEY) $(OBJ_ALL) -o $(PROG_KEY) 98 99$(PROG_LS): $(OBJ_LS) $(OBJ_ALL) Makefile 100 $(CC) $(LDFLAGS) $(LIBS) $(OBJ_LS) $(OBJ_ALL) -o $(PROG_LS) 101 102$(PROG_SER): $(OBJ_SER) Makefile 103 $(CC) $(LDFLAGS) $(OBJ_SER) -o $(PROG_SER) 104 105install: ## install binaries in prefix/bin 106install: $(PROG_PRG) 107 test -d $(prefix)/bin || mkdir -p $(prefix)/bin 108 cp $(PROG_PRG) $(prefix)/bin/ 109 110install-man: ## install man pages in mandir 111install-man: 112 test -d $(mandir)/man8/ || mkdir -p $(mandir)/man8/ 113 cp -p man/$(MAN_LS) man/$(MAN_SIG) man/$(MAN_KEY) man/$(MAN_CNF) $(mandir)/man8/ 114 115 116 117tags: ## create tags file 118#tags: $(SRC_ALL) $(SRC_PRG) 119tags: $(SRC_ALL) $(SRC_SIG) $(SRC_CNF) $(SRC_KEY) $(SRC_LS) $(SRC_SER) $(SRC_KLS) 120 ctags $(SRC_ALL) $(SRC_SIG) $(SRC_CNF) $(SRC_KEY) $(SRC_LS) $(SRC_SER) $(SRC_KLS) 121 122clean: ## remove objectfiles and binaries 123clean: 124 -rm -f $(OBJ_PRG) $(OBJ_ALL) $(PROG_PRG) 125 126distclean: ## remove objectfiles, binaries and distribution files 127distclean: clean 128 -rm -f Makefile config.h config.log config.status config.cache \ 129 $(PROJECT)-$(VERSION).tar.gz 130 131tar: ## create tar file for distribution 132tar: $(PROJECT)-$(VERSION).tar.gz 133 134configure: ## create configure script 135configure: configure.ac Makefile.in 136 autoconf && autoheader 137 138man: man/$(MAN_KEY).html man/$(MAN_KEY).pdf \ 139 man/$(MAN_SIG).html man/$(MAN_SIG).pdf \ 140 man/$(MAN_LS).html man/$(MAN_LS).pdf \ 141 man/$(MAN_CNF).html man/$(MAN_CNF).pdf 142 143man/$(MAN_KEY).html: man/$(MAN_KEY) 144 groff -Thtml -man -mhtml man/$(MAN_KEY) > man/$(MAN_KEY).html 145man/$(MAN_KEY).pdf: man/$(MAN_KEY) 146 groff -Tps -man man/$(MAN_KEY) | ps2pdf - man/$(MAN_KEY).pdf 147man/$(MAN_LS).html: man/$(MAN_LS) 148 groff -Thtml -man -mhtml man/$(MAN_LS) > man/$(MAN_LS).html 149man/$(MAN_LS).pdf: man/$(MAN_LS) 150 groff -Tps -man man/$(MAN_LS) | ps2pdf - man/$(MAN_LS).pdf 151man/$(MAN_SIG).html: man/$(MAN_SIG) 152 groff -Thtml -man -mhtml man/$(MAN_SIG) > man/$(MAN_SIG).html 153man/$(MAN_SIG).pdf: man/$(MAN_SIG) 154 groff -Tps -man man/$(MAN_SIG) | ps2pdf - man/$(MAN_SIG).pdf 155man/$(MAN_CNF).html: man/$(MAN_CNF) 156 groff -Thtml -man -mhtml man/$(MAN_CNF) > man/$(MAN_CNF).html 157man/$(MAN_CNF).pdf: man/$(MAN_CNF) 158 groff -Tps -man man/$(MAN_CNF) | ps2pdf - man/$(MAN_CNF).pdf 159 160# generation of tar file out of the git archive 161# (use v$(VERSION) instead of HEAD if the tar file should depend on a tagged revision) 162$(PROJECT)-$(VERSION).tar.gz: $(SAVE) 163 @test "`git tag -l $(VERSION)`" != $(VERSION) && echo "no tag $(VERSION) found in repository" && exit 164 git archive --format=tar --prefix="$(PROJECT)-$(VERSION)/" $(VERSION) | \ 165 gzip > $(PROJECT)-$(VERSION).tar.gz 166 # git archive --format=tar --prefix="$(PROJECT)-$(VERSION)/" HEAD | \ 167 # cat > $(PROJECT)-$(VERSION).tar 168 169depend: 170 $(CC) -MM $(CFLAGS) $(SRC_PRG) $(SRC_ALL) 171 172help: 173 @grep "^.*:[ ]*##" Makefile 174 175## all dependicies 176#:r !make depend 177#gcc -MM -g -DHAVE_CONFIG_H -I. -Wall -Wmissing-prototypes zkt-signer.c zone.c ncparse.c rollover.c nscomm.c soaserial.c zkt-conf.c zfparse.c zkt-ls.c zkt-soaserial.c zkt-keyman.c dki.c misc.c domaincmp.c zconf.c log.c 178zkt-signer.o: zkt-signer.c config.h config_zkt.h zconf.h debug.h misc.h \ 179 ncparse.h nscomm.h zone.h dki.h log.h soaserial.h rollover.h 180zone.o: zone.c config.h config_zkt.h debug.h domaincmp.h misc.h zconf.h \ 181 dki.h zone.h 182ncparse.o: ncparse.c debug.h misc.h zconf.h log.h ncparse.h 183rollover.o: rollover.c config.h config_zkt.h zconf.h debug.h misc.h \ 184 zone.h dki.h log.h rollover.h 185nscomm.o: nscomm.c config.h config_zkt.h zconf.h nscomm.h zone.h dki.h \ 186 log.h misc.h debug.h 187soaserial.o: soaserial.c config.h config_zkt.h zconf.h log.h debug.h \ 188 soaserial.h 189zkt-conf.o: zkt-conf.c config.h config_zkt.h debug.h misc.h zconf.h \ 190 zfparse.h 191zfparse.o: zfparse.c config.h config_zkt.h zconf.h log.h debug.h \ 192 zfparse.h 193zkt-ls.o: zkt-ls.c config.h config_zkt.h debug.h misc.h zconf.h strlist.h \ 194 dki.h tcap.h zkt.h 195zkt-soaserial.o: zkt-soaserial.c config.h config_zkt.h 196zkt-keyman.o: zkt-keyman.c config.h config_zkt.h debug.h misc.h zconf.h \ 197 strlist.h dki.h zkt.h 198dki.o: dki.c config.h config_zkt.h debug.h domaincmp.h misc.h zconf.h \ 199 dki.h 200misc.o: misc.c config.h config_zkt.h zconf.h log.h debug.h misc.h 201domaincmp.o: domaincmp.c domaincmp.h 202zconf.o: zconf.c config.h config_zkt.h debug.h misc.h zconf.h dki.h 203log.o: log.c config.h config_zkt.h misc.h zconf.h debug.h log.h 204