-
-
Notifications
You must be signed in to change notification settings - Fork 94
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Squashed 'tz/' changes from 9c175ec6c..a816a5c4d
efc5c0619 Release 2020e b804a741d Improve doc of zic coalescing zone+DST transitions c8891f390 Cite publication of Volgograd change 316c1598e Correct LMT and pre-1919 transitions for Nigeria 3dcdea78d Fix NEWS typo c983a0fb7 Document zic coalescing zone+DST transitions ce7b1bbc7 Seychelles switched from LMT to +04 on 1907-01-01 b980f1cac Model Turks & Caicos time 2015-2018 as AST ff90fc93a Fix Vanuatu DST in 1973-1974 and 1984 transition 7c7419c6a Volgograd change likely December 27, not 20 0b5ae1fb7 Fix some errors in recent Bahamas changes cd1769fe6 Fix Ghana again, for 1942 through 1946 3831c591e Fix Volgograd label in {zone,zone1970}.tab adf4d8d35 Fix several pre-1946 transitions for Bahamas 0415d0e5f Re-fix Ghana typo for 1919/1920 6e7558f19 Fix Ghana typo for 1919/1920 271d9438b Volgograd switches from +04 to +03 on 12-20 02:00 a499dd6e0 * northamerica: Add URL for Yukon OIC 1980/02 7cc6d7c00 Fix several pre-1957 transitions for Ghana 17acee8cb Fix several pre-1957 transitions for Bermuda 1aca4cad3 Fix several pre-1972 transitions for Australia a47ef9c71 * tz-link.html: Use <abbr> more systematically. 48e68fbfd Document "right" seconds better beba17f43 Fix mistaken Belize interpretation d7e93bdba Fix several Belize transitions 1942/1968 b231fbdb5 Port 'make rearguard_tarballs' to Solaris 10 8b21cc5d2 Fix Israel and Palestine transitions 1940/1985 52ba05422 Fix zone*.tab Yukon comment columns b106a6e84 leapseconds now says why NIST, not IERS eff0719a7 Fix Kenya transitions 1908/1960 78422f077 Use better fallback for unknown $(VERSION) ac029805c * etcetera: Update comment in the light of Neil Fuller’s comments. e4645c40a Port to downstream HP-UX-style ‘make’ git-subtree-dir: tz git-subtree-split: a816a5c4de427cae12477455dea2bc4eb990b2c9
- Loading branch information
Stuart Bishop
committed
Dec 24, 2020
1 parent
a4a62d8
commit aaef58a
Showing
16 changed files
with
863 additions
and
174 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -583,11 +583,19 @@ INSTALL: ALL install date.1 | |
cp date '$(DESTDIR)$(BINDIR)/.' | ||
cp -f date.1 '$(DESTDIR)$(MANDIR)/man1/.' | ||
# Calculate version number from git, if available. | ||
# Otherwise, use $(VERSION) unless it is "unknown" and there is already | ||
# a 'version' file, in which case reuse the existing 'version' contents | ||
# and append "-dirty" if the contents do not already end in "-dirty". | ||
version: $(VERSION_DEPS) | ||
{ (type git) >/dev/null 2>&1 && \ | ||
V=`git describe --match '[0-9][0-9][0-9][0-9][a-z]*' \ | ||
--abbrev=7 --dirty` || \ | ||
V='$(VERSION)'; } && \ | ||
if test '$(VERSION)' = unknown && V=`cat $@`; then \ | ||
case $$V in *-dirty);; *) V=$$V-dirty;; esac; \ | ||
else \ | ||
V='$(VERSION)'; \ | ||
fi; } && \ | ||
printf '%s\n' "$$V" >$@.out | ||
mv $@.out $@ | ||
|
@@ -872,11 +880,34 @@ $(MANTXTS): workman.sh | |
LC_ALL=C sh workman.sh `expr $@ : '\(.*\)\.txt$$'` >$@.out | ||
mv $@.out $@ | ||
# Set file timestamps deterministically if possible, | ||
# so that tarballs containing the timestamps are reproducible. | ||
# | ||
# '$(SET_TIMESTAMP_N) N DEST A B C ...' sets the timestamp of the | ||
# file DEST to the maximum of the timestamps of the files A B C ..., | ||
# plus N if GNU ls and touch are available. | ||
SET_TIMESTAMP_N = sh -c '\ | ||
n=$$0 dest=$$1; shift; \ | ||
touch -cmr `ls -t "$$@" | sed 1q` "$$dest" && \ | ||
if test $$n != 0 && \ | ||
lsout=`ls -n --time-style="+%s" "$$dest" 2>/dev/null`; then \ | ||
set x $$lsout && \ | ||
touch -cmd @`expr $$7 + $$n` "$$dest"; \ | ||
else :; fi' | ||
# If DEST depends on A B C ... in this Makefile, callers should use | ||
# $(SET_TIMESTAMP_DEP) DEST A B C ..., for the benefit of any | ||
# downstream 'make' that considers equal timestamps to be out of date. | ||
# POSIX allows this 'make' behavior, and HP-UX 'make' does it. | ||
# If all that matters is that the timestamp be reproducible | ||
# and plausible, use $(SET_TIMESTAMP). | ||
SET_TIMESTAMP = $(SET_TIMESTAMP_N) 0 | ||
SET_TIMESTAMP_DEP = $(SET_TIMESTAMP_N) 1 | ||
# Set the timestamps to those of the git repository, if available, | ||
# and if the files have not changed since then. | ||
# This uses GNU 'touch' syntax 'touch -d@N FILE', | ||
# where N is the number of seconds since 1970. | ||
# If git or GNU 'touch' is absent, don't bother to sync with git timestamps. | ||
# This uses GNU 'ls --time-style=+%s', which outputs the seconds count, | ||
# and GNU 'touch -d@N FILE', where N is the number of seconds since 1970. | ||
# If git or GNU is absent, don't bother to sync with git timestamps. | ||
# Also, set the timestamp of each prebuilt file like 'leapseconds' | ||
# to be the maximum of the files it depends on. | ||
set-timestamps.out: $(EIGHT_YARDS) | ||
|
@@ -894,16 +925,16 @@ set-timestamps.out: $(EIGHT_YARDS) | |
fi || exit; \ | ||
done; \ | ||
fi | ||
touch -cmr `ls -t $(LEAP_DEPS) | sed 1q` leapseconds | ||
$(SET_TIMESTAMP_DEP) leapseconds $(LEAP_DEPS) | ||
for file in `ls $(MANTXTS) | sed 's/\.txt$$//'`; do \ | ||
touch -cmr `ls -t $$file workman.sh | sed 1q` $$file.txt || \ | ||
$(SET_TIMESTAMP_DEP) $$file.txt $$file workman.sh || \ | ||
exit; \ | ||
done | ||
touch -cmr `ls -t $(TZDATA_ZI_DEPS) | sed 1q` tzdata.zi | ||
touch -cmr `ls -t $(VERSION_DEPS) | sed 1q` version | ||
$(SET_TIMESTAMP_DEP) version $(VERSION_DEPS) | ||
$(SET_TIMESTAMP_DEP) tzdata.zi $(TZDATA_ZI_DEPS) | ||
touch $@ | ||
set-tzs-timestamp.out: $(TZS) | ||
touch -cmr `ls -t $(TZS_DEPS) | sed 1q` $(TZS) | ||
$(SET_TIMESTAMP_DEP) $(TZS) $(TZS_DEPS) | ||
touch $@ | ||
# The zics below ensure that each data file can stand on its own. | ||
|
@@ -981,7 +1012,7 @@ tarballs rearguard_tarballs traditional_tarballs \ | |
signatures rearguard_signatures traditional_signatures: \ | ||
version set-timestamps.out rearguard.zi | ||
VERSION=`cat version` && \ | ||
$(MAKE) VERSION="$$VERSION" $@_version | ||
$(MAKE) AWK='$(AWK)' VERSION="$$VERSION" $@_version | ||
# These *_version rules are intended for use if VERSION is set by some | ||
# other means. Ordinarily these rules are used only by the above | ||
|
@@ -1018,7 +1049,7 @@ tzdata$(VERSION)-rearguard.tar.gz: rearguard.zi set-timestamps.out | |
for f in $(TDATA) $(PACKRATDATA); do \ | ||
rearf=tzdata$(VERSION)-rearguard.dir/$$f; \ | ||
$(AWK) -v DATAFORM=rearguard -f ziguard.awk $$f >$$rearf && \ | ||
touch -cmr `ls -t ziguard.awk $$f` $$rearf || exit; \ | ||
$(SET_TIMESTAMP_DEP) $$rearf ziguard.awk $$f || exit; \ | ||
done | ||
sed '1s/$$/-rearguard/' \ | ||
<version >tzdata$(VERSION)-rearguard.dir/version | ||
|
@@ -1037,7 +1068,7 @@ tzdb-$(VERSION).tar.lz: set-timestamps.out set-tzs-timestamp.out | |
rm -fr tzdb-$(VERSION) | ||
mkdir tzdb-$(VERSION) | ||
ln $(ENCHILADA) tzdb-$(VERSION) | ||
touch -cmr `ls -t tzdb-$(VERSION)/* | sed 1q` tzdb-$(VERSION) | ||
$(SET_TIMESTAMP) tzdb-$(VERSION) tzdb-$(VERSION)/* | ||
LC_ALL=C && export LC_ALL && \ | ||
tar $(TARFLAGS) -cf - tzdb-$(VERSION) | lzip -9 >[email protected] | ||
mv [email protected] $@ | ||
|
@@ -1079,8 +1110,6 @@ strftime.o: private.h tzfile.h | |
zdump.o: version.h | ||
zic.o: private.h tzfile.h version.h | ||
.KEEP_STATE: | ||
.PHONY: ALL INSTALL all | ||
.PHONY: check check_time_t_alternatives | ||
.PHONY: check_web check_zishrink | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.