svn commit: r259209 - head/share/mk

Julio Merino jmmv at FreeBSD.org
Wed Dec 11 03:41:08 UTC 2013


Author: jmmv
Date: Wed Dec 11 03:41:07 2013
New Revision: 259209
URL: http://svnweb.freebsd.org/changeset/base/259209

Log:
  Make bsd.progs.mk work in directories with SCRIPTS but no PROGS.
  
  This change fixes some cases where bsd.progs.mk would fail to handle
  directories with SCRIPTS but no PROGS.  In particular, "install" did
  not handle such scripts nor dependent files when bsd.subdir.mk was
  added to the mix.
  
  This is "make tinderbox" clean.
  
  Reviewed by:	freebsd-testing
  Approved by:	rpaulo (mentor)

Modified:
  head/share/mk/bsd.progs.mk

Modified: head/share/mk/bsd.progs.mk
==============================================================================
--- head/share/mk/bsd.progs.mk	Wed Dec 11 03:39:50 2013	(r259208)
+++ head/share/mk/bsd.progs.mk	Wed Dec 11 03:41:07 2013	(r259209)
@@ -73,7 +73,7 @@ UPDATE_DEPENDFILE = NO
 # handle being called [bsd.]progs.mk
 .include <bsd.prog.mk>
 
-.ifndef PROG
+.ifndef _RECURSING_PROGS
 # tell progs.mk we might want to install things
 PROGS_TARGETS+= cleandepend cleandir cleanobj depend install
 
@@ -84,11 +84,13 @@ x.$p= PROG_CXX=$p
 .endif
 
 $p ${p}_p: .PHONY .MAKE
-	(cd ${.CURDIR} && ${MAKE} -f ${MAKEFILE} PROG=$p ${x.$p})
+	(cd ${.CURDIR} && ${MAKE} -f ${MAKEFILE} _RECURSING_PROGS= \
+	    SUBDIR= PROG=$p ${x.$p})
 
 .for t in ${PROGS_TARGETS:O:u}
 $p.$t: .PHONY .MAKE
-	(cd ${.CURDIR} && ${MAKE} -f ${MAKEFILE} PROG=$p ${x.$p} ${@:E})
+	(cd ${.CURDIR} && ${MAKE} -f ${MAKEFILE} _RECURSING_PROGS= \
+	    SUBDIR= PROG=$p ${x.$p} ${@:E})
 .endfor
 .endfor
 
@@ -96,4 +98,18 @@ $p.$t: .PHONY .MAKE
 $t: ${PROGS:%=%.$t}
 .endfor
 
+SCRIPTS_TARGETS+= cleandepend cleandir cleanobj depend install
+
+.for p in ${SCRIPTS}
+.for t in ${SCRIPTS_TARGETS:O:u}
+$p.$t: .PHONY .MAKE
+	(cd ${.CURDIR} && ${MAKE} -f ${MAKEFILE} _RECURSING_PROGS= \
+	    SUBDIR= SCRIPT=$p ${x.$p} ${@:E})
+.endfor
+.endfor
+
+.for t in ${SCRIPTS_TARGETS:O:u}
+$t: ${SCRIPTS:%=%.$t}
+.endfor
+
 .endif


More information about the svn-src-all mailing list