1 # Copyright (C) 2004-2013 Internet Systems Consortium, Inc. ("ISC")
2 # Copyright (C) 1998-2003 Internet Software Consortium.
4 # Permission to use, copy, modify, and/or distribute this software for any
5 # purpose with or without fee is hereby granted, provided that the above
6 # copyright notice and this permission notice appear in all copies.
8 # THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
9 # REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
10 # AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
11 # INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
12 # LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
13 # OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
14 # PERFORMANCE OF THIS SOFTWARE.
20 top_srcdir = @top_srcdir@
22 # Attempt to disable parallel processing.
32 USE_ISC_SPNEGO = @USE_ISC_SPNEGO@
34 CINCLUDES = -I. -Iinclude ${DNS_INCLUDES} \
35 ${ISC_INCLUDES} @DST_OPENSSL_INC@ @DST_GSSAPI_INC@
37 CDEFINES = -DUSE_MD5 @USE_OPENSSL@ @USE_GSSAPI@ ${USE_ISC_SPNEGO}
41 ISCLIBS = ../../lib/isc/libisc.@A@
43 ISCDEPLIBS = ../../lib/isc/libisc.@A@
49 OPENSSLGOSTLINKOBJS = opensslgost_link.@O@
50 OPENSSLLINKOBJS = openssl_link.@O@ openssldh_link.@O@ openssldsa_link.@O@ \
51 opensslecdsa_link.@O@ @OPENSSLGOSTLINKOBJS@ \
54 DSTOBJS = @DST_EXTRA_OBJS@ @OPENSSLLINKOBJS@ \
55 dst_api.@O@ dst_lib.@O@ dst_parse.@O@ dst_result.@O@ \
56 gssapi_link.@O@ gssapictx.@O@ hmac_link.@O@ key.@O@
59 DNSOBJS = acache.@O@ acl.@O@ adb.@O@ byaddr.@O@ \
60 cache.@O@ callbacks.@O@ compress.@O@ \
61 db.@O@ dbiterator.@O@ dbtable.@O@ diff.@O@ dispatch.@O@ \
62 dlz.@O@ dns64.@O@ dnssec.@O@ ds.@O@ forward.@O@ iptable.@O@ \
63 journal.@O@ keydata.@O@ keytable.@O@ \
64 lib.@O@ log.@O@ lookup.@O@ \
65 master.@O@ masterdump.@O@ message.@O@ \
66 name.@O@ ncache.@O@ nsec.@O@ nsec3.@O@ order.@O@ peer.@O@ \
67 portlist.@O@ private.@O@ \
68 rbt.@O@ rbtdb.@O@ rbtdb64.@O@ rcode.@O@ rdata.@O@ \
69 rdatalist.@O@ rdataset.@O@ rdatasetiter.@O@ rdataslab.@O@ \
70 request.@O@ resolver.@O@ result.@O@ rootns.@O@ rpz.@O@ \
71 rriterator.@O@ sdb.@O@ \
72 sdlz.@O@ soa.@O@ ssu.@O@ ssu_external.@O@ \
73 stats.@O@ tcpmsg.@O@ time.@O@ timer.@O@ tkey.@O@ \
74 tsec.@O@ tsig.@O@ ttl.@O@ validator.@O@ \
75 version.@O@ view.@O@ xfrin.@O@ zone.@O@ zonekey.@O@ zt.@O@
77 OBJS= ${DNSOBJS} ${OTHEROBJS} ${DSTOBJS}
80 OPENSSLGOSTLINKSRCS = opensslgost_link.c
81 OPENSSLLINKSRCS = openssl_link.c openssldh_link.c openssldsa_link.c \
82 opensslecdsa_link.c @OPENSSLGOSTLINKSRCS@ opensslrsa_link.c
84 DSTSRCS = @DST_EXTRA_SRCS@ @OPENSSLLINKSRCS@ \
85 dst_api.c dst_lib.c dst_parse.c \
86 dst_result.c gssapi_link.c gssapictx.c \
89 DNSSRCS = acache.c acl.c adb.c byaddr.c \
90 cache.c callbacks.c compress.c \
91 db.c dbiterator.c dbtable.c diff.c dispatch.c \
92 dlz.c dns64.c dnssec.c ds.c forward.c iptable.c journal.c \
93 keydata.c keytable.c lib.c log.c lookup.c \
94 master.c masterdump.c message.c \
95 name.c ncache.c nsec.c nsec3.c order.c peer.c portlist.c \
96 rbt.c rbtdb.c rbtdb64.c rcode.c rdata.c rdatalist.c \
97 rdataset.c rdatasetiter.c rdataslab.c request.c \
98 resolver.c result.c rootns.c rpz.c rriterator.c \
99 sdb.c sdlz.c soa.c ssu.c ssu_external.c \
100 stats.c tcpmsg.c time.c timer.c tkey.c \
101 tsec.c tsig.c ttl.c validator.c \
102 version.c view.c xfrin.c zone.c zonekey.c zt.c ${OTHERSRCS}
104 SRCS = ${DSTSRCS} ${DNSSRCS}
107 TARGETS = include/dns/enumtype.h include/dns/enumclass.h \
108 include/dns/rdatastruct.h timestamp
109 TESTDIRS = @UNITTESTS@
111 DEPENDEXTRA = ./gen -F include/dns/rdatastruct.h \
112 -s ${srcdir} -d >> Makefile ;
116 version.@O@: version.c
117 ${LIBTOOL_MODE_COMPILE} ${CC} ${ALL_CFLAGS} \
118 -DVERSION=\"${VERSION}\" \
119 -DLIBINTERFACE=${LIBINTERFACE} \
120 -DLIBREVISION=${LIBREVISION} \
122 -c ${srcdir}/version.c
125 ${AR} ${ARFLAGS} $@ ${OBJS}
129 ${LIBTOOL_MODE_LINK} \
130 ${CC} ${ALL_CFLAGS} ${LDFLAGS} -o libdns.la -rpath ${libdir} \
131 -version-info ${LIBINTERFACE}:${LIBREVISION}:${LIBAGE} \
132 ${OBJS} ${ISCLIBS} @DNS_CRYPTO_LIBS@ ${LIBS}
134 timestamp: libdns.@A@
138 $(SHELL) ${top_srcdir}/mkinstalldirs ${DESTDIR}${libdir}
140 install:: timestamp installdirs
141 ${LIBTOOL_MODE_INSTALL} ${INSTALL_DATA} libdns.@A@ ${DESTDIR}${libdir}
144 rm -f libdns.@A@ timestamp
145 rm -f gen code.h include/dns/enumtype.h include/dns/enumclass.h
146 rm -f include/dns/rdatastruct.h
149 rm -f code.h include/dns/enumtype.h include/dns/enumclass.h
150 rm -f include/dns/rdatastruct.h
152 include: include/dns/enumtype.h include/dns/enumclass.h \
153 include/dns/rdatastruct.h
157 include/dns/enumtype.h: gen
158 ./gen -s ${srcdir} -t > $@
160 include/dns/enumclass.h: gen
161 ./gen -s ${srcdir} -c > $@
163 include/dns/rdatastruct.h: gen \
164 ${srcdir}/rdata/rdatastructpre.h \
165 ${srcdir}/rdata/rdatastructsuf.h
166 ./gen -s ${srcdir} -i \
167 -P ${srcdir}/rdata/rdatastructpre.h \
168 -S ${srcdir}/rdata/rdatastructsuf.h > $@
171 ./gen -s ${srcdir} > code.h
174 ${BUILD_CC} ${BUILD_CFLAGS} -I${top_srcdir}/lib/isc/include \
175 ${BUILD_CPPFLAGS} ${BUILD_LDFLAGS} -o $@ ${srcdir}/gen.c ${BUILD_LIBS}
179 depend: include/dns/enumtype.h include/dns/enumclass.h \
180 include/dns/rdatastruct.h code.h
181 subdirs: include/dns/enumtype.h include/dns/enumclass.h \
182 include/dns/rdatastruct.h code.h
183 ${OBJS}: include/dns/enumtype.h include/dns/enumclass.h \
184 include/dns/rdatastruct.h
186 spnego.@O@: spnego_asn1.c spnego.h