php7: add package dependency on zoneinfo-core
authorRafał Miłecki <redacted>
Sun, 24 Jun 2018 08:19:38 +0000 (10:19 +0200)
committerMichael Heimpold <redacted>
Sun, 24 Jun 2018 19:33:56 +0000 (21:33 +0200)
Having "select PACKAGE_zoneinfo-core" wasn't enough for builds without
php7-cli=y or php7-cgi=y. It didn't result in installing zoneinfo-core
when using "opkg install" (during runtime or when building images with
CONFIG_TARGET_PER_DEVICE_ROOTFS).

Missing zoneinfo results in PHP fatal errors, e.g.:
Fatal error: DateTime::createFromFormat(): Timezone database is corrupt - this should *never* happen!

For years users were told to manually install zoneinfo-core package.
This problem was hidden for some time (including 17.01 release) due to
disabled support for CONFIG_PHP7_SYSTEMTZDATA. It's now back as support
for --with-system-tzdata was enabled again.

The proper solution is to simply make php7 package depend on
zoneinfo-core when PHP7_SYSTEMTZDATA is used.

Fixes: 84e5012e8853 ("php7: re-enable system timezone data usage")
Signed-off-by: Rafał Miłecki <redacted>
lang/php7/Makefile

index aa860a9571e6f874635f3d76144c79aa33861ea4..93348543b3ac5c62769a7b924932af7b27a0637c 100644 (file)
@@ -7,7 +7,7 @@ include $(TOPDIR)/rules.mk
 
 PKG_NAME:=php
 PKG_VERSION:=7.2.6
-PKG_RELEASE:=1
+PKG_RELEASE:=2
 
 PKG_MAINTAINER:=Michael Heimpold <mhei@heimpold.de>
 
@@ -74,7 +74,6 @@ define Package/php7/config
        config PHP7_SYSTEMTZDATA
                bool "Use system timezone data instead of php's built-in database"
                depends on PACKAGE_php7-cli || PACKAGE_php7-cgi
-               select PACKAGE_zoneinfo-core
                default y
                help
                        Enabling this feature automatically selects the zoneinfo-core package
@@ -86,7 +85,8 @@ define Package/php7
   $(call Package/php7/Default)
 
   DEPENDS:=+libpcre +zlib \
-           +PHP7_LIBXML:libxml2
+           +PHP7_LIBXML:libxml2 \
+           +PHP7_SYSTEMTZDATA:zoneinfo-core
 endef
 
 define Package/php7/description
git clone https://git.99rst.org/PROJECT