[tz] Build error on tzdb-2018a

Paul Eggert eggert at cs.ucla.edu
Wed Jan 17 09:14:26 UTC 2018


Matias Fonzo wrote:
> I can't update tzdb-2018a, I am getting this error:
> 
> make: *** No rule to make target 'pacificnew', needed by 'version'.

Thanks for reporting this packaging problem, which was not detected by the 
checks that I do before making a distribution. I have installed the attached 
patch to the development version; please give it a try.

Because this problem was caught before I announced 2018a, I will hold off on 
making an announcement. Instead, I plan to wait a day or so for review of this 
patch, and then release 2018b with this patch.
-------------- next part --------------
From 4a132ae07b0a78fd6673e32670a5433a0b31d599 Mon Sep 17 00:00:00 2001
From: Paul Eggert <eggert at cs.ucla.edu>
Date: Wed, 17 Jan 2018 01:05:36 -0800
Subject: [PATCH] Fix problem with missing pacificnew file
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Problem reported by Matias A. Fonzo.
* Makefile (YDATA): Move $(BACKWARD) from here ...
(TDATA): ... to here.
(TDATA_TO_CHECK): New macro.
(DATA, check_character_set, check_name_lengths, check_links)
(check_public): Use it instead of TDATA, when we want to check
backward and pacificnew even if they’re not being used to
generate the installed data.
* NEWS: Mention this.
---
 Makefile | 22 ++++++++++++----------
 NEWS     | 12 ++++++++++++
 2 files changed, 24 insertions(+), 10 deletions(-)

diff --git a/Makefile b/Makefile
index be4b264..4f448d2 100644
--- a/Makefile
+++ b/Makefile
@@ -455,14 +455,15 @@ WEB_PAGES=	tz-art.html tz-how-to.html tz-link.html
 DOCS=		$(MANS) date.1 $(MANTXTS) $(WEB_PAGES)
 PRIMARY_YDATA=	africa antarctica asia australasia \
 		europe northamerica southamerica
-YDATA=		$(PRIMARY_YDATA) etcetera $(BACKWARD)
+YDATA=		$(PRIMARY_YDATA) etcetera
 NDATA=		systemv factory
-TDATA=		$(YDATA) $(NDATA)
+TDATA_TO_CHECK=	$(YDATA) $(NDATA) backward pacificnew
+TDATA=		$(YDATA) $(NDATA) $(BACKWARD)
 ZONETABLES=	zone1970.tab zone.tab
 TABDATA=	iso3166.tab $(TZDATA_TEXT) $(ZONETABLES)
 LEAP_DEPS=	leapseconds.awk leap-seconds.list
 TZDATA_ZI_DEPS=	zishrink.awk version $(TDATA) $(PACKRATDATA)
-DATA=		$(YDATA) $(NDATA) backzone iso3166.tab leap-seconds.list \
+DATA=		$(TDATA_TO_CHECK) backzone iso3166.tab leap-seconds.list \
 			leapseconds yearistype.sh $(ZONETABLES)
 AWK_SCRIPTS=	checklinks.awk checktab.awk leapseconds.awk zishrink.awk
 MISC=		$(AWK_SCRIPTS) zoneinfo2tdf.pl
@@ -670,7 +671,7 @@ check_character_set: $(ENCHILADA)
 			$(MISC) $(SOURCES) $(WEB_PAGES) \
 			CONTRIBUTING LICENSE Makefile README \
 			version tzdata.zi && \
-		! grep -Env $(SAFE_SHARP_LINE) $(TDATA) backzone \
+		! grep -Env $(SAFE_SHARP_LINE) $(TDATA_TO_CHECK) backzone \
 			leapseconds yearistype.sh zone.tab && \
 		! grep -Env $(OK_LINE) $(ENCHILADA); \
 	}
@@ -685,8 +686,9 @@ PRECEDES_FILE_NAME = ^(Zone|Link[[:space:]]+[^[:space:]]+)[[:space:]]+
 FILE_NAME_COMPONENT_TOO_LONG = \
   $(PRECEDES_FILE_NAME)[^[:space:]]*[^/[:space:]]{15}
 
-check_name_lengths: $(TDATA) backzone
-		! grep -En '$(FILE_NAME_COMPONENT_TOO_LONG)' $(TDATA) backzone
+check_name_lengths: $(TDATA_TO_CHECK) backzone
+		! grep -En '$(FILE_NAME_COMPONENT_TOO_LONG)' \
+			$(TDATA_TO_CHECK) backzone
 
 CHECK_CC_LIST = { n = split($$1,a,/,/); for (i=2; i<=n; i++) print a[1], a[i]; }
 
@@ -700,8 +702,8 @@ check_sorted: backward backzone iso3166.tab zone.tab zone1970.tab
 		$(AWK) '/^[^#]/ $(CHECK_CC_LIST)' zone1970.tab | \
 		  LC_ALL=C sort -cu
 
-check_links:	checklinks.awk $(TDATA)
-		$(AWK) -f checklinks.awk $(TDATA)
+check_links:	checklinks.awk $(TDATA_TO_CHECK)
+		$(AWK) -f checklinks.awk $(TDATA_TO_CHECK)
 		$(AWK) -f checklinks.awk tzdata.zi
 
 check_tables:	checktab.awk $(PRIMARY_YDATA) $(ZONETABLES)
@@ -804,10 +806,10 @@ check_public:
 		$(MAKE) maintainer-clean
 		$(MAKE) CFLAGS='$(GCC_DEBUG_FLAGS)' ALL
 		mkdir -p public.dir
-		for i in $(TDATA) tzdata.zi; do \
+		for i in $(TDATA_TO_CHECK) tzdata.zi; do \
 		  $(zic) -v -d public.dir $$i 2>&1 || exit; \
 		done
-		$(zic) -v -d public.dir $(TDATA)
+		$(zic) -v -d public.dir $(TDATA_TO_CHECK)
 		rm -fr public.dir
 
 # Check that the code works under various alternative
diff --git a/NEWS b/NEWS
index c5b1bd1..19fb3ef 100644
--- a/NEWS
+++ b/NEWS
@@ -1,5 +1,17 @@
 News for the tz database
 
+Unreleased, experimental changes
+
+  Briefly:
+  Fix a packaging problem in tz2018a, which was missing ‘pacificnew’.
+
+  Changes to build procedure
+
+     The distribution now contains the file ‘pacificnew’ again.
+     This file was inadvertantly omitted in the 2018a distribution.
+     (Problem reported by Matias Fonzo.)
+
+
 Release 2018a - 2018-01-12 22:29:21 -0800
 
   Briefly:
-- 
2.7.4



More information about the tz mailing list