Author: bdrewery
Date: Tue Jul  3 21:29:04 2018
New Revision: 335912
URL: https://svnweb.freebsd.org/changeset/base/335912

Log:
  Fix .depend.foo.o tracking for sys/conf/files defined compilations.
  
  Some example files:
    ia32_genassym.o
    acpi_wakecode.o
  
  The old mkdep method also lacked tracking these files.
  
  Objects defined in sys/conf/files with no-obj and no-implicit-rule get their
  own targets defined in the kernel Makefile but lack having their objects added
  to DEPENDOBJS so never get a .depend file generated.  Normally if an object is
  in OBJS it will get a .depend file.
  
  Fix this by looking for .o files in CLEAN and ensuring they are part of
  the -MD filtering and .depend loading.  This is a hack.  Other solutions
  could exist involving sys/conf/files or config(8) to auto add these to
  DEPENDFILES/DEPENDOBJS but this method seems reliable enough without being
  intrusive or error-prone for new files.
  
  Reported by:  bde
  MFC after:    3 weeks
  Sponsored by: Dell EMC

Modified:
  head/sys/conf/kern.post.mk

Modified: head/sys/conf/kern.post.mk
==============================================================================
--- head/sys/conf/kern.post.mk  Tue Jul  3 21:15:47 2018        (r335911)
+++ head/sys/conf/kern.post.mk  Tue Jul  3 21:29:04 2018        (r335912)
@@ -230,6 +230,7 @@ SRCS=       assym.inc offset.inc vnode_if.h ${BEFORE_DEPEND}
        ${SYSTEM_CFILES} ${GEN_CFILES} ${SFILES} \
        ${MFILES:T:S/.m$/.h/}
 DEPENDOBJS+=   ${SYSTEM_OBJS} genassym.o genoffset.o genoffset_test.o
+DEPENDOBJS+=   ${CLEAN:M*.o}
 DEPENDFILES=   ${DEPENDOBJS:O:u:C/^/.depend./}
 .if ${MAKE_VERSION} < 20160220
 DEPEND_MP?=    -MP
_______________________________________________
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to