diff --git a/share/mk/bsd.confs.mk b/share/mk/bsd.confs.mk index bcc36bc18e6..0750a4e4fa5 100644 --- a/share/mk/bsd.confs.mk +++ b/share/mk/bsd.confs.mk @@ -84,7 +84,4 @@ STAGE_TARGETS+= stage_config .endif .endif -config: buildconfig installconfig -.ORDER: buildconfig installconfig - .endif # ${MK_INCLUDES} != "no" diff --git a/share/mk/bsd.files.mk b/share/mk/bsd.files.mk index d1d3263c444..b9379d92b59 100644 --- a/share/mk/bsd.files.mk +++ b/share/mk/bsd.files.mk @@ -94,7 +94,4 @@ buildfiles: stage_as .endif .endif -files: buildfiles installfiles -.ORDER: buildfiles installfiles - .endif # !target(____) diff --git a/share/mk/bsd.incs.mk b/share/mk/bsd.incs.mk index c985668c7c4..e1398c95dcd 100644 --- a/share/mk/bsd.incs.mk +++ b/share/mk/bsd.incs.mk @@ -99,7 +99,4 @@ STAGE_SYMLINKS.INCS= ${INCSLINKS} .endif .endif -includes: buildincludes installincludes -.ORDER: buildincludes installincludes - .endif # ${MK_INCLUDES} != "no" diff --git a/share/mk/bsd.subdir.mk b/share/mk/bsd.subdir.mk index e4c3e69d1c2..8afe40a693b 100644 --- a/share/mk/bsd.subdir.mk +++ b/share/mk/bsd.subdir.mk @@ -32,12 +32,9 @@ .if !target(____) ____: -ALL_SUBDIR_TARGETS= all all-man buildconfig buildfiles buildincludes \ - checkdpadd clean cleandepend cleandir cleanilinks \ - cleanobj config depend distribute files includes \ - installconfig installfiles installincludes lint \ - maninstall manlint obj objlink realinstall regress tags \ - ${SUBDIR_TARGETS} +ALL_SUBDIR_TARGETS= all all-man checkdpadd clean cleandepend cleandir \ + cleanilinks cleanobj depend distribute lint maninstall manlint obj \ + objlink realinstall regress tags ${SUBDIR_TARGETS} .include @@ -126,6 +123,23 @@ _sub.${__target}: _SUBDIR .endif .endfor +# This is to support 'make includes' calling 'make buildincludes' and +# 'make installincludes' in the proper order, and to support these +# targets as SUBDIR_TARGETS. +.for __target in files includes config +.for __stage in build install +${__stage}${__target}: +.if make(${__stage}${__target}) +${__stage}${__target}: _sub.${__stage}${__target} +_sub.${__stage}${__target}: _SUBDIR +.endif +.endfor +.if !target(${__target}) +${__target}: .MAKE + ${_+_}cd ${.CURDIR}; ${MAKE} build${__target}; ${MAKE} install${__target} +.endif +.endfor + .endif .if !target(install)