diff --git a/.gitignore b/.gitignore index 2e7df3c..acb4ae4 100644 --- a/.gitignore +++ b/.gitignore @@ -156,3 +156,13 @@ noarch/ /tzcode2017a.tar.gz /tzcode2017b.tar.gz /tzdata2017b.tar.gz +/tzcode2017c.tar.gz +/tzdata2017c.tar.gz +/tzcode2018c.tar.gz +/tzdata2018c.tar.gz +/tzcode2018d.tar.gz +/tzdata2018d.tar.gz +/tzcode2018e.tar.gz +/tzdata2018e.tar.gz +/tzcode2018g.tar.gz +/tzdata2018g.tar.gz diff --git a/0001-Fix-Makefile-quoting-bug.patch b/0001-Fix-Makefile-quoting-bug.patch new file mode 100644 index 0000000..41e04fd --- /dev/null +++ b/0001-Fix-Makefile-quoting-bug.patch @@ -0,0 +1,170 @@ +From b520d20b8122a783f99f088758b78d928f70ee34 Mon Sep 17 00:00:00 2001 +From: Paul Eggert +Date: Mon, 23 Oct 2017 11:42:45 -0700 +Subject: [PROPOSED] Fix Makefile quoting bug + +Problem with INSTALLARGS reported by Zefram in: +https://mm.icann.org/pipermail/tz/2017-October/025360.html +Fix similar problems too. +* Makefile (ZIC_INSTALL, VALIDATE_ENV, CC, install) +(INSTALL, version, INSTALLARGS, right_posix, posix_right) +(check_public): Use apostrophes to prevent undesirable +interpretation of names by the shell. We still do not support +directory names containing apostrophes or newlines, but this is +good enough. +* NEWS: Mention this. +--- + Makefile | 64 ++++++++++++++++++++++++++++++++-------------------------------- + NEWS | 8 ++++++++ + 2 files changed, 40 insertions(+), 32 deletions(-) + +diff --git a/Makefile b/Makefile +index c92edc0..97649ca 100644 +--- a/Makefile ++++ b/Makefile +@@ -313,7 +313,7 @@ ZFLAGS= + + # How to use zic to install tz binary files. + +-ZIC_INSTALL= $(ZIC) -d $(DESTDIR)$(TZDIR) $(LEAPSECONDS) ++ZIC_INSTALL= $(ZIC) -d '$(DESTDIR)$(TZDIR)' $(LEAPSECONDS) + + # The name of a Posix-compliant 'awk' on your system. + AWK= awk +@@ -341,8 +341,8 @@ SGML_CATALOG_FILES= \ + VALIDATE = nsgmls + VALIDATE_FLAGS = -s -B -wall -wno-unused-param + VALIDATE_ENV = \ +- SGML_CATALOG_FILES=$(SGML_CATALOG_FILES) \ +- SGML_SEARCH_PATH=$(SGML_SEARCH_PATH) \ ++ SGML_CATALOG_FILES='$(SGML_CATALOG_FILES)' \ ++ SGML_SEARCH_PATH='$(SGML_SEARCH_PATH)' \ + SP_CHARSET_FIXED=YES \ + SP_ENCODING=UTF-8 + +@@ -396,7 +396,7 @@ GZIPFLAGS= -9n + #MAKE= make + + cc= cc +-CC= $(cc) -DTZDIR=\"$(TZDIR)\" ++CC= $(cc) -DTZDIR='"$(TZDIR)"' + + AR= ar + +@@ -473,29 +473,29 @@ all: tzselect yearistype zic zdump libtz.a $(TABDATA) + ALL: all date $(ENCHILADA) + + install: all $(DATA) $(REDO) $(MANS) +- mkdir -p $(DESTDIR)$(ETCDIR) $(DESTDIR)$(TZDIR) \ +- $(DESTDIR)$(LIBDIR) \ +- $(DESTDIR)$(MANDIR)/man3 $(DESTDIR)$(MANDIR)/man5 \ +- $(DESTDIR)$(MANDIR)/man8 ++ mkdir -p '$(DESTDIR)$(ETCDIR)' '$(DESTDIR)$(TZDIR)' \ ++ '$(DESTDIR)$(LIBDIR)' \ ++ '$(DESTDIR)$(MANDIR)/man3' '$(DESTDIR)$(MANDIR)/man5' \ ++ '$(DESTDIR)$(MANDIR)/man8' + $(ZIC_INSTALL) -l $(LOCALTIME) -p $(POSIXRULES) +- cp -f $(TABDATA) $(DESTDIR)$(TZDIR)/. +- cp tzselect zic zdump $(DESTDIR)$(ETCDIR)/. +- cp libtz.a $(DESTDIR)$(LIBDIR)/. +- $(RANLIB) $(DESTDIR)$(LIBDIR)/libtz.a +- cp -f newctime.3 newtzset.3 $(DESTDIR)$(MANDIR)/man3/. +- cp -f tzfile.5 $(DESTDIR)$(MANDIR)/man5/. +- cp -f tzselect.8 zdump.8 zic.8 $(DESTDIR)$(MANDIR)/man8/. ++ cp -f $(TABDATA) '$(DESTDIR)$(TZDIR)/.' ++ cp tzselect zic zdump '$(DESTDIR)$(ETCDIR)/.' ++ cp libtz.a '$(DESTDIR)$(LIBDIR)/.' ++ $(RANLIB) '$(DESTDIR)$(LIBDIR)/libtz.a' ++ cp -f newctime.3 newtzset.3 '$(DESTDIR)$(MANDIR)/man3/.' ++ cp -f tzfile.5 '$(DESTDIR)$(MANDIR)/man5/.' ++ cp -f tzselect.8 zdump.8 zic.8 '$(DESTDIR)$(MANDIR)/man8/.' + + INSTALL: ALL install date.1 +- mkdir -p $(DESTDIR)$(BINDIR) $(DESTDIR)$(MANDIR)/man1 +- cp date $(DESTDIR)$(BINDIR)/. +- cp -f date.1 $(DESTDIR)$(MANDIR)/man1/. ++ mkdir -p '$(DESTDIR)$(BINDIR)' '$(DESTDIR)$(MANDIR)/man1' ++ cp date '$(DESTDIR)$(BINDIR)/.' ++ cp -f date.1 '$(DESTDIR)$(MANDIR)/man1/.' + + 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); } && \ ++ V='$(VERSION)'; } && \ + printf '%s\n' "$$V" >$@.out + mv $@.out $@ + +@@ -529,12 +529,12 @@ leapseconds: $(LEAP_DEPS) + # Arguments to pass to submakes of install_data. + # They can be overridden by later submake arguments. + INSTALLARGS = \ +- BACKWARD=$(BACKWARD) \ +- DESTDIR=$(DESTDIR) \ ++ BACKWARD='$(BACKWARD)' \ ++ DESTDIR='$(DESTDIR)' \ + LEAPSECONDS='$(LEAPSECONDS)' \ + PACKRATDATA='$(PACKRATDATA)' \ +- TZDIR=$(TZDIR) \ +- YEARISTYPE=$(YEARISTYPE) \ ++ TZDIR='$(TZDIR)' \ ++ YEARISTYPE='$(YEARISTYPE)' \ + ZIC='$(ZIC)' + + # 'make install_data' installs one set of tz binary files. +@@ -558,16 +558,16 @@ right_only: + # You must replace all of $(TZDIR) to switch from not using leap seconds + # to using them, or vice versa. + right_posix: right_only +- rm -fr $(DESTDIR)$(TZDIR)-leaps +- ln -s $(TZDIR_BASENAME) $(DESTDIR)$(TZDIR)-leaps || \ +- $(MAKE) $(INSTALLARGS) TZDIR=$(TZDIR)-leaps right_only +- $(MAKE) $(INSTALLARGS) TZDIR=$(TZDIR)-posix posix_only ++ rm -fr '$(DESTDIR)$(TZDIR)-leaps' ++ ln -s '$(TZDIR_BASENAME)' '$(DESTDIR)$(TZDIR)-leaps' || \ ++ $(MAKE) $(INSTALLARGS) TZDIR='$(TZDIR)-leaps' right_only ++ $(MAKE) $(INSTALLARGS) TZDIR='$(TZDIR)-posix' posix_only + + posix_right: posix_only +- rm -fr $(DESTDIR)$(TZDIR)-posix +- ln -s $(TZDIR_BASENAME) $(DESTDIR)$(TZDIR)-posix || \ +- $(MAKE) $(INSTALLARGS) TZDIR=$(TZDIR)-posix posix_only +- $(MAKE) $(INSTALLARGS) TZDIR=$(TZDIR)-leaps right_only ++ rm -fr '$(DESTDIR)$(TZDIR)-posix' ++ ln -s '$(TZDIR_BASENAME)' '$(DESTDIR)$(TZDIR)-posix' || \ ++ $(MAKE) $(INSTALLARGS) TZDIR='$(TZDIR)-posix' posix_only ++ $(MAKE) $(INSTALLARGS) TZDIR='$(TZDIR)-leaps' right_only + + # This obsolescent rule is present for backwards compatibility with + # tz releases 2014g through 2015g. It should go away eventually. +@@ -764,7 +764,7 @@ set-timestamps.out: $(ENCHILADA) + + check_public: + $(MAKE) maintainer-clean +- $(MAKE) "CFLAGS=$(GCC_DEBUG_FLAGS)" ALL ++ $(MAKE) CFLAGS='$(GCC_DEBUG_FLAGS)' ALL + mkdir -p public.dir + for i in $(TDATA) tzdata.zi; do \ + $(zic) -v -d public.dir $$i 2>&1 || exit; \ +diff --git a/NEWS b/NEWS +index bd2bec2..75ab095 100644 +--- a/NEWS ++++ b/NEWS +@@ -1,5 +1,13 @@ + News for the tz database + ++Unreleased, experimental changes ++ ++ Changes to build procedure ++ ++ The Makefile now quotes values like BACKWARD more carefully when ++ passing them to the shell. (Problem reported by Zefram.) ++ ++ + Release 2017c - 2017-10-20 14:49:34 -0700 + + Briefly: +-- +2.13.6 + diff --git a/0002-Fix-have-snprintf-error.patch b/0002-Fix-have-snprintf-error.patch new file mode 100644 index 0000000..cafdf4d --- /dev/null +++ b/0002-Fix-have-snprintf-error.patch @@ -0,0 +1,12 @@ +diff -Nrup a/Makefile b/Makefile +--- a/Makefile 2017-10-23 18:03:40.237177646 -0400 ++++ b/Makefile 2017-10-23 18:06:20.060683518 -0400 +@@ -292,7 +292,7 @@ GCC_DEBUG_FLAGS = -DGCC_LINT -g3 -O3 -fn + # January's first Monday when a "%V" format is used and January 1 + # falls on a Friday, Saturday, or Sunday. + +-CFLAGS= ++CFLAGS= -DHAVE_SNPRINTF=1 + + # Linker flags. Default to $(LFLAGS) for backwards compatibility + # to release 2012h and earlier. diff --git a/sources b/sources index 422e6ae..d4eb179 100644 --- a/sources +++ b/sources @@ -1,4 +1,4 @@ SHA512 (javazic.tar.gz) = c23a4a437a87d0792f23e98025520a11273fc3d12ef5dcf64af8332ed60ba9ce77eaadfd234cee92b3ca9dc08b9e4123e804745925d68ddbd0b2e1e9039e526b SHA512 (javazic-1.8-37392f2f5d59.tar.xz) = 2ba718dfeed53a3bd6b44e3dfe96338a609e482e4e6d942e2a7e622fc6c52606cb323ac3a59739c463e34f70fff217c0a61f5b3d3c4958eff2801b1504ee4204 -SHA512 (tzcode2017b.tar.gz) = 9a73af4b868506d1f6287a8285dea489e68f6828da19509114f9144e2a2019c7fd28f4fb98ea907030d11d011ce3a87d99dbe43bca218beddafff151f0d61df1 -SHA512 (tzdata2017b.tar.gz) = 3e090dba1f52e4c63b4930b28f4bf38b56aabd6728f23094cb5801d10f4e464f17231f17b75b8866714bf98199c166ea840de0787b75b2274aa419a4e14bbc4d +SHA512 (tzcode2018g.tar.gz) = 58f89b7323bfe795c5f13039f7527d18b15c9e37fce6e9fa1a402ce2689bf5c772cf1ffb86f23309814a563f9f429da472df1229818b07b1e04f16bdedb21484 +SHA512 (tzdata2018g.tar.gz) = 92e9bbd61f51be8f2cf7ec9491691e5e2f97803914dbad77b7fb8b6600ed68fc3b98450fc808bb2d4c6c835df5f9eb7bf4529d059d9b1370f2ab4c12e7f1adfa diff --git a/tzdata.spec b/tzdata.spec index bbfd727..1e4d245 100644 --- a/tzdata.spec +++ b/tzdata.spec @@ -1,15 +1,16 @@ Summary: Timezone data Name: tzdata -Version: 2017b -%define tzdata_version 2017b -%define tzcode_version 2017b -Release: 2%{?dist} +Version: 2018g +%define tzdata_version 2018g +%define tzcode_version 2018g +Release: 1%{?dist} License: Public Domain Group: System Environment/Base URL: https://www.iana.org/time-zones Source0: ftp://ftp.iana.org/tz/releases/tzdata%{tzdata_version}.tar.gz Source1: ftp://ftp.iana.org/tz/releases/tzcode%{tzcode_version}.tar.gz -# Add new patches here... + +Patch002: 0002-Fix-have-snprintf-error.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRequires: gawk, glibc, perl-interpreter @@ -39,7 +40,25 @@ This package contains timezone information for use by Java runtimes. %prep %setup -q -c -a 1 -# Add new patches here... +# Currently tzdata is providing the "rearguard" data set for maximum +# compatibility with existing Red Hat Enterprise Linux installs. Future releases of +# Red Hat Enterprise Linux will be transitioning to the default or "vanguard" tzdata +# data set. +# +# The "rearguard" and "vanguard" data sets are defined by the upstream tzdata project +# and represent approximately the same data, with "vanguard" optimized for newer time +# zone data tooling, and "rearguard" optimized for compatibility with existing tooling. +# For example "vanguard" implements support for negative DST offsets, while "rearguard" +# supports the traditional format. + +# Create the reargard data files. +make VERSION=%{version} tzdata%{version}-rearguard.tar.gz +tar zxf tzdata%{version}-rearguard.tar.gz + +%patch002 -p1 + +# Run make to create the tzdata.zi file +make DATAFORM=rearguard VERSION=%{version} tzdata.zi mkdir javazic tar zxf %{SOURCE3} -C javazic @@ -67,6 +86,9 @@ tar xf %{SOURCE4} echo "%{name}%{tzdata_version}" >> VERSION %build +# Run make to create the tzdata.zi file +make tzdata.zi + FILES="africa antarctica asia australasia europe northamerica southamerica pacificnew etcetera backward" @@ -75,7 +97,7 @@ zic -y ./yearistype -d zoneinfo -L /dev/null -p America/New_York $FILES zic -y ./yearistype -d zoneinfo/posix -L /dev/null $FILES zic -y ./yearistype -d zoneinfo/right -L leapseconds $FILES -grep -v tz-art.htm tz-link.htm > tz-link.html +# grep -v tz-art.htm tz-link.htm > tz-link.html # Java 6/7 tzdata pushd javazic @@ -100,7 +122,7 @@ java -classpath javazic-1.8 build.tools.tzdb.TzdbZoneRulesCompiler \ rm -fr $RPM_BUILD_ROOT install -d $RPM_BUILD_ROOT%{_datadir} cp -prd zoneinfo $RPM_BUILD_ROOT%{_datadir} -install -p -m 644 zone.tab zone1970.tab iso3166.tab $RPM_BUILD_ROOT%{_datadir}/zoneinfo +install -p -m 644 zone.tab zone1970.tab iso3166.tab leapseconds tzdata.zi $RPM_BUILD_ROOT%{_datadir}/zoneinfo cp -prd javazi $RPM_BUILD_ROOT%{_datadir}/javazi mkdir -p $RPM_BUILD_ROOT%{_datadir}/javazi-1.8 install -p -m 644 tzdb.dat $RPM_BUILD_ROOT%{_datadir}/javazi-1.8/ @@ -113,8 +135,9 @@ rm -rf $RPM_BUILD_ROOT %{_datadir}/zoneinfo %license LICENSE %doc README -%doc Theory +%doc theory.html %doc tz-link.html +%doc tz-art.html %files java %defattr(-,root,root) @@ -122,6 +145,54 @@ rm -rf $RPM_BUILD_ROOT %{_datadir}/javazi-1.8 %changelog +* Sun Oct 28 2018 Patsy Griffin Franklin - 2018g-1 +- Rebase to tzdata-2018g + Includes changes for tzdata-2018f. + - Volgograd will change from UTC+03 to UTC+04 on 2018-10-28 at 02:00. + - Fiji will end DST on 2019-01-13 instead of the 2019-01-20 as + previously predicted. + - Most of Chile will end DST on the first Saturday in April at 24:00 + and restart DST on the first Saturday in September at 24:00. + - Morocco will change from UTC+00/+01 to permanent +01 effective 2018-10-27. + +* Wed May 16 2018 Patsy Franklin - 2018e-1 +- Rebase to tzdata-2018e + - North Korea changed from UTC+8:30 to UTC+9 on May 5, 2018. + - In this update, the upstream project now defaults to using + the "vanguard" data implementation which includes negative DST offsets. + However, we are continuing to provide the "rearguard" format + for data which does not use negative DST offsets to provide + better compatibility with existing tools. We intend to transition + to the "vanguard" data implementation in the future. + +* Wed Mar 28 2018 Patsy Franklin - 2018d-1 +- Rebase to tzdata-2018d: + - DST for Asia/Gaza and Asia/Hebron has changed + from March 31 to March 24. + - Antarctica/Casey station changed to UTC+8 on March 11. + +* Thu Feb 01 2018 Patsy Franklin - 2018c-1 +- Rebase to tzdata-2018c: + - São Tomé and Príncipe changed from +00 to +01 on January 1, 2018 + - Brazil's DST will start on the first Sunday in November + - Support for the new zic -t option. + - Add back pacificnew file omitted in tzdata-2018a + +* Thu Oct 26 2017 Patsy Franklin - 2017c-1 +- Rebase to tzdata-2017c. + - Northern Cyprus will revert to using EQ rules on October 29, 2017. + - Sudan will switch from +03 to +02 on November 1, 2017. + - Tonga will not change it's clocks on Novemeber 5, 2017 ending it's + experiment with DST. + - Fiji DST will end on January 14, 2018 rather than January 21, 2018. + - Namibia - starting September 3, 2017 switches from +)1 with DST to + +02 all year. This change takes effect April 1, 2018. + - Turks & Caicos changes from -04 all year to -05 with US DST starting + on March 11, 2018. Effective change date is November 4, 2018. + - tzdata now includes two text versions of the time zone data - tzdata.zi + and leapseconds. + - Includes two patches to deal with build issues. + * Thu Jul 27 2017 Fedora Release Engineering - 2017b-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild