summaryrefslogtreecommitdiffstats
path: root/package/tzdata
diff options
context:
space:
mode:
Diffstat (limited to 'package/tzdata')
-rw-r--r--package/tzdata/Config.in20
-rw-r--r--package/tzdata/tzdata.mk46
2 files changed, 66 insertions, 0 deletions
diff --git a/package/tzdata/Config.in b/package/tzdata/Config.in
new file mode 100644
index 000000000..4e68a97b5
--- /dev/null
+++ b/package/tzdata/Config.in
@@ -0,0 +1,20 @@
+config BR2_PACKAGE_TZDATA
+ bool "tzdata"
+ depends on BR2_TOOLCHAIN_EXTERNAL_GLIBC || BR2_TOOLCHAIN_CTNG_eglibc || BR2_TOOLCHAIN_CTNG_glibc
+ help
+ Time zone database
+
+ http://www.iana.org/time-zones/repository/tz-link.html
+
+config BR2_PACKAGE_TZDATA_ZONELIST
+ string "Time zone list"
+ depends on BR2_PACKAGE_TZDATA
+ default "default"
+ help
+ Space-separated list of time zones to compile.
+
+ The value "default" includes all commonly used time zones. Note
+ that this set consumes around 5.5M.
+
+ The full list is the list of files in the time zone database source,
+ not including the build and .tab files.
diff --git a/package/tzdata/tzdata.mk b/package/tzdata/tzdata.mk
new file mode 100644
index 000000000..04d9b2769
--- /dev/null
+++ b/package/tzdata/tzdata.mk
@@ -0,0 +1,46 @@
+#############################################################
+#
+# tzdata
+#
+#############################################################
+
+TZDATA_VERSION = 2012j
+TZDATA_SOURCE = tzdata$(TZDATA_VERSION).tar.gz
+TZDATA_SITE = http://www.iana.org/time-zones/repository/releases
+TZDATA_DEPENDENCIES = host-zic
+TZDATA_LICENSE = Public domain
+
+TZDATA_DEFAULT_ZONELIST = africa antarctica asia australasia backward etcetera \
+ europe factory northamerica pacificnew southamerica
+
+ifeq ($(call qstrip,$(BR2_PACKAGE_TZDATA_ZONELIST)),default)
+TZDATA_ZONELIST = $(TZDATA_DEFAULT_ZONELIST)
+else
+TZDATA_ZONELIST = $(call qstrip,$(BR2_PACKAGE_TZDATA_ZONELIST))
+endif
+
+# Don't strip any path components during extraction.
+define TZDATA_EXTRACT_CMDS
+ gzip -d -c $(DL_DIR)/$(TZDATA_SOURCE) \
+ | $(TAR) --strip-components=0 -C $(@D) -xf -
+endef
+
+define TZDATA_BUILD_CMDS
+ (cd $(@D); \
+ for zone in $(TZDATA_ZONELIST); do \
+ $(ZIC) -d _output/posix -y yearistype.sh $$zone; \
+ $(ZIC) -d _output/right -L leapseconds -y yearistype.sh $$zone; \
+ done; \
+ )
+endef
+
+define TZDATA_INSTALL_TARGET_CMDS
+ mkdir -p $(TARGET_DIR)/usr/share/zoneinfo
+ cp -a $(@D)/_output/* $(TARGET_DIR)/usr/share/zoneinfo
+ cd $(TARGET_DIR)/usr/share/zoneinfo; \
+ for zone in posix/*; do \
+ ln -sfn "$${zone}" "$${zone##*/}"; \
+ done
+endef
+
+$(eval $(generic-package))