1994-08-04 21:09:27 +00:00
|
|
|
# from: @(#)bsd.subdir.mk 5.9 (Berkeley) 2/1/91
|
1999-08-28 00:22:10 +00:00
|
|
|
# $FreeBSD$
|
1997-03-09 00:14:00 +00:00
|
|
|
#
|
|
|
|
# The include file <bsd.subdir.mk> contains the default targets
|
1998-05-06 16:53:53 +00:00
|
|
|
# for building subdirectories.
|
1997-03-09 00:14:00 +00:00
|
|
|
#
|
|
|
|
# For all of the directories listed in the variable SUBDIRS, the
|
|
|
|
# specified directory will be visited and the target made. There is
|
|
|
|
# also a default target which allows the command "make subdir" where
|
|
|
|
# subdir is any directory listed in the variable SUBDIRS.
|
|
|
|
#
|
|
|
|
#
|
|
|
|
# +++ variables +++
|
|
|
|
#
|
|
|
|
# DISTRIBUTION Name of distribution. [bin]
|
|
|
|
#
|
|
|
|
# SUBDIR A list of subdirectories that should be built as well.
|
|
|
|
# Each of the targets will execute the same target in the
|
|
|
|
# subdirectories.
|
|
|
|
#
|
1998-03-29 01:10:09 +00:00
|
|
|
# SUBDIR_CHANGE A directory-tree that contains overrides for
|
|
|
|
# corresponding build subdirs.
|
|
|
|
# Each override is a file containing one subdirname per line:
|
|
|
|
# 'subdirlist' is a pure override
|
|
|
|
# 'subdirdrop' drops directories from the build
|
|
|
|
# 'subdiradd' adds directories to the build
|
|
|
|
#
|
1997-03-09 00:14:00 +00:00
|
|
|
# +++ targets +++
|
|
|
|
#
|
|
|
|
# distribute:
|
|
|
|
# This is a variant of install, which will
|
|
|
|
# put the stuff into the right "distribution".
|
|
|
|
#
|
|
|
|
# afterdistribute, afterinstall, all, beforeinstall, checkdpadd,
|
|
|
|
# clean, cleandepend, cleandir, depend, install, lint, maninstall,
|
1999-03-21 06:43:40 +00:00
|
|
|
# obj, objlink, realinstall, regress, tags
|
1997-03-09 00:14:00 +00:00
|
|
|
#
|
|
|
|
|
1998-08-08 07:02:08 +00:00
|
|
|
.if !target(__initialized__)
|
|
|
|
__initialized__:
|
|
|
|
.if exists(${.CURDIR}/../Makefile.inc)
|
|
|
|
.include "${.CURDIR}/../Makefile.inc"
|
|
|
|
.endif
|
|
|
|
.endif
|
1994-05-30 19:09:18 +00:00
|
|
|
|
|
|
|
.MAIN: all
|
|
|
|
|
1998-03-29 01:10:09 +00:00
|
|
|
.if defined(SUBDIR_CHANGE) && !empty(SUBDIR_CHANGE) && \
|
|
|
|
exists(${SUBDIR_CHANGE}/${DIRPRFX}/subdirlist)
|
|
|
|
SUBDIR!=cat ${SUBDIR_CHANGE}/${DIRPRFX}/subdirlist
|
|
|
|
.endif
|
|
|
|
|
|
|
|
.if defined(SUBDIR_CHANGE) && !empty(SUBDIR_CHANGE) && \
|
|
|
|
exists(${SUBDIR_CHANGE}/${DIRPRFX}/subdirlist)
|
|
|
|
_SUBDIR_EXTRA!=cat ${SUBDIR_CHANGE}/${DIRPRFX}/subdiradd
|
|
|
|
.endif
|
|
|
|
|
1994-05-30 19:09:18 +00:00
|
|
|
_SUBDIRUSE: .USE
|
1998-03-29 01:10:09 +00:00
|
|
|
@for entry in ${SUBDIR} ${_SUBDIR_EXTRA}; do \
|
|
|
|
(if ! (test -f ${SUBDIR_CHANGE}/${DIRPRFX}/subdirdrop && \
|
|
|
|
grep -w $${entry} \
|
|
|
|
${SUBDIR_CHANGE}/${DIRPRFX}/subdirdrop \
|
|
|
|
> /dev/null); then \
|
1999-11-14 13:54:44 +00:00
|
|
|
if test -d ${.CURDIR}/$${entry}.${MACHINE_ARCH}; then \
|
1998-03-29 01:10:09 +00:00
|
|
|
${ECHODIR} \
|
1999-11-14 13:54:44 +00:00
|
|
|
"===> ${DIRPRFX}$${entry}.${MACHINE_ARCH}"; \
|
|
|
|
edir=$${entry}.${MACHINE_ARCH}; \
|
1998-03-29 01:10:09 +00:00
|
|
|
cd ${.CURDIR}/$${edir}; \
|
|
|
|
else \
|
|
|
|
${ECHODIR} "===> ${DIRPRFX}$$entry"; \
|
|
|
|
edir=$${entry}; \
|
|
|
|
cd ${.CURDIR}/$${edir}; \
|
|
|
|
fi; \
|
|
|
|
${MAKE} ${.TARGET:realinstall=install} \
|
|
|
|
SUBDIR_CHANGE=${SUBDIR_CHANGE} \
|
|
|
|
DIRPRFX=${DIRPRFX}$$edir/; \
|
|
|
|
fi; \
|
|
|
|
); \
|
1994-05-30 19:09:18 +00:00
|
|
|
done
|
|
|
|
|
|
|
|
${SUBDIR}::
|
1999-11-14 13:54:44 +00:00
|
|
|
@if test -d ${.TARGET}.${MACHINE_ARCH}; then \
|
|
|
|
cd ${.CURDIR}/${.TARGET}.${MACHINE_ARCH}; \
|
1994-05-30 19:09:18 +00:00
|
|
|
else \
|
|
|
|
cd ${.CURDIR}/${.TARGET}; \
|
|
|
|
fi; \
|
|
|
|
${MAKE} all
|
|
|
|
|
|
|
|
|
1998-03-26 16:02:44 +00:00
|
|
|
.for __target in all checkdpadd clean cleandepend cleandir depend lint \
|
1999-03-21 06:43:40 +00:00
|
|
|
maninstall obj objlink regress tags
|
1997-11-15 13:09:52 +00:00
|
|
|
.if !target(${__target})
|
1996-04-05 22:22:44 +00:00
|
|
|
${__target}: _SUBDIRUSE
|
1994-11-13 21:05:28 +00:00
|
|
|
.endif
|
1996-04-05 22:22:44 +00:00
|
|
|
.endfor
|
1994-11-13 21:05:28 +00:00
|
|
|
|
1994-05-30 19:09:18 +00:00
|
|
|
.if !target(install)
|
|
|
|
.if !target(beforeinstall)
|
|
|
|
beforeinstall:
|
|
|
|
.endif
|
|
|
|
.if !target(afterinstall)
|
|
|
|
afterinstall:
|
|
|
|
.endif
|
|
|
|
install: afterinstall
|
|
|
|
afterinstall: realinstall
|
|
|
|
realinstall: beforeinstall _SUBDIRUSE
|
|
|
|
.endif
|
|
|
|
|
1996-04-05 22:22:44 +00:00
|
|
|
DISTRIBUTION?= bin
|
|
|
|
.if !target(afterdistribute)
|
|
|
|
afterdistribute:
|
1994-05-30 19:09:18 +00:00
|
|
|
.endif
|
1996-04-05 22:22:44 +00:00
|
|
|
.if !target(distribute)
|
1997-03-09 00:14:00 +00:00
|
|
|
distribute: _SUBDIRUSE
|
1997-06-21 15:40:34 +00:00
|
|
|
.for dist in ${DISTRIBUTION}
|
|
|
|
cd ${.CURDIR} ; ${MAKE} afterdistribute DESTDIR=${DISTDIR}/${dist}
|
|
|
|
.endfor
|
1994-05-30 19:09:18 +00:00
|
|
|
.endif
|