From nobody Mon Nov 20 20:53:00 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4SZ08D44K1z51qsL; Mon, 20 Nov 2023 20:53:00 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4SZ08D3YJdz3YjX; Mon, 20 Nov 2023 20:53:00 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700513580; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7O6nv95yxdFWjjN7dKR3qAbMGQ9HhY+EQ+Xl5pRlmWE=; b=h9+otp5LI5+DMfFnD30r+B/d4j1lJ4BvCUD4+x5JlW1uTF4r8t6xD3EqnGyNF+kFfcwA91 ZdESF25f3dQOJGARrETZ8+pZUmLAWBoS8nu+HxDkYqAe8MWdjrctOtEAYBhb16lOksrVvG scfGucOeY/0YEk1TNtLaN7jMsfhKVe1vg7iNLuF/9edP9rfc8yMwpr2jHVC7vwuN11m6E3 bBOttyjsGRM6pt+K2pb16XJcnKREhYowkVbYVXUJnHayfpQkaNUET6GMTP3aUMLQ9jT6FZ fFLFkanKyJ6Fnb51DBIFKl44672zpjOKPHJKmTicfgnv/D5BDVXQN0zpBhzXsg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700513580; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7O6nv95yxdFWjjN7dKR3qAbMGQ9HhY+EQ+Xl5pRlmWE=; b=L2O4vwWs4p2drFP7prFFQhurjIT8vy6tYv0lrxvcBbsXhW9qLyQhDmdfWez3VVUEPgZOUp vibCAh2M+E1Bx/VxLSPi+EnrmIPVhLrpl8poHYN0v2wMDv3h81tOE/mqqelGFvU+yqn7zx HG+L/W4MzU5iGC9NojQIUGewxmteg/MJJ1dxTU4znB+9FSheIMmpc+eKInfggzNM6hY0A1 q5cCy3lnVAgFxk1fhr7+SagNnZLLrDtO/uIlZxMQpIf7rLzsGWt9BYvG6VxMcaxg/UeMLW WxXXl87xxIJEIXFCu87aS/oJYs6vte5drOdWHdXchzjWW4lP4vWDmhT2GCHugQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700513580; a=rsa-sha256; cv=none; b=MVmVeY7yJVQdkXbAhmBESna9xiEOqIM2bJzoSvHtLBElUVUp6afud8DyR3iXRm09YuEYH1 l+R45XnZBHAd1FdlK0DNFqQwvLyP+CQU6jHS4ryBCxCeYO2pNFtge4yGV5udPyCtAe/bN+ 1LJeIqfJg0hOo2XHGQx72jEhsQgqaJJzjBuSa09MqHtFzFmXYE61jbBfCL8SwrFygjeNTc GSdEpIqwtwOQhRtiXrOZSfMdSLNjR9/tSnqowrii2a7qLC6QQwXAOluvyrGqpqTLEvWGvy HZOMqoDc/rrFT1OFCCZ55sAdXka7h5qtC2opyUCNl+xDjZl0AaUwtWcDN9FI7Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4SZ08D2d8Vz16LY; Mon, 20 Nov 2023 20:53:00 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AKKr0o3074290; Mon, 20 Nov 2023 20:53:00 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AKKr0kW074287; Mon, 20 Nov 2023 20:53:00 GMT (envelope-from git) Date: Mon, 20 Nov 2023 20:53:00 GMT Message-Id: <202311202053.3AKKr0kW074287@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Simon J. Gerraty" Subject: git: 0a45a7e99fc3 - main - Fix share/zoneinfo for DIRDEPS_BUILD List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: sjg X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 0a45a7e99fc3061e91732ad88671721e95082d5e Auto-Submitted: auto-generated The branch main has been updated by sjg: URL: https://cgit.FreeBSD.org/src/commit/?id=0a45a7e99fc3061e91732ad88671721e95082d5e commit 0a45a7e99fc3061e91732ad88671721e95082d5e Author: Simon J. Gerraty AuthorDate: 2023-11-20 20:51:25 +0000 Commit: Simon J. Gerraty CommitDate: 2023-11-20 20:52:43 +0000 Fix share/zoneinfo for DIRDEPS_BUILD The tranditional build makes multiple passes through the tree. The DIRDEPS_BUILD visits each directory only once per architecture, thus makefiles should be able to everything they need in a single pass. The use of TZS!= when doing make(*install*) only works if the directory has previously been visited to do zoneinfo since before the zoneinfo target is run TZS will be empty. To fix this, have the zoneinfo target capture the list of files to zoneinfo, and install-zoneinfo use that list. Rename that target to zonefiles - since that is now what it does. This is more efficient - we only gather the list of zones when it is likely to have changed, and allows the makefile to do everything in a single pass. Reviewed by: stevek Differential Revision: https://reviews.freebsd.org/D42624 --- share/zoneinfo/Makefile | 28 +++++++++++----------------- share/zoneinfo/Makefile.depend | 1 - 2 files changed, 11 insertions(+), 18 deletions(-) diff --git a/share/zoneinfo/Makefile b/share/zoneinfo/Makefile index 60ae1f76f5b5..d4b37ce991aa 100644 --- a/share/zoneinfo/Makefile +++ b/share/zoneinfo/Makefile @@ -78,9 +78,9 @@ TZBUILDSUBDIRS= \ TZBUILDSUBDIRS+= US Mexico Chile Canada Brazil .if !defined(_SKIP_BUILD) -all: zoneinfo +all: zonefiles .endif -META_TARGETS+= zoneinfo install-zoneinfo +META_TARGETS+= zonefiles install-zoneinfo # # Produce “fat” zoneinfo files for backward compatibility. @@ -89,33 +89,27 @@ ZICFLAGS?= -b fat .if ${MK_DIRDEPS_BUILD} == "yes" ZIC= ${STAGE_HOST_OBJTOP}/usr/sbin/zic +# we do everything in a single visit +install-zoneinfo: zonefiles .endif -zoneinfo: ${TDATA} +zonefiles: ${TDATA} mkdir -p ${TZBUILDDIR} (cd ${TZBUILDDIR}; mkdir -p ${TZBUILDSUBDIRS}) (umask 022; cd ${.CURDIR}; \ ${ZIC:Uzic} -D -d ${TZBUILDDIR} ${ZICFLAGS} -m ${NOBINMODE} \ ${LEAPFILE} ${TZFILES}) - -# -# Sort TZS to ensure they are the same every build. find -s might -# be a shorter way to express this, but it's non-portable. Any -# differences between the two don't matter for this purpose. -# -.if make(*install*) -TZS!= cd ${TZBUILDDIR} && find * -type f | LC_ALL=C sort -.endif + (cd ${TZBUILDDIR} && find * -type f | LC_ALL=C sort) > ${.TARGET} beforeinstall: install-zoneinfo install-zoneinfo: mkdir -p ${DESTDIR}/usr/share/zoneinfo (cd ${DESTDIR}/usr/share/zoneinfo; mkdir -p ${TZBUILDSUBDIRS}) -.for f in ${TZS} - ${INSTALL} ${TAG_ARGS} \ - -o ${BINOWN} -g ${BINGRP} -m ${NOBINMODE} \ - ${TZBUILDDIR}/${f} ${DESTDIR}/usr/share/zoneinfo/${f} -.endfor + for f in `cat zonefiles`; do \ + ${INSTALL} ${TAG_ARGS} \ + -o ${BINOWN} -g ${BINGRP} -m ${NOBINMODE} \ + ${TZBUILDDIR}/$${f} ${DESTDIR}/usr/share/zoneinfo/$${f}; \ + done ${INSTALL} ${TAG_ARGS} -o ${BINOWN} -g ${BINGRP} -m ${NOBINMODE} \ ${CONTRIBDIR}/zone.tab ${DESTDIR}/usr/share/zoneinfo/ ${INSTALL} ${TAG_ARGS} -o ${BINOWN} -g ${BINGRP} -m ${NOBINMODE} \ diff --git a/share/zoneinfo/Makefile.depend b/share/zoneinfo/Makefile.depend index 777ef7ba01c5..141855c83ab0 100644 --- a/share/zoneinfo/Makefile.depend +++ b/share/zoneinfo/Makefile.depend @@ -1,7 +1,6 @@ # Autogenerated - do NOT edit! DIRDEPS = \ - usr.bin/xinstall.host \ usr.sbin/zic.host \