xref: /minix3/external/bsd/bind/dist/make/rules.in (revision 00b67f09dd46474d133c95011a48590a8e8f94c7)
1*00b67f09SDavid van Moolenbroek# Copyright (C) 2004-2009, 2011-2014  Internet Systems Consortium, Inc. ("ISC")
2*00b67f09SDavid van Moolenbroek# Copyright (C) 1998-2003  Internet Software Consortium.
3*00b67f09SDavid van Moolenbroek#
4*00b67f09SDavid van Moolenbroek# Permission to use, copy, modify, and/or distribute this software for any
5*00b67f09SDavid van Moolenbroek# purpose with or without fee is hereby granted, provided that the above
6*00b67f09SDavid van Moolenbroek# copyright notice and this permission notice appear in all copies.
7*00b67f09SDavid van Moolenbroek#
8*00b67f09SDavid van Moolenbroek# THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
9*00b67f09SDavid van Moolenbroek# REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
10*00b67f09SDavid van Moolenbroek# AND FITNESS.  IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
11*00b67f09SDavid van Moolenbroek# INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
12*00b67f09SDavid van Moolenbroek# LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
13*00b67f09SDavid van Moolenbroek# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
14*00b67f09SDavid van Moolenbroek# PERFORMANCE OF THIS SOFTWARE.
15*00b67f09SDavid van Moolenbroek
16*00b67f09SDavid van Moolenbroek###
17*00b67f09SDavid van Moolenbroek### Common Makefile rules for BIND 9.
18*00b67f09SDavid van Moolenbroek###
19*00b67f09SDavid van Moolenbroek
20*00b67f09SDavid van Moolenbroek###
21*00b67f09SDavid van Moolenbroek### Paths
22*00b67f09SDavid van Moolenbroek###
23*00b67f09SDavid van Moolenbroek### Note: paths that vary by Makefile MUST NOT be listed
24*00b67f09SDavid van Moolenbroek### here, or they won't get expanded correctly.
25*00b67f09SDavid van Moolenbroek
26*00b67f09SDavid van Moolenbroekprefix =	@prefix@
27*00b67f09SDavid van Moolenbroekexec_prefix =	@exec_prefix@
28*00b67f09SDavid van Moolenbroekbindir =	@bindir@
29*00b67f09SDavid van Moolenbroeksbindir =	@sbindir@
30*00b67f09SDavid van Moolenbroekincludedir =	@includedir@
31*00b67f09SDavid van Moolenbroeklibdir =	@libdir@
32*00b67f09SDavid van Moolenbroeksysconfdir =	@sysconfdir@
33*00b67f09SDavid van Moolenbroeklocalstatedir =	@localstatedir@
34*00b67f09SDavid van Moolenbroekmandir =	@mandir@
35*00b67f09SDavid van Moolenbroekdatarootdir =   @datarootdir@
36*00b67f09SDavid van Moolenbroek
37*00b67f09SDavid van MoolenbroekDESTDIR =
38*00b67f09SDavid van Moolenbroek
39*00b67f09SDavid van Moolenbroek@SET_MAKE@
40*00b67f09SDavid van Moolenbroek
41*00b67f09SDavid van Moolenbroektop_builddir =	@BIND9_TOP_BUILDDIR@
42*00b67f09SDavid van Moolenbroek
43*00b67f09SDavid van Moolenbroek###
44*00b67f09SDavid van Moolenbroek### All
45*00b67f09SDavid van Moolenbroek###
46*00b67f09SDavid van Moolenbroek### Makefile may define:
47*00b67f09SDavid van Moolenbroek###	PREREQS
48*00b67f09SDavid van Moolenbroek###	TARGETS
49*00b67f09SDavid van Moolenbroek
50*00b67f09SDavid van Moolenbroekall: ${PREREQS} subdirs ${TARGETS} testdirs
51*00b67f09SDavid van Moolenbroek
52*00b67f09SDavid van Moolenbroek###
53*00b67f09SDavid van Moolenbroek### Subdirectories
54*00b67f09SDavid van Moolenbroek###
55*00b67f09SDavid van Moolenbroek### Makefile may define:
56*00b67f09SDavid van Moolenbroek###	SUBDIRS
57*00b67f09SDavid van Moolenbroek
58*00b67f09SDavid van MoolenbroekALL_SUBDIRS = ${SUBDIRS} nulldir
59*00b67f09SDavid van MoolenbroekALL_TESTDIRS = ${TESTDIRS} nulldir
60*00b67f09SDavid van Moolenbroek
61*00b67f09SDavid van Moolenbroek#
62*00b67f09SDavid van Moolenbroek# We use a single-colon rule so that additional dependencies of
63*00b67f09SDavid van Moolenbroek# subdirectories can be specified after the inclusion of this file.
64*00b67f09SDavid van Moolenbroek# The "depend" and "testdirs" targets are treated the same way.
65*00b67f09SDavid van Moolenbroek#
66*00b67f09SDavid van Moolenbroeksubdirs:
67*00b67f09SDavid van Moolenbroek	@for i in ${ALL_SUBDIRS}; do \
68*00b67f09SDavid van Moolenbroek		if [ "$$i" != "nulldir" -a -d $$i ]; then \
69*00b67f09SDavid van Moolenbroek			echo "making all in `pwd`/$$i"; \
70*00b67f09SDavid van Moolenbroek			(cd $$i; ${MAKE} ${MAKEDEFS} DESTDIR="${DESTDIR}" all) || exit 1; \
71*00b67f09SDavid van Moolenbroek		fi; \
72*00b67f09SDavid van Moolenbroek	done
73*00b67f09SDavid van Moolenbroek
74*00b67f09SDavid van Moolenbroek#
75*00b67f09SDavid van Moolenbroek# Tests are built after the targets instead of before
76*00b67f09SDavid van Moolenbroek#
77*00b67f09SDavid van Moolenbroektestdirs:
78*00b67f09SDavid van Moolenbroek	@for i in ${ALL_TESTDIRS}; do \
79*00b67f09SDavid van Moolenbroek		if [ "$$i" != "nulldir" -a -d $$i ]; then \
80*00b67f09SDavid van Moolenbroek			echo "making all in `pwd`/$$i"; \
81*00b67f09SDavid van Moolenbroek			(cd $$i; ${MAKE} ${MAKEDEFS} DESTDIR="${DESTDIR}" all) || exit 1; \
82*00b67f09SDavid van Moolenbroek		fi; \
83*00b67f09SDavid van Moolenbroek	done
84*00b67f09SDavid van Moolenbroek
85*00b67f09SDavid van Moolenbroekinstall:: all
86*00b67f09SDavid van Moolenbroek
87*00b67f09SDavid van Moolenbroekinstall clean distclean maintainer-clean doc docclean man manclean::
88*00b67f09SDavid van Moolenbroek	@for i in ${ALL_SUBDIRS} ${ALL_TESTDIRS}; do \
89*00b67f09SDavid van Moolenbroek		if [ "$$i" != "nulldir" -a -d $$i ]; then \
90*00b67f09SDavid van Moolenbroek			echo "making $@ in `pwd`/$$i"; \
91*00b67f09SDavid van Moolenbroek			(cd $$i; ${MAKE} ${MAKEDEFS} DESTDIR="${DESTDIR}" $@) || exit 1; \
92*00b67f09SDavid van Moolenbroek		fi; \
93*00b67f09SDavid van Moolenbroek	done
94*00b67f09SDavid van Moolenbroek
95*00b67f09SDavid van Moolenbroek###
96*00b67f09SDavid van Moolenbroek### C Programs
97*00b67f09SDavid van Moolenbroek###
98*00b67f09SDavid van Moolenbroek### Makefile must define
99*00b67f09SDavid van Moolenbroek###	CC
100*00b67f09SDavid van Moolenbroek### Makefile may define
101*00b67f09SDavid van Moolenbroek###	CFLAGS
102*00b67f09SDavid van Moolenbroek###	LDFLAGS
103*00b67f09SDavid van Moolenbroek###	CINCLUDES
104*00b67f09SDavid van Moolenbroek###	CDEFINES
105*00b67f09SDavid van Moolenbroek###	CWARNINGS
106*00b67f09SDavid van Moolenbroek### User may define externally
107*00b67f09SDavid van Moolenbroek###     EXT_CFLAGS
108*00b67f09SDavid van Moolenbroek
109*00b67f09SDavid van MoolenbroekCC = 		@CC@
110*00b67f09SDavid van MoolenbroekCFLAGS =	@CFLAGS@
111*00b67f09SDavid van MoolenbroekLDFLAGS =	@LDFLAGS@
112*00b67f09SDavid van MoolenbroekSTD_CINCLUDES =	@STD_CINCLUDES@
113*00b67f09SDavid van MoolenbroekSTD_CDEFINES =	@STD_CDEFINES@
114*00b67f09SDavid van MoolenbroekSTD_CWARNINGS =	@STD_CWARNINGS@
115*00b67f09SDavid van Moolenbroek
116*00b67f09SDavid van MoolenbroekBUILD_CC = @BUILD_CC@
117*00b67f09SDavid van MoolenbroekBUILD_CFLAGS = @BUILD_CFLAGS@
118*00b67f09SDavid van MoolenbroekBUILD_CPPFLAGS = @BUILD_CPPFLAGS@
119*00b67f09SDavid van MoolenbroekBUILD_LDFLAGS = @BUILD_LDFLAGS@
120*00b67f09SDavid van MoolenbroekBUILD_LIBS = @BUILD_LIBS@
121*00b67f09SDavid van Moolenbroek
122*00b67f09SDavid van Moolenbroek.SUFFIXES:
123*00b67f09SDavid van Moolenbroek.SUFFIXES: .c .@O@
124*00b67f09SDavid van Moolenbroek
125*00b67f09SDavid van MoolenbroekALWAYS_INCLUDES = -I${top_builddir} -I${top_srcdir}
126*00b67f09SDavid van MoolenbroekALWAYS_DEFINES = @ALWAYS_DEFINES@
127*00b67f09SDavid van MoolenbroekALWAYS_WARNINGS =
128*00b67f09SDavid van Moolenbroek
129*00b67f09SDavid van MoolenbroekALL_CPPFLAGS = \
130*00b67f09SDavid van Moolenbroek	${ALWAYS_INCLUDES} ${CINCLUDES} ${STD_CINCLUDES} \
131*00b67f09SDavid van Moolenbroek	${ALWAYS_DEFINES} ${CDEFINES} ${STD_CDEFINES}
132*00b67f09SDavid van Moolenbroek
133*00b67f09SDavid van MoolenbroekALL_CFLAGS = ${EXT_CFLAGS} ${ALL_CPPFLAGS} ${CFLAGS} \
134*00b67f09SDavid van Moolenbroek	${ALWAYS_WARNINGS} ${STD_CWARNINGS} ${CWARNINGS}
135*00b67f09SDavid van Moolenbroek
136*00b67f09SDavid van Moolenbroek@BIND9_CO_RULE@
137*00b67f09SDavid van Moolenbroek	${LIBTOOL_MODE_COMPILE} ${CC} ${ALL_CFLAGS} -c $<
138*00b67f09SDavid van Moolenbroek
139*00b67f09SDavid van MoolenbroekSHELL = @SHELL@
140*00b67f09SDavid van MoolenbroekLIBTOOL = @LIBTOOL@
141*00b67f09SDavid van MoolenbroekLIBTOOL_MODE_COMPILE = ${LIBTOOL} @LIBTOOL_MODE_COMPILE@
142*00b67f09SDavid van MoolenbroekLIBTOOL_MODE_INSTALL = ${LIBTOOL} @LIBTOOL_MODE_INSTALL@
143*00b67f09SDavid van MoolenbroekLIBTOOL_MODE_LINK = ${LIBTOOL} @LIBTOOL_MODE_LINK@
144*00b67f09SDavid van MoolenbroekPURIFY = @PURIFY@
145*00b67f09SDavid van Moolenbroek
146*00b67f09SDavid van MoolenbroekMKDEP = ${SHELL} ${top_builddir}/make/mkdep
147*00b67f09SDavid van Moolenbroek
148*00b67f09SDavid van Moolenbroek###
149*00b67f09SDavid van Moolenbroek### This is a template compound command to build an executable binary with
150*00b67f09SDavid van Moolenbroek### an internal symbol table.
151*00b67f09SDavid van Moolenbroek### This process is tricky.  We first link all objects including a tentative
152*00b67f09SDavid van Moolenbroek### empty symbol table, then get a tentative list of symbols from the resulting
153*00b67f09SDavid van Moolenbroek### binary ($@tmp0).  Next, we re-link all objects, but this time with the
154*00b67f09SDavid van Moolenbroek### symbol table just created ($tmp@1).  The set of symbols should be the same,
155*00b67f09SDavid van Moolenbroek### but the corresponding addresses would be changed due to the difference on
156*00b67f09SDavid van Moolenbroek### the size of symbol tables.  So we create the symbol table and re-create the
157*00b67f09SDavid van Moolenbroek### objects once again.  Finally, we check the symbol table embedded in the
158*00b67f09SDavid van Moolenbroek### final binaryis consistent with the binary itself; otherwise the process is
159*00b67f09SDavid van Moolenbroek### terminated.
160*00b67f09SDavid van Moolenbroek###
161*00b67f09SDavid van Moolenbroek### To minimize the overhead of creating symbol tables, the autoconf switch
162*00b67f09SDavid van Moolenbroek### --enable-symtable takes an argument so that the symbol table can be created
163*00b67f09SDavid van Moolenbroek### on a per application basis: unless the argument is set to "all", the symbol
164*00b67f09SDavid van Moolenbroek### table is created only when a shell (environment) variable "MAKE_SYMTABLE" is
165*00b67f09SDavid van Moolenbroek### set to a non-null value in the rule to build the executable binary.
166*00b67f09SDavid van Moolenbroek###
167*00b67f09SDavid van Moolenbroek### Each Makefile.in that uses this macro is expected to define "LIBS" and
168*00b67f09SDavid van Moolenbroek### "NOSYMLIBS"; the former includes libisc with an empty symbol table, and
169*00b67f09SDavid van Moolenbroek### the latter includes libisc without the definition of a symbol table.
170*00b67f09SDavid van Moolenbroek### The rule to make the executable binary will look like this
171*00b67f09SDavid van Moolenbroek### binary@EXEEXT@: ${OBJS}
172*00b67f09SDavid van Moolenbroek###     #export MAKE_SYMTABLE="yes"; \  <- enable if symtable is always needed
173*00b67f09SDavid van Moolenbroek###	export BASEOBJS="${OBJS}"; \
174*00b67f09SDavid van Moolenbroek###	${FINALBUILDCMD}
175*00b67f09SDavid van Moolenbroek###
176*00b67f09SDavid van Moolenbroek### Normally, ${LIBS} includes all necessary libraries to build the binary;
177*00b67f09SDavid van Moolenbroek### there are some exceptions however, where the rule lists some of the
178*00b67f09SDavid van Moolenbroek### necessary libraries explicitly in addition to (or instead of) ${LIBS},
179*00b67f09SDavid van Moolenbroek### like this:
180*00b67f09SDavid van Moolenbroek### binary@EXEEXT@: ${OBJS}
181*00b67f09SDavid van Moolenbroek###     cc -o $@ ${OBJS} ${OTHERLIB1} ${OTHERLIB2} ${lIBS}
182*00b67f09SDavid van Moolenbroek### in order to modify such a rule to use this compound command, a separate
183*00b67f09SDavid van Moolenbroek### variable "LIBS0" should be deinfed for the explicitly listed libraries,
184*00b67f09SDavid van Moolenbroek### while making sure ${LIBS} still includes libisc.  So the above rule would
185*00b67f09SDavid van Moolenbroek### be modified as follows:
186*00b67f09SDavid van Moolenbroek### binary@EXEEXT@: ${OBJS}
187*00b67f09SDavid van Moolenbroek###	export BASEOBJS="${OBJS}"; \
188*00b67f09SDavid van Moolenbroek###	export LIBS0="${OTHERLIB1} ${OTHERLIB2}"; \
189*00b67f09SDavid van Moolenbroek###     ${FINALBUILDCMD}
190*00b67f09SDavid van Moolenbroek### See bin/check/Makefile.in for a complete example of the use of LIBS0.
191*00b67f09SDavid van Moolenbroek###
192*00b67f09SDavid van MoolenbroekFINALBUILDCMD = if [ X"${MKSYMTBL_PROGRAM}" = X -o X"$${MAKE_SYMTABLE:-${ALWAYS_MAKE_SYMTABLE}}" = X ] ; then \
193*00b67f09SDavid van Moolenbroek		${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${ALL_CFLAGS} ${LDFLAGS} \
194*00b67f09SDavid van Moolenbroek		-o $@ $${BASEOBJS} $${LIBS0} ${LIBS}; \
195*00b67f09SDavid van Moolenbroek	else \
196*00b67f09SDavid van Moolenbroek		rm -f $@tmp0; \
197*00b67f09SDavid van Moolenbroek		${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${ALL_CFLAGS} ${LDFLAGS} \
198*00b67f09SDavid van Moolenbroek		-o $@tmp0 $${BASEOBJS} $${LIBS0} ${LIBS} || exit 1; \
199*00b67f09SDavid van Moolenbroek		rm -f $@-symtbl.c $@-symtbl.@O@; \
200*00b67f09SDavid van Moolenbroek		${MKSYMTBL_PROGRAM} ${top_srcdir}/util/mksymtbl.pl \
201*00b67f09SDavid van Moolenbroek		-o $@-symtbl.c $@tmp0 || exit 1; \
202*00b67f09SDavid van Moolenbroek		$(MAKE) $@-symtbl.@O@ || exit 1; \
203*00b67f09SDavid van Moolenbroek		rm -f $@tmp1; \
204*00b67f09SDavid van Moolenbroek		${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${ALL_CFLAGS} ${LDFLAGS} \
205*00b67f09SDavid van Moolenbroek		-o $@tmp1 $${BASEOBJS} $@-symtbl.@O@ $${LIBS0} ${NOSYMLIBS} || exit 1; \
206*00b67f09SDavid van Moolenbroek		rm -f $@-symtbl.c $@-symtbl.@O@; \
207*00b67f09SDavid van Moolenbroek		${MKSYMTBL_PROGRAM} ${top_srcdir}/util/mksymtbl.pl \
208*00b67f09SDavid van Moolenbroek		-o $@-symtbl.c $@tmp1 || exit 1; \
209*00b67f09SDavid van Moolenbroek		$(MAKE) $@-symtbl.@O@ || exit 1; \
210*00b67f09SDavid van Moolenbroek		${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${ALL_CFLAGS} ${LDFLAGS} \
211*00b67f09SDavid van Moolenbroek		-o $@tmp2 $${BASEOBJS} $@-symtbl.@O@ $${LIBS0} ${NOSYMLIBS}; \
212*00b67f09SDavid van Moolenbroek		${MKSYMTBL_PROGRAM} ${top_srcdir}/util/mksymtbl.pl \
213*00b67f09SDavid van Moolenbroek		-o $@-symtbl2.c $@tmp2; \
214*00b67f09SDavid van Moolenbroek		count=0; \
215*00b67f09SDavid van Moolenbroek		until diff $@-symtbl.c $@-symtbl2.c > /dev/null ; \
216*00b67f09SDavid van Moolenbroek		do \
217*00b67f09SDavid van Moolenbroek			count=`expr $$count + 1` ; \
218*00b67f09SDavid van Moolenbroek			test $$count = 42 && exit 1 ; \
219*00b67f09SDavid van Moolenbroek			rm -f $@-symtbl.c $@-symtbl.@O@; \
220*00b67f09SDavid van Moolenbroek			${MKSYMTBL_PROGRAM} ${top_srcdir}/util/mksymtbl.pl \
221*00b67f09SDavid van Moolenbroek			-o $@-symtbl.c $@tmp2 || exit 1; \
222*00b67f09SDavid van Moolenbroek			$(MAKE) $@-symtbl.@O@ || exit 1; \
223*00b67f09SDavid van Moolenbroek			${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${ALL_CFLAGS} \
224*00b67f09SDavid van Moolenbroek			${LDFLAGS} -o $@tmp2 $${BASEOBJS} $@-symtbl.@O@ \
225*00b67f09SDavid van Moolenbroek			$${LIBS0} ${NOSYMLIBS}; \
226*00b67f09SDavid van Moolenbroek			${MKSYMTBL_PROGRAM} ${top_srcdir}/util/mksymtbl.pl \
227*00b67f09SDavid van Moolenbroek			-o $@-symtbl2.c $@tmp2; \
228*00b67f09SDavid van Moolenbroek		done ; \
229*00b67f09SDavid van Moolenbroek		mv $@tmp2 $@; \
230*00b67f09SDavid van Moolenbroek		rm -f $@tmp0 $@tmp1 $@tmp2 $@-symtbl2.c; \
231*00b67f09SDavid van Moolenbroek	fi
232*00b67f09SDavid van Moolenbroek
233*00b67f09SDavid van Moolenbroekcleandir: distclean
234*00b67f09SDavid van Moolenbroeksuperclean: maintainer-clean
235*00b67f09SDavid van Moolenbroek
236*00b67f09SDavid van Moolenbroekclean distclean maintainer-clean::
237*00b67f09SDavid van Moolenbroek	rm -f *.@O@ *.o *.lo *.la core *.core *-symtbl.c *tmp0 *tmp1 *tmp2
238*00b67f09SDavid van Moolenbroek	rm -rf .depend .libs
239*00b67f09SDavid van Moolenbroek
240*00b67f09SDavid van Moolenbroekdistclean maintainer-clean::
241*00b67f09SDavid van Moolenbroek	rm -f Makefile
242*00b67f09SDavid van Moolenbroek
243*00b67f09SDavid van Moolenbroekdepend:
244*00b67f09SDavid van Moolenbroek	@for i in ${ALL_SUBDIRS}; do \
245*00b67f09SDavid van Moolenbroek		if [ "$$i" != "nulldir" -a -d $$i ]; then \
246*00b67f09SDavid van Moolenbroek			echo "making depend in `pwd`/$$i"; \
247*00b67f09SDavid van Moolenbroek			(cd $$i; ${MAKE} ${MAKEDEFS} DESTDIR="${DESTDIR}" $@) || exit 1; \
248*00b67f09SDavid van Moolenbroek		fi; \
249*00b67f09SDavid van Moolenbroek	done
250*00b67f09SDavid van Moolenbroek	@if [ X"${srcdir}" != X. ] ; then \
251*00b67f09SDavid van Moolenbroek		if [ X"${SRCS}" != X -a X"${PSRCS}" != X ] ; then \
252*00b67f09SDavid van Moolenbroek			echo ${MKDEP} -vpath ${srcdir} ${ALL_CPPFLAGS} ${ALL_CFLAGS} ${SRCS}; \
253*00b67f09SDavid van Moolenbroek			${MKDEP} -vpath ${srcdir} ${ALL_CPPFLAGS} ${ALL_CFLAGS} ${SRCS}; \
254*00b67f09SDavid van Moolenbroek			echo ${MKDEP} -vpath ${srcdir} -ap ${ALL_CPPFLAGS} ${ALL_CFLAGS} ${PSRCS}; \
255*00b67f09SDavid van Moolenbroek			${MKDEP} -vpath ${srcdir} -ap ${ALL_CPPFLAGS} ${ALL_CFLAGS} ${PSRCS}; \
256*00b67f09SDavid van Moolenbroek			${DEPENDEXTRA} \
257*00b67f09SDavid van Moolenbroek		elif [ X"${SRCS}" != X ] ; then \
258*00b67f09SDavid van Moolenbroek			echo ${MKDEP} -vpath ${srcdir} ${ALL_CPPFLAGS} ${ALL_CFLAGS} ${SRCS}; \
259*00b67f09SDavid van Moolenbroek			${MKDEP} -vpath ${srcdir} ${ALL_CPPFLAGS} ${ALL_CFLAGS} ${SRCS}; \
260*00b67f09SDavid van Moolenbroek			${DEPENDEXTRA} \
261*00b67f09SDavid van Moolenbroek		elif [ X"${PSRCS}" != X ] ; then \
262*00b67f09SDavid van Moolenbroek			echo ${MKDEP} -vpath ${srcdir} ${ALL_CPPFLAGS} ${ALL_CFLAGS} ${PSRCS}; \
263*00b67f09SDavid van Moolenbroek			${MKDEP} -vpath ${srcdir} -p ${ALL_CPPFLAGS} ${ALL_CFLAGS} ${PSRCS}; \
264*00b67f09SDavid van Moolenbroek			${DEPENDEXTRA} \
265*00b67f09SDavid van Moolenbroek		fi \
266*00b67f09SDavid van Moolenbroek	else \
267*00b67f09SDavid van Moolenbroek		if [ X"${SRCS}" != X -a X"${PSRCS}" != X ] ; then \
268*00b67f09SDavid van Moolenbroek			echo ${MKDEP} ${ALL_CPPFLAGS} ${ALL_CFLAGS} ${SRCS}; \
269*00b67f09SDavid van Moolenbroek			${MKDEP} ${ALL_CPPFLAGS} ${ALL_CFLAGS} ${SRCS}; \
270*00b67f09SDavid van Moolenbroek			echo ${MKDEP} -ap ${ALL_CPPFLAGS} ${ALL_CFLAGS} ${PSRCS}; \
271*00b67f09SDavid van Moolenbroek			${MKDEP} -ap ${ALL_CPPFLAGS} ${ALL_CFLAGS} ${PSRCS}; \
272*00b67f09SDavid van Moolenbroek			${DEPENDEXTRA} \
273*00b67f09SDavid van Moolenbroek		elif [ X"${SRCS}" != X ] ; then \
274*00b67f09SDavid van Moolenbroek			echo ${MKDEP} ${ALL_CPPFLAGS} ${ALL_CFLAGS} ${SRCS}; \
275*00b67f09SDavid van Moolenbroek			${MKDEP} ${ALL_CPPFLAGS} ${ALL_CFLAGS} ${SRCS}; \
276*00b67f09SDavid van Moolenbroek			${DEPENDEXTRA} \
277*00b67f09SDavid van Moolenbroek		elif [ X"${PSRCS}" != X ] ; then \
278*00b67f09SDavid van Moolenbroek			echo ${MKDEP} ${ALL_CPPFLAGS} ${ALL_CFLAGS} ${PSRCS}; \
279*00b67f09SDavid van Moolenbroek			${MKDEP} -p ${ALL_CPPFLAGS} ${ALL_CFLAGS} ${PSRCS}; \
280*00b67f09SDavid van Moolenbroek			${DEPENDEXTRA} \
281*00b67f09SDavid van Moolenbroek		fi \
282*00b67f09SDavid van Moolenbroek	fi
283*00b67f09SDavid van Moolenbroek
284*00b67f09SDavid van MoolenbroekFORCE:
285*00b67f09SDavid van Moolenbroek
286*00b67f09SDavid van Moolenbroek###
287*00b67f09SDavid van Moolenbroek### Libraries
288*00b67f09SDavid van Moolenbroek###
289*00b67f09SDavid van Moolenbroek
290*00b67f09SDavid van MoolenbroekAR =		@AR@
291*00b67f09SDavid van MoolenbroekARFLAGS =	@ARFLAGS@
292*00b67f09SDavid van MoolenbroekRANLIB =	@RANLIB@
293*00b67f09SDavid van Moolenbroek
294*00b67f09SDavid van Moolenbroek###
295*00b67f09SDavid van Moolenbroek### Installation
296*00b67f09SDavid van Moolenbroek###
297*00b67f09SDavid van Moolenbroek
298*00b67f09SDavid van MoolenbroekINSTALL =		@INSTALL@
299*00b67f09SDavid van MoolenbroekINSTALL_PROGRAM =	@INSTALL_PROGRAM@
300*00b67f09SDavid van MoolenbroekLINK_PROGRAM =		@LN_S@
301*00b67f09SDavid van MoolenbroekINSTALL_SCRIPT =	@INSTALL_SCRIPT@
302*00b67f09SDavid van MoolenbroekINSTALL_DATA =		@INSTALL_DATA@
303*00b67f09SDavid van MoolenbroekINSTALL_LIBRARY =	@INSTALL_LIBRARY@
304*00b67f09SDavid van Moolenbroek
305*00b67f09SDavid van Moolenbroek###
306*00b67f09SDavid van Moolenbroek### Programs used when generating documentation.  It's ok for these
307*00b67f09SDavid van Moolenbroek### not to exist when not generating documentation.
308*00b67f09SDavid van Moolenbroek###
309*00b67f09SDavid van Moolenbroek
310*00b67f09SDavid van MoolenbroekXSLTPROC =		@XSLTPROC@ --novalid --xinclude --nonet
311*00b67f09SDavid van MoolenbroekPERL =			@PERL@
312*00b67f09SDavid van MoolenbroekLATEX =			@LATEX@
313*00b67f09SDavid van MoolenbroekPDFLATEX =		@PDFLATEX@
314*00b67f09SDavid van MoolenbroekW3M =			@W3M@
315*00b67f09SDavid van Moolenbroek
316*00b67f09SDavid van Moolenbroek###
317*00b67f09SDavid van Moolenbroek### Script language program used to create internal symbol tables
318*00b67f09SDavid van Moolenbroek###
319*00b67f09SDavid van MoolenbroekMKSYMTBL_PROGRAM =	@MKSYMTBL_PROGRAM@
320*00b67f09SDavid van Moolenbroek
321*00b67f09SDavid van Moolenbroek###
322*00b67f09SDavid van Moolenbroek### Switch to create internal symbol table selectively
323*00b67f09SDavid van Moolenbroek###
324*00b67f09SDavid van MoolenbroekALWAYS_MAKE_SYMTABLE =	@ALWAYS_MAKE_SYMTABLE@
325*00b67f09SDavid van Moolenbroek
326*00b67f09SDavid van Moolenbroek###
327*00b67f09SDavid van Moolenbroek### DocBook -> HTML
328*00b67f09SDavid van Moolenbroek### DocBook -> man page
329*00b67f09SDavid van Moolenbroek###
330*00b67f09SDavid van Moolenbroek
331*00b67f09SDavid van Moolenbroek.SUFFIXES: .docbook .html .1 .2 .3 .4 .5 .6 .7 .8
332*00b67f09SDavid van Moolenbroek
333*00b67f09SDavid van Moolenbroek.docbook.html:
334*00b67f09SDavid van Moolenbroek	${XSLTPROC} -o $@ ${top_srcdir}/doc/xsl/isc-docbook-html.xsl $<
335*00b67f09SDavid van Moolenbroek
336*00b67f09SDavid van Moolenbroek.docbook.1:
337*00b67f09SDavid van Moolenbroek	${XSLTPROC} -o $@ ${top_srcdir}/doc/xsl/isc-manpage.xsl $<
338*00b67f09SDavid van Moolenbroek
339*00b67f09SDavid van Moolenbroek.docbook.2:
340*00b67f09SDavid van Moolenbroek	${XSLTPROC} -o $@ ${top_srcdir}/doc/xsl/isc-manpage.xsl $<
341*00b67f09SDavid van Moolenbroek
342*00b67f09SDavid van Moolenbroek.docbook.3:
343*00b67f09SDavid van Moolenbroek	${XSLTPROC} -o $@ ${top_srcdir}/doc/xsl/isc-manpage.xsl $<
344*00b67f09SDavid van Moolenbroek
345*00b67f09SDavid van Moolenbroek.docbook.4:
346*00b67f09SDavid van Moolenbroek	${XSLTPROC} -o $@ ${top_srcdir}/doc/xsl/isc-manpage.xsl $<
347*00b67f09SDavid van Moolenbroek
348*00b67f09SDavid van Moolenbroek.docbook.5:
349*00b67f09SDavid van Moolenbroek	${XSLTPROC} -o $@ ${top_srcdir}/doc/xsl/isc-manpage.xsl $<
350*00b67f09SDavid van Moolenbroek
351*00b67f09SDavid van Moolenbroek.docbook.6:
352*00b67f09SDavid van Moolenbroek	${XSLTPROC} -o $@ ${top_srcdir}/doc/xsl/isc-manpage.xsl $<
353*00b67f09SDavid van Moolenbroek
354*00b67f09SDavid van Moolenbroek.docbook.7:
355*00b67f09SDavid van Moolenbroek	${XSLTPROC} -o $@ ${top_srcdir}/doc/xsl/isc-manpage.xsl $<
356*00b67f09SDavid van Moolenbroek
357*00b67f09SDavid van Moolenbroek.docbook.8:
358*00b67f09SDavid van Moolenbroek	${XSLTPROC} -o $@ ${top_srcdir}/doc/xsl/isc-manpage.xsl $<
359*00b67f09SDavid van Moolenbroek
360