sys-libs/timezone-data: Sync with the latest Gentoo stable version

This commit is contained in:
David Michael 2018-10-22 19:53:02 +00:00
parent 5fceb5429e
commit f1f2b3111b
6 changed files with 182 additions and 184 deletions

View File

@ -1,13 +1,13 @@
DEFINED_PHASES=compile configure install prepare DEFINED_PHASES=compile config configure install postinst preinst prepare test
DEPEND=nls? ( virtual/libintl ) DEPEND=nls? ( virtual/libintl )
DESCRIPTION=Timezone data (/usr/share/zoneinfo) and utilities (tzselect/zic/zdump) DESCRIPTION=Timezone data (/usr/share/zoneinfo) and utilities (tzselect/zic/zdump)
EAPI=5 EAPI=6
HOMEPAGE=http://www.iana.org/time-zones http://www.twinsun.com/tz/tz-link.htm HOMEPAGE=http://www.iana.org/time-zones http://www.twinsun.com/tz/tz-link.htm
IUSE=nls leaps_timezone elibc_FreeBSD IUSE=nls leaps_timezone elibc_FreeBSD
KEYWORDS=alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos KEYWORDS=alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris
LICENSE=BSD public-domain LICENSE=BSD public-domain
RDEPEND=nls? ( virtual/libintl ) !sys-libs/glibc[vanilla(+)] RDEPEND=nls? ( virtual/libintl ) !sys-libs/glibc[vanilla(+)]
SLOT=0 SLOT=0
SRC_URI=http://www.iana.org/time-zones/repository/releases/tzdata2016e.tar.gz http://www.iana.org/time-zones/repository/releases/tzcode2016e.tar.gz SRC_URI=http://www.iana.org/time-zones/repository/releases/tzdata2018e.tar.gz http://www.iana.org/time-zones/repository/releases/tzcode2018e.tar.gz
_eclasses_=desktop b1d22ac8bdd4679ab79c71aca235009d epatch a1bf4756dba418a7238f3be0cb010c54 estack 43ddf5aaffa7a8d0482df54d25a66a1f eutils 6e6c2737b59a4b982de6fb3ecefd87f8 flag-o-matic 55aaa148741116aa54ad0d80e361818e ltprune 08f9e1d9ee0af8f5d9a7854efbcd8c0e multilib b2f01ad412baf81650c23fcf0975fa33 preserve-libs ef207dc62baddfddfd39a164d9797648 toolchain-funcs f164325a2cdb5b3ea39311d483988861 vcs-clean 2a0f74a496fa2b1552c4f3398258b7bf _eclasses_=desktop b1d22ac8bdd4679ab79c71aca235009d epatch a1bf4756dba418a7238f3be0cb010c54 estack 43ddf5aaffa7a8d0482df54d25a66a1f eutils 6e6c2737b59a4b982de6fb3ecefd87f8 flag-o-matic 55aaa148741116aa54ad0d80e361818e ltprune 08f9e1d9ee0af8f5d9a7854efbcd8c0e multilib b2f01ad412baf81650c23fcf0975fa33 preserve-libs ef207dc62baddfddfd39a164d9797648 toolchain-funcs f164325a2cdb5b3ea39311d483988861 vcs-clean 2a0f74a496fa2b1552c4f3398258b7bf
_md5_=c2b274ad1dc1c80c7fab962a99f31a07 _md5_=f232d6c6f6c2c38aa5d82991fa318711

View File

@ -1,2 +1,2 @@
DIST tzcode2016e.tar.gz 194647 SHA256 57d8c4fcd5e8a90657d0e298eac5effb1a642119c92308db68d13a4612fa459e SHA512 dcaf615ada96920e60ffb336253f53541861153decc156d41661f43e0bfb128c6c231b0b776bbe3f2176549346275fc5a879074f4977d5141228e58cb33a41c6 WHIRLPOOL e9397b1d4236062a95a46ed463378a295a1959593611536416aeeb8c72c98131cf059d065439f59ae2b40722129b1c2ede7d14dc131ed431042620e54133148d DIST tzcode2018e.tar.gz 231732 BLAKE2B 5e73cd4d005413e3be56dfa01b5d023a6f07a37f84c0c2ac2eb126319fb8c34f435541b79f7f9776d3ef155e5db026ce8818a555687061fbf466220cb27c7343 SHA512 4a245cae2d0922b24539a94cf4a8ccc2bba1ee696e0aaefecb41c7c8d78724a7fcea6039909336177b8b26fec8fc47719e3e56ca9839dbaf52f9a4fec84d4717
DIST tzdata2016e.tar.gz 313684 SHA256 ba00f899f18dc4048d7fa21f5e1fdef434496084eedc06f6caa15e5ecdb6bd81 SHA512 dace0f6fc87a73879ca3a1b143d7dcf9c50803e23e6b8c91f83711704e28129af776676c547c42f14dee7f1e8e285ce25296e53a52d11f4c8f155b5f80f4beb3 WHIRLPOOL 69f5e70ae836c71c84c3bb1653887b15e2d408fe0927397a8f16f81b13ce1a23e1ad881084eb36b7785b3f129299830d03a5d2722029fdb8eed305c851661b7d DIST tzdata2018e.tar.gz 353953 BLAKE2B eaa18546434f71541567de75df17e03f8b7e4b5397e2b22e41d3ba51ba26dfe08a311926329737d9175df5e3a554ba06237cb12ff80a93a7ca441ceb7cd02710 SHA512 d059fcd381b2f6ecdafcd68fdd2a00451d1bf9b1affeb164ae7cabca2e022d499e77f0706ec3f3091b8e84c2211aa66da6c90937108771f1bf070cfebc105cae

