1 # Copyright (C) 2004, 2007 Internet Systems Consortium, Inc. ("ISC")
2 # Copyright (C) 1998-2001 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.
16 # $Id: Makefile.in,v 1.13 2007/06/19 23:47:18 tbox Exp $
25 # Copyright (C) 2004-2009 Internet Systems Consortium, Inc. ("ISC")
26 # Copyright (C) 1998-2003 Internet Software Consortium.
28 # Permission to use, copy, modify, and/or distribute this software for any
29 # purpose with or without fee is hereby granted, provided that the above
30 # copyright notice and this permission notice appear in all copies.
32 # THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
33 # REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
34 # AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
35 # INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
36 # LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
37 # OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
38 # PERFORMANCE OF THIS SOFTWARE.
40 # $Id: rules.in,v 1.64.130.2 2009/01/10 23:46:57 tbox Exp $
43 ### Common Makefile rules for BIND 9.
49 ### Note: paths that vary by Makefile MUST NOT be listed
50 ### here, or they won't get expanded correctly.
52 prefix = /home/tridge/project/bind9/prefix
53 exec_prefix = ${prefix}
54 bindir = ${exec_prefix}/bin
55 sbindir = ${exec_prefix}/sbin
56 includedir = ${prefix}/include
57 libdir = ${exec_prefix}/lib
58 sysconfdir = /etc/bind
61 datarootdir = ${prefix}/share
67 top_builddir = /home/tridge/project/bind9
72 ### Makefile may define:
75 all: subdirs ${TARGETS}
80 ### Makefile may define:
83 ALL_SUBDIRS = ${SUBDIRS} nulldir
86 # We use a single-colon rule so that additional dependencies of
87 # subdirectories can be specified after the inclusion of this file.
88 # The "depend" target is treated the same way.
91 @for i in ${ALL_SUBDIRS}; do \
92 if [ "$$i" != "nulldir" -a -d $$i ]; then \
93 echo "making all in `pwd`/$$i"; \
94 (cd $$i; ${MAKE} ${MAKEDEFS} DESTDIR="${DESTDIR}" all) || exit 1; \
100 install clean distclean maintainer-clean doc docclean man manclean::
101 @for i in ${ALL_SUBDIRS}; do \
102 if [ "$$i" != "nulldir" -a -d $$i ]; then \
103 echo "making $@ in `pwd`/$$i"; \
104 (cd $$i; ${MAKE} ${MAKEDEFS} DESTDIR="${DESTDIR}" $@) || exit 1; \
111 ### Makefile must define
113 ### Makefile may define
119 ### User may define externally
123 CFLAGS = -fno-strict-aliasing -DDIG_SIGCHASE -g -I/usr/include/libxml2
126 STD_CDEFINES = -D_GNU_SOURCE
127 STD_CWARNINGS = -W -Wall -Wmissing-prototypes -Wcast-qual -Wwrite-strings -Wformat -Wpointer-arith -fno-strict-aliasing
129 BUILD_CC = ccache gcc
130 BUILD_CFLAGS = -fno-strict-aliasing -DDIG_SIGCHASE -g -I/usr/include/libxml2
131 BUILD_CPPFLAGS = -D_GNU_SOURCE
133 BUILD_LIBS = -lcap -lpthread -lxml2
138 ALWAYS_INCLUDES = -I${top_builddir}
139 ALWAYS_DEFINES = -D_REENTRANT -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
143 ${ALWAYS_INCLUDES} ${CINCLUDES} ${STD_CINCLUDES} \
144 ${ALWAYS_DEFINES} ${CDEFINES} ${STD_CDEFINES}
146 ALL_CFLAGS = ${EXT_CFLAGS} ${ALL_CPPFLAGS} ${CFLAGS} \
147 ${ALWAYS_WARNINGS} ${STD_CWARNINGS} ${CWARNINGS}
150 ${LIBTOOL_MODE_COMPILE} ${CC} ${ALL_CFLAGS} -c $<
153 LIBTOOL = $(SHELL) $(top_builddir)/libtool
154 LIBTOOL_MODE_COMPILE = ${LIBTOOL} --mode=compile
155 LIBTOOL_MODE_INSTALL = ${LIBTOOL} --mode=install
156 LIBTOOL_MODE_LINK = ${LIBTOOL} --mode=link
159 MKDEP = ${SHELL} ${top_builddir}/make/mkdep
162 superclean: maintainer-clean
164 clean distclean maintainer-clean::
165 rm -f *.lo *.o *.lo *.la core *.core .depend
168 distclean maintainer-clean::
172 @for i in ${ALL_SUBDIRS}; do \
173 if [ "$$i" != "nulldir" -a -d $$i ]; then \
174 echo "making depend in `pwd`/$$i"; \
175 (cd $$i; ${MAKE} ${MAKEDEFS} DESTDIR="${DESTDIR}" $@) || exit 1; \
178 @if [ X"${VPATH}" != X ] ; then \
179 if [ X"${SRCS}" != X -a X"${PSRCS}" != X ] ; then \
180 echo ${MKDEP} -vpath ${VPATH} ${ALL_CPPFLAGS} ${ALL_CFLAGS} ${SRCS}; \
181 ${MKDEP} -vpath ${VPATH} ${ALL_CPPFLAGS} ${ALL_CFLAGS} ${SRCS}; \
182 echo ${MKDEP} -vpath ${VPATH} -ap ${ALL_CPPFLAGS} ${ALL_CFLAGS} ${PSRCS}; \
183 ${MKDEP} -vpath ${VPATH} -ap ${ALL_CPPFLAGS} ${ALL_CFLAGS} ${PSRCS}; \
185 elif [ X"${SRCS}" != X ] ; then \
186 echo ${MKDEP} -vpath ${VPATH} ${ALL_CPPFLAGS} ${ALL_CFLAGS} ${SRCS}; \
187 ${MKDEP} -vpath ${VPATH} ${ALL_CPPFLAGS} ${ALL_CFLAGS} ${SRCS}; \
189 elif [ X"${PSRCS}" != X ] ; then \
190 echo ${MKDEP} -vpath ${VPATH} ${ALL_CPPFLAGS} ${ALL_CFLAGS} ${PSRCS}; \
191 ${MKDEP} -vpath ${VPATH} -p ${ALL_CPPFLAGS} ${ALL_CFLAGS} ${PSRCS}; \
195 if [ X"${SRCS}" != X -a X"${PSRCS}" != X ] ; then \
196 echo ${MKDEP} ${ALL_CPPFLAGS} ${ALL_CFLAGS} ${SRCS}; \
197 ${MKDEP} ${ALL_CPPFLAGS} ${ALL_CFLAGS} ${SRCS}; \
198 echo ${MKDEP} -ap ${ALL_CPPFLAGS} ${ALL_CFLAGS} ${PSRCS}; \
199 ${MKDEP} -ap ${ALL_CPPFLAGS} ${ALL_CFLAGS} ${PSRCS}; \
201 elif [ X"${SRCS}" != X ] ; then \
202 echo ${MKDEP} ${ALL_CPPFLAGS} ${ALL_CFLAGS} ${SRCS}; \
203 ${MKDEP} ${ALL_CPPFLAGS} ${ALL_CFLAGS} ${SRCS}; \
205 elif [ X"${PSRCS}" != X ] ; then \
206 echo ${MKDEP} ${ALL_CPPFLAGS} ${ALL_CFLAGS} ${PSRCS}; \
207 ${MKDEP} -p ${ALL_CPPFLAGS} ${ALL_CFLAGS} ${PSRCS}; \
226 INSTALL = /usr/bin/install -c
227 INSTALL_PROGRAM = ${INSTALL}
229 INSTALL_SCRIPT = ${INSTALL}
230 INSTALL_DATA = ${INSTALL} -m 644
233 ### Programs used when generating documentation. It's ok for these
234 ### not to exist when not generating documentation.
237 XSLTPROC = /usr/bin/xsltproc --novalid --xinclude --nonet
239 LATEX = /usr/bin/latex
240 PDFLATEX = /usr/bin/pdflatex
245 ### DocBook -> man page
248 .SUFFIXES: .docbook .html .1 .2 .3 .4 .5 .6 .7 .8
251 ${XSLTPROC} -o $@ ${top_srcdir}/doc/xsl/isc-docbook-html.xsl $<
254 ${XSLTPROC} -o $@ ${top_srcdir}/doc/xsl/isc-manpage.xsl $<
257 ${XSLTPROC} -o $@ ${top_srcdir}/doc/xsl/isc-manpage.xsl $<
260 ${XSLTPROC} -o $@ ${top_srcdir}/doc/xsl/isc-manpage.xsl $<
263 ${XSLTPROC} -o $@ ${top_srcdir}/doc/xsl/isc-manpage.xsl $<
266 ${XSLTPROC} -o $@ ${top_srcdir}/doc/xsl/isc-manpage.xsl $<
269 ${XSLTPROC} -o $@ ${top_srcdir}/doc/xsl/isc-manpage.xsl $<
272 ${XSLTPROC} -o $@ ${top_srcdir}/doc/xsl/isc-manpage.xsl $<
275 ${XSLTPROC} -o $@ ${top_srcdir}/doc/xsl/isc-manpage.xsl $<