[tz] tzdb-2018b does not work after make clean

Paul Eggert eggert at cs.ucla.edu
Sun Jan 21 04:09:48 UTC 2018


Thanks for reporting the problem. Unfortunately, I could not reproduce it. 
Please see the attached transcript, which I got on Ubuntu 16.04.3 x86-64.

Please try the commands that I used and see what happens.

If you're still seeing the problem, please run 'strace -o tr 
$HOME/tzdir/usr/bin/zdump -v America/Los_Angeles' on the failing zdump, and 
inspect 'tr' to see which files zdump is actually looking for. I say "strace" 
because I assume you have a platform that has it; if not, please try "truss" or 
whatever other command your platform uses.

What platform are you using, by the way?

One wild guess: are you using a parallel 'make'? I don't think the build 
procedure has ever been fully debugged for parallel makes. Try using 'make' 
without parallelism.
-------------- next part --------------
513-day $ mkdir /tmp/d
514-day $ cd /tmp/d
515-day $ wget -O- https://data.iana.org/time-zones/releases/tzdb-2018b.tar.lz | tar --lzip -xf -
--2018-01-20 19:59:41--  https://data.iana.org/time-zones/releases/tzdb-2018b.tar.lz
Resolving data.iana.org (data.iana.org)... 72.21.81.189, 2606:2800:11f:bb5:f27:227f:1bbf:a0e
Connecting to data.iana.org (data.iana.org)|72.21.81.189|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 426457 (416K) [application/x-tar]
Saving to: ‘STDOUT’

-                   100%[===================>] 416.46K  --.-KB/s    in 0.06s

2018-01-20 19:59:41 (7.24 MB/s) - written to stdout [426457/426457]

516-day $ cd tzdb-2018b/
517-day $ rm -fr $HOME/tzdir
518-day $ make TOPDIR=$HOME/tzdir install
VERSION=`cat version` && sed \
		-e 's|#!/bin/bash|#!/bin/bash|g' \
		-e 's|AWK=[^}]*|AWK=awk|g' \
		-e 's|\(PKGVERSION\)=.*|\1='\''(tzcode) '\''|' \
		-e 's|\(REPORT_BUGS_TO\)=.*|\1=tz at iana.org|' \
		-e 's|TZDIR=[^}]*|TZDIR=/home/eggert/tzdir/usr/share/zoneinfo|' \
		-e 's|\(TZVERSION\)=.*|\1='"$VERSION"'|' \
		<tzselect.ksh >tzselect.out
chmod +x tzselect.out
mv tzselect.out tzselect
cp yearistype.sh yearistype
chmod +x yearistype
VERSION=`cat version` && printf '%s\n' \
	  'static char const PKGVERSION[]="(tzcode) ";' \
	  "static char const TZVERSION[]=\"$VERSION\";" \
	  'static char const REPORT_BUGS_TO[]="tz at iana.org";' \
	  >version.h.out
mv version.h.out version.h
cc -DTZDIR='"/home/eggert/tzdir/usr/share/zoneinfo"'    -c -o zic.o zic.c
cc -DTZDIR='"/home/eggert/tzdir/usr/share/zoneinfo"' -o zic   zic.o
cc -DTZDIR='"/home/eggert/tzdir/usr/share/zoneinfo"'    -c -o zdump.o zdump.c
cc -DTZDIR='"/home/eggert/tzdir/usr/share/zoneinfo"'    -c -o localtime.o localtime.c
cc -DTZDIR='"/home/eggert/tzdir/usr/share/zoneinfo"'    -c -o asctime.o asctime.c
cc -DTZDIR='"/home/eggert/tzdir/usr/share/zoneinfo"'    -c -o strftime.o strftime.c
cc -DTZDIR='"/home/eggert/tzdir/usr/share/zoneinfo"' -o zdump   zdump.o localtime.o asctime.o strftime.o
cc -DTZDIR='"/home/eggert/tzdir/usr/share/zoneinfo"'    -c -o difftime.o difftime.c
rm -f libtz.a
ar -rc libtz.a localtime.o asctime.o difftime.o
: libtz.a
make BACKWARD='backward' DESTDIR='' LEAPSECONDS='' PACKRATDATA='' TZDEFAULT='/home/eggert/tzdir/etc/localtime' TZDIR='/home/eggert/tzdir/usr/share/zoneinfo' YEARISTYPE='./yearistype' ZIC='./zic ' LEAPSECONDS= install_data
make[1]: Entering directory '/tmp/d/tzdb-2018b'
./zic  -d '/home/eggert/tzdir/usr/share/zoneinfo'  tzdata.zi
make[1]: Leaving directory '/tmp/d/tzdb-2018b'
rm -fr '/home/eggert/tzdir/usr/share/zoneinfo-posix'
ln -s 'zoneinfo' '/home/eggert/tzdir/usr/share/zoneinfo-posix' || \
	  make BACKWARD='backward' DESTDIR='' LEAPSECONDS='' PACKRATDATA='' TZDEFAULT='/home/eggert/tzdir/etc/localtime' TZDIR='/home/eggert/tzdir/usr/share/zoneinfo' YEARISTYPE='./yearistype' ZIC='./zic ' TZDIR='/home/eggert/tzdir/usr/share/zoneinfo-posix' posix_only