View File

@ -1,81 +0,0 @@
- Fix up default paths
- Support env CC
- Don't build/install libtz.a
- Don't install man-pages provided by sys-apps/man-pages
- Move tzselect, zic, and zdump to bin
- Do not run network based unittests
--- a/Makefile
+++ b/Makefile
@@ -45,21 +45,21 @@ POSIXRULES= America/New_York
# Everything gets put in subdirectories of. . .
-TOPDIR= /usr/local
+TOPDIR= /usr
# "Compiled" time zone information is placed in the "TZDIR" directory
# (and subdirectories).
# Use an absolute path name for TZDIR unless you're just testing the software.
TZDIR_BASENAME= zoneinfo
-TZDIR= $(TOPDIR)/etc/$(TZDIR_BASENAME)
+TZDIR= $(TOPDIR)/share/$(TZDIR_BASENAME)
# Types to try, as an alternative to time_t. int64_t should be first.
TIME_T_ALTERNATIVES= int64_t int32_t uint32_t uint64_t
# The "tzselect", "zic", and "zdump" commands get installed in. . .
-ETCDIR= $(TOPDIR)/etc
+SBINDIR= $(TOPDIR)/sbin
# If you "make INSTALL", the "date" command gets installed in. . .
@@ -67,7 +67,7 @@ BINDIR= $(TOPDIR)/bin
# Manual pages go in subdirectories of. . .
-MANDIR= $(TOPDIR)/man
+MANDIR= $(TOPDIR)/share/man
# Library functions are put in an archive in LIBDIR.
@@ -298,8 +298,7 @@ GZIPFLAGS= -9n
#MAKE= make
-cc= cc
-CC= $(cc) -DTZDIR=\"$(TZDIR)\"
+CPPFLAGS+= -DTZDIR=\"$(TZDIR)\"
AR= ar
@@ -352,16 +354,12 @@ ALL: all date
install: all $(DATA) $(REDO) $(MANS)
mkdir -p $(DESTDIR)$(ETCDIR) $(DESTDIR)$(TZDIR) \
- $(DESTDIR)$(LIBDIR) \
+ $(DESTDIR)$(BINDIR) \
$(DESTDIR)$(MANDIR)/man3 $(DESTDIR)$(MANDIR)/man5 \
$(DESTDIR)$(MANDIR)/man8
$(ZIC_INSTALL) -l $(LOCALTIME) -p $(POSIXRULES)
cp -f iso3166.tab $(ZONETABLES) $(DESTDIR)$(TZDIR)/.
- cp tzselect zic zdump $(DESTDIR)$(ETCDIR)/.
+ cp tzselect zic zdump $(DESTDIR)$(BINDIR)/.
- 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
@@ -440,7 +438,7 @@ tzselect: tzselect.ksh
chmod +x $@
check: check_character_set check_white_space check_links check_sorted \
- check_tables check_web
+ check_tables
check_character_set: $(ENCHILADA)
LC_ALL=en_US.utf8 && export LC_ALL && \

View File

@ -1,20 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata> <pkgmetadata>
<herd>toolchain</herd> <maintainer type="person">
<maintainer>
<email>djc@gentoo.org</email> <email>djc@gentoo.org</email>
<name>Dirkjan Ochtman</name> <name>Dirkjan Ochtman</name>
</maintainer> </maintainer>
<maintainer type="project">
<email>toolchain@gentoo.org</email>
<name>Gentoo Toolchain Project</name>
</maintainer>
<use> <use>
<flag name='leaps_timezone'> <flag name="leaps_timezone">
Install the set of "right" timezones; these timezones include leap seconds Install the set of "right" timezones; these timezones include leap seconds
when counting seconds since the epoch (while POSIX does not) as they are when counting seconds since the epoch (while POSIX does not) as they are
based on the TAI (International Atomic Time) clock based on the TAI (International Atomic Time) clock
</flag> </flag>
<flag name='right_timezone'>
Install the set of "right" timezones; these timezones include leap seconds
when counting seconds since the epoch (while posix does not)
</flag>
</use> </use>
</pkgmetadata> </pkgmetadata>

