Use the '+' flag to make make recurse into sub-directories even when

given -n. For POLA reasons this behaviour is switched on only when
at least two -n flags are given to make. One -n flag keeps the old behaviour
of showing the shell command that would recurse into the sub-directories.

Discussed with: ru
This commit is contained in:
Hartmut Brandt 2004-08-09 10:54:05 +00:00
parent e62200e75a
commit acabf29a1b
2 changed files with 11 additions and 5 deletions

View File

@ -35,14 +35,14 @@ DISTRIBUTION?= base
.if !target(distribute)
distribute:
.for dist in ${DISTRIBUTION}
cd ${.CURDIR}; \
${_+_}cd ${.CURDIR}; \
${MAKE} install -DNO_SUBDIR DESTDIR=${DISTDIR}/${dist} SHARED=copies
.endfor
.endif
_SUBDIR: .USE
.if defined(SUBDIR) && !empty(SUBDIR) && !defined(NO_SUBDIR)
@for entry in ${SUBDIR}; do \
@${_+_}for entry in ${SUBDIR}; do \
if test -d ${.CURDIR}/$${entry}.${MACHINE_ARCH}; then \
${ECHODIR} "===> ${DIRPRFX}$${entry}.${MACHINE_ARCH}"; \
edir=$${entry}.${MACHINE_ARCH}; \
@ -58,12 +58,12 @@ _SUBDIR: .USE
.endif
${SUBDIR}::
@if test -d ${.TARGET}.${MACHINE_ARCH}; then \
${_+_}@if test -d ${.TARGET}.${MACHINE_ARCH}; then \
cd ${.CURDIR}/${.TARGET}.${MACHINE_ARCH}; \
else \
cd ${.CURDIR}/${.TARGET}; \
fi; \
${MAKE} all
${_+_}${MAKE} all
.for __target in all all-man checkdpadd clean cleandepend cleandir \
@ -80,7 +80,7 @@ ${__stage}${__target}: _SUBDIR
.endif
.endfor
${__target}:
cd ${.CURDIR}; ${MAKE} build${__target}; ${MAKE} install${__target}
${_+_}cd ${.CURDIR}; ${MAKE} build${__target}; ${MAKE} install${__target}
.endfor
.if !target(install)

View File

@ -57,6 +57,12 @@ ECHODIR ?= true
.endif
.endif
.if !empty(.MAKEFLAGS:M-n) && ${.MAKEFLAGS:M-n} == "-n"
_+_ ?=
.else
_+_ ?= +
.endif
.if defined(%POSIX)
FC ?= fort77
FFLAGS ?= -O 1