svn commit: r256411 - projects/bmake/share/mk

Simon J. Gerraty sjg at FreeBSD.org
Sat Oct 12 23:51:00 UTC 2013


Author: sjg
Date: Sat Oct 12 23:51:00 2013
New Revision: 256411
URL: http://svnweb.freebsd.org/changeset/base/256411

Log:
  Ensure that $PROG isn't make .PHONY
  Also add some additional control over staging (for use by bsd.test.mk)

Modified:
  projects/bmake/share/mk/bsd.sys.mk

Modified: projects/bmake/share/mk/bsd.sys.mk
==============================================================================
--- projects/bmake/share/mk/bsd.sys.mk	Sat Oct 12 23:49:26 2013	(r256410)
+++ projects/bmake/share/mk/bsd.sys.mk	Sat Oct 12 23:51:00 2013	(r256411)
@@ -143,7 +143,12 @@ PHONY_NOTMAIN = afterdepend afterinstall
 		realinstall regress subdir-all subdir-depend subdir-install \
 		tags whereobj
 
+.if defined(.PARSEDIR)
+# we don't want ${PROG} to be PHONY
+.PHONY: ${PHONY_NOTMAIN:N${PROG:U}}
+.else
 .PHONY: ${PHONY_NOTMAIN}
+.endif
 .NOTMAIN: ${PHONY_NOTMAIN}
 
 .if !defined(.PARSEDIR)
@@ -153,6 +158,9 @@ PHONY_NOTMAIN = afterdepend afterinstall
 
 .if ${MK_STAGING} != "no"
 .if defined(_SKIP_BUILD) || (!make(all) && !make(clean*))
+_SKIP_STAGING?= yes
+.endif
+.if ${_SKIP_STAGING:Uno} == "yes"
 staging stage_libs stage_files stage_as stage_links stage_symlinks:
 .else
 # allow targets like beforeinstall to be leveraged
@@ -168,7 +176,7 @@ staging: beforeinstall
 .if ${MK_STAGING_PROG} != "no"
 STAGE_DIR.prog= ${STAGE_OBJTOP}${BINDIR}
 
-.if !empty(PROG)
+.if !empty(PROG) || !empty(PROGS)
 .if defined(PROGNAME)
 STAGE_AS_SETS+= prog
 STAGE_AS_${PROG}= ${PROGNAME}
@@ -183,6 +191,9 @@ staging: stage_files
 
 .if !empty(_LIBS) && !defined(INTERNALLIB)
 stage_libs: ${_LIBS}
+.if defined(SHLIB_NAME) && defined(DEBUG_FLAGS) && target(${SHLIB_NAME}.symbols)
+stage_libs: ${SHLIB_NAME}.symbols
+.endif
 .endif
 
 .if !empty(INCS) || !empty(INCSGROUPS) && target(buildincludes)
@@ -203,6 +214,9 @@ staging: stage_as
 
 .if !empty(LINKS)
 staging: stage_links
+.if ${MAKE_VERSION} < 20131001
+stage_links.links: ${_LIBS} ${PROG}
+.endif
 STAGE_SETS+= links
 STAGE_LINKS.links= ${LINKS}
 .endif


More information about the svn-src-projects mailing list