summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin H. Johnson <robbat2@gentoo.org>2015-08-08 13:49:04 -0700
committerRobin H. Johnson <robbat2@gentoo.org>2015-08-08 17:38:18 -0700
commit56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch)
tree3f91093cdb475e565ae857f1c5a7fd339e2d781e /sys-libs/timezone-data
downloadgentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip
proj/gentoo: Initial commit
This commit represents a new era for Gentoo: Storing the gentoo-x86 tree in Git, as converted from CVS. This commit is the start of the NEW history. Any historical data is intended to be grafted onto this point. Creation process: 1. Take final CVS checkout snapshot 2. Remove ALL ChangeLog* files 3. Transform all Manifests to thin 4. Remove empty Manifests 5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$ 5.1. Do not touch files with -kb/-ko keyword flags. Signed-off-by: Robin H. Johnson <robbat2@gentoo.org> X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'sys-libs/timezone-data')
-rw-r--r--sys-libs/timezone-data/Manifest18
-rw-r--r--sys-libs/timezone-data/files/timezone-data-2008h-makefile.patch138
-rw-r--r--sys-libs/timezone-data/files/timezone-data-2012a-makefile.patch138
-rw-r--r--sys-libs/timezone-data/files/timezone-data-2012i-makefile.patch95
-rw-r--r--sys-libs/timezone-data/files/timezone-data-2013a-makefile.patch95
-rw-r--r--sys-libs/timezone-data/files/timezone-data-2013d-makefile.patch95
-rw-r--r--sys-libs/timezone-data/files/timezone-data-2013f-makefile.patch119
-rw-r--r--sys-libs/timezone-data/files/timezone-data-2013h-makefile.patch112
-rw-r--r--sys-libs/timezone-data/files/timezone-data-2014f-makefile.patch112
-rw-r--r--sys-libs/timezone-data/files/timezone-data-2014g-makefile.patch113
-rw-r--r--sys-libs/timezone-data/files/timezone-data-2014h-makefile.patch113
-rw-r--r--sys-libs/timezone-data/files/timezone-data-2015a-makefile.patch113
-rw-r--r--sys-libs/timezone-data/files/timezone-data-2015c-makefile.patch86
-rw-r--r--sys-libs/timezone-data/metadata.xml20
-rw-r--r--sys-libs/timezone-data/timezone-data-2012j.ebuild110
-rw-r--r--sys-libs/timezone-data/timezone-data-2013i.ebuild129
-rw-r--r--sys-libs/timezone-data/timezone-data-2014i-r1.ebuild151
-rw-r--r--sys-libs/timezone-data/timezone-data-2014j.ebuild151
-rw-r--r--sys-libs/timezone-data/timezone-data-2015a.ebuild154
-rw-r--r--sys-libs/timezone-data/timezone-data-2015b.ebuild154
-rw-r--r--sys-libs/timezone-data/timezone-data-2015c-r1.ebuild143
-rw-r--r--sys-libs/timezone-data/timezone-data-2015c.ebuild154
-rw-r--r--sys-libs/timezone-data/timezone-data-2015d.ebuild143
-rw-r--r--sys-libs/timezone-data/timezone-data-2015e.ebuild143
24 files changed, 2799 insertions, 0 deletions
diff --git a/sys-libs/timezone-data/Manifest b/sys-libs/timezone-data/Manifest
new file mode 100644
index 000000000000..caa035779eb6
--- /dev/null
+++ b/sys-libs/timezone-data/Manifest
@@ -0,0 +1,18 @@
+DIST tzcode2012j.tar.gz 134654 SHA256 ee4361b3b4ae201a270857c84d0f063c2a2191b3e4cd7414ea4622bb8bae9a82 SHA512 a0182438fedb1d855b52c0734f52bfd4dd3707d65c6f347833d5a68aab132a68f2b77a0e182d7ecfe7c58185245d7181ab01da909c2fdc84b71150c3090382c2 WHIRLPOOL 430e7320976e184753364d034f16109713a350ec0828d864be2f30ce6d29dd403d8f9c25866f828c664f0324f57ad72197fd752ba343f316d80d7c11a1ebdee6
+DIST tzcode2013i.tar.gz 173169 SHA256 63bba6790afc1cb2ea0af2b998a35fc237e247608140dbe4e08b4216a8c31358 SHA512 863d181339d8b44ae9876a02e436da33b723f81e592a0e0f51f1300a2dac277bc18ed422b8631e27032769620323c94c848f3abc926d8bc28074d3d4b4bb8a28 WHIRLPOOL 9de16a388ac7a1e7965b1aaed4461657a2f822a08fe6c8c5f025bdad6512b53ef0ea6960ef03bc372df3541f9c8588797cd1e2b2dcecb10afb9041965b3684a1
+DIST tzcode2014i.tar.gz 181815 SHA256 62591075fb0d47459889b71bac3c8487f09b7417b81dfa541d750b4889e84783 SHA512 ed780815a1e209616c791997f14da56cb9311c6585b70c503b32a11e8ec15e0dc04c37bdeaa5a1a1378ada714935a2d931679d0aa4ab42808d185b600e5d0582 WHIRLPOOL ba5bdf8117b64eda76dc559dd211fa83ee0662792a93004fd696b3d8463da2046d91a0cb45b88656230ac935b528b5cd3e8ce9a460c5e27fdb0b4a19ddadb666
+DIST tzcode2014j.tar.gz 182416 SHA256 7fd46125464856309fc81fe85a67a61de862b8ab884ce8ca82051f5fa308ede2 SHA512 1207670c168a80fe9db86307028efa3af8ca304817ebe36df5b5c2d2b67deba4294f05f4d6afa04220c3b255ad1903e2850bfb0649b2edfb2d754345a4b2490a WHIRLPOOL 87275670bc5eeaa634ea7cc858e0c52e61e69640d89a98119d42bf087f26b65216146749648c1347dca0924776e9f6f914ba85aac19c5a3e581ad329fb85de84
+DIST tzcode2015a.tar.gz 182993 SHA256 885bab11f286852f34030d7a86ede7d4126319ca74b8ee22be8ca7c17d72dd19 SHA512 80d3bd3aeb70e21552a599c6203670fe742ca8d270c3fc430a3045d8e8a6610ebfe74941532c0791d5a99d6e4bf5fbdf62918de57d377d3fd26e7f7f786c66a4 WHIRLPOOL de4d9ea9611cc47e71f6e64fc4b0f6c45e5b3c995268d6244ed58fdc9b5e6d896c0e3ce1299e04ae018681523dc1e57f2dfcd0fb7f03423a93282123eb8a0376
+DIST tzcode2015b.tar.gz 183630 SHA256 e668f1235b998c90e43ecc93c8535728c65bb01d6bb93d22467e04b5ffa35d76 SHA512 d9b56c8ec98d9158d10cf80df0181864c467a4387b8ced5701f466c40885ea524bc1d49b0e17c0a18d8006a423da1c1b9a7e74626c4a916dd37cbb85e04b2b0a WHIRLPOOL 9e57737318d00470a6315cda75ed0cc3b4bb7f57de4c60b0d3b527be12164ec7c390f285dde23102c764e2ff6b9473d2e4762642f7a3e716e746bcacb931eaad
+DIST tzcode2015c.tar.gz 184278 SHA256 7feeb1a60dff8b179c884f6e3aa7684606f4eaeb7f7ecc61a6bb81e3e38af42e SHA512 01f57e27c1031434e7da8876f30084dfef9dbe36988539c857f71f86c0ab1995f82c9fe5dad32ded12185c53433b7f1a0553d8848a2d97529981021ffd70dfb1 WHIRLPOOL b2dff9985ad6845ad368a35e471890e99c69f03cf6d92da9d0da362af1d0545e30485a7be1ca159444d49c148c2f1588b8fa3fd1161859cfa566365fb45ba341
+DIST tzcode2015d.tar.gz 184178 SHA256 221af54ec5c42eaf0101159ffe1256a883d1c14c46228d42774c656a56317128 SHA512 2cb4faced839d02e6313a7aacca4d2dfe6454186d9864ee4aa034f7280442e6a751cec2285bde2d5712962b733e107a46f2282469f6510b42d93972d6c34424a WHIRLPOOL d5760e6530f65a4aac86258cbec62b27c86952d0f5896fbc1f567af6aef025e453f455ba94805069706981ecd4806a22e09581dd38cfba18f892343eb2038e3d
+DIST tzcode2015e.tar.gz 185129 SHA256 b5a217b55847fb56f470a7738939c36f3a520d6cc12342d965cfcf848e59ada0 SHA512 fdc568a68f4876b967b39e21fa53f063dc5756e886e2a273cc046d5a014eb517e9c91eb6e03d18c94a89ce48578868aed710790415c500188fce4e4add0ce7ca WHIRLPOOL d3fde26e0b0ebe98d7de0c2a666a79dd6020e471b647de2b61a89dc1eeba61e8928c7dcb2e1b15d867e8e81b5e33321a288a2b94e713deaf5579e00b6082e7b8
+DIST tzdata2012j.tar.gz 214075 SHA256 4b6a3c2831bdbb68ab1a1bf906bcf11d18ab78009713a0339da6fe96b6afceaa SHA512 98515b92268a2ee49386f6955211c14b9fe47460ba1c3ec5d60681b1a934688c3de4452f8f757ca3a6924e15784585967c768e7c86be730378d0332c249584fe WHIRLPOOL 17af29d05587bea2b05762751d146101a8bcc647346aa22a33e06a095805ecf4feab62693b3216ba5d75cf87f8a63d8cbcee9167be4b6dfe7936e1828bbc4b8a
+DIST tzdata2013i.tar.gz 218866 SHA256 1cd56a6ee964143ef0c65229968a5093988335b95e9115235b5e7b7e45e67dda SHA512 679645837b940c0d4c63cb070e26c042461a520caa5fbe1ed12897a6bfb5c440352d54a9e1ffb8b7098a10dd9e2f33cf4c6f9cb0b6fc84c0dfc3898501ce4082 WHIRLPOOL f5c559b8bd3869e2f90792079329582d26d3e95f744543c40b5c3aa6429390a39e04697d68151730019e60cfa3c6fe6b4f8d3d3e79b6b4bed28dc4e81cffa9ce
+DIST tzdata2014i.tar.gz 289312 SHA256 2af331bdd2b794ec59b8ded7300fb29dc3573a009ec14183f5c9ad38e3886153 SHA512 d8893703cebfa337254a6cfb26b0c0083533922016d51dcb56c0cbc46ff7fb76d83e4e1359eec3a7728b4ebffd24e912117ac1f7425a150cad4d33e20033c40e WHIRLPOOL ca2fb6f470ff975168124ee30c2f4638ce9f0a68b0d999e451c19d328c0df438f6934b458b48e7d05a724445e7fc5c3e1ca5adbcc97e1998f88983630f132e43
+DIST tzdata2014j.tar.gz 290688 SHA256 a2d870320694d40535df822ac8074dc629a90e92abafa5d3373314f78ddc0e0d SHA512 4c2979be3a96f91f8576304ec905d571b73df0842c8300c1d7317819b45ab3e29948ed911aa265b12a4ad587d5cba44f646dd02e40e4fbf9e68556a2d327142e WHIRLPOOL adf3fc77aae18dccf05e3c990052fc2cb735a2c91bf9e93136cb45862e6f283e706beaa79373354817662a8b17449000a58760cb8f95fa78de88690207014a3e
+DIST tzdata2015a.tar.gz 292131 SHA256 c52490917d00a8e7fc9b5f0b1b65ef6ec76d612b5b20c81bf86a04147af18e4c SHA512 ff36feb437238ba42fe67257e81ade0a2179d11f6c6449146e28e4b6553c62348b4131af75e440b4467109c9edba13e25ddaf701f2fcebb2a258b4ac9b57293c WHIRLPOOL 22d42c60e87948c691255282aea9e4c9d69b46db8c19ef1c06a262b5e6054e45fec39c5fa8d1dc24ad121ed70bd3dfa24ea61fe97961938b733262238d74b5bb
+DIST tzdata2015b.tar.gz 293482 SHA256 556ac1a5b3a371adc1ad4e77138f78ddd7f8ddd7bc2b52545924598c7dc8ad62 SHA512 767782b87e62a8f7a4dbcae595d16a54197c9e04ca974d7016d11f90ebaf2537b804d111f204af9052c68d4670afe0af0af9e5b150867a357fc199bb541368d0 WHIRLPOOL e6d7bd671dd17c44b9d51744bda2283b42d5e4b9b673e693976af2f52f2a03a9571d6604a30b88701ed11f69a3a797429c72274126c0f45e5a4b9637b589a632
+DIST tzdata2015c.tar.gz 294353 SHA256 860fac5f5f57f7a2dfc1ba682dbd1f5c0f0b597f761571277b6ed6561e22365a SHA512 ca89c2041c8420e7b154660e227211b60ba20e8d70b6870b5c0a149838c588d13065202b1266c59caf22a99df2387da95ac04049b9ecb7939cd406c7f007a73e WHIRLPOOL e5806b47d3082b260837c675ac267a99ec45549070c66b5cbd6a51b7fe57802a555bfd54918093e83447089d965fe2459c5e9c6ea12c333080add280b012182f
+DIST tzdata2015d.tar.gz 296131 SHA256 8b9f5008277f09e251e97dba7813f56168d691115bda90ade4638d72f296d531 SHA512 37b5aa3c5e0d601c8b20fac08d7267c398a836e4190ef85625d5e86a806ba1baceb2315ba81a9a6c854eae4fce40e9c8f90cf5adade3f48ad443f77c221d8983 WHIRLPOOL c42972f20c8815557a9545f73bf3ff3b10a0148168a229641cb8e436da8ec337c5fc968acacfbd4d5beeae0fb183c5b6d54fe4240539352a9c3ce2b2f2318824
+DIST tzdata2015e.tar.gz 296773 SHA256 ffc9b5d38abda8277aa479e3f75aa7668819d0977cd1a0c8ef3b09128334ba6f SHA512 86498190a20c5c67827aa75f7e9c6aa6c19d58a88a70425ce70d5ae7cea42dc7386eb2867fa455fcfcdedc6a105ad70fbbdc7c27c7a58a51bd21d76a135983ce WHIRLPOOL aaf2f2009f451beaf178d1ee622ebacdd04f1795e07a606b61620cac8faf74a63e1ea3f75ef58b846a6093922cba9df764ed1929e70d1f0be5181fdc25901282
diff --git a/sys-libs/timezone-data/files/timezone-data-2008h-makefile.patch b/sys-libs/timezone-data/files/timezone-data-2008h-makefile.patch
new file mode 100644
index 000000000000..70f43c35f2d6
--- /dev/null
+++ b/sys-libs/timezone-data/files/timezone-data-2008h-makefile.patch
@@ -0,0 +1,138 @@
+ - Fix up default paths
+ - Support env DESTDIR / LDFLAGS / CFLAGS / CC
+ - Use awk instead of nawk
+ - Don't build/install libtz.a
+ - Don't install man-pages provided by sys-apps/man-pages
+ - Move zic zdump to sbin and tzselect to bin ala glibc
+ - Install posix zoneinfo into zoneinfo/posix/ instead of zoneinfo-posix/ ala glibc
+ - Install leaps zoneinfo into zoneinfo/right/ ala glibc
+ - Disable broken web test
+ - Make sure tzselect uses #!/bin/bash and not #!/bin/ksh
+ - Flags to the linking are passed as LDFLAGS, not LFLAGS
+ - LDFLAGS was missed for the 'date' target
+
+--- Makefile
++++ Makefile
+@@ -35,5 +35,5 @@
+ # Everything gets put in subdirectories of. . .
+
+-TOPDIR= /usr/local
++TOPDIR= $(DESTDIR)/usr
+
+ # "Compiled" time zone information is placed in the "TZDIR" directory
+@@ -41,9 +41,9 @@
+ # Use an absolute path name for TZDIR unless you're just testing the software.
+
+-TZDIR= $(TOPDIR)/etc/zoneinfo
++TZDIR= $(TOPDIR)/share/zoneinfo
+
+ # 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. . .
+@@ -53,5 +53,5 @@
+ # Manual pages go in subdirectories of. . .
+
+-MANDIR= $(TOPDIR)/man
++MANDIR= $(TOPDIR)/share/man
+
+ # Library functions are put in an archive in LIBDIR.
+@@ -211,5 +211,5 @@
+ # falls on a Friday, Saturday, or Sunday.
+
+-CFLAGS=
++CFLAGS += -std=gnu99
+
+ # If you want zic's -s option used when installing, uncomment the next line
+@@ -220,5 +220,5 @@
+
+ # The name of a Posix-compliant `awk' on your system.
+-AWK= nawk
++AWK= awk
+
+ # The path where SGML DTDs are kept.
+@@ -241,8 +241,10 @@
+
+ ###############################################################################
+
+-cc= cc
+-CC= $(cc) -DTZDIR=\"$(TZDIR)\"
++CC+= -DTZDIR=\"$(TZDIR)\"
++ifeq ($(NLS),1)
++CC += -DHAVE_GETTEXT=1 -DTZ_DOMAIN=\"libc\"
++endif
+
+ TZCSRCS= zic.c localtime.c asctime.c scheck.c ialloc.c
+ TZCOBJS= zic.o localtime.o asctime.o scheck.o ialloc.o
+@@ -281,11 +281,13 @@
+ ALL: all date
+
+-install: all $(DATA) $(REDO) $(TZLIB) $(MANS) $(TABDATA)
++install: all $(DATA) $(REDO) $(MANS) $(TABDATA)
+ $(ZIC) -y $(YEARISTYPE) \
+ -d $(TZDIR) -l $(LOCALTIME) -p $(POSIXRULES)
+ -rm -f $(TZDIR)/iso3166.tab $(TZDIR)/zone.tab
+ cp iso3166.tab zone.tab $(TZDIR)/.
+- -mkdir $(TOPDIR) $(ETCDIR)
+- cp tzselect zic zdump $(ETCDIR)/.
++ -mkdir $(TOPDIR) $(SBINDIR)
++ cp zic zdump $(SBINDIR)/.
++ -mkdir $(TOPDIR) $(BINDIR)
++ cp tzselect $(BINDIR)/.
+ -mkdir $(TOPDIR) $(MANDIR) \
+ $(MANDIR)/man3 $(MANDIR)/man5 $(MANDIR)/man8
+@@ -297,6 +299,4 @@
+ $(MANDIR)/man8/zic.8
+ cp newctime.3 newtzset.3 $(MANDIR)/man3/.
+- cp tzfile.5 $(MANDIR)/man5/.
+- cp tzselect.8 zdump.8 zic.8 $(MANDIR)/man8/.
+
+ INSTALL: ALL install date.1
+@@ -309,10 +309,10 @@
+ cp date.1 $(MANDIR)/man1/.
+
+ zdump: $(TZDOBJS)
+- $(CC) $(CFLAGS) $(LFLAGS) $(TZDOBJS) $(LDLIBS) -o $@
++ $(CC) $(CFLAGS) $(LDFLAGS) $(TZDOBJS) $(LDLIBS) -o $@
+
+ zic: $(TZCOBJS) yearistype
+- $(CC) $(CFLAGS) $(LFLAGS) $(TZCOBJS) $(LDLIBS) -o $@
++ $(CC) $(CFLAGS) $(LDFLAGS) $(TZCOBJS) $(LDLIBS) -o $@
+
+ yearistype: yearistype.sh
+ cp yearistype.sh yearistype
+@@ -333,7 +333,7 @@
+ # to using them, or vice versa.
+ other_two: zic leapseconds $(TDATA)
+- $(ZIC) -y $(YEARISTYPE) -d $(TZDIR)-posix -L /dev/null $(TDATA)
++ $(ZIC) -y $(YEARISTYPE) -d $(TZDIR)/posix -L /dev/null $(TDATA)
+ $(ZIC) -y $(YEARISTYPE) \
+- -d $(TZDIR)-leaps -L leapseconds $(TDATA)
++ -d $(TZDIR)/right -L leapseconds $(TDATA)
+
+ posix_right: posix_only other_two
+@@ -351,7 +351,7 @@
+ then ranlib $@ ; fi
+
+ date: $(DATEOBJS)
+- $(CC) $(CFLAGS) date.o localtime.o asctime.o strftime.o \
++ $(CC) $(CFLAGS) $(LDFLAGS) date.o localtime.o asctime.o strftime.o \
+ $(LDLIBS) -lc -o $@
+
+ tzselect: tzselect.ksh
+@@ -366,5 +366,5 @@
+ chmod +x $@
+
+-check: check_tables check_web
++check: check_tables
+
+ check_tables: checktab.awk $(PRIMARY_YDATA)
+--- tzselect.ksh
++++ tzselect.ksh
+@@ -1,3 +1,3 @@
+-#! /bin/ksh
++#! /bin/bash
+
+ # '@(#)tzselect.ksh 1.8'
diff --git a/sys-libs/timezone-data/files/timezone-data-2012a-makefile.patch b/sys-libs/timezone-data/files/timezone-data-2012a-makefile.patch
new file mode 100644
index 000000000000..38e10dd7f0f9
--- /dev/null
+++ b/sys-libs/timezone-data/files/timezone-data-2012a-makefile.patch
@@ -0,0 +1,138 @@
+ - Fix up default paths
+ - Support env DESTDIR / LDFLAGS / CFLAGS / CC
+ - Use awk instead of nawk
+ - Don't build/install libtz.a
+ - Don't install man-pages provided by sys-apps/man-pages
+ - Move zic zdump to sbin and tzselect to bin ala glibc
+ - Install posix zoneinfo into zoneinfo/posix/ instead of zoneinfo-posix/ ala glibc
+ - Install leaps zoneinfo into zoneinfo/right/ ala glibc
+ - Disable broken web test
+ - Make sure tzselect uses #!/bin/bash and not #!/bin/ksh
+ - Flags to the linking are passed as LDFLAGS, not LFLAGS
+ - LDFLAGS was missed for the 'date' target
+
+--- Makefile
++++ Makefile
+@@ -35,5 +35,5 @@
+ # Everything gets put in subdirectories of. . .
+
+-TOPDIR= /usr/local
++TOPDIR= $(DESTDIR)/usr
+
+ # "Compiled" time zone information is placed in the "TZDIR" directory
+@@ -41,9 +41,8 @@
+
+-# TZDIR= $(TOPDIR)/etc/zoneinfo
+-TZDIR= /home/kre/src/tz/data/TZ
++TZDIR= $(TOPDIR)/share/zoneinfo
+
+ # 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. . .
+@@ -53,5 +53,5 @@
+ # Manual pages go in subdirectories of. . .
+
+-MANDIR= $(TOPDIR)/man
++MANDIR= $(TOPDIR)/share/man
+
+ # Library functions are put in an archive in LIBDIR.
+@@ -211,5 +211,5 @@
+ # falls on a Friday, Saturday, or Sunday.
+
+-CFLAGS= -DSTD_INSPIRED
++CFLAGS += -DSTD_INSPIRED -std=gnu99
+
+ # If you want zic's -s option used when installing, uncomment the next line
+@@ -220,5 +220,5 @@
+
+ # The name of a Posix-compliant `awk' on your system.
+-AWK= nawk
++AWK= awk
+
+ # The path where SGML DTDs are kept.
+@@ -241,8 +241,10 @@
+
+ ###############################################################################
+
+-cc= cc
+-CC= $(cc) -DTZDIR=\"$(TZDIR)\"
++CC+= -DTZDIR=\"$(TZDIR)\"
++ifeq ($(NLS),1)
++CC += -DHAVE_GETTEXT=1 -DTZ_DOMAIN=\"libc\"
++endif
+
+ TZCSRCS= zic.c localtime.c asctime.c scheck.c ialloc.c
+ TZCOBJS= zic.o localtime.o asctime.o scheck.o ialloc.o
+@@ -281,11 +281,13 @@
+ ALL: all date
+
+-install: all $(DATA) $(REDO) $(TZLIB) $(MANS) $(TABDATA)
++install: all $(DATA) $(REDO) $(MANS) $(TABDATA)
+ $(ZIC) -y $(YEARISTYPE) \
+ -d $(TZDIR) -l $(LOCALTIME) -p $(POSIXRULES)
+ -rm -f $(TZDIR)/iso3166.tab $(TZDIR)/zone.tab
+ cp iso3166.tab zone.tab $(TZDIR)/.
+- -mkdir $(TOPDIR) $(ETCDIR)
+- cp tzselect zic zdump $(ETCDIR)/.
++ -mkdir $(TOPDIR) $(SBINDIR)
++ cp zic zdump $(SBINDIR)/.
++ -mkdir $(TOPDIR) $(BINDIR)
++ cp tzselect $(BINDIR)/.
+ -mkdir $(TOPDIR) $(MANDIR) \
+ $(MANDIR)/man3 $(MANDIR)/man5 $(MANDIR)/man8
+@@ -297,6 +299,4 @@
+ $(MANDIR)/man8/zic.8
+ cp newctime.3 newtzset.3 $(MANDIR)/man3/.
+- cp tzfile.5 $(MANDIR)/man5/.
+- cp tzselect.8 zdump.8 zic.8 $(MANDIR)/man8/.
+
+ INSTALL: ALL install date.1
+@@ -309,10 +309,10 @@
+ cp date.1 $(MANDIR)/man1/.
+
+ zdump: $(TZDOBJS)
+- $(CC) $(CFLAGS) $(LFLAGS) $(TZDOBJS) $(LDLIBS) -o $@
++ $(CC) $(CFLAGS) $(LDFLAGS) $(TZDOBJS) $(LDLIBS) -o $@
+
+ zic: $(TZCOBJS) yearistype
+- $(CC) $(CFLAGS) $(LFLAGS) $(TZCOBJS) $(LDLIBS) -o $@
++ $(CC) $(CFLAGS) $(LDFLAGS) $(TZCOBJS) $(LDLIBS) -o $@
+
+ yearistype: yearistype.sh
+ cp yearistype.sh yearistype
+@@ -333,7 +333,7 @@
+ # to using them, or vice versa.
+ other_two: zic leapseconds $(TDATA)
+- $(ZIC) -y $(YEARISTYPE) -d $(TZDIR)-posix -L /dev/null $(TDATA)
++ $(ZIC) -y $(YEARISTYPE) -d $(TZDIR)/posix -L /dev/null $(TDATA)
+ $(ZIC) -y $(YEARISTYPE) \
+- -d $(TZDIR)-leaps -L leapseconds $(TDATA)
++ -d $(TZDIR)/right -L leapseconds $(TDATA)
+
+ posix_right: posix_only other_two
+@@ -351,7 +351,7 @@
+ then ranlib $@ ; fi
+
+ date: $(DATEOBJS)
+- $(CC) $(CFLAGS) date.o localtime.o asctime.o strftime.o \
++ $(CC) $(CFLAGS) $(LDFLAGS) date.o localtime.o asctime.o strftime.o \
+ $(LDLIBS) -lc -o $@
+
+ tzselect: tzselect.ksh
+@@ -366,5 +366,5 @@
+ chmod +x $@
+
+-check: check_tables check_web
++check: check_tables
+
+ check_tables: checktab.awk $(PRIMARY_YDATA)
+--- tzselect.ksh
++++ tzselect.ksh
+@@ -1,3 +1,3 @@
+-#! /bin/ksh
++#! /bin/bash
+
+ # '@(#)tzselect.ksh 1.8'
diff --git a/sys-libs/timezone-data/files/timezone-data-2012i-makefile.patch b/sys-libs/timezone-data/files/timezone-data-2012i-makefile.patch
new file mode 100644
index 000000000000..383492dcce0f
--- /dev/null
+++ b/sys-libs/timezone-data/files/timezone-data-2012i-makefile.patch
@@ -0,0 +1,95 @@
+ - Fix up default paths
+ - Support env DESTDIR / LDFLAGS / CFLAGS / CC
+ - Use awk instead of nawk
+ - Don't build/install libtz.a
+ - Don't install man-pages provided by sys-apps/man-pages
+ - Move zic zdump to sbin and tzselect to bin ala glibc
+ - Install posix zoneinfo into zoneinfo/posix/ instead of zoneinfo-posix/ ala glibc
+ - Install leaps zoneinfo into zoneinfo/right/ ala glibc
+ - Disable broken web test
+ - Make sure tzselect uses #!/bin/bash and not #!/bin/ksh
+ - Flags to the linking are passed as LDFLAGS, not LFLAGS
+ - LDFLAGS was missed for the 'date' target
+
+--- Makefile
++++ Makefile
+@@ -35,5 +35,5 @@
+ # Everything gets put in subdirectories of. . .
+
+-TOPDIR= /usr/local
++TOPDIR= $(DESTDIR)/usr
+
+ # "Compiled" time zone information is placed in the "TZDIR" directory
+@@ -41,9 +41,9 @@
+ # Use an absolute path name for TZDIR unless you're just testing the software.
+
+-TZDIR= $(TOPDIR)/etc/zoneinfo
++TZDIR= $(TOPDIR)/share/zoneinfo
+
+ # 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. . .
+@@ -53,5 +53,5 @@
+ # Manual pages go in subdirectories of. . .
+
+-MANDIR= $(TOPDIR)/man
++MANDIR= $(TOPDIR)/share/man
+
+ # Library functions are put in an archive in LIBDIR.
+@@ -241,8 +241,10 @@
+
+ ###############################################################################
+
+-cc= cc
+-CC= $(cc) -DTZDIR=\"$(TZDIR)\"
++CC+= -DTZDIR=\"$(TZDIR)\"
++ifeq ($(NLS),1)
++CC += -DHAVE_GETTEXT=1 -DTZ_DOMAIN=\"libc\"
++endif
+
+ TZCSRCS= zic.c localtime.c asctime.c scheck.c ialloc.c
+ TZCOBJS= zic.o localtime.o asctime.o scheck.o ialloc.o
+@@ -281,11 +281,13 @@
+ ALL: all date
+
+-install: all $(DATA) $(REDO) $(TZLIB) $(MANS) $(TABDATA)
++install: all $(DATA) $(REDO) $(MANS) $(TABDATA)
+ $(ZIC) -y $(YEARISTYPE) \
+ -d $(TZDIR) -l $(LOCALTIME) -p $(POSIXRULES)
+ -rm -f $(TZDIR)/iso3166.tab $(TZDIR)/zone.tab
+ cp iso3166.tab zone.tab $(TZDIR)/.
+- -mkdir $(TOPDIR) $(ETCDIR)
+- cp tzselect zic zdump $(ETCDIR)/.
++ -mkdir $(TOPDIR) $(SBINDIR)
++ cp zic zdump $(SBINDIR)/.
++ -mkdir $(TOPDIR) $(BINDIR)
++ cp tzselect $(BINDIR)/.
+ -mkdir $(TOPDIR) $(MANDIR) \
+ $(MANDIR)/man3 $(MANDIR)/man5 $(MANDIR)/man8
+@@ -297,6 +299,4 @@
+ $(MANDIR)/man8/zic.8
+ cp newctime.3 newtzset.3 $(MANDIR)/man3/.
+- cp tzfile.5 $(MANDIR)/man5/.
+- cp tzselect.8 zdump.8 zic.8 $(MANDIR)/man8/.
+
+ INSTALL: ALL install date.1
+@@ -333,7 +333,7 @@
+ # to using them, or vice versa.
+ other_two: zic leapseconds $(TDATA)
+- $(ZIC) -y $(YEARISTYPE) -d $(TZDIR)-posix -L /dev/null $(TDATA)
++ $(ZIC) -y $(YEARISTYPE) -d $(TZDIR)/posix -L /dev/null $(TDATA)
+ $(ZIC) -y $(YEARISTYPE) \
+- -d $(TZDIR)-leaps -L leapseconds $(TDATA)
++ -d $(TZDIR)/right -L leapseconds $(TDATA)
+
+ posix_right: posix_only other_two
+@@ -366,5 +366,5 @@
+ chmod +x $@
+
+-check: check_tables check_web
++check: check_tables
+
+ check_tables: checktab.awk $(PRIMARY_YDATA)
diff --git a/sys-libs/timezone-data/files/timezone-data-2013a-makefile.patch b/sys-libs/timezone-data/files/timezone-data-2013a-makefile.patch
new file mode 100644
index 000000000000..b3bbcf54186f
--- /dev/null
+++ b/sys-libs/timezone-data/files/timezone-data-2013a-makefile.patch
@@ -0,0 +1,95 @@
+ - Fix up default paths
+ - Support env DESTDIR / LDFLAGS / CFLAGS / CC
+ - Use awk instead of nawk
+ - Don't build/install libtz.a
+ - Don't install man-pages provided by sys-apps/man-pages
+ - Move zic zdump to sbin and tzselect to bin ala glibc
+ - Install posix zoneinfo into zoneinfo/posix/ instead of zoneinfo-posix/ ala glibc
+ - Install leaps zoneinfo into zoneinfo/right/ ala glibc
+ - Disable broken web test
+ - Make sure tzselect uses #!/bin/bash and not #!/bin/ksh
+ - Flags to the linking are passed as LDFLAGS, not LFLAGS
+ - LDFLAGS was missed for the 'date' target
+
+--- Makefile
++++ Makefile
+@@ -35,5 +35,5 @@
+ # Everything gets put in subdirectories of. . .
+
+-TOPDIR= /usr/local
++TOPDIR= $(DESTDIR)/usr
+
+ # "Compiled" time zone information is placed in the "TZDIR" directory
+@@ -41,9 +41,9 @@
+ # Use an absolute path name for TZDIR unless you're just testing the software.
+
+-TZDIR= $(TOPDIR)/etc/zoneinfo
++TZDIR= $(TOPDIR)/share/zoneinfo
+
+ # 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. . .
+@@ -53,5 +53,5 @@
+ # Manual pages go in subdirectories of. . .
+
+-MANDIR= $(TOPDIR)/man
++MANDIR= $(TOPDIR)/share/man
+
+ # Library functions are put in an archive in LIBDIR.
+@@ -241,8 +241,10 @@
+
+ ###############################################################################
+
+-cc= cc
+-CC= $(cc) -DTZDIR=\"$(TZDIR)\"
++CC+= -DTZDIR=\"$(TZDIR)\"
++ifeq ($(NLS),1)
++CC += -DHAVE_GETTEXT=1 -DTZ_DOMAIN=\"libc\"
++endif
+
+ TZCSRCS= zic.c localtime.c asctime.c scheck.c ialloc.c
+ TZCOBJS= zic.o localtime.o asctime.o scheck.o ialloc.o
+@@ -281,11 +281,13 @@
+ ALL: all date
+
+-install: all $(DATA) $(REDO) $(TZLIB) $(MANS) $(TABDATA)
++install: all $(DATA) $(REDO) $(MANS) $(TABDATA)
+ $(ZIC) -y $(YEARISTYPE) \
+ -d $(TZDIR) -l $(LOCALTIME) -p $(POSIXRULES)
+ -rm -f $(TZDIR)/iso3166.tab $(TZDIR)/zone.tab
+ cp iso3166.tab zone.tab $(TZDIR)/.
+- -mkdir $(TOPDIR) $(ETCDIR)
+- cp tzselect zic zdump $(ETCDIR)/.
++ -mkdir $(TOPDIR) $(SBINDIR)
++ cp zic zdump $(SBINDIR)/.
++ -mkdir $(TOPDIR) $(BINDIR)
++ cp tzselect $(BINDIR)/.
+ -mkdir $(TOPDIR) $(MANDIR) \
+ $(MANDIR)/man3 $(MANDIR)/man5 $(MANDIR)/man8
+@@ -297,6 +299,4 @@
+ $(MANDIR)/man8/zic.8
+ cp newctime.3 newtzset.3 $(MANDIR)/man3/.
+- cp tzfile.5 $(MANDIR)/man5/.
+- cp tzselect.8 zdump.8 zic.8 $(MANDIR)/man8/.
+
+ INSTALL: ALL install date.1
+@@ -333,7 +333,7 @@
+ # to using them, or vice versa.
+ other_two: zic leapseconds $(TDATA)
+- $(ZIC) -y $(YEARISTYPE) -d $(TZDIR)-posix -L /dev/null $(TDATA)
++ $(ZIC) -y $(YEARISTYPE) -d $(TZDIR)/posix -L /dev/null $(TDATA)
+ $(ZIC) -y $(YEARISTYPE) \
+- -d $(TZDIR)-leaps -L leapseconds $(TDATA)
++ -d $(TZDIR)/right -L leapseconds $(TDATA)
+
+ posix_right: posix_only other_two
+@@ -366,5 +366,5 @@
+ chmod +x $@
+
+-check: check_character_set check_tables check_web
++check: check_character_set check_tables
+
+ check_tables: checktab.awk $(PRIMARY_YDATA)
diff --git a/sys-libs/timezone-data/files/timezone-data-2013d-makefile.patch b/sys-libs/timezone-data/files/timezone-data-2013d-makefile.patch
new file mode 100644
index 000000000000..eb52f87f600d
--- /dev/null
+++ b/sys-libs/timezone-data/files/timezone-data-2013d-makefile.patch
@@ -0,0 +1,95 @@
+ - Fix up default paths
+ - Support env DESTDIR / LDFLAGS / CFLAGS / CC
+ - Use awk instead of nawk
+ - Don't build/install libtz.a
+ - Don't install man-pages provided by sys-apps/man-pages
+ - Move zic zdump to sbin and tzselect to bin ala glibc
+ - Install posix zoneinfo into zoneinfo/posix/ instead of zoneinfo-posix/ ala glibc
+ - Install leaps zoneinfo into zoneinfo/right/ ala glibc
+ - Disable broken web test
+ - Make sure tzselect uses #!/bin/bash and not #!/bin/ksh
+ - Flags to the linking are passed as LDFLAGS, not LFLAGS
+ - LDFLAGS was missed for the 'date' target
+
+--- a/Makefile
++++ b/Makefile
+@@ -46,5 +46,5 @@
+ # Everything gets put in subdirectories of. . .
+
+-TOPDIR= /usr/local
++TOPDIR= $(DESTDIR)/usr
+
+ # "Compiled" time zone information is placed in the "TZDIR" directory
+@@ -52,5 +52,5 @@
+ # Use an absolute path name for TZDIR unless you're just testing the software.
+
+-TZDIR= $(TOPDIR)/etc/zoneinfo
++TZDIR= $(TOPDIR)/share/zoneinfo
+
+ # Types to try, as an alternative to time_t. int64_t should be first.
+@@ -59,5 +59,5 @@
+ # 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,5 +67,5 @@
+ # Manual pages go in subdirectories of. . .
+
+-MANDIR= $(TOPDIR)/man
++MANDIR= $(TOPDIR)/share/man
+
+ # Library functions are put in an archive in LIBDIR.
+@@ -293,6 +293,8 @@
+ ###############################################################################
+
+-cc= cc
+-CC= $(cc) -DTZDIR=\"$(TZDIR)\"
++CC+= -DTZDIR=\"$(TZDIR)\"
++ifeq ($(NLS),1)
++CC += -DHAVE_GETTEXT=1 -DTZ_DOMAIN=\"libc\"
++endif
+
+ TZCSRCS= zic.c localtime.c asctime.c scheck.c ialloc.c
+@@ -335,11 +337,13 @@
+ ALL: all date
+
+-install: all $(DATA) $(REDO) $(TZLIB) $(MANS) $(TABDATA)
++install: all $(DATA) $(REDO) $(MANS) $(TABDATA)
+ $(ZIC) -y $(YEARISTYPE) \
+ -d $(TZDIR) -l $(LOCALTIME) -p $(POSIXRULES)
+ -rm -f $(TZDIR)/iso3166.tab $(TZDIR)/zone.tab
+ cp iso3166.tab zone.tab $(TZDIR)/.
+- -mkdir $(TOPDIR) $(ETCDIR)
+- cp tzselect zic zdump $(ETCDIR)/.
++ -mkdir $(TOPDIR) $(SBINDIR)
++ cp zic zdump $(SBINDIR)/.
++ -mkdir $(TOPDIR) $(BINDIR)
++ cp tzselect $(BINDIR)/.
+ -mkdir $(TOPDIR) $(MANDIR) \
+ $(MANDIR)/man3 $(MANDIR)/man5 $(MANDIR)/man8
+@@ -351,6 +355,4 @@
+ $(MANDIR)/man8/zic.8
+ cp newctime.3 newtzset.3 $(MANDIR)/man3/.
+- cp tzfile.5 $(MANDIR)/man5/.
+- cp tzselect.8 zdump.8 zic.8 $(MANDIR)/man8/.
+
+ INSTALL: ALL install date.1
+@@ -392,7 +394,7 @@
+ # to using them, or vice versa.
+ other_two: zic leapseconds $(TDATA)
+- $(ZIC) -y $(YEARISTYPE) -d $(TZDIR)-posix -L /dev/null $(TDATA)
++ $(ZIC) -y $(YEARISTYPE) -d $(TZDIR)/posix -L /dev/null $(TDATA)
+ $(ZIC) -y $(YEARISTYPE) \
+- -d $(TZDIR)-leaps -L leapseconds $(TDATA)
++ -d $(TZDIR)/right -L leapseconds $(TDATA)
+
+ posix_right: posix_only other_two
+@@ -422,5 +424,5 @@
+ chmod +x $@
+
+-check: check_character_set check_tables check_web
++check: check_character_set check_tables
+
+ check_character_set: $(ENCHILADA)
diff --git a/sys-libs/timezone-data/files/timezone-data-2013f-makefile.patch b/sys-libs/timezone-data/files/timezone-data-2013f-makefile.patch
new file mode 100644
index 000000000000..f496098f3048
--- /dev/null
+++ b/sys-libs/timezone-data/files/timezone-data-2013f-makefile.patch
@@ -0,0 +1,119 @@
+ - 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 zic, zdump to sbin and tzselect to bin ala glibc
+ - Install posix zoneinfo into zoneinfo/posix/ instead of zoneinfo-posix/ ala glibc
+ - Install leaps zoneinfo into zoneinfo/right/ ala glibc
+
+--- a/Makefile
++++ b/Makefile
+@@ -45,21 +45,21 @@
+
+ # 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 @@
+
+ # Manual pages go in subdirectories of. . .
+
+-MANDIR= $(TOPDIR)/man
++MANDIR= $(TOPDIR)/share/man
+
+ # Library functions are put in an archive in LIBDIR.
+
+@@ -294,8 +294,10 @@
+
+ ###############################################################################
+
+-cc= cc
+-CC= $(cc) -DTZDIR=\"$(TZDIR)\"
++CC+= -DTZDIR=\"$(TZDIR)\"
++ifeq ($(NLS),1)
++CC+= -DHAVE_GETTEXT=1 -DTZ_DOMAIN=\"libc\"
++endif
+
+ TZCSRCS= zic.c localtime.c asctime.c scheck.c ialloc.c
+ TZCOBJS= zic.o localtime.o asctime.o scheck.o ialloc.o
+@@ -338,14 +340,16 @@
+
+ ALL: all date
+
+-install: all $(DATA) $(REDO) $(DESTDIR)$(TZLIB) $(MANS)
++install: all $(DATA) $(REDO) $(MANS)
+ $(ZIC) -y $(YEARISTYPE) \
+ -d $(DESTDIR)$(TZDIR) -l $(LOCALTIME) -p $(POSIXRULES)
+ -rm -f $(DESTDIR)$(TZDIR)/iso3166.tab \
+ $(DESTDIR)$(TZDIR)/zone.tab
+ cp iso3166.tab zone.tab $(DESTDIR)$(TZDIR)/.
+- -mkdir $(DESTDIR)$(TOPDIR) $(DESTDIR)$(ETCDIR)
+- cp tzselect zic zdump $(DESTDIR)$(ETCDIR)/.
++ -mkdir $(DESTDIR)$(TOPDIR) $(DESTDIR)$(SBINDIR)
++ cp zic zdump $(DESTDIR)$(SBINDIR)/.
++ -mkdir $(DESTDIR)$(TOPDIR) $(DESTDIR)$(BINDIR)
++ cp tzselect $(DESTDIR)$(BINDIR)/.
+ -mkdir $(DESTDIR)$(TOPDIR) $(DESTDIR)$(MANDIR) \
+ $(DESTDIR)$(MANDIR)/man3 $(DESTDIR)$(MANDIR)/man5 \
+ $(DESTDIR)$(MANDIR)/man8
+@@ -356,8 +360,6 @@
+ $(DESTDIR)$(MANDIR)/man8/zdump.8 \
+ $(DESTDIR)$(MANDIR)/man8/zic.8
+ cp newctime.3 newtzset.3 $(DESTDIR)$(MANDIR)/man3/.
+- cp tzfile.5 $(DESTDIR)$(MANDIR)/man5/.
+- cp tzselect.8 zdump.8 zic.8 $(DESTDIR)$(MANDIR)/man8/.
+
+ INSTALL: ALL install date.1
+ -mkdir $(DESTDIR)$(TOPDIR) $(DESTDIR)$(BINDIR)
+@@ -405,17 +407,17 @@
+ right_posix: right_only leapseconds
+ rm -fr $(DESTDIR)$(TZDIR)-leaps
+- ln -s $(TZDIR_BASENAME) $(DESTDIR)$(TZDIR)-leaps || \
++ ln -s . $(DESTDIR)$(TZDIR)/right || \
+- $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR)-leaps \
++ $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR)/right \
+ -L leapseconds $(TDATA)
+- $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR)-posix \
++ $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR)/posix \
+ -L /dev/null $(TDATA)
+
+ posix_right: posix_only leapseconds
+ rm -fr $(DESTDIR)$(TZDIR)-posix
+- ln -s $(TZDIR_BASENAME) $(DESTDIR)$(TZDIR)-posix || \
++ ln -s . $(DESTDIR)$(TZDIR)/posix || \
+- $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR)-posix \
++ $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR)/posix \
+ -L /dev/null $(TDATA)
+- $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR)-leaps \
++ $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR)/right \
+ -L leapseconds $(TDATA)
+
+ zones: $(REDO)
+@@ -442,7 +442,7 @@
+ <$? >$@
+ chmod +x $@
+
+-check: check_character_set check_tables check_web
++check: check_character_set check_tables
+
+ check_character_set: $(ENCHILADA)
+ sharp='#'; ! grep -n $(INVALID_CHAR) $(ENCHILADA)
diff --git a/sys-libs/timezone-data/files/timezone-data-2013h-makefile.patch b/sys-libs/timezone-data/files/timezone-data-2013h-makefile.patch
new file mode 100644
index 000000000000..01335c901371
--- /dev/null
+++ b/sys-libs/timezone-data/files/timezone-data-2013h-makefile.patch
@@ -0,0 +1,112 @@
+ - 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 zic, zdump to sbin and tzselect to bin ala glibc
+ - Install posix zoneinfo into zoneinfo/posix/ instead of zoneinfo-posix/ ala glibc
+ - Install leaps zoneinfo into zoneinfo/right/ ala glibc
+
+--- 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,10 @@ GZIPFLAGS= -9n
+
+ ###############################################################################
+
+-cc= cc
+-CC= $(cc) -DTZDIR=\"$(TZDIR)\"
++CC+= -DTZDIR=\"$(TZDIR)\"
++ifeq ($(NLS),1)
++CC+= -DHAVE_GETTEXT=1 -DTZ_DOMAIN=\"libc\"
++endif
+
+ AR= ar
+
+@@ -352,17 +354,14 @@ ALL: all date
+ install: all $(DATA) $(REDO) $(MANS)
+ mkdir -p $(DESTDIR)$(ETCDIR) $(DESTDIR)$(TZDIR) \
+- $(DESTDIR)$(LIBDIR) \
++ $(DESTDIR)$(SBINDIR) $(DESTDIR)$(BINDIR) \
+ $(DESTDIR)$(MANDIR)/man3 $(DESTDIR)$(MANDIR)/man5 \
+ $(DESTDIR)$(MANDIR)/man8
+ $(ZIC) -y $(YEARISTYPE) \
+ -d $(DESTDIR)$(TZDIR) -l $(LOCALTIME) -p $(POSIXRULES)
+ cp -f iso3166.tab zone.tab $(DESTDIR)$(TZDIR)/.
+- cp tzselect zic zdump $(DESTDIR)$(ETCDIR)/.
++ cp zic zdump $(DESTDIR)$(SBINDIR)/.
++ cp tzselect $(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
+@@ -406,18 +408,18 @@ right_only: zic leapseconds $(TDATA)
+ # to using them, or vice versa.
+ right_posix: right_only leapseconds
+ rm -fr $(DESTDIR)$(TZDIR)-leaps
+- ln -s $(TZDIR_BASENAME) $(DESTDIR)$(TZDIR)-leaps || \
+- $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR)-leaps \
++ ln -s . $(DESTDIR)$(TZDIR)/right || \
++ $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR)/right \
+ -L leapseconds $(TDATA)
+- $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR)-posix \
++ $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR)/posix \
+ -L /dev/null $(TDATA)
+
+ posix_right: posix_only leapseconds
+ rm -fr $(DESTDIR)$(TZDIR)-posix
+- ln -s $(TZDIR_BASENAME) $(DESTDIR)$(TZDIR)-posix || \
+- $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR)-posix \
++ ln -s . $(DESTDIR)$(TZDIR)/posix || \
++ $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR)/posix \
+ -L /dev/null $(TDATA)
+- $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR)-leaps \
++ $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR)/right \
+ -L leapseconds $(TDATA)
+
+ zones: $(REDO)
+@@ -440,7 +442,7 @@ tzselect: tzselect.ksh
+ <$? >$@
+ chmod +x $@
+
+-check: check_character_set check_tables check_web
++check: check_character_set check_tables
+
+ check_character_set: $(ENCHILADA)
+ sharp='#'; ! grep -n $(INVALID_CHAR) $(ENCHILADA)
diff --git a/sys-libs/timezone-data/files/timezone-data-2014f-makefile.patch b/sys-libs/timezone-data/files/timezone-data-2014f-makefile.patch
new file mode 100644
index 000000000000..7f9efc8f5f38
--- /dev/null
+++ b/sys-libs/timezone-data/files/timezone-data-2014f-makefile.patch
@@ -0,0 +1,112 @@
+ - 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 zic, zdump to sbin and tzselect to bin ala glibc
+ - Install posix zoneinfo into zoneinfo/posix/ instead of zoneinfo-posix/ ala glibc
+ - Install leaps zoneinfo into zoneinfo/right/ ala glibc
+
+--- 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,10 @@ GZIPFLAGS= -9n
+
+ ###############################################################################
+
+-cc= cc
+-CC= $(cc) -DTZDIR=\"$(TZDIR)\"
++CC+= -DTZDIR=\"$(TZDIR)\"
++ifeq ($(NLS),1)
++CC+= -DHAVE_GETTEXT=1 -DTZ_DOMAIN=\"libc\"
++endif
+
+ AR= ar
+
+@@ -352,17 +354,14 @@ ALL: all date
+ install: all $(DATA) $(REDO) $(MANS)
+ mkdir -p $(DESTDIR)$(ETCDIR) $(DESTDIR)$(TZDIR) \
+- $(DESTDIR)$(LIBDIR) \
++ $(DESTDIR)$(SBINDIR) $(DESTDIR)$(BINDIR) \
+ $(DESTDIR)$(MANDIR)/man3 $(DESTDIR)$(MANDIR)/man5 \
+ $(DESTDIR)$(MANDIR)/man8
+ $(ZIC) -y $(YEARISTYPE) \
+ -d $(DESTDIR)$(TZDIR) -l $(LOCALTIME) -p $(POSIXRULES)
+ cp -f iso3166.tab $(ZONETABLES) $(DESTDIR)$(TZDIR)/.
+- cp tzselect zic zdump $(DESTDIR)$(ETCDIR)/.
++ cp zic zdump $(DESTDIR)$(SBINDIR)/.
++ cp tzselect $(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
+@@ -406,18 +408,18 @@ right_only: zic leapseconds $(TDATA)
+ # to using them, or vice versa.
+ right_posix: right_only leapseconds
+ rm -fr $(DESTDIR)$(TZDIR)-leaps
+- ln -s $(TZDIR_BASENAME) $(DESTDIR)$(TZDIR)-leaps || \
+- $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR)-leaps \
++ ln -s . $(DESTDIR)$(TZDIR)/right || \
++ $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR)/right \
+ -L leapseconds $(TDATA)
+- $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR)-posix \
++ $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR)/posix \
+ -L /dev/null $(TDATA)
+
+ posix_right: posix_only leapseconds
+ rm -fr $(DESTDIR)$(TZDIR)-posix
+- ln -s $(TZDIR_BASENAME) $(DESTDIR)$(TZDIR)-posix || \
+- $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR)-posix \
++ ln -s . $(DESTDIR)$(TZDIR)/posix || \
++ $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR)/posix \
+ -L /dev/null $(TDATA)
+- $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR)-leaps \
++ $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR)/right \
+ -L leapseconds $(TDATA)
+
+ zones: $(REDO)
+@@ -440,7 +442,7 @@ tzselect: tzselect.ksh
+ <$? >$@
+ chmod +x $@
+
+-check: check_character_set check_tables check_web
++check: check_character_set check_tables
+
+ check_character_set: $(ENCHILADA)
+ sharp='#'; ! grep -n $(INVALID_CHAR) $(ENCHILADA)
diff --git a/sys-libs/timezone-data/files/timezone-data-2014g-makefile.patch b/sys-libs/timezone-data/files/timezone-data-2014g-makefile.patch
new file mode 100644
index 000000000000..826637512338
--- /dev/null
+++ b/sys-libs/timezone-data/files/timezone-data-2014g-makefile.patch
@@ -0,0 +1,113 @@
+ - 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 zic, zdump to sbin and tzselect to bin ala glibc
+ - Install posix zoneinfo into zoneinfo/posix/ instead of zoneinfo-posix/ ala glibc
+ - Install leaps zoneinfo into zoneinfo/right/ ala glibc
+ - 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,10 @@ GZIPFLAGS= -9n
+
+ ###############################################################################
+
+-cc= cc
+-CC= $(cc) -DTZDIR=\"$(TZDIR)\"
++CC+= -DTZDIR=\"$(TZDIR)\"
++ifeq ($(NLS),1)
++CC+= -DHAVE_GETTEXT=1 -DTZ_DOMAIN=\"libc\"
++endif
+
+ AR= ar
+
+@@ -352,17 +354,14 @@ ALL: all date
+ install: all $(DATA) $(REDO) $(MANS)
+ mkdir -p $(DESTDIR)$(ETCDIR) $(DESTDIR)$(TZDIR) \
+- $(DESTDIR)$(LIBDIR) \
++ $(DESTDIR)$(SBINDIR) $(DESTDIR)$(BINDIR) \
+ $(DESTDIR)$(MANDIR)/man3 $(DESTDIR)$(MANDIR)/man5 \
+ $(DESTDIR)$(MANDIR)/man8
+ $(ZIC) -y $(YEARISTYPE) \
+ -d $(DESTDIR)$(TZDIR) -l $(LOCALTIME) -p $(POSIXRULES)
+ cp -f iso3166.tab $(ZONETABLES) $(DESTDIR)$(TZDIR)/.
+- cp tzselect zic zdump $(DESTDIR)$(ETCDIR)/.
++ cp zic zdump $(DESTDIR)$(SBINDIR)/.
++ cp tzselect $(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
+@@ -406,18 +408,18 @@ right_only: zic leapseconds $(TDATA)
+ # to using them, or vice versa.
+ right_posix: right_only leapseconds
+ rm -fr $(DESTDIR)$(TZDIR)-leaps
+- ln -s $(TZDIR_BASENAME) $(DESTDIR)$(TZDIR)-leaps || \
+- $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR)-leaps \
++ ln -s . $(DESTDIR)$(TZDIR)/right || \
++ $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR)/right \
+ -L leapseconds $(TDATA)
+- $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR)-posix \
++ $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR)/posix \
+ -L /dev/null $(TDATA)
+
+ posix_right: posix_only leapseconds
+ rm -fr $(DESTDIR)$(TZDIR)-posix
+- ln -s $(TZDIR_BASENAME) $(DESTDIR)$(TZDIR)-posix || \
+- $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR)-posix \
++ ln -s . $(DESTDIR)$(TZDIR)/posix || \
++ $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR)/posix \
+ -L /dev/null $(TDATA)
+- $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR)-leaps \
++ $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR)/right \
+ -L leapseconds $(TDATA)
+
+ posix_packrat: posix_only backzone
+@@ -440,7 +442,7 @@ tzselect: tzselect.ksh
+ <$? >$@
+ chmod +x $@
+
+-check: check_character_set check_white_space check_tables check_web
++check: check_character_set check_white_space check_tables
+
+ check_character_set: $(ENCHILADA)
+ LC_ALL=en_US.utf8 && export LC_ALL && \
diff --git a/sys-libs/timezone-data/files/timezone-data-2014h-makefile.patch b/sys-libs/timezone-data/files/timezone-data-2014h-makefile.patch
new file mode 100644
index 000000000000..38af3bebc97d
--- /dev/null
+++ b/sys-libs/timezone-data/files/timezone-data-2014h-makefile.patch
@@ -0,0 +1,113 @@
+ - 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 zic, zdump to sbin and tzselect to bin ala glibc
+ - Install posix zoneinfo into zoneinfo/posix/ instead of zoneinfo-posix/ ala glibc
+ - Install leaps zoneinfo into zoneinfo/right/ ala glibc
+ - 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,10 @@ GZIPFLAGS= -9n
+
+ ###############################################################################
+
+-cc= cc
+-CC= $(cc) -DTZDIR=\"$(TZDIR)\"
++CPPFLAGS+= -DTZDIR=\"$(TZDIR)\"
++ifeq ($(NLS),1)
++CPPFLAGS+= -DHAVE_GETTEXT=1 -DTZ_DOMAIN=\"libc\"
++endif
+
+ AR= ar
+
+@@ -352,17 +354,14 @@ ALL: all date
+ install: all $(DATA) $(REDO) $(MANS)
+ mkdir -p $(DESTDIR)$(ETCDIR) $(DESTDIR)$(TZDIR) \
+- $(DESTDIR)$(LIBDIR) \
++ $(DESTDIR)$(SBINDIR) $(DESTDIR)$(BINDIR) \
+ $(DESTDIR)$(MANDIR)/man3 $(DESTDIR)$(MANDIR)/man5 \
+ $(DESTDIR)$(MANDIR)/man8
+ $(ZIC) -y $(YEARISTYPE) \
+ -d $(DESTDIR)$(TZDIR) -l $(LOCALTIME) -p $(POSIXRULES)
+ cp -f iso3166.tab $(ZONETABLES) $(DESTDIR)$(TZDIR)/.
+- cp tzselect zic zdump $(DESTDIR)$(ETCDIR)/.
++ cp zic zdump $(DESTDIR)$(SBINDIR)/.
++ cp tzselect $(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
+@@ -406,18 +408,18 @@ right_only: zic leapseconds $(TDATA)
+ # to using them, or vice versa.
+ right_posix: right_only leapseconds
+ rm -fr $(DESTDIR)$(TZDIR)-leaps
+- ln -s $(TZDIR_BASENAME) $(DESTDIR)$(TZDIR)-leaps || \
+- $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR)-leaps \
++ ln -s . $(DESTDIR)$(TZDIR)/right || \
++ $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR)/right \
+ -L leapseconds $(TDATA)
+- $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR)-posix \
++ $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR)/posix \
+ -L /dev/null $(TDATA)
+
+ posix_right: posix_only leapseconds
+ rm -fr $(DESTDIR)$(TZDIR)-posix
+- ln -s $(TZDIR_BASENAME) $(DESTDIR)$(TZDIR)-posix || \
+- $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR)-posix \
++ ln -s . $(DESTDIR)$(TZDIR)/posix || \
++ $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR)/posix \
+ -L /dev/null $(TDATA)
+- $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR)-leaps \
++ $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR)/right \
+ -L leapseconds $(TDATA)
+
+ posix_packrat: posix_only backzone
+@@ -440,7 +442,7 @@ tzselect: tzselect.ksh
+ chmod +x $@
+
+ check: check_character_set check_white_space check_sorted \
+- check_tables check_web
++ check_tables
+
+ check_character_set: $(ENCHILADA)
+ LC_ALL=en_US.utf8 && export LC_ALL && \
diff --git a/sys-libs/timezone-data/files/timezone-data-2015a-makefile.patch b/sys-libs/timezone-data/files/timezone-data-2015a-makefile.patch
new file mode 100644
index 000000000000..2153d764981d
--- /dev/null
+++ b/sys-libs/timezone-data/files/timezone-data-2015a-makefile.patch
@@ -0,0 +1,113 @@
+ - 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 zic, zdump to sbin and tzselect to bin ala glibc
+ - Install posix zoneinfo into zoneinfo/posix/ instead of zoneinfo-posix/ ala glibc
+ - Install leaps zoneinfo into zoneinfo/right/ ala glibc
+ - 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,10 @@ GZIPFLAGS= -9n
+
+ ###############################################################################
+
+-cc= cc
+-CC= $(cc) -DTZDIR=\"$(TZDIR)\"
++CPPFLAGS+= -DTZDIR=\"$(TZDIR)\"
++ifeq ($(NLS),1)
++CPPFLAGS+= -DHAVE_GETTEXT=1 -DTZ_DOMAIN=\"libc\"
++endif
+
+ AR= ar
+
+@@ -352,17 +354,14 @@ ALL: all date
+ install: all $(DATA) $(REDO) $(MANS)
+ mkdir -p $(DESTDIR)$(ETCDIR) $(DESTDIR)$(TZDIR) \
+- $(DESTDIR)$(LIBDIR) \
++ $(DESTDIR)$(SBINDIR) $(DESTDIR)$(BINDIR) \
+ $(DESTDIR)$(MANDIR)/man3 $(DESTDIR)$(MANDIR)/man5 \
+ $(DESTDIR)$(MANDIR)/man8
+ $(ZIC) -y $(YEARISTYPE) \
+ -d $(DESTDIR)$(TZDIR) -l $(LOCALTIME) -p $(POSIXRULES)
+ cp -f iso3166.tab $(ZONETABLES) $(DESTDIR)$(TZDIR)/.
+- cp tzselect zic zdump $(DESTDIR)$(ETCDIR)/.
++ cp zic zdump $(DESTDIR)$(SBINDIR)/.
++ cp tzselect $(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
+@@ -406,18 +408,18 @@ right_only: zic leapseconds $(TDATA)
+ # to using them, or vice versa.
+ right_posix: right_only leapseconds
+ rm -fr $(DESTDIR)$(TZDIR)-leaps
+- ln -s $(TZDIR_BASENAME) $(DESTDIR)$(TZDIR)-leaps || \
+- $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR)-leaps \
++ ln -s . $(DESTDIR)$(TZDIR)/right || \
++ $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR)/right \
+ -L leapseconds $(TDATA)
+- $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR)-posix \
++ $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR)/posix \
+ -L /dev/null $(TDATA)
+
+ posix_right: posix_only leapseconds
+ rm -fr $(DESTDIR)$(TZDIR)-posix
+- ln -s $(TZDIR_BASENAME) $(DESTDIR)$(TZDIR)-posix || \
+- $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR)-posix \
++ ln -s . $(DESTDIR)$(TZDIR)/posix || \
++ $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR)/posix \
+ -L /dev/null $(TDATA)
+- $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR)-leaps \
++ $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR)/right \
+ -L leapseconds $(TDATA)
+
+ posix_packrat: posix_only backzone
+@@ -440,7 +442,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 && \
diff --git a/sys-libs/timezone-data/files/timezone-data-2015c-makefile.patch b/sys-libs/timezone-data/files/timezone-data-2015c-makefile.patch
new file mode 100644
index 000000000000..fef0f84f0878
--- /dev/null
+++ b/sys-libs/timezone-data/files/timezone-data-2015c-makefile.patch
@@ -0,0 +1,86 @@
+ - 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 zic, zdump to sbin and tzselect to bin ala glibc
+ - 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,10 @@ GZIPFLAGS= -9n
+
+ ###############################################################################
+
+-cc= cc
+-CC= $(cc) -DTZDIR=\"$(TZDIR)\"
++CPPFLAGS+= -DTZDIR=\"$(TZDIR)\"
++ifeq ($(NLS),1)
++CPPFLAGS+= -DHAVE_GETTEXT=1 -DTZ_DOMAIN=\"libc\"
++endif
+
+ AR= ar
+
+@@ -352,17 +354,14 @@ ALL: all date
+ install: all $(DATA) $(REDO) $(MANS)
+ mkdir -p $(DESTDIR)$(ETCDIR) $(DESTDIR)$(TZDIR) \
+- $(DESTDIR)$(LIBDIR) \
++ $(DESTDIR)$(SBINDIR) $(DESTDIR)$(BINDIR) \
+ $(DESTDIR)$(MANDIR)/man3 $(DESTDIR)$(MANDIR)/man5 \
+ $(DESTDIR)$(MANDIR)/man8
+ $(ZIC) -y $(YEARISTYPE) \
+ -d $(DESTDIR)$(TZDIR) -l $(LOCALTIME) -p $(POSIXRULES)
+ cp -f iso3166.tab $(ZONETABLES) $(DESTDIR)$(TZDIR)/.
+- cp tzselect zic zdump $(DESTDIR)$(ETCDIR)/.
++ cp zic zdump $(DESTDIR)$(SBINDIR)/.
++ cp tzselect $(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 +442,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 && \
diff --git a/sys-libs/timezone-data/metadata.xml b/sys-libs/timezone-data/metadata.xml
new file mode 100644
index 000000000000..541771197a2b
--- /dev/null
+++ b/sys-libs/timezone-data/metadata.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>toolchain</herd>
+ <maintainer>
+ <email>djc@gentoo.org</email>
+ <name>Dirkjan Ochtman</name>
+ </maintainer>
+ <use>
+ <flag name='leaps_timezone'>
+ Install the set of "right" timezones; these timezones include leap seconds
+ when counting seconds since the epoch (while POSIX does not) as they are
+ based on the TAI (International Atomic Time) clock
+ </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>
+</pkgmetadata>
diff --git a/sys-libs/timezone-data/timezone-data-2012j.ebuild b/sys-libs/timezone-data/timezone-data-2012j.ebuild
new file mode 100644
index 000000000000..8df52ea0b918
--- /dev/null
+++ b/sys-libs/timezone-data/timezone-data-2012j.ebuild
@@ -0,0 +1,110 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+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
+ ftp://munnari.oz.au/pub/tzdata${data_ver}.tar.gz
+ ftp://munnari.oz.au/pub/tzcode${code_ver}.tar.gz"
+
+LICENSE="BSD public-domain"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
+IUSE="nls elibc_FreeBSD elibc_glibc"
+
+RDEPEND="!<sys-libs/glibc-2.3.5"
+
+S=${WORKDIR}
+
+src_unpack() {
+ unpack ${A}
+ epatch "${FILESDIR}"/${PN}-2012i-makefile.patch
+ tc-is-cross-compiler && cp -pR "${S}" "${S}"-native
+}
+
+src_compile() {
+ local LDLIBS
+ tc-export CC
+ use elibc_FreeBSD && append-flags -DSTD_INSPIRED #138251
+ export NLS=$(usex nls 1 0)
+ if use nls && ! use elibc_glibc ; then
+ LDLIBS+=" -lintl" #154181
+ fi
+ emake \
+ CFLAGS="${CPPFLAGS} ${CFLAGS} -std=gnu99" \
+ LDFLAGS="${LDFLAGS}" \
+ LDLIBS="${LDLIBS}" \
+ || die "emake failed"
+ if tc-is-cross-compiler ; then
+ emake -C "${S}"-native \
+ CC=$(tc-getBUILD_CC) \
+ CFLAGS="${BUILD_CFLAGS}" \
+ LDFLAGS="${BUILD_LDFLAGS}" \
+ LDLIBS="${LDLIBS}" \
+ zic || die
+ fi
+}
+
+src_install() {
+ local zic=""
+ tc-is-cross-compiler && zic="zic=${S}-native/zic"
+ emake install ${zic} DESTDIR="${D}" || die
+ rm -rf "${D}"/usr/share/zoneinfo-leaps
+ dodoc README Theory
+ dohtml *.htm
+}
+
+pkg_config() {
+ # make sure the /etc/localtime file does not get stale #127899
+ local tz src etc_lt="${ROOT}etc/localtime"
+
+ if has_version '<sys-apps/baselayout-2' ; then
+ src="${ROOT}etc/conf.d/clock"
+ tz=$(unset TIMEZONE ; source "${src}" ; echo ${TIMEZONE-FOOKABLOIE})
+ else
+ src="${ROOT}etc/timezone"
+ if [[ -e ${src} ]] ; then
+ tz=$(sed -e 's:#.*::' -e 's:[[:space:]]*::g' -e '/^$/d' "${src}")
+ else
+ tz="FOOKABLOIE"
+ fi
+ fi
+ [[ -z ${tz} ]] && return 0
+
+ if [[ ${tz} == "FOOKABLOIE" ]] ; then
+ elog "You do not have TIMEZONE set in ${src}."
+
+ if [[ ! -e ${etc_lt} ]] ; then
+ # if /etc/localtime is a symlink somewhere, assume they
+ # know what they're doing and they're managing it themselves
+ if [[ ! -L ${etc_lt} ]] ; then
+ cp -f "${ROOT}"/usr/share/zoneinfo/Factory "${etc_lt}"
+ elog "Setting ${etc_lt} to Factory."
+ else
+ elog "Assuming your ${etc_lt} symlink is what you want; skipping update."
+ fi
+ else
+ elog "Skipping auto-update of ${etc_lt}."
+ fi
+ return 0
+ fi
+
+ if [[ ! -e ${ROOT}/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 ${ROOT}usr/share/zoneinfo/${tz}"
+ [[ -L ${etc_lt} ]] && rm -f "${etc_lt}"
+ cp -f "${ROOT}"/usr/share/zoneinfo/"${tz}" "${etc_lt}"
+}
+
+pkg_postinst() {
+ pkg_config
+}
diff --git a/sys-libs/timezone-data/timezone-data-2013i.ebuild b/sys-libs/timezone-data/timezone-data-2013i.ebuild
new file mode 100644
index 000000000000..79369c259b23
--- /dev/null
+++ b/sys-libs/timezone-data/timezone-data-2013i.ebuild
@@ -0,0 +1,129 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="3"
+
+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
+ ftp://munnari.oz.au/pub/oldtz/tzdata${data_ver}.tar.gz
+ ftp://munnari.oz.au/pub/oldtz/tzcode${data_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 elibc_FreeBSD elibc_glibc"
+
+RDEPEND="!<sys-libs/glibc-2.3.5"
+
+S=${WORKDIR}
+
+pkg_setup() {
+ # Deal with the case where older timezone-data installed a
+ # dir here, but newer one installs symlinks. Portage will
+ # barf when you try to transition file types.
+ if cd "${EROOT}"/usr/share/zoneinfo 2>/dev/null ; then
+ if [[ -d posix ]] ; then
+ rm -rf .gentoo-upgrade #487192
+ mv posix .gentoo-upgrade || die
+ ln -s .gentoo-upgrade posix || die
+ fi
+ fi
+}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-2013h-makefile.patch
+ tc-is-cross-compiler && cp -pR "${S}" "${S}"-native
+}
+
+src_compile() {
+ local LDLIBS
+ tc-export CC
+ if use elibc_FreeBSD || use elibc_Darwin ; then
+ append-cppflags -DSTD_INSPIRED #138251
+ fi
+ export NLS=$(usex nls 1 0)
+ if use nls && ! use elibc_glibc ; then
+ LDLIBS+=" -lintl" #154181
+ fi
+ # TOPDIR is used in some utils when compiling.
+ emake \
+ TOPDIR="${EPREFIX}/usr" \
+ CFLAGS="${CPPFLAGS} ${CFLAGS} -std=gnu99" \
+ LDFLAGS="${LDFLAGS}" \
+ LDLIBS="${LDLIBS}" \
+ || die
+ if tc-is-cross-compiler ; then
+ emake -C "${S}"-native \
+ CC=$(tc-getBUILD_CC) \
+ CFLAGS="${BUILD_CFLAGS}" \
+ LDFLAGS="${BUILD_LDFLAGS}" \
+ LDLIBS="${LDLIBS}" \
+ zic || die
+ fi
+}
+
+src_install() {
+ local zic=""
+ tc-is-cross-compiler && zic="zic=${S}-native/zic"
+ emake install ${zic} DESTDIR="${ED}" || die
+ dodoc README Theory
+ dohtml *.htm
+}
+
+pkg_config() {
+ # make sure the /etc/localtime file does not get stale #127899
+ local tz src etc_lt="${EROOT}etc/localtime"
+
+ if has_version '<sys-apps/baselayout-2' ; then
+ src="${EROOT}etc/conf.d/clock"
+ tz=$(unset TIMEZONE ; source "${src}" ; echo ${TIMEZONE-FOOKABLOIE})
+ else
+ src="${EROOT}etc/timezone"
+ if [[ -e ${src} ]] ; then
+ tz=$(sed -e 's:#.*::' -e 's:[[:space:]]*::g' -e '/^$/d' "${src}")
+ else
+ tz="FOOKABLOIE"
+ fi
+ fi
+ [[ -z ${tz} ]] && return 0
+
+ if [[ ${tz} == "FOOKABLOIE" ]] ; then
+ elog "You do not have TIMEZONE set in ${src}."
+
+ if [[ ! -e ${etc_lt} ]] ; then
+ # if /etc/localtime is a symlink somewhere, assume they
+ # know what they're doing and they're managing it themselves
+ if [[ ! -L ${etc_lt} ]] ; then
+ cp -f "${EROOT}"/usr/share/zoneinfo/Factory "${etc_lt}"
+ elog "Setting ${etc_lt} to Factory."
+ else
+ elog "Assuming your ${etc_lt} symlink is what you want; skipping update."
+ fi
+ 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}"
+ [[ -L ${etc_lt} ]] && rm -f "${etc_lt}"
+ cp -f "${EROOT}"/usr/share/zoneinfo/"${tz}" "${etc_lt}"
+}
+
+pkg_postinst() {
+ rm -rf "${EROOT}"/usr/share/zoneinfo/.gentoo-upgrade &
+ pkg_config
+ wait
+}
diff --git a/sys-libs/timezone-data/timezone-data-2014i-r1.ebuild b/sys-libs/timezone-data/timezone-data-2014i-r1.ebuild
new file mode 100644
index 000000000000..53414b85a924
--- /dev/null
+++ b/sys-libs/timezone-data/timezone-data-2014i-r1.ebuild
@@ -0,0 +1,151 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+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 right_timezone elibc_FreeBSD elibc_glibc"
+
+RDEPEND="!sys-libs/glibc[vanilla(+)]"
+
+S=${WORKDIR}
+
+pkg_setup() {
+ # Deal with the case where older timezone-data installed a
+ # dir here, but newer one installs symlinks. Portage will
+ # barf when you try to transition file types.
+ if cd "${EROOT}"/usr/share/zoneinfo 2>/dev/null ; then
+ # In case of a failed upgrade, clean up the symlinks #506570
+ if [ -L .gentoo-upgrade ] ; then
+ rm -rf posix .gentoo-upgrade
+ fi
+ if [ -d posix ] ; then
+ rm -rf .gentoo-upgrade #487192
+ mv posix .gentoo-upgrade || die
+ ln -s .gentoo-upgrade posix || die
+ fi
+ fi
+}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-2014h-makefile.patch
+ tc-is-cross-compiler && cp -pR "${S}" "${S}"-native
+}
+
+_emake() {
+ emake \
+ TOPDIR="${EPREFIX}/usr" \
+ REDO=$(usex right_timezone posix_right posix_only) \
+ "$@"
+}
+
+src_compile() {
+ local LDLIBS
+ tc-export CC
+ if use elibc_FreeBSD || use elibc_Darwin ; then
+ append-cppflags -DSTD_INSPIRED #138251
+ fi
+ export NLS=$(usex nls 1 0)
+ if use nls && ! use elibc_glibc ; then
+ LDLIBS+=" -lintl" #154181
+ fi
+ # 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
+ if ! use right_timezone && [[ ! -e ${ED}/usr/share/zoneinfo/posix ]] ; then
+ dosym . /usr/share/zoneinfo/posix
+ fi
+}
+
+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 ! use right_timezone && [[ ${tz} == right/* ]] ; then
+ eerror "Your timezone is set to '${tz}' but you have USE=-right_timezone."
+ die "Please fix your USE or timezone"
+ fi
+}
+
+pkg_config() {
+ # make sure the /etc/localtime file does not get stale #127899
+ local tz src="${EROOT}etc/timezone" etc_lt="${EROOT}etc/localtime"
+
+ tz=$(get_TIMEZONE) || return 0
+ if [[ ${tz} == "FOOKABLOIE" ]] ; then
+ elog "You do not have TIMEZONE set in ${src}."
+
+ if [[ ! -e ${etc_lt} ]] ; then
+ # if /etc/localtime is a symlink somewhere, assume they
+ # know what they're doing and they're managing it themselves
+ if [[ ! -L ${etc_lt} ]] ; then
+ cp -f "${EROOT}"/usr/share/zoneinfo/Factory "${etc_lt}"
+ elog "Setting ${etc_lt} to Factory."
+ else
+ elog "Assuming your ${etc_lt} symlink is what you want; skipping update."
+ fi
+ 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}"
+ [[ -L ${etc_lt} ]] && rm -f "${etc_lt}"
+ cp -f "${EROOT}"/usr/share/zoneinfo/"${tz}" "${etc_lt}"
+}
+
+pkg_postinst() {
+ rm -rf "${EROOT}"/usr/share/zoneinfo/.gentoo-upgrade &
+ pkg_config
+ wait
+}
diff --git a/sys-libs/timezone-data/timezone-data-2014j.ebuild b/sys-libs/timezone-data/timezone-data-2014j.ebuild
new file mode 100644
index 000000000000..805ee502caea
--- /dev/null
+++ b/sys-libs/timezone-data/timezone-data-2014j.ebuild
@@ -0,0 +1,151 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+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 right_timezone elibc_FreeBSD elibc_glibc"
+
+RDEPEND="!sys-libs/glibc[vanilla(+)]"
+
+S=${WORKDIR}
+
+pkg_setup() {
+ # Deal with the case where older timezone-data installed a
+ # dir here, but newer one installs symlinks. Portage will
+ # barf when you try to transition file types.
+ if cd "${EROOT}"/usr/share/zoneinfo 2>/dev/null ; then
+ # In case of a failed upgrade, clean up the symlinks #506570
+ if [ -L .gentoo-upgrade ] ; then
+ rm -rf posix .gentoo-upgrade
+ fi
+ if [ -d posix ] ; then
+ rm -rf .gentoo-upgrade #487192
+ mv posix .gentoo-upgrade || die
+ ln -s .gentoo-upgrade posix || die
+ fi
+ fi
+}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-2014h-makefile.patch
+ tc-is-cross-compiler && cp -pR "${S}" "${S}"-native
+}
+
+_emake() {
+ emake \
+ TOPDIR="${EPREFIX}/usr" \
+ REDO=$(usex right_timezone posix_right posix_only) \
+ "$@"
+}
+
+src_compile() {
+ local LDLIBS
+ tc-export CC
+ if use elibc_FreeBSD || use elibc_Darwin ; then
+ append-cppflags -DSTD_INSPIRED #138251
+ fi
+ export NLS=$(usex nls 1 0)
+ if use nls && ! use elibc_glibc ; then
+ LDLIBS+=" -lintl" #154181
+ fi
+ # 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
+ if ! use right_timezone && [[ ! -e ${ED}/usr/share/zoneinfo/posix ]] ; then
+ dosym . /usr/share/zoneinfo/posix
+ fi
+}
+
+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 ! use right_timezone && [[ ${tz} == right/* ]] ; then
+ eerror "Your timezone is set to '${tz}' but you have USE=-right_timezone."
+ die "Please fix your USE or timezone"
+ fi
+}
+
+pkg_config() {
+ # make sure the /etc/localtime file does not get stale #127899
+ local tz src="${EROOT}etc/timezone" etc_lt="${EROOT}etc/localtime"
+
+ tz=$(get_TIMEZONE) || return 0
+ if [[ ${tz} == "FOOKABLOIE" ]] ; then
+ elog "You do not have TIMEZONE set in ${src}."
+
+ if [[ ! -e ${etc_lt} ]] ; then
+ # if /etc/localtime is a symlink somewhere, assume they
+ # know what they're doing and they're managing it themselves
+ if [[ ! -L ${etc_lt} ]] ; then
+ cp -f "${EROOT}"/usr/share/zoneinfo/Factory "${etc_lt}"
+ elog "Setting ${etc_lt} to Factory."
+ else
+ elog "Assuming your ${etc_lt} symlink is what you want; skipping update."
+ fi
+ 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}"
+ [[ -L ${etc_lt} ]] && rm -f "${etc_lt}"
+ cp -f "${EROOT}"/usr/share/zoneinfo/"${tz}" "${etc_lt}"
+}
+
+pkg_postinst() {
+ rm -rf "${EROOT}"/usr/share/zoneinfo/.gentoo-upgrade &
+ pkg_config
+ wait
+}
diff --git a/sys-libs/timezone-data/timezone-data-2015a.ebuild b/sys-libs/timezone-data/timezone-data-2015a.ebuild
new file mode 100644
index 000000000000..8ddb089d1ad0
--- /dev/null
+++ b/sys-libs/timezone-data/timezone-data-2015a.ebuild
@@ -0,0 +1,154 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+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 right_timezone elibc_FreeBSD elibc_glibc"
+
+RDEPEND="!sys-libs/glibc[vanilla(+)]"
+
+S=${WORKDIR}
+
+pkg_setup() {
+ # Deal with the case where older timezone-data installed a
+ # dir here, but newer one installs symlinks. Portage will
+ # barf when you try to transition file types.
+ if cd "${EROOT}"/usr/share/zoneinfo 2>/dev/null ; then
+ # In case of a failed upgrade, clean up the symlinks #506570
+ if [ -L .gentoo-upgrade ] ; then
+ rm -rf posix .gentoo-upgrade
+ fi
+ if [ -d posix ] ; then
+ rm -rf .gentoo-upgrade #487192
+ mv posix .gentoo-upgrade || die
+ ln -s .gentoo-upgrade posix || die
+ fi
+ fi
+}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-2015a-makefile.patch
+ tc-is-cross-compiler && cp -pR "${S}" "${S}"-native
+}
+
+_emake() {
+ emake \
+ TOPDIR="${EPREFIX}/usr" \
+ REDO=$(usex right_timezone posix_right posix_only) \
+ "$@"
+}
+
+src_compile() {
+ local LDLIBS
+ tc-export CC
+ if use elibc_FreeBSD || use elibc_Darwin ; then
+ append-cppflags -DSTD_INSPIRED #138251
+ fi
+ export NLS=$(usex nls 1 0)
+ if use nls && ! use elibc_glibc ; then
+ LDLIBS+=" -lintl" #154181
+ fi
+ # 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
+ if ! use right_timezone && [[ ! -e ${ED}/usr/share/zoneinfo/posix ]] ; then
+ dosym . /usr/share/zoneinfo/posix
+ fi
+}
+
+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 ! use right_timezone && [[ ${tz} == right/* ]] ; then
+ eerror "Your timezone is set to '${tz}' but you have USE=-right_timezone."
+ die "Please fix your USE or timezone"
+ fi
+}
+
+pkg_config() {
+ # make sure the /etc/localtime file does not get stale #127899
+ local tz src="${EROOT}etc/timezone" etc_lt="${EROOT}etc/localtime"
+
+ tz=$(get_TIMEZONE) || return 0
+ if [[ ${tz} == "FOOKABLOIE" ]] ; then
+ elog "You do not have TIMEZONE set in ${src}."
+
+ if [[ ! -e ${etc_lt} ]] ; then
+ # if /etc/localtime is a symlink somewhere, assume they
+ # know what they're doing and they're managing it themselves
+ if [[ ! -L ${etc_lt} ]] ; then
+ cp -f "${EROOT}"/usr/share/zoneinfo/Factory "${etc_lt}"
+ elog "Setting ${etc_lt} to Factory."
+ else
+ elog "Assuming your ${etc_lt} symlink is what you want; skipping update."
+ fi
+ 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
+ if [[ -L ${etc_lt} ]]; then
+ einfo "Skipping symlinked ${etc_lt}"
+ else
+ einfo "Updating ${etc_lt} with ${EROOT}usr/share/zoneinfo/${tz}"
+ cp -f "${EROOT}"/usr/share/zoneinfo/"${tz}" "${etc_lt}"
+ fi
+}
+
+pkg_postinst() {
+ rm -rf "${EROOT}"/usr/share/zoneinfo/.gentoo-upgrade &
+ pkg_config
+ wait
+}
diff --git a/sys-libs/timezone-data/timezone-data-2015b.ebuild b/sys-libs/timezone-data/timezone-data-2015b.ebuild
new file mode 100644
index 000000000000..8ddb089d1ad0
--- /dev/null
+++ b/sys-libs/timezone-data/timezone-data-2015b.ebuild
@@ -0,0 +1,154 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+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 right_timezone elibc_FreeBSD elibc_glibc"
+
+RDEPEND="!sys-libs/glibc[vanilla(+)]"
+
+S=${WORKDIR}
+
+pkg_setup() {
+ # Deal with the case where older timezone-data installed a
+ # dir here, but newer one installs symlinks. Portage will
+ # barf when you try to transition file types.
+ if cd "${EROOT}"/usr/share/zoneinfo 2>/dev/null ; then
+ # In case of a failed upgrade, clean up the symlinks #506570
+ if [ -L .gentoo-upgrade ] ; then
+ rm -rf posix .gentoo-upgrade
+ fi
+ if [ -d posix ] ; then
+ rm -rf .gentoo-upgrade #487192
+ mv posix .gentoo-upgrade || die
+ ln -s .gentoo-upgrade posix || die
+ fi
+ fi
+}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-2015a-makefile.patch
+ tc-is-cross-compiler && cp -pR "${S}" "${S}"-native
+}
+
+_emake() {
+ emake \
+ TOPDIR="${EPREFIX}/usr" \
+ REDO=$(usex right_timezone posix_right posix_only) \
+ "$@"
+}
+
+src_compile() {
+ local LDLIBS
+ tc-export CC
+ if use elibc_FreeBSD || use elibc_Darwin ; then
+ append-cppflags -DSTD_INSPIRED #138251
+ fi
+ export NLS=$(usex nls 1 0)
+ if use nls && ! use elibc_glibc ; then
+ LDLIBS+=" -lintl" #154181
+ fi
+ # 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
+ if ! use right_timezone && [[ ! -e ${ED}/usr/share/zoneinfo/posix ]] ; then
+ dosym . /usr/share/zoneinfo/posix
+ fi
+}
+
+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 ! use right_timezone && [[ ${tz} == right/* ]] ; then
+ eerror "Your timezone is set to '${tz}' but you have USE=-right_timezone."
+ die "Please fix your USE or timezone"
+ fi
+}
+
+pkg_config() {
+ # make sure the /etc/localtime file does not get stale #127899
+ local tz src="${EROOT}etc/timezone" etc_lt="${EROOT}etc/localtime"
+
+ tz=$(get_TIMEZONE) || return 0
+ if [[ ${tz} == "FOOKABLOIE" ]] ; then
+ elog "You do not have TIMEZONE set in ${src}."
+
+ if [[ ! -e ${etc_lt} ]] ; then
+ # if /etc/localtime is a symlink somewhere, assume they
+ # know what they're doing and they're managing it themselves
+ if [[ ! -L ${etc_lt} ]] ; then
+ cp -f "${EROOT}"/usr/share/zoneinfo/Factory "${etc_lt}"
+ elog "Setting ${etc_lt} to Factory."
+ else
+ elog "Assuming your ${etc_lt} symlink is what you want; skipping update."
+ fi
+ 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
+ if [[ -L ${etc_lt} ]]; then
+ einfo "Skipping symlinked ${etc_lt}"
+ else
+ einfo "Updating ${etc_lt} with ${EROOT}usr/share/zoneinfo/${tz}"
+ cp -f "${EROOT}"/usr/share/zoneinfo/"${tz}" "${etc_lt}"
+ fi
+}
+
+pkg_postinst() {
+ rm -rf "${EROOT}"/usr/share/zoneinfo/.gentoo-upgrade &
+ pkg_config
+ wait
+}
diff --git a/sys-libs/timezone-data/timezone-data-2015c-r1.ebuild b/sys-libs/timezone-data/timezone-data-2015c-r1.ebuild
new file mode 100644
index 000000000000..0ba79099f6b0
--- /dev/null
+++ b/sys-libs/timezone-data/timezone-data-2015c-r1.ebuild
@@ -0,0 +1,143 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+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 elibc_glibc"
+
+RDEPEND="!sys-libs/glibc[vanilla(+)]"
+
+S=${WORKDIR}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-2015c-makefile.patch
+ tc-is-cross-compiler && cp -pR "${S}" "${S}"-native
+}
+
+_emake() {
+ emake \
+ TOPDIR="${EPREFIX}/usr" \
+ REDO=$(usex leaps_timezone posix_right posix_only) \
+ "$@"
+}
+
+src_compile() {
+ local LDLIBS
+ tc-export CC
+ if use elibc_FreeBSD || use elibc_Darwin ; then
+ append-cppflags -DSTD_INSPIRED #138251
+ fi
+ export NLS=$(usex nls 1 0)
+ if use nls && ! use elibc_glibc ; then
+ LDLIBS+=" -lintl" #154181
+ fi
+ # 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
+}
+
+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
+}
+
+pkg_config() {
+ # make sure the /etc/localtime file does not get stale #127899
+ local tz src="${EROOT}etc/timezone" etc_lt="${EROOT}etc/localtime"
+
+ tz=$(get_TIMEZONE) || return 0
+ if [[ ${tz} == "FOOKABLOIE" ]] ; then
+ elog "You do not have TIMEZONE set in ${src}."
+
+ if [[ ! -e ${etc_lt} ]] ; then
+ # if /etc/localtime is a symlink somewhere, assume they
+ # know what they're doing and they're managing it themselves
+ if [[ ! -L ${etc_lt} ]] ; then
+ cp -f "${EROOT}"/usr/share/zoneinfo/Factory "${etc_lt}"
+ elog "Setting ${etc_lt} to Factory."
+ else
+ elog "Assuming your ${etc_lt} symlink is what you want; skipping update."
+ fi
+ 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
+ if [[ -L ${etc_lt} ]]; then
+ einfo "Skipping symlinked ${etc_lt}"
+ else
+ einfo "Updating ${etc_lt} with ${EROOT}usr/share/zoneinfo/${tz}"
+ cp -f "${EROOT}"/usr/share/zoneinfo/"${tz}" "${etc_lt}"
+ fi
+}
+
+pkg_postinst() {
+ pkg_config
+}
diff --git a/sys-libs/timezone-data/timezone-data-2015c.ebuild b/sys-libs/timezone-data/timezone-data-2015c.ebuild
new file mode 100644
index 000000000000..f0f999a9d8cc
--- /dev/null
+++ b/sys-libs/timezone-data/timezone-data-2015c.ebuild
@@ -0,0 +1,154 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+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 right_timezone elibc_FreeBSD elibc_glibc"
+
+RDEPEND="!sys-libs/glibc[vanilla(+)]"
+
+S=${WORKDIR}
+
+pkg_setup() {
+ # Deal with the case where older timezone-data installed a
+ # dir here, but newer one installs symlinks. Portage will
+ # barf when you try to transition file types.
+ if cd "${EROOT}"/usr/share/zoneinfo 2>/dev/null ; then
+ # In case of a failed upgrade, clean up the symlinks #506570
+ if [ -L .gentoo-upgrade ] ; then
+ rm -rf posix .gentoo-upgrade
+ fi
+ if [ -d posix ] ; then
+ rm -rf .gentoo-upgrade #487192
+ mv posix .gentoo-upgrade || die
+ ln -s .gentoo-upgrade posix || die
+ fi
+ fi
+}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-2015a-makefile.patch
+ tc-is-cross-compiler && cp -pR "${S}" "${S}"-native
+}
+
+_emake() {
+ emake \
+ TOPDIR="${EPREFIX}/usr" \
+ REDO=$(usex right_timezone posix_right posix_only) \
+ "$@"
+}
+
+src_compile() {
+ local LDLIBS
+ tc-export CC
+ if use elibc_FreeBSD || use elibc_Darwin ; then
+ append-cppflags -DSTD_INSPIRED #138251
+ fi
+ export NLS=$(usex nls 1 0)
+ if use nls && ! use elibc_glibc ; then
+ LDLIBS+=" -lintl" #154181
+ fi
+ # 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
+ if ! use right_timezone && [[ ! -e ${ED}/usr/share/zoneinfo/posix ]] ; then
+ dosym . /usr/share/zoneinfo/posix
+ fi
+}
+
+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 ! use right_timezone && [[ ${tz} == right/* ]] ; then
+ eerror "Your timezone is set to '${tz}' but you have USE=-right_timezone."
+ die "Please fix your USE or timezone"
+ fi
+}
+
+pkg_config() {
+ # make sure the /etc/localtime file does not get stale #127899
+ local tz src="${EROOT}etc/timezone" etc_lt="${EROOT}etc/localtime"
+
+ tz=$(get_TIMEZONE) || return 0
+ if [[ ${tz} == "FOOKABLOIE" ]] ; then
+ elog "You do not have TIMEZONE set in ${src}."
+
+ if [[ ! -e ${etc_lt} ]] ; then
+ # if /etc/localtime is a symlink somewhere, assume they
+ # know what they're doing and they're managing it themselves
+ if [[ ! -L ${etc_lt} ]] ; then
+ cp -f "${EROOT}"/usr/share/zoneinfo/Factory "${etc_lt}"
+ elog "Setting ${etc_lt} to Factory."
+ else
+ elog "Assuming your ${etc_lt} symlink is what you want; skipping update."
+ fi
+ 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
+ if [[ -L ${etc_lt} ]]; then
+ einfo "Skipping symlinked ${etc_lt}"
+ else
+ einfo "Updating ${etc_lt} with ${EROOT}usr/share/zoneinfo/${tz}"
+ cp -f "${EROOT}"/usr/share/zoneinfo/"${tz}" "${etc_lt}"
+ fi
+}
+
+pkg_postinst() {
+ rm -rf "${EROOT}"/usr/share/zoneinfo/.gentoo-upgrade &
+ pkg_config
+ wait
+}
diff --git a/sys-libs/timezone-data/timezone-data-2015d.ebuild b/sys-libs/timezone-data/timezone-data-2015d.ebuild
new file mode 100644
index 000000000000..0ba79099f6b0
--- /dev/null
+++ b/sys-libs/timezone-data/timezone-data-2015d.ebuild
@@ -0,0 +1,143 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+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 elibc_glibc"
+
+RDEPEND="!sys-libs/glibc[vanilla(+)]"
+
+S=${WORKDIR}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-2015c-makefile.patch
+ tc-is-cross-compiler && cp -pR "${S}" "${S}"-native
+}
+
+_emake() {
+ emake \
+ TOPDIR="${EPREFIX}/usr" \
+ REDO=$(usex leaps_timezone posix_right posix_only) \
+ "$@"
+}
+
+src_compile() {
+ local LDLIBS
+ tc-export CC
+ if use elibc_FreeBSD || use elibc_Darwin ; then
+ append-cppflags -DSTD_INSPIRED #138251
+ fi
+ export NLS=$(usex nls 1 0)
+ if use nls && ! use elibc_glibc ; then
+ LDLIBS+=" -lintl" #154181
+ fi
+ # 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
+}
+
+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
+}
+
+pkg_config() {
+ # make sure the /etc/localtime file does not get stale #127899
+ local tz src="${EROOT}etc/timezone" etc_lt="${EROOT}etc/localtime"
+
+ tz=$(get_TIMEZONE) || return 0
+ if [[ ${tz} == "FOOKABLOIE" ]] ; then
+ elog "You do not have TIMEZONE set in ${src}."
+
+ if [[ ! -e ${etc_lt} ]] ; then
+ # if /etc/localtime is a symlink somewhere, assume they
+ # know what they're doing and they're managing it themselves
+ if [[ ! -L ${etc_lt} ]] ; then
+ cp -f "${EROOT}"/usr/share/zoneinfo/Factory "${etc_lt}"
+ elog "Setting ${etc_lt} to Factory."
+ else
+ elog "Assuming your ${etc_lt} symlink is what you want; skipping update."
+ fi
+ 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
+ if [[ -L ${etc_lt} ]]; then
+ einfo "Skipping symlinked ${etc_lt}"
+ else
+ einfo "Updating ${etc_lt} with ${EROOT}usr/share/zoneinfo/${tz}"
+ cp -f "${EROOT}"/usr/share/zoneinfo/"${tz}" "${etc_lt}"
+ fi
+}
+
+pkg_postinst() {
+ pkg_config
+}
diff --git a/sys-libs/timezone-data/timezone-data-2015e.ebuild b/sys-libs/timezone-data/timezone-data-2015e.ebuild
new file mode 100644
index 000000000000..0ba79099f6b0
--- /dev/null
+++ b/sys-libs/timezone-data/timezone-data-2015e.ebuild
@@ -0,0 +1,143 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+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 elibc_glibc"
+
+RDEPEND="!sys-libs/glibc[vanilla(+)]"
+
+S=${WORKDIR}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-2015c-makefile.patch
+ tc-is-cross-compiler && cp -pR "${S}" "${S}"-native
+}
+
+_emake() {
+ emake \
+ TOPDIR="${EPREFIX}/usr" \
+ REDO=$(usex leaps_timezone posix_right posix_only) \
+ "$@"
+}
+
+src_compile() {
+ local LDLIBS
+ tc-export CC
+ if use elibc_FreeBSD || use elibc_Darwin ; then
+ append-cppflags -DSTD_INSPIRED #138251
+ fi
+ export NLS=$(usex nls 1 0)
+ if use nls && ! use elibc_glibc ; then
+ LDLIBS+=" -lintl" #154181
+ fi
+ # 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
+}
+
+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
+}
+
+pkg_config() {
+ # make sure the /etc/localtime file does not get stale #127899
+ local tz src="${EROOT}etc/timezone" etc_lt="${EROOT}etc/localtime"
+
+ tz=$(get_TIMEZONE) || return 0
+ if [[ ${tz} == "FOOKABLOIE" ]] ; then
+ elog "You do not have TIMEZONE set in ${src}."
+
+ if [[ ! -e ${etc_lt} ]] ; then
+ # if /etc/localtime is a symlink somewhere, assume they
+ # know what they're doing and they're managing it themselves
+ if [[ ! -L ${etc_lt} ]] ; then
+ cp -f "${EROOT}"/usr/share/zoneinfo/Factory "${etc_lt}"
+ elog "Setting ${etc_lt} to Factory."
+ else
+ elog "Assuming your ${etc_lt} symlink is what you want; skipping update."
+ fi
+ 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
+ if [[ -L ${etc_lt} ]]; then
+ einfo "Skipping symlinked ${etc_lt}"
+ else
+ einfo "Updating ${etc_lt} with ${EROOT}usr/share/zoneinfo/${tz}"
+ cp -f "${EROOT}"/usr/share/zoneinfo/"${tz}" "${etc_lt}"
+ fi
+}
+
+pkg_postinst() {
+ pkg_config
+}