1# Copyright (C) 2004, 2007, 2009  Internet Systems Consortium, Inc. ("ISC")
2# Copyright (C) 2001, 2002  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: rules.in,v 1.15 2009/01/22 23:49:23 tbox Exp 
17
18###
19### Common Makefile rules for BIND 9.
20###
21
22###
23### Paths
24###
25### Note: paths that vary by Makefile MUST NOT be listed
26### here, or they won't get expanded correctly.
27
28prefix =	@prefix@
29exec_prefix =	@exec_prefix@
30bindir =	@bindir@
31sbindir =	@sbindir@
32includedir =	@includedir@
33libdir =	@libdir@
34sysconfdir =	@sysconfdir@
35localstatedir =	@localstatedir@
36mandir =	@mandir@
37datarootdir =	@datarootdir@
38
39DESTDIR =
40MAKEDEFS= 'DESTDIR=${DESTDIR}'
41
42@SET_MAKE@
43
44top_builddir =	@BIND9_TOP_BUILDDIR@
45abs_top_srcdir = @abs_top_srcdir@
46
47###
48### All
49###
50### Makefile may define:
51###	TARGETS
52
53all: subdirs ${TARGETS}
54
55###
56### Subdirectories
57###
58### Makefile may define:
59###	SUBDIRS
60
61ALL_SUBDIRS = ${SUBDIRS} nulldir
62
63#
64# We use a single-colon rule so that additional dependencies of
65# subdirectories can be specified after the inclusion of this file.
66# The "depend" target is treated the same way.
67#
68subdirs:
69	@for i in ${ALL_SUBDIRS}; do \
70		if [ "$$i" != "nulldir" -a -d $$i ]; then \
71			echo "making all in `pwd`/$$i"; \
72			(cd $$i; ${MAKE} ${MAKEDEFS} all) || exit 1; \
73		fi; \
74	done
75
76install clean distclean docclean manclean::
77	@for i in ${ALL_SUBDIRS}; do \
78		if [ "$$i" != "nulldir" -a -d $$i ]; then \
79			echo "making $@ in `pwd`/$$i"; \
80			(cd $$i; ${MAKE} ${MAKEDEFS} $@) || exit 1; \
81		fi \
82	done
83
84###
85### C Programs
86###
87### Makefile must define
88###	CC
89### Makefile may define
90###	CFLAGS
91###	CINCLUDES
92###	CDEFINES
93###	CWARNINGS
94### User may define externally
95###     EXT_CFLAGS
96
97CC = 		@CC@
98CFLAGS =	@CFLAGS@
99STD_CINCLUDES =	@STD_CINCLUDES@
100STD_CDEFINES =	@STD_CDEFINES@
101STD_CWARNINGS =	@STD_CWARNINGS@
102
103.SUFFIXES:
104.SUFFIXES: .c .@O@
105
106ALWAYS_INCLUDES = -I${top_builddir} -I${abs_top_srcdir}/@PORT_INCLUDE@
107ALWAYS_DEFINES = @ALWAYS_DEFINES@
108ALWAYS_WARNINGS =
109
110ALL_CPPFLAGS = \
111	${ALWAYS_INCLUDES} ${CINCLUDES} ${STD_CINCLUDES} \
112	${ALWAYS_DEFINES} ${CDEFINES} ${STD_CDEFINES}
113
114ALL_CFLAGS = ${EXT_CFLAGS} ${CFLAGS} \
115	${ALL_CPPFLAGS} \
116	${ALWAYS_WARNINGS} ${STD_CWARNINGS} ${CWARNINGS}
117
118.c.@O@:
119	${LIBTOOL_MODE_COMPILE} ${CC} ${ALL_CFLAGS} -c $<
120
121SHELL = @SHELL@
122LIBTOOL = @LIBTOOL@
123LIBTOOL_MODE_COMPILE = ${LIBTOOL} @LIBTOOL_MODE_COMPILE@
124LIBTOOL_MODE_INSTALL = ${LIBTOOL} @LIBTOOL_MODE_INSTALL@
125LIBTOOL_MODE_LINK = ${LIBTOOL} @LIBTOOL_MODE_LINK@
126PURIFY = @PURIFY@
127
128MKDEP = ${SHELL} ${top_builddir}/make/mkdep
129
130cleandir: distclean
131
132clean distclean::
133	rm -f *.@O@ *.lo *.la core *.core .depend
134	rm -rf .libs
135
136distclean::
137	rm -f Makefile
138
139depend:
140	@for i in ${ALL_SUBDIRS}; do \
141		if [ "$$i" != "nulldir" -a -d $$i ]; then \
142			echo "making depend in `pwd`/$$i"; \
143			(cd $$i; ${MAKE} ${MAKEDEFS} $@) || exit 1; \
144		fi \
145	done
146	@if [ X"${SRCS}" != X -a X"${PSRCS}" != X ] ; then \
147		echo ${MKDEP} ${ALL_CPPFLAGS} ${SRCS}; \
148		${MKDEP} ${ALL_CPPFLAGS} ${SRCS}; \
149		echo ${MKDEP} -ap ${ALL_CPPFLAGS} ${PSRCS}; \
150		${MKDEP} -ap ${ALL_CPPFLAGS} ${PSRCS}; \
151		${DEPENDEXTRA} \
152	elif [ X"${SRCS}" != X ] ; then \
153		echo ${MKDEP} ${ALL_CPPFLAGS} ${SRCS}; \
154		${MKDEP} ${ALL_CPPFLAGS} ${SRCS}; \
155		${DEPENDEXTRA} \
156	elif [ X"${PSRCS}" != X ] ; then \
157		echo ${MKDEP} ${ALL_CPPFLAGS} ${PSRCS}; \
158		${MKDEP} -p ${ALL_CPPFLAGS} ${PSRCS}; \
159		${DEPENDEXTRA} \
160	fi
161
162FORCE:
163
164###
165### Libraries
166###
167
168AR =		@AR@
169ARFLAGS =	@ARFLAGS@
170RANLIB =	@RANLIB@
171
172###
173### Installation
174###
175
176INSTALL =		@INSTALL@
177INSTALL_PROGRAM =	@INSTALL_PROGRAM@
178INSTALL_DATA =		@INSTALL_DATA@
179