Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 30 Dec 2014 20:44:06 +0000 (UTC)
From:      Garrett Cooper <ngie@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org
Subject:   svn commit: r276422 - stable/10/share/mk
Message-ID:  <201412302044.sBUKi6vY048674@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: ngie
Date: Tue Dec 30 20:44:05 2014
New Revision: 276422
URL: https://svnweb.freebsd.org/changeset/base/276422

Log:
  MFC r267276:
  
    Ensure files are created during the build when using bsd.subdir.mk.
  
    When FILES is defined in a Makefile that _also_ includes bsd.subdir.mk, the
    build of the files (if any) was not properly triggered during the build
    stage.  This was because bsd.files.mk did not define the buildfiles target
    if it was already defined... and bsd.subdir.mk defined this target on its
    own, thus causing a conflict.
  
    Fix this by unconditionally defining buildfiles from bsd.files.mk; this is
    safe because nothing else in the tree needs to redefine this and because the
    target itself contains no commands: all it does is define dependencies.
    Also ensure that bsd.files.mk is always pulled in by bsd.test.mk regardless
    of what bsd.prog.mk does.
  
    These fixes allow "make installworld" to run cleanly on a system with
    read-only src and obj trees.
  
    This is "make tinderbox" clean.
  
    Reviewed by:	imp
    Obtained from:	jilles

Modified:
  stable/10/share/mk/bsd.files.mk
  stable/10/share/mk/bsd.test.mk
Directory Properties:
  stable/10/   (props changed)

Modified: stable/10/share/mk/bsd.files.mk
==============================================================================
--- stable/10/share/mk/bsd.files.mk	Tue Dec 30 20:23:03 2014	(r276421)
+++ stable/10/share/mk/bsd.files.mk	Tue Dec 30 20:44:05 2014	(r276422)
@@ -4,13 +4,14 @@
 .error bsd.files.mk cannot be included directly.
 .endif
 
+.if !target(__<bsd.files.mk>__)
+__<bsd.files.mk>__:
+
 FILESGROUPS?=	FILES
 
-.if !target(buildfiles)
 .for group in ${FILESGROUPS}
 buildfiles: ${${group}}
 .endfor
-.endif
 
 all: buildfiles
 
@@ -65,3 +66,5 @@ _${group}INS: ${_${group}FILES}
 
 realinstall: installfiles
 .ORDER: beforeinstall installfiles
+
+.endif # !target(__<bsd.files.mk>__)

Modified: stable/10/share/mk/bsd.test.mk
==============================================================================
--- stable/10/share/mk/bsd.test.mk	Tue Dec 30 20:23:03 2014	(r276421)
+++ stable/10/share/mk/bsd.test.mk	Tue Dec 30 20:44:05 2014	(r276422)
@@ -94,8 +94,7 @@ test: aftertest
 
 .if !empty(PROGS) || !empty(PROGS_CXX) || !empty(SCRIPTS)
 .include <bsd.progs.mk>
-.elif !empty(FILES)
-.include <bsd.files.mk>
 .endif
+.include <bsd.files.mk>
 
 .include <bsd.obj.mk>



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201412302044.sBUKi6vY048674>