summaryrefslogtreecommitdiff
path: root/lib/time
diff options
context:
space:
mode:
authorRuss Cox <rsc@golang.org>2012-02-19 03:16:20 -0500
committerRuss Cox <rsc@golang.org>2012-02-19 03:16:20 -0500
commit90844a323feaaa3874f89bbd874aef2f32b4cf84 (patch)
tree6b6bd1edd5015091e5d7cece1598f4c0407c9bb9 /lib/time
parentacae2b643ab1c779b0363f03ec14e7bcd22bf12f (diff)
downloadgo-90844a323feaaa3874f89bbd874aef2f32b4cf84.tar.gz
time: switch to using (uncompressed) zoneinfo zip file
Removal of old zoneinfo files is a separate CL due to its size. R=golang-dev, bradfitz, r CC=golang-dev http://codereview.appspot.com/5676100
Diffstat (limited to 'lib/time')
-rw-r--r--lib/time/README3
-rwxr-xr-xlib/time/update.bash19
-rw-r--r--lib/time/zoneinfo.zipbin0 -> 370359 bytes
3 files changed, 14 insertions, 8 deletions
diff --git a/lib/time/README b/lib/time/README
index be519febf..d83e0addf 100644
--- a/lib/time/README
+++ b/lib/time/README
@@ -1,4 +1,4 @@
-The zoneinfo directory contains time zone files compiled using
+The zoneinfo.zip archive contains time zone files compiled using
the code and data maintained as part of the IANA Time Zone Database.
The IANA asserts that the database is in the public domain.
@@ -7,3 +7,4 @@ http://www.iana.org/time-zones
ftp://ftp.iana.org/tz/code/tz-link.htm
http://tools.ietf.org/html/draft-lear-iana-timezone-database-05
+To rebuild the archive, read and run update.bash.
diff --git a/lib/time/update.bash b/lib/time/update.bash
index 30ca2c701..ef7fdc79b 100755
--- a/lib/time/update.bash
+++ b/lib/time/update.bash
@@ -11,9 +11,10 @@ CODE=2011i
DATA=2011n
set -e
-rm -rf zoneinfo work
-mkdir zoneinfo work
+rm -rf work
+mkdir work
cd work
+mkdir zoneinfo
curl -O http://www.iana.org/time-zones/repository/releases/tzcode$CODE.tar.gz
curl -O http://www.iana.org/time-zones/repository/releases/tzdata$DATA.tar.gz
tar xzf tzcode$CODE.tar.gz
@@ -23,23 +24,27 @@ tar xzf tzdata$DATA.tar.gz
# We don't need those until 2037.
perl -p -i -e 's/pass <= 2/pass <= 1/' zic.c
-make CFLAGS=-DSTD_INSPIRED AWK=awk TZDIR=../zoneinfo posix_only
+make CFLAGS=-DSTD_INSPIRED AWK=awk TZDIR=zoneinfo posix_only
# America/Los_Angeles should not be bigger than 1100 bytes.
# If it is, we probably failed to disable the 64-bit output, which
# triples the size of the files.
-size=$(ls -l ../zoneinfo/America/Los_Angeles | awk '{print $5}')
+size=$(ls -l zoneinfo/America/Los_Angeles | awk '{print $5}')
if [ $size -gt 1200 ]; then
echo 'zone file too large; 64-bit edit failed?' >&2
exit 2
fi
-cd ..
-hg addremove zoneinfo
+cd zoneinfo
+rm -f ../../zoneinfo.zip
+zip -0 -r ../../zoneinfo.zip *
+cd ../..
+
echo
if [ "$1" == "-work" ]; then
echo Left workspace behind in work/.
else
rm -rf work
fi
-echo New time zone files in zoneinfo/.
+echo New time zone files in zoneinfo.zip.
+
diff --git a/lib/time/zoneinfo.zip b/lib/time/zoneinfo.zip
new file mode 100644
index 000000000..b54213239
--- /dev/null
+++ b/lib/time/zoneinfo.zip
Binary files differ