make BACKWARD='backward' DESTDIR='' LEAPSECONDS='' PACKRATDATA='' TZDEFAULT='/home/eggert/tzdir/etc/localtime' TZDIR='/home/eggert/tzdir/usr/share/zoneinfo' YEARISTYPE='./yearistype' ZIC='./zic ' TZDIR='/home/eggert/tzdir/usr/share/zoneinfo-leaps' right_only
make[1]: Entering directory '/tmp/d/tzdb-2018b'
make BACKWARD='backward' DESTDIR='' LEAPSECONDS='' PACKRATDATA='' TZDEFAULT='/home/eggert/tzdir/etc/localtime' TZDIR='/home/eggert/tzdir/usr/share/zoneinfo-leaps' YEARISTYPE='./yearistype' ZIC='./zic ' LEAPSECONDS='-L leapseconds' \
		install_data
make[2]: Entering directory '/tmp/d/tzdb-2018b'
./zic  -d '/home/eggert/tzdir/usr/share/zoneinfo-leaps' -L leapseconds tzdata.zi
make[2]: Leaving directory '/tmp/d/tzdb-2018b'
make[1]: Leaving directory '/tmp/d/tzdb-2018b'
mkdir -p '/home/eggert/tzdir/usr/bin' \
		'/home/eggert/tzdir/usr/bin' '/home/eggert/tzdir/usr/sbin' \
		'/home/eggert/tzdir/usr/lib' \
		'/home/eggert/tzdir/usr/share/man/man3' '/home/eggert/tzdir/usr/share/man/man5' \
		'/home/eggert/tzdir/usr/share/man/man8'
./zic  -d '/home/eggert/tzdir/usr/share/zoneinfo'  -l GMT -p America/New_York \
		-t '/home/eggert/tzdir/etc/localtime'
cp -f iso3166.tab leapseconds tzdata.zi zone1970.tab zone.tab '/home/eggert/tzdir/usr/share/zoneinfo/.'
cp tzselect '/home/eggert/tzdir/usr/bin/.'
cp zdump '/home/eggert/tzdir/usr/bin/.'
cp zic '/home/eggert/tzdir/usr/sbin/.'
cp libtz.a '/home/eggert/tzdir/usr/lib/.'
: '/home/eggert/tzdir/usr/lib/libtz.a'
cp -f newctime.3 newtzset.3 '/home/eggert/tzdir/usr/share/man/man3/.'
cp -f tzfile.5 '/home/eggert/tzdir/usr/share/man/man5/.'
cp -f tzselect.8 zdump.8 zic.8 '/home/eggert/tzdir/usr/share/man/man8/.'
519-day $ $HOME/tzdir/usr/bin/zdump America/Los_Angeles
America/Los_Angeles  Sat Jan 20 20:00:18 2018 PST
520-day $ make clean
rm -f core *.o *.out \
	  date tzselect version.h zdump zic yearistype libtz.a
rm -fr *.dir tzdata.zi tzdb-*/ to2050new.tzs
521-day $ rm -r $HOME/tzdir
522-day $ make TOPDIR=$HOME/tzdir install
VERSION=`cat version` && sed \
		-e 's|#!/bin/bash|#!/bin/bash|g' \
		-e 's|AWK=[^}]*|AWK=awk|g' \
		-e 's|\(PKGVERSION\)=.*|\1='\''(tzcode) '\''|' \
		-e 's|\(REPORT_BUGS_TO\)=.*|\1=tz at iana.org|' \
		-e 's|TZDIR=[^}]*|TZDIR=/home/eggert/tzdir/usr/share/zoneinfo|' \
		-e 's|\(TZVERSION\)=.*|\1='"$VERSION"'|' \
		<tzselect.ksh >tzselect.out
chmod +x tzselect.out
mv tzselect.out tzselect
cp yearistype.sh yearistype
chmod +x yearistype
VERSION=`cat version` && printf '%s\n' \
	  'static char const PKGVERSION[]="(tzcode) ";' \
	  "static char const TZVERSION[]=\"$VERSION\";" \
	  'static char const REPORT_BUGS_TO[]="tz at iana.org";' \
	  >version.h.out