View File

@ -1,89 +0,0 @@
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI="5"
inherit eutils toolchain-funcs flag-o-matic
code_ver=${PV}
data_ver=${PV}
DESCRIPTION="Timezone data (/usr/share/zoneinfo) and utilities (tzselect/zic/zdump)"
HOMEPAGE="http://www.iana.org/time-zones http://www.twinsun.com/tz/tz-link.htm"
SRC_URI="http://www.iana.org/time-zones/repository/releases/tzdata${data_ver}.tar.gz
http://www.iana.org/time-zones/repository/releases/tzcode${code_ver}.tar.gz"
LICENSE="BSD public-domain"
SLOT="0"
KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
IUSE="nls leaps_timezone elibc_FreeBSD"
DEPEND="nls? ( virtual/libintl )"
RDEPEND="${DEPEND}
!sys-libs/glibc[vanilla(+)]"
S=${WORKDIR}
src_prepare() {
epatch "${FILESDIR}"/${PN}-2016c-makefile.patch
tc-is-cross-compiler && cp -pR "${S}" "${S}"-native
}
src_configure() {
tc-export CC
append-lfs-flags #471102
if use elibc_FreeBSD || use elibc_Darwin ; then
append-cppflags -DSTD_INSPIRED #138251
fi
append-cppflags -DHAVE_GETTEXT=$(usex nls 1 0) -DTZ_DOMAIN='\"libc\"'
LDLIBS=""
if use nls ; then
# See if an external libintl is available. #154181 #578424
local c="${T}/test"
echo 'main(){}' > "${c}.c"
if $(tc-getCC) ${CPPFLAGS} ${CFLAGS} ${LDFLAGS} "${c}.c" -o "${c}" -lintl 2>/dev/null ; then
LDLIBS+=" -lintl"
fi
fi
}
_emake() {
emake \
TOPDIR="${EPREFIX}/usr" \
REDO=$(usex leaps_timezone posix_right posix_only) \
"$@"
}
src_compile() {
# TOPDIR is used in some utils when compiling.
_emake \
AR="$(tc-getAR)" \
CC="$(tc-getCC)" \
RANLIB="$(tc-getRANLIB)" \
CFLAGS="${CFLAGS} -std=gnu99" \
LDFLAGS="${LDFLAGS}" \
LDLIBS="${LDLIBS}"
if tc-is-cross-compiler ; then
_emake -C "${S}"-native \
CC="$(tc-getBUILD_CC)" \
CFLAGS="${BUILD_CFLAGS}" \
CPPFLAGS="${BUILD_CPPFLAGS}" \
LDFLAGS="${BUILD_LDFLAGS}" \
LDLIBS="${LDLIBS}" \
zic
fi
}
src_install() {
local zic=""
tc-is-cross-compiler && zic="zic=${S}-native/zic"
_emake install ${zic} DESTDIR="${D}"
dodoc CONTRIBUTING README NEWS Theory
dohtml *.htm
# install the symlink by hand to not break existing timezones
dosym . /usr/share/zoneinfo/posix
}

View File

