1# Copyright (C) 2004-2007, 2009  Internet Systems Consortium, Inc. ("ISC")
2# Copyright (C) 2001-2003  Internet Software Consortium.
3#
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.
7#
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.
15
16# $Id: Makefile.in,v 1.36 2009/03/03 04:28:48 marka Exp $
17
18srcdir =        @srcdir@
19VPATH =         @srcdir@
20top_srcdir =    @top_srcdir@
21
22
23@LIBBIND_API@
24
25LIBS =		@LIBS@
26
27DAEMON_OBJS=bsd/daemon.@O@
28STRSEP_OBJS=bsd/strsep.@O@
29
30BSDOBJS= @DAEMON_OBJS@ @STRSEP_OBJS@ bsd/ftruncate.@O@ bsd/gettimeofday.@O@ \
31        bsd/mktemp.@O@ bsd/putenv.@O@ bsd/readv.@O@ bsd/setenv.@O@ \
32	bsd/setitimer.@O@ bsd/strcasecmp.@O@ bsd/strdup.@O@ \
33        bsd/strerror.@O@ bsd/strpbrk.@O@ bsd/strtoul.@O@ bsd/utimes.@O@ \
34        bsd/writev.@O@
35
36DSTOBJS= dst/dst_api.@O@ dst/hmac_link.@O@ dst/md5_dgst.@O@ dst/support.@O@
37
38INETOBJS= inet/inet_addr.@O@ inet/inet_cidr_ntop.@O@ inet/inet_cidr_pton.@O@ \
39	inet/inet_data.@O@ inet/inet_lnaof.@O@ inet/inet_makeaddr.@O@ \
40	inet/inet_net_ntop.@O@ inet/inet_net_pton.@O@ inet/inet_neta.@O@ \
41	inet/inet_netof.@O@ inet/inet_network.@O@ inet/inet_ntoa.@O@ \
42	inet/inet_ntop.@O@ inet/inet_pton.@O@ inet/nsap_addr.@O@
43
44WANT_IRS_THREADS_OBJS=	irs/gethostent_r.@O@ irs/getnetent_r.@O@ \
45	irs/getnetgrent_r.@O@ irs/getprotoent_r.@O@ irs/getservent_r.@O@
46
47WANT_IRS_NISGR_OBJS= irs/nis_gr.@O@
48WANT_IRS_GR_OBJS= irs/dns_gr.@O@ irs/irp_gr.@O@ irs/lcl_gr.@O@ irs/gen_gr.@O@ \
49	irs/getgrent.@O@ @WANT_IRS_NISGR_OBJS@ @WANT_IRS_THREADSGR_OBJS@
50
51WANT_IRS_THREADSPW_OBJS=irs/getpwent_r.@O@
52WANT_IRS_NISPW_OBJS= irs/nis_pw.@O@
53WANT_IRS_DBPW_OBJS=irs/irp_pw.@O@ irs/lcl_pw.@O@
54WANT_IRS_PW_OBJS= irs/dns_pw.@O@ irs/gen_pw.@O@ irs/getpwent.@O@ \
55	@WANT_IRS_DBPW_OBJS@ @WANT_IRS_NISPW_OBJS@ @WANT_IRS_THREADSPW_OBJS@
56
57WANT_IRS_NIS_OBJS= irs/nis_ho.@O@ irs/nis_ng.@O@ irs/nis_nw.@O@ \
58	irs/nis_pr.@O@ irs/nis_sv.@O@
59
60IRSOBJS= @WANT_IRS_GR_OBJS@ @WANT_IRS_NIS_OBJS@ @WANT_IRS_THREADS_OBJS@ \
61	@WANT_IRS_PW_OBJS@ \
62	irs/dns.@O@ irs/dns_ho.@O@ irs/dns_nw.@O@ irs/dns_pr.@O@ \
63	irs/dns_sv.@O@ irs/gai_strerror.@O@ irs/gen.@O@ irs/gen_ho.@O@ \
64	irs/gen_ng.@O@ irs/gen_nw.@O@ irs/gen_pr.@O@ irs/gen_sv.@O@ \
65	irs/getaddrinfo.@O@ irs/gethostent.@O@  irs/getnameinfo.@O@ \
66	irs/getnetent.@O@ irs/getnetgrent.@O@ \
67	irs/getprotoent.@O@ irs/getservent.@O@ irs/hesiod.@O@ \
68	irs/irp.@O@ irs/irp_ho.@O@ irs/irp_ng.@O@ irs/irp_nw.@O@ \
69	irs/irp_pr.@O@ irs/irp_sv.@O@ irs/irpmarshall.@O@ irs/irs_data.@O@ \
70	irs/lcl.@O@ irs/lcl_ho.@O@ irs/lcl_ng.@O@ irs/lcl_nw.@O@ \
71	irs/lcl_pr.@O@ irs/lcl_sv.@O@ irs/nis.@O@ irs/nul_ng.@O@ irs/util.@O@
72
73WANT_IRS_THREADSGR_OBJS=irs/getgrent_r.@O@
74
75ISCOBJS= isc/assertions.@O@ isc/base64.@O@ isc/bitncmp.@O@ isc/ctl_clnt.@O@ \
76	isc/ctl_p.@O@ isc/ctl_srvr.@O@ isc/ev_connects.@O@ isc/ev_files.@O@ \
77	isc/ev_streams.@O@ isc/ev_timers.@O@ isc/ev_waits.@O@ \
78	isc/eventlib.@O@ isc/heap.@O@ isc/hex.@O@ isc/logging.@O@ \
79	isc/memcluster.@O@ isc/movefile.@O@ isc/tree.@O@
80
81NAMESEROBJS= nameser/ns_date.@O@ nameser/ns_name.@O@ nameser/ns_netint.@O@ \
82	nameser/ns_parse.@O@ nameser/ns_print.@O@  nameser/ns_samedomain.@O@ \
83	nameser/ns_sign.@O@ nameser/ns_ttl.@O@ nameser/ns_verify.@O@ \
84	nameser/ns_rdata.@O@ nameser/ns_newmsg.@O@
85
86RESOLVOBJS= resolv/herror.@O@ resolv/mtctxres.@O@ resolv/res_comp.@O@ \
87	resolv/res_data.@O@ resolv/res_debug.@O@ resolv/res_findzonecut.@O@ \
88	resolv/res_init.@O@ resolv/res_mkquery.@O@ resolv/res_mkupdate.@O@ \
89	resolv/res_query.@O@ resolv/res_send.@O@ resolv/res_sendsigned.@O@ \
90	resolv/res_update.@O@
91
92SUBDIRS = bsd dst doc include inet irs isc nameser resolv @PORT_INCLUDE@
93
94TARGETS= timestamp build-tests
95OBJS=	${BSDOBJS} ${DSTOBJS} ${INETOBJS} ${IRSOBJS} ${ISCOBJS} \
96	${NAMESEROBJS} ${RESOLVOBJS}
97
98@BIND9_MAKE_RULES@
99
100# Attempt to disable parallel processing.
101.NOTPARALLEL:
102.NO_PARALLEL:
103
104libbind.@SA@: ${OBJS}
105	${AR} ${ARFLAGS} $@ ${OBJS}
106	${RANLIB} $@
107
108libbind.la: ${OBJS}
109	${LIBTOOL_MODE_LINK} \
110	${CC} ${ALL_CFLAGS} ${LDFLAGS} -o libbind.la -rpath ${libdir} \
111		-version-info ${LIBINTERFACE}:${LIBREVISION}:${LIBAGE} \
112		${OBJS} ${LIBS}
113
114timestamp: libbind.@A@
115	touch timestamp
116
117installdirs:
118	$(SHELL) ${top_srcdir}/mkinstalldirs ${DESTDIR}${libdir}
119
120install:: timestamp installdirs
121	${LIBTOOL_MODE_INSTALL} ${INSTALL_DATA} libbind.@A@ ${DESTDIR}${libdir}
122
123clean distclean::
124	rm -f libbind.@SA@ libbind.la
125	cd tests; ${MAKE} ${MAKEDEFS} $@
126
127distclean::
128	rm -f make/rules make/includes make/mkdep
129
130distclean::
131	rm -f config.cache config.h config.log config.status libtool
132	rm -f port_before.h port_after.h configure.lineno
133	rm -f port/Makefile @PORT_DIR@/Makefile
134
135man doc::
136	cd doc; ${MAKE} ${MAKEDEFS} $@
137
138build-tests::
139	cd tests; ${MAKE} ${MAKEDEFS} all
140