5f017a8961
When installing a localtime, check it is a valid timezone. [Peter: extend error message to make it clear to the user what to change] Reported-by: Sagaert Johan <sagaert.johan@skynet.be> Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
41 lines
1.6 KiB
Makefile
41 lines
1.6 KiB
Makefile
################################################################################
|
|
#
|
|
# tz
|
|
#
|
|
################################################################################
|
|
|
|
TZ_SOURCE =
|
|
TZ_DEPENDENCIES = host-tzdata host-tzdump
|
|
TZ_LICENSE = Public domain
|
|
|
|
TZ_LOCALTIME = $(call qstrip,$(BR2_TARGET_LOCALTIME))
|
|
|
|
define TZ_BUILD_CMDS
|
|
(cd $(HOST_DIR)/usr/share/zoneinfo/posix/; \
|
|
for i in $$(find . -type f); do \
|
|
mkdir -p $(@D)/output/$$(dirname $$i); \
|
|
$(TZDUMP) -p . -q $${i#./} > $(@D)/output/$$i; \
|
|
done \
|
|
)
|
|
endef
|
|
|
|
define TZ_INSTALL_TARGET_CMDS
|
|
$(INSTALL) -D -m 0644 $(HOST_DIR)/usr/share/zoneinfo/zone.tab \
|
|
$(TARGET_DIR)/usr/share/zoneinfo/zone.tab
|
|
$(INSTALL) -D -m 0644 $(HOST_DIR)/usr/share/zoneinfo/iso3166.tab \
|
|
$(TARGET_DIR)/usr/share/zoneinfo/iso3166.tab
|
|
mkdir -p $(TARGET_DIR)/usr/share/zoneinfo/uclibc
|
|
cp -a $(@D)/output/* $(TARGET_DIR)/usr/share/zoneinfo/uclibc
|
|
if [ -n "$(TZ_LOCALTIME)" ]; then \
|
|
if [ ! -f $(TARGET_DIR)/usr/share/zoneinfo/uclibc/$(TZDATA_LOCALTIME) ]; then \
|
|
printf "Error: '%s' is not a valid timezone, check your BR2_TARGET_LOCALTIME setting\n" \
|
|
"$(TZDATA_LOCALTIME)"; \
|
|
exit 1; \
|
|
fi; \
|
|
cd $(TARGET_DIR)/etc; \
|
|
ln -sf ../usr/share/zoneinfo/uclibc/$(TZDATA_LOCALTIME) TZ; \
|
|
fi
|
|
endef
|
|
|
|
$(eval $(generic-package))
|