@ -0,0 +1,169 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI="6"
inherit toolchain-funcs flag-o-matic
code_ver=${PV}
data_ver=${PV}
DESCRIPTION="Timezone data (/usr/share/zoneinfo) and utilities (tzselect/zic/zdump)"
HOMEPAGE="http://www.iana.org/time-zones http://www.twinsun.com/tz/tz-link.htm"
SRC_URI="http://www.iana.org/time-zones/repository/releases/tzdata${data_ver}.tar.gz
http://www.iana.org/time-zones/repository/releases/tzcode${code_ver}.tar.gz"
LICENSE="BSD public-domain"
SLOT="0"
KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris"
IUSE="nls leaps_timezone elibc_FreeBSD"
DEPEND="nls? ( virtual/libintl )"
RDEPEND="${DEPEND}
!sys-libs/glibc[vanilla(+)]"
S=${WORKDIR}
src_prepare() {
default
tc-is-cross-compiler && cp -pR "${S}" "${S}"-native
}
src_configure() {
tc-export CC
append-lfs-flags #471102
if use elibc_FreeBSD || use elibc_Darwin ; then
append-cppflags -DSTD_INSPIRED #138251
fi
append-cppflags -DHAVE_GETTEXT=$(usex nls 1 0) -DTZ_DOMAIN='\"libc\"'
LDLIBS=""
if use nls ; then
# See if an external libintl is available. #154181 #578424
local c="${T}/test"
echo 'main(){}' > "${c}.c"
if $(tc-getCC) ${CPPFLAGS} ${CFLAGS} ${LDFLAGS} "${c}.c" -o "${c}" -lintl 2>/dev/null ; then
LDLIBS+=" -lintl"
fi
fi
}
_emake() {
emake \
REDO=$(usex leaps_timezone posix_right posix_only) \
TZDATA_TEXT= \
TOPDIR="${EPREFIX}" \
ZICDIR='$(TOPDIR)/usr/bin' \
"$@"
}
src_compile() {
_emake \
AR="$(tc-getAR)" \
cc="$(tc-getCC)" \
RANLIB="$(tc-getRANLIB)" \
CFLAGS="${CFLAGS} -std=gnu99 ${CPPFLAGS}" \
LDFLAGS="${LDFLAGS}" \
LDLIBS="${LDLIBS}"
if tc-is-cross-compiler ; then
_emake -C "${S}"-native \
AR="$(tc-getBUILD_AR)" \
cc="$(tc-getBUILD_CC)" \
RANLIB="$(tc-getBUILD_RANLIB)" \
CFLAGS="${BUILD_CFLAGS} ${BUILD_CPPFLAGS}" \
LDFLAGS="${BUILD_LDFLAGS}" \
LDLIBS="${LDLIBS}" \
zic
fi
}
src_test() {
# VALIDATE_ENV is used for extended/web based tests. Punt on them.
emake -j1 check VALIDATE_ENV=true
}
src_install() {
local zic=""
tc-is-cross-compiler && zic="zic=${S}-native/zic"
_emake install ${zic} DESTDIR="${D}" LIBDIR="/nukeit"
rm -rf "${D}/nukeit" "${ED}/etc" || die
# Delete man pages installed by man-pages package.
rm "${ED}"/usr/share/man/man5/tzfile.5* "${ED}"/usr/share/man/man8/{tzselect,zdump,zic}.8 || die
dodoc CONTRIBUTING README NEWS *.html
}
get_TIMEZONE() {
local tz src="${EROOT}etc/timezone"
if [[ -e ${src} ]] ; then
tz=$(sed -e 's:#.*::' -e 's:[[:space:]]*::g' -e '/^$/d' "${src}")
else
tz="FOOKABLOIE"
fi
[[ -z ${tz} ]] && return 1 || echo "${tz}"
}
pkg_preinst() {
local tz=$(get_TIMEZONE)
if [[ ${tz} == right/* || ${tz} == posix/* ]] ; then
eerror "The right & posix subdirs are no longer installed as subdirs -- they have been"
eerror "relocated to match upstream paths as sibling paths. Further, posix/xxx is the"
eerror "same as xxx, so you should simply drop the posix/ prefix. You also should not"
eerror "be using right/xxx for the system timezone as it breaks programs."
die "Please fix your timezone setting"
fi
# Trim the symlink by hand to avoid portage's automatic protection checks.
rm -f "${EROOT}"/usr/share/zoneinfo/posix
if has_version "<=${CATEGORY}/${PN}-2015c" ; then
elog "Support for accessing posix/ and right/ directly has been dropped to match"
elog "upstream. There is no need to set TZ=posix/xxx as it is the same as TZ=xxx."
elog "For TZ=right/, you can use TZ=../zoneinfo-leaps/xxx instead. See this post"
elog "for details: https://mm.icann.org/pipermail/tz/2015-February/022024.html"
fi
}
configure_tz_data() {
# make sure the /etc/localtime file does not get stale #127899
local tz src="${EROOT}etc/timezone" etc_lt="${EROOT}etc/localtime"
# If it's a symlink, assume the user knows what they're doing and
# they're managing it themselves. #511474
if [[ -L ${etc_lt} ]] ; then
einfo "Assuming your ${etc_lt} symlink is what you want; skipping update."
return 0
fi
if ! tz=$(get_TIMEZONE) ; then
einfo "Assuming your empty ${etc_lt} file is what you want; skipping update."
return 0
fi
if [[ ${tz} == "FOOKABLOIE" ]] ; then
elog "You do not have TIMEZONE set in ${src}."
if [[ ! -e ${etc_lt} ]] ; then
cp -f "${EROOT}"/usr/share/zoneinfo/Factory "${etc_lt}"
elog "Setting ${etc_lt} to Factory."
else
elog "Skipping auto-update of ${etc_lt}."
fi
return 0
fi
if [[ ! -e ${EROOT}/usr/share/zoneinfo/${tz} ]] ; then
elog "You have an invalid TIMEZONE setting in ${src}"
elog "Your ${etc_lt} has been reset to Factory; enjoy!"
tz="Factory"
fi
einfo "Updating ${etc_lt} with ${EROOT}usr/share/zoneinfo/${tz}"
cp -f "${EROOT}"/usr/share/zoneinfo/"${tz}" "${etc_lt}"
}
pkg_config() {
configure_tz_data
}
pkg_postinst() {
configure_tz_data
}