From owner-svn-src-head@freebsd.org Thu Apr 14 21:04:43 2016 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id D7374ADA3F7; Thu, 14 Apr 2016 21:04:43 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 9AA4018F2; Thu, 14 Apr 2016 21:04:43 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id u3EL4gcQ038866; Thu, 14 Apr 2016 21:04:42 GMT (envelope-from bdrewery@FreeBSD.org) Received: (from bdrewery@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id u3EL4gkK038859; Thu, 14 Apr 2016 21:04:42 GMT (envelope-from bdrewery@FreeBSD.org) Message-Id: <201604142104.u3EL4gkK038859@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bdrewery set sender to bdrewery@FreeBSD.org using -f From: Bryan Drewery Date: Thu, 14 Apr 2016 21:04:42 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r297994 - in head: include share/examples share/mk share/sendmail share/zoneinfo X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Apr 2016 21:04:44 -0000 Author: bdrewery Date: Thu Apr 14 21:04:42 2016 New Revision: 297994 URL: https://svnweb.freebsd.org/changeset/base/297994 Log: Rework META_TARGETS so that it automatically adds META_DEPS to the targets. This will only be done if the target is defined, so if the target is defined after bsd.sys.mk is included then it needs to manually add ${META_DEPS} still. Sponsored by: EMC / Isilon Storage Division Modified: head/include/Makefile head/share/examples/Makefile head/share/mk/bsd.sys.mk head/share/mk/local.sys.mk head/share/sendmail/Makefile head/share/zoneinfo/Makefile Modified: head/include/Makefile ============================================================================== --- head/include/Makefile Thu Apr 14 21:04:37 2016 (r297993) +++ head/include/Makefile Thu Apr 14 21:04:42 2016 (r297994) @@ -131,13 +131,8 @@ _MARCHS+= x86 META_TARGETS+= compat copies symlinks stage_includes: ${SHARED} -.include - -installincludes: ${SHARED} -${SHARED}: compat - # Take care of stale directory-level symlinks. -compat: ${META_DEPS} +compat: .for i in ${LDIRS} ${LSUBDIRS} machine ${_MARCHS} crypto if [ -L ${DESTDIR}${INCLUDEDIR}/$i ]; then \ rm -f ${DESTDIR}${INCLUDEDIR}/$i; \ @@ -147,7 +142,7 @@ compat: ${META_DEPS} -f ${.CURDIR}/../etc/mtree/BSD.include.dist \ -p ${DESTDIR}${INCLUDEDIR} > /dev/null -copies: ${META_DEPS} +copies: .for i in ${LDIRS} ${LSUBDIRS} ${LSUBSUBDIRS} crypto machine machine/pc \ ${_MARCHS} if [ -d ${DESTDIR}${INCLUDEDIR}/$i ]; then \ @@ -233,7 +228,7 @@ copies: ${META_DEPS} ${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 teken.h \ ${DESTDIR}${INCLUDEDIR}/teken -symlinks: ${META_DEPS} +symlinks: @${ECHO} "Setting up symlinks to kernel source tree..." .for i in ${LDIRS} cd ${.CURDIR}/../sys/$i; \ @@ -347,6 +342,11 @@ symlinks: ${META_DEPS} ${DESTDIR}${INCLUDEDIR}/rpc; \ done +.include + +installincludes: ${SHARED} +${SHARED}: compat + .if ${MACHINE} == "host" && !defined(_SKIP_BUILD) # we're here because we are building a sysroot... # we need MACHINE et al set correctly Modified: head/share/examples/Makefile ============================================================================== --- head/share/examples/Makefile Thu Apr 14 21:04:37 2016 (r297993) +++ head/share/examples/Makefile Thu Apr 14 21:04:42 2016 (r297994) @@ -222,7 +222,7 @@ beforeinstall: ${SHARED} etc-examples META_TARGETS+= copies symlinks .ORDER: ${SHARED} etc-examples -copies: ${META_DEPS} +copies: .for i in ${LDIRS} if [ -L ${DESTDIR}${BINDIR}/$i ]; then \ rm -f ${DESTDIR}${BINDIR}/$i; \ @@ -235,7 +235,7 @@ copies: ${META_DEPS} ${.CURDIR}/${file} ${DESTDIR}${BINDIR}/${file} .endfor -symlinks: ${META_DEPS} +symlinks: .for i in ${LDIRS} rm -rf ${DESTDIR}${BINDIR}/$i ln -s ${.CURDIR}/$i ${DESTDIR}${BINDIR}/$i Modified: head/share/mk/bsd.sys.mk ============================================================================== --- head/share/mk/bsd.sys.mk Thu Apr 14 21:04:37 2016 (r297993) +++ head/share/mk/bsd.sys.mk Thu Apr 14 21:04:42 2016 (r297994) @@ -297,3 +297,10 @@ STAGE_SYMLINKS.links= ${SYMLINKS} .endif .endif +.if defined(META_TARGETS) +.for _tgt in ${META_TARGETS} +.if target(${_tgt}) +${_tgt}: ${META_DEPS} +.endif +.endfor +.endif Modified: head/share/mk/local.sys.mk ============================================================================== --- head/share/mk/local.sys.mk Thu Apr 14 21:04:37 2016 (r297993) +++ head/share/mk/local.sys.mk Thu Apr 14 21:04:42 2016 (r297994) @@ -32,6 +32,10 @@ OBJTOP?= ${.OBJDIR:S,${.CURDIR},,}${SRCT .if ${.MAKE.MODE:Mmeta*} != "" # we can afford to use cookies to prevent some targets # re-running needlessly but only when using filemon. +# Targets that should support the meta mode cookie handling should just be +# added to META_TARGETS. If bsd.sys.mk cannot be included then ${META_DEPS} +# should be added as a target dependency as well. Otherwise the target +# is added to in bsd.sys.mk since it comes last. .if ${.MAKE.MODE:Mnofilemon} == "" META_COOKIE_COND= empty(.TARGET:M${.OBJDIR}) META_COOKIE= ${COOKIE.${.TARGET}:U${${META_COOKIE_COND}:?${.OBJDIR}/${.TARGET}:${.TARGET}}} Modified: head/share/sendmail/Makefile ============================================================================== --- head/share/sendmail/Makefile Thu Apr 14 21:04:37 2016 (r297993) +++ head/share/sendmail/Makefile Thu Apr 14 21:04:42 2016 (r297994) @@ -18,7 +18,7 @@ all clean cleandir depend lint tags: beforeinstall: ${SHARED} META_TARGETS+= copies symlinks -copies: ${META_DEPS} +copies: if [ -L ${DDIR}/${CFDIR} ]; then rm -f ${DDIR}/${CFDIR}; fi .for dir in ${CFDIRS} ${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 755 -d ${DDIR}/${dir} @@ -27,7 +27,7 @@ copies: ${META_DEPS} ${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 444 ${SENDMAIL_DIR}/${file} ${DDIR}/${file} .endfor -symlinks: ${META_DEPS} +symlinks: rm -rf ${DDIR}/${CFDIR}; ln -s ${SENDMAIL_DIR}/${CFDIR} ${DDIR}/${CFDIR} .include Modified: head/share/zoneinfo/Makefile ============================================================================== --- head/share/zoneinfo/Makefile Thu Apr 14 21:04:37 2016 (r297993) +++ head/share/zoneinfo/Makefile Thu Apr 14 21:04:42 2016 (r297994) @@ -72,7 +72,7 @@ all: zoneinfo .endif META_TARGETS+= zoneinfo install-zoneinfo -zoneinfo: yearistype ${TDATA} ${META_DEPS} +zoneinfo: yearistype ${TDATA} mkdir -p ${TZBUILDDIR} cd ${TZBUILDDIR}; mkdir -p ${TZBUILDSUBDIRS} umask 022; cd ${.CURDIR}; \ @@ -80,7 +80,7 @@ zoneinfo: yearistype ${TDATA} ${META_DEP ${LEAPFILE} -y ${.OBJDIR}/yearistype ${TZFILES} beforeinstall: install-zoneinfo -install-zoneinfo: ${META_DEPS} +install-zoneinfo: cd ${TZBUILDDIR} && \ find -s * -type f -print -exec ${INSTALL} \ -o ${BINOWN} -g ${BINGRP} -m ${NOBINMODE} \