mv version.h.out version.h
cc -DTZDIR='"/home/eggert/tzdir/usr/share/zoneinfo"'    -c -o zic.o zic.c
cc -DTZDIR='"/home/eggert/tzdir/usr/share/zoneinfo"' -o zic   zic.o
cc -DTZDIR='"/home/eggert/tzdir/usr/share/zoneinfo"'    -c -o zdump.o zdump.c
cc -DTZDIR='"/home/eggert/tzdir/usr/share/zoneinfo"'    -c -o localtime.o localtime.c
cc -DTZDIR='"/home/eggert/tzdir/usr/share/zoneinfo"'    -c -o asctime.o asctime.c
cc -DTZDIR='"/home/eggert/tzdir/usr/share/zoneinfo"'    -c -o strftime.o strftime.c
cc -DTZDIR='"/home/eggert/tzdir/usr/share/zoneinfo"' -o zdump   zdump.o localtime.o asctime.o strftime.o
cc -DTZDIR='"/home/eggert/tzdir/usr/share/zoneinfo"'    -c -o difftime.o difftime.c
rm -f libtz.a
ar -rc libtz.a localtime.o asctime.o difftime.o
: libtz.a
version=`sed 1q version` && \
	  LC_ALL=C awk -v version="$version" -f zishrink.awk \
	    africa antarctica asia australasia europe northamerica southamerica etcetera systemv factory backward  >tzdata.zi.out
mv tzdata.zi.out tzdata.zi
make BACKWARD='backward' DESTDIR='' LEAPSECONDS='' PACKRATDATA='' TZDEFAULT='/home/eggert/tzdir/etc/localtime' TZDIR='/home/eggert/tzdir/usr/share/zoneinfo' YEARISTYPE='./yearistype' ZIC='./zic ' LEAPSECONDS= install_data
make[1]: Entering directory '/tmp/d/tzdb-2018b'
./zic  -d '/home/eggert/tzdir/usr/share/zoneinfo'  tzdata.zi
make[1]: Leaving directory '/tmp/d/tzdb-2018b'
rm -fr '/home/eggert/tzdir/usr/share/zoneinfo-posix'
ln -s 'zoneinfo' '/home/eggert/tzdir/usr/share/zoneinfo-posix' || \
	  make BACKWARD='backward' DESTDIR='' LEAPSECONDS='' PACKRATDATA='' TZDEFAULT='/home/eggert/tzdir/etc/localtime' TZDIR='/home/eggert/tzdir/usr/share/zoneinfo' YEARISTYPE='./yearistype' ZIC='./zic ' TZDIR='/home/eggert/tzdir/usr/share/zoneinfo-posix' posix_only
make BACKWARD='backward' DESTDIR='' LEAPSECONDS='' PACKRATDATA='' TZDEFAULT='/home/eggert/tzdir/etc/localtime' TZDIR='/home/eggert/tzdir/usr/share/zoneinfo' YEARISTYPE='./yearistype' ZIC='./zic ' TZDIR='/home/eggert/tzdir/usr/share/zoneinfo-leaps' right_only
make[1]: Entering directory '/tmp/d/tzdb-2018b'
make BACKWARD='backward' DESTDIR='' LEAPSECONDS='' PACKRATDATA='' TZDEFAULT='/home/eggert/tzdir/etc/localtime' TZDIR='/home/eggert/tzdir/usr/share/zoneinfo-leaps' YEARISTYPE='./yearistype' ZIC='./zic ' LEAPSECONDS='-L leapseconds' \
		install_data
make[2]: Entering directory '/tmp/d/tzdb-2018b'
./zic  -d '/home/eggert/tzdir/usr/share/zoneinfo-leaps' -L leapseconds tzdata.zi
make[2]: Leaving directory '/tmp/d/tzdb-2018b'
make[1]: Leaving directory '/tmp/d/tzdb-2018b'
mkdir -p '/home/eggert/tzdir/usr/bin' \
		'/home/eggert/tzdir/usr/bin' '/home/eggert/tzdir/usr/sbin' \
		'/home/eggert/tzdir/usr/lib' \
		'/home/eggert/tzdir/usr/share/man/man3' '/home/eggert/tzdir/usr/share/man/man5' \
		'/home/eggert/tzdir/usr/share/man/man8'
./zic  -d '/home/eggert/tzdir/usr/share/zoneinfo'  -l GMT -p America/New_York \
		-t '/home/eggert/tzdir/etc/localtime'
cp -f iso3166.tab leapseconds tzdata.zi zone1970.tab zone.tab '/home/eggert/tzdir/usr/share/zoneinfo/.'
cp tzselect '/home/eggert/tzdir/usr/bin/.'
cp zdump '/home/eggert/tzdir/usr/bin/.'
cp zic '/home/eggert/tzdir/usr/sbin/.'
cp libtz.a '/home/eggert/tzdir/usr/lib/.'
: '/home/eggert/tzdir/usr/lib/libtz.a'
cp -f newctime.3 newtzset.3 '/home/eggert/tzdir/usr/share/man/man3/.'
cp -f tzfile.5 '/home/eggert/tzdir/usr/share/man/man5/.'
cp -f tzselect.8 zdump.8 zic.8 '/home/eggert/tzdir/usr/share/man/man8/.'
523-day $ $HOME/tzdir/usr/bin/zdump America/Los_Angeles
America/Los_Angeles  Sat Jan 20 20:01:23 2018 PST


More information about the tz mailing list