Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 18 Apr 2016 18:14:02 +0000 (UTC)
From:      Bryan Drewery <bdrewery@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r298219 - head/share/mk
Message-ID:  <201604181814.u3IIE22P059301@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: bdrewery
Date: Mon Apr 18 18:14:02 2016
New Revision: 298219
URL: https://svnweb.freebsd.org/changeset/base/298219

Log:
  Cause an error during 'make install' if trying to compile with CC.
  
  This is limited to src-tree builds, meaning not extended to ports or other
  out-of-tree builds.
  
  This will help ensure that read-only OBJDIRS will be respected at install-time
  by causing a more consistent failure for those who don't use a read-only
  OBJDIR.  It also will cause Jenkins to yell.  This is a better solution than
  trying to see CC=false as has been attempted and discussed before.
  
  Of course this is only relevant for files generated by CC.
  
  Disable this for META_MODE since it will detect the CFLAGS/command
  change and force a rebuild.
  
  Sponsored by:	EMC / Isilon Storage Division

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

Modified: head/share/mk/bsd.sys.mk
==============================================================================
--- head/share/mk/bsd.sys.mk	Mon Apr 18 18:13:58 2016	(r298218)
+++ head/share/mk/bsd.sys.mk	Mon Apr 18 18:14:02 2016	(r298219)
@@ -178,6 +178,13 @@ ACFLAGS+=	${ACFLAGS.${.IMPSRC:T}}
 CFLAGS+=	${CFLAGS.${.IMPSRC:T}}
 CXXFLAGS+=	${CXXFLAGS.${.IMPSRC:T}}
 
+.if defined(SRCTOP)
+# Prevent rebuilding during install to support read-only objdirs.
+.if make(install) && empty(.MAKE.MODE:Mmeta)
+CFLAGS+=	ERROR-tried-to-rebuild-during-make-install
+.endif
+.endif
+
 # Tell bmake not to mistake standard targets for things to be searched for
 # or expect to ever be up-to-date.
 PHONY_NOTMAIN = analyze afterdepend afterinstall all beforedepend beforeinstall \



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