Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 1 Dec 2015 21:19:17 +0000 (UTC)
From:      John Baldwin <jhb@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r291614 - head/sys/conf
Message-ID:  <201512012119.tB1LJHu8095485@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: jhb
Date: Tue Dec  1 21:19:16 2015
New Revision: 291614
URL: https://svnweb.freebsd.org/changeset/base/291614

Log:
  Restore cleaning of auto-generated kobj files after the recent MFILES
  changes.  Use the list of MFILES found by find to identify the set of
  possible auto-generated files and add the intersection of this set and
  SRCS to CLEANFILES.
  
  Submitted by:	imp (previous version), sbruno
  Differential Revision:	https://reviews.freebsd.org/D4336

Modified:
  head/sys/conf/kern.pre.mk
  head/sys/conf/kmod.mk

Modified: head/sys/conf/kern.pre.mk
==============================================================================
--- head/sys/conf/kern.pre.mk	Tue Dec  1 20:56:16 2015	(r291613)
+++ head/sys/conf/kern.pre.mk	Tue Dec  1 21:19:16 2015	(r291614)
@@ -206,9 +206,8 @@ SYSTEM_LD_TAIL= @${OBJCOPY} --strip-symb
 SYSTEM_DEP+= ${LDSCRIPT}
 
 # Calculate path for .m files early, if needed.
-.if !defined(_MPATH)
+.if !defined(__MPATH)
 __MPATH!=find ${S:tA}/ -name \*_if.m
-_MPATH=${__MPATH:H:O:u}
 .endif
 
 # MKMODULESENV is set here so that port makefiles can augment
@@ -227,7 +226,7 @@ MKMODULESENV+=	MODULES_OVERRIDE="${MODUL
 .if defined(DEBUG)
 MKMODULESENV+=	DEBUG_FLAGS="${DEBUG}"
 .endif
-MKMODULESENV+=	_MPATH="${_MPATH}"
+MKMODULESENV+=	__MPATH="${__MPATH}"
 
 # Architecture and output format arguments for objdump to convert image to
 # object file

Modified: head/sys/conf/kmod.mk
==============================================================================
--- head/sys/conf/kmod.mk	Tue Dec  1 20:56:16 2015	(r291613)
+++ head/sys/conf/kmod.mk	Tue Dec  1 21:19:16 2015	(r291614)
@@ -370,14 +370,18 @@ vnode_if_typedef.h:
 .endif
 
 # Build _if.[ch] from _if.m, and clean them when we're done.
-.if !defined(_MPATH)
+.if !defined(__MPATH)
 __MPATH!=find ${SYSDIR:tA}/ -name \*_if.m
-_MPATH=${__MPATH:H:O:u}
 .endif
+_MFILES=${__MPATH:T:O}
+_MPATH=${__MPATH:H:O:u}
 .PATH.m: ${_MPATH}
 .for _i in ${SRCS:M*_if.[ch]}
-#removes too much, comment out until it's more constrained.
-#CLEANFILES+=	${_i}
+_MATCH=M${_i:R:S/$/.m/}
+_MATCHES=${_MFILES:${_MATCH}}
+.if !empty(_MATCHES)
+CLEANFILES+=	${_i}
+.endif
 .endfor # _i
 .m.c:	${SYSDIR}/tools/makeobjops.awk
 	${AWK} -f ${SYSDIR}/tools/makeobjops.awk ${.IMPSRC} -c



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