Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 5 Nov 2017 00:12:13 +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: r325418 - head/share/mk
Message-ID:  <201711050012.vA50CDcW043892@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: bdrewery
Date: Sun Nov  5 00:12:12 2017
New Revision: 325418
URL: https://svnweb.freebsd.org/changeset/base/325418

Log:
  AUTO_OBJ: Allow 'make cleandir obj all' combinations.
  
  The cleanobj target will not really remove the OBJDIR in this case,
  it will only remove the OBJDIR if only clean targets are ran.
  
  Sponsored by:	Dell EMC Isilon

Modified:
  head/share/mk/bsd.dep.mk
  head/share/mk/bsd.init.mk
  head/share/mk/bsd.obj.mk

Modified: head/share/mk/bsd.dep.mk
==============================================================================
--- head/share/mk/bsd.dep.mk	Sun Nov  5 00:12:09 2017	(r325417)
+++ head/share/mk/bsd.dep.mk	Sun Nov  5 00:12:12 2017	(r325418)
@@ -327,6 +327,10 @@ cleandepend:
 .endif
 .ORDER: cleandepend all
 .ORDER: cleandepend depend
+.if ${MK_AUTO_OBJ} == "yes"
+.ORDER: cleanobj depend
+.ORDER: cleandir depend
+.endif
 
 .if !target(checkdpadd) && (defined(DPADD) || defined(LDADD))
 _LDADD_FROM_DPADD=	${DPADD:R:T:C;^lib(.*)$;-l\1;g}

Modified: head/share/mk/bsd.init.mk
==============================================================================
--- head/share/mk/bsd.init.mk	Sun Nov  5 00:12:09 2017	(r325417)
+++ head/share/mk/bsd.init.mk	Sun Nov  5 00:12:12 2017	(r325418)
@@ -64,7 +64,8 @@ _SKIP_BUILD=	not building at level 0
     ${.TARGETS:M*install*} == ${.TARGETS} || \
     ${.TARGETS:Mclean*} == ${.TARGETS} || \
     ${.TARGETS:Mdestroy*} == ${.TARGETS} || \
-    make(obj) || make(analyze) || make(print-dir)
+    ${.TARGETS:Mobj} == ${.TARGETS} || \
+    make(analyze) || make(print-dir)
 # Skip building, but don't show a warning.
 _SKIP_BUILD=
 .endif

Modified: head/share/mk/bsd.obj.mk
==============================================================================
--- head/share/mk/bsd.obj.mk	Sun Nov  5 00:12:09 2017	(r325417)
+++ head/share/mk/bsd.obj.mk	Sun Nov  5 00:12:12 2017	(r325418)
@@ -164,7 +164,8 @@ whereobj:
 .endif
 
 # Same check in bsd.progs.mk
-.if ${CANONICALOBJDIR} != ${.CURDIR} && exists(${CANONICALOBJDIR}/)
+.if ${CANONICALOBJDIR} != ${.CURDIR} && exists(${CANONICALOBJDIR}/) && \
+    (${MK_AUTO_OBJ} == "no" || ${.TARGETS:Nclean*:N*clean:Ndestroy*} == "")
 cleanobj:
 	-rm -rf ${CANONICALOBJDIR}
 .else
@@ -188,6 +189,10 @@ clean:
 .endif
 .endif
 .ORDER: clean all
+.if ${MK_AUTO_OBJ} == "yes"
+.ORDER: cleanobj all
+.ORDER: cleandir all
+.endif
 
 .include <bsd.subdir.mk>
 



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