Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 20 Feb 2018 21:48:17 +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: r329676 - in head: . share/mk
Message-ID:  <201802202148.w1KLmHDg093858@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: bdrewery
Date: Tue Feb 20 21:48:16 2018
New Revision: 329676
URL: https://svnweb.freebsd.org/changeset/base/329676

Log:
  Move SVNVERSION_CMD into the one place that uses it.
  
  This code, which is basically `svnversion || svnliteversion`, generates
  2 fstatat(2) for every directory in PATH for every Makefile parsed that
  includes bsd.own.mk.  This can add up for things like generating a Ports
  index (Poudriere) or building a dependency graph for base.
  
  Sponsored by:	Dell EMC
  MFC after:	2 weeks

Modified:
  head/Makefile.inc1
  head/share/mk/bsd.own.mk

Modified: head/Makefile.inc1
==============================================================================
--- head/Makefile.inc1	Tue Feb 20 21:42:45 2018	(r329675)
+++ head/Makefile.inc1	Tue Feb 20 21:48:16 2018	(r329676)
@@ -350,6 +350,16 @@ SVN=   ${_P}/${_S}
 .endif
 SVNFLAGS?=	-r HEAD
 .if !defined(VCS_REVISION) && empty(VCS_REVISION)
+.if !defined(SVNVERSION_CMD) && empty(SVNVERSION_CMD)
+. for _D in ${PATH:S,:, ,g}
+.  if exists(${_D}/svnversion)
+SVNVERSION_CMD?=${_D}/svnversion
+.  endif
+.  if exists(${_D}/svnliteversion)
+SVNVERSION_CMD?=${_D}/svnliteversion
+.  endif
+. endfor
+.endif
 _VCS_REVISION?=	$$(eval ${SVNVERSION_CMD} ${SRCDIR})
 . if !empty(_VCS_REVISION)
 VCS_REVISION=	$$(echo r${_VCS_REVISION})

Modified: head/share/mk/bsd.own.mk
==============================================================================
--- head/share/mk/bsd.own.mk	Tue Feb 20 21:42:45 2018	(r329675)
+++ head/share/mk/bsd.own.mk	Tue Feb 20 21:48:16 2018	(r329676)
@@ -230,17 +230,6 @@ XZ_CMD?=	xz -T ${XZ_THREADS}
 XZ_CMD?=	xz
 .endif
 
-.if !defined(SVNVERSION_CMD) && empty(SVNVERSION_CMD)
-. for _D in ${PATH:S,:, ,g}
-.  if exists(${_D}/svnversion)
-SVNVERSION_CMD?=${_D}/svnversion
-.  endif
-.  if exists(${_D}/svnliteversion)
-SVNVERSION_CMD?=${_D}/svnliteversion
-.  endif
-. endfor
-.endif
-
 PKG_CMD?=	pkg
 
 # Pointer to the top directory into which tests are installed.  Should not be



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