diff --git a/sdk_container/src/third_party/coreos-overlay/sys-libs/timezone-data/Manifest b/sdk_container/src/third_party/coreos-overlay/sys-libs/timezone-data/Manifest index d555b63529..95722eb438 100644 --- a/sdk_container/src/third_party/coreos-overlay/sys-libs/timezone-data/Manifest +++ b/sdk_container/src/third_party/coreos-overlay/sys-libs/timezone-data/Manifest @@ -1,4 +1,2 @@ -DIST tzcode2019b.tar.gz 251196 BLAKE2B 73ed8d44675a25e0497b77cc20ca3cc5b137297e48ce679cb6e8d809f4f25d73631064e0f1c2d917b986baa10bad9369bac42d583573519e7f3a94c864b18886 SHA512 bcfb417fe3b7c39e702da0090291db0489744f733010ae183007fce5e441bfce885fb25ed11730cf7f363572e107d7ff0c4b38691bb99def2d8cf7017c05720f -DIST tzcode2019c.tar.gz 253560 BLAKE2B 62552e7e78ebb50c111f9a99119843fe9b5dad9e1abb5ba0f1cf0a931cf00fc49684a6b378f5ea4cb31aca8af5b0c3b697b87048ef36a445536ec2fc5b943440 SHA512 61ef36385f501c338c263081486de0d1fccd454b86f8777b0dbad4ea3f21bbde059d0a91c23e207b167ed013127d3db8b7528f0188814a8b44d1f946b19d9b8b -DIST tzdata2019b.tar.gz 384667 BLAKE2B c045d137cbb09e1109916dfdb1265ceb560d589ded9b05aa0cfe75f5fcb19057ded4d4f12f47c895020ed02bc4138de995eadac497eb3663579b094164d7e3ad SHA512 c0104078d994e501d80a41bea31364b1390a75c2fbf42968a8343a090e2ac2eddbc58770ca470b192ea19dec89fcc634141a1de703ea2ffa0325176a64afe1fc -DIST tzdata2019c.tar.gz 392087 BLAKE2B d7a21e57391d321b5c84e1ba2286ff0dd154c435d40015d999c8c6f2f1bea3c13d832c0752af313c9aa4dafe6a261e1e92bfd79523448fcd585188a53454e31a SHA512 2921cbb2fd44a6b8f7f2ed42c13fbae28195aa5c2eeefa70396bc97cdbaad679c6cc3c143da82cca5b0279065c02389e9af536904288c12886bf345baa8c6565 +DIST tzcode2021a.tar.gz 262204 BLAKE2B 4072685f2344602ffcfe32a7bf92d3b0d93e38ffca842f1c07a60db5e26f1f18ab32fc7b5f155b0bdab49f8d0bfcd5b58f4a192b4d06d7d9639893e5cb596328 SHA512 bf1d53bcbfecd3b09d57a9e6d3cb49b5dc5f8e1b6674b67e7f974e1a268c2aaf13ca89a7ef12f49d0665aff782bd72685e00c22a41ca88a028da0429f972fd45 +DIST tzdata2021a.tar.gz 411892 BLAKE2B b8d177e90e22bd8a3fd23c9a9c19896cb245efd8e768b59ab8c63e56ab141e67331f3231e3a7c802f844375049cfd902e14e912ce677b3aea38fc0d968905e87 SHA512 7cdd762ec90ce12a30fa36b1d66d1ea82d9fa21e514e2b9c7fcbe2541514ee0fadf30843ff352c65512fb270857b51d1517b45e1232b89c6f954ba9ff1833bb3 diff --git a/sdk_container/src/third_party/coreos-overlay/sys-libs/timezone-data/metadata.xml b/sdk_container/src/third_party/coreos-overlay/sys-libs/timezone-data/metadata.xml index a74a2f3c90..0e4c5ee4f0 100644 --- a/sdk_container/src/third_party/coreos-overlay/sys-libs/timezone-data/metadata.xml +++ b/sdk_container/src/third_party/coreos-overlay/sys-libs/timezone-data/metadata.xml @@ -1,10 +1,6 @@ - + - - djc@gentoo.org - Dirkjan Ochtman - toolchain@gentoo.org Gentoo Toolchain Project @@ -15,5 +11,9 @@ when counting seconds since the epoch (while POSIX does not) as they are based on the TAI (International Atomic Time) clock + + Default to 'slim' file format for /usr/share/zoneinfo. Otherwise 'fat' format + is used. Not all programs can handle 'slim' format'. + diff --git a/sdk_container/src/third_party/coreos-overlay/sys-libs/timezone-data/timezone-data-2019c.ebuild b/sdk_container/src/third_party/coreos-overlay/sys-libs/timezone-data/timezone-data-2019c.ebuild deleted file mode 100644 index 736b9888a1..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-libs/timezone-data/timezone-data-2019c.ebuild +++ /dev/null @@ -1,106 +0,0 @@ -# Copyright 1999-2019 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="7" - -inherit toolchain-funcs flag-o-matic - -code_ver=${PV} -data_ver=${PV} -DESCRIPTION="Timezone data (/usr/share/zoneinfo) and utilities (tzselect/zic/zdump)" -HOMEPAGE="https://www.iana.org/time-zones" -SRC_URI="https://www.iana.org/time-zones/repository/releases/tzdata${data_ver}.tar.gz - https://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 ~riscv s390 sh sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris" -IUSE="nls leaps-timezone" - -DEPEND="nls? ( virtual/libintl )" -RDEPEND="${DEPEND} - !sys-libs/glibc[vanilla(+)]" - -S=${WORKDIR} - -src_prepare() { - default - - # check_web contacts validator.w3.org - sed -i -e 's/check_tables check_web/check_tables/g' \ - Makefile || die "Failed to disable check_web" - - tc-is-cross-compiler && cp -pR "${S}" "${S}"-native -} - -src_configure() { - tc-export CC - - append-lfs-flags #471102 - - if 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 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 - - insinto /usr/share/zoneinfo - doins "${S}"/leap-seconds.list - - # 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 - - # install the symlink by hand to not break existing timezones - dosym . /usr/share/zoneinfo/posix -} diff --git a/sdk_container/src/third_party/coreos-overlay/sys-libs/timezone-data/timezone-data-2019b-r2.ebuild b/sdk_container/src/third_party/coreos-overlay/sys-libs/timezone-data/timezone-data-2021a-r1.ebuild similarity index 74% rename from sdk_container/src/third_party/coreos-overlay/sys-libs/timezone-data/timezone-data-2019b-r2.ebuild rename to sdk_container/src/third_party/coreos-overlay/sys-libs/timezone-data/timezone-data-2021a-r1.ebuild index 7b0606faa5..0569f80588 100644 --- a/sdk_container/src/third_party/coreos-overlay/sys-libs/timezone-data/timezone-data-2019b-r2.ebuild +++ b/sdk_container/src/third_party/coreos-overlay/sys-libs/timezone-data/timezone-data-2021a-r1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2019 Gentoo Authors +# Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI="7" @@ -14,14 +14,17 @@ SRC_URI="https://www.iana.org/time-zones/repository/releases/tzdata${data_ver}.t LICENSE="BSD public-domain" SLOT="0" -KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 ~riscv s390 sh sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris" -IUSE="nls leaps-timezone" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +IUSE="nls leaps-timezone zic-slim" DEPEND="nls? ( virtual/libintl )" RDEPEND="${DEPEND} !sys-libs/glibc[vanilla(+)]" -S=${WORKDIR} +src_unpack() { + mkdir -p "${S}" && cd "${S}" || die + default +} src_prepare() { default @@ -43,6 +46,11 @@ src_configure() { fi append-cppflags -DHAVE_GETTEXT=$(usex nls 1 0) -DTZ_DOMAIN='\"libc\"' + + # Upstream default is 'slim', but it breaks quite a few programs + # that parse /etc/localtime directly: bug# 747538. + append-cppflags -DZIC_BLOAT_DEFAULT='\"'$(usex zic-slim slim fat)'\"' + LDLIBS="" if use nls ; then # See if an external libintl is available. #154181 #578424 @@ -57,7 +65,6 @@ src_configure() { _emake() { emake \ REDO=$(usex leaps-timezone posix_right posix_only) \ - TZDATA_TEXT= \ TOPDIR="${EPREFIX}" \ ZICDIR='$(TOPDIR)/usr/bin' \ "$@" @@ -145,28 +152,39 @@ configure_tz_data() { fi if ! tz=$(get_TIMEZONE) ; then - einfo "Assuming your empty ${etc_lt} file is what you want; skipping update." + einfo "Assuming your empty ${src} 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 + einfo "You do not have a timezone set in ${src}; skipping update." 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" + local tzpath="${EROOT}/usr/share/zoneinfo/${tz}" + + if [[ ! -e ${tzpath} ]]; then + ewarn "The timezone specified in ${src} is not valid." + return 1 + fi + + if [[ -f ${etc_lt} ]]; then + # If a regular file already exists, copy over it. + ewarn "Found a regular file at ${etc_lt}." + ewarn "Some software may expect a symlink instead." + ewarn "You may convert it to a symlink by removing the file and running:" + ewarn " emerge --config sys-libs/timezone-data" + einfo "Copying ${tzpath} to ${etc_lt}." + cp -f "${tzpath}" "${etc_lt}" + else + # Otherwise, create a symlink and remove the timezone file. + tzpath="../usr/share/zoneinfo/${tz}" + einfo "Linking ${tzpath} at ${etc_lt}." + if ln -snf "${tzpath}" "${etc_lt}"; then + einfo "Removing ${src}." + rm -f "${src}" + fi fi - einfo "Updating ${etc_lt} with ${EROOT}/usr/share/zoneinfo/${tz}" - cp -f "${EROOT}/usr/share/zoneinfo/${tz}" "${etc_lt}" } pkg_config() {