diff options
author | Remi Collet <fedora@famillecollet.com> | 2014-10-30 08:29:45 +0100 |
---|---|---|
committer | Remi Collet <fedora@famillecollet.com> | 2014-10-30 08:29:45 +0100 |
commit | 4962df3c098430d684cb0848df97b52a341c3535 (patch) | |
tree | ca403024ce98fb612cd19f1647d496ed216188ca | |
parent | 5931e4238a71d62911ede93a93d627403ab850d3 (diff) |
php 5.6.3RC1, new version of systzdata patch
-rw-r--r-- | php-5.6.3-datetests.patch | 23 | ||||
-rw-r--r-- | php-5.6.3-fixheader.patch (renamed from php-5.4.9-fixheader.patch) | 4 | ||||
-rw-r--r-- | php-5.6.3-includedir.patch (renamed from php-5.2.0-includedir.patch) | 2 | ||||
-rw-r--r-- | php-5.6.3-ldap_r.patch (renamed from php-5.4.8-ldap_r.patch) | 2 | ||||
-rw-r--r-- | php-5.6.3-libdb.patch (renamed from php-5.4.7-libdb.patch) | 2 | ||||
-rw-r--r-- | php-5.6.3-oci8conf.patch (renamed from php-5.3.7-oci8conf.patch) | 2 | ||||
-rw-r--r-- | php-5.6.3-phpinfo.patch (renamed from php-5.4.9-phpinfo.patch) | 2 | ||||
-rw-r--r-- | php-5.6.3-systzdata-v11.patch (renamed from php-5.3.1-systzdata-v11.patch) | 62 | ||||
-rw-r--r-- | php56.spec | 23 | ||||
-rw-r--r-- | phpdbg_webhelper.ini | 6 |
10 files changed, 84 insertions, 44 deletions
diff --git a/php-5.6.3-datetests.patch b/php-5.6.3-datetests.patch new file mode 100644 index 0000000..a29bb63 --- /dev/null +++ b/php-5.6.3-datetests.patch @@ -0,0 +1,23 @@ +--- a/ext/date/tests/bug66985.phpt 2014-10-30 07:32:03.297693403 +0100 ++++ b/ext/date/tests/bug66985.phpt 2014-10-30 07:32:45.138877977 +0100 +@@ -3,7 +3,7 @@ + --FILE-- + <?php + $zones = array( +- "CST6CDT", "Cuba", "Egypt", "Eire", "EST5EDT", "Factory", "GB-Eire", ++ "CST6CDT", "Cuba", "Egypt", "Eire", "EST5EDT", "GB-Eire", + "GMT0", "Greenwich", "Hongkong", "Iceland", "Iran", "Israel", "Jamaica", + "Japan", "Kwajalein", "Libya", "MST7MDT", "Navajo", "NZ-CHAT", "Poland", + "Portugal", "PST8PDT", "Singapore", "Turkey", "Universal", "W-SU", +@@ -45,11 +45,6 @@ + ) + DateTimeZone Object + ( +- [timezone_type] => 3 +- [timezone] => Factory +-) +-DateTimeZone Object +-( + [timezone_type] => 3 + [timezone] => GB-Eire + ) diff --git a/php-5.4.9-fixheader.patch b/php-5.6.3-fixheader.patch index f4e7db5..7089535 100644 --- a/php-5.4.9-fixheader.patch +++ b/php-5.6.3-fixheader.patch @@ -3,7 +3,7 @@ Make generated php_config.h constant across rebuilds. --- php-5.4.9/configure.in.fixheader +++ php-5.4.9/configure.in -@@ -1258,7 +1258,7 @@ fi +@@ -1275,7 +1275,7 @@ fi EXTRA_LDFLAGS="$EXTRA_LDFLAGS $PHP_LDFLAGS" EXTRA_LDFLAGS_PROGRAM="$EXTRA_LDFLAGS_PROGRAM $PHP_LDFLAGS" @@ -12,7 +12,7 @@ Make generated php_config.h constant across rebuilds. AC_DEFINE_UNQUOTED(PHP_BUILD_DATE,"$PHP_BUILD_DATE",[PHP build date]) case $host_alias in -@@ -1269,7 +1269,7 @@ case $host_alias in +@@ -1286,7 +1286,7 @@ case $host_alias in AC_DEFINE_UNQUOTED(PHP_UNAME,"$PHP_UNAME",[hardcode for each of the cross compiler host]) ;; *) diff --git a/php-5.2.0-includedir.patch b/php-5.6.3-includedir.patch index a1c3afe..70734cf 100644 --- a/php-5.2.0-includedir.patch +++ b/php-5.6.3-includedir.patch @@ -1,6 +1,6 @@ --- php-5.2.0/configure.in.includedir +++ php-5.2.0/configure.in -@@ -1101,7 +1101,7 @@ +@@ -1242,7 +1242,7 @@ EXPANDED_DATADIR=$datadir EXPANDED_PHP_CONFIG_FILE_PATH=`eval echo "$PHP_CONFIG_FILE_PATH"` EXPANDED_PHP_CONFIG_FILE_SCAN_DIR=`eval echo "$PHP_CONFIG_FILE_SCAN_DIR"` diff --git a/php-5.4.8-ldap_r.patch b/php-5.6.3-ldap_r.patch index 6d6924f..b335488 100644 --- a/php-5.4.8-ldap_r.patch +++ b/php-5.6.3-ldap_r.patch @@ -3,7 +3,7 @@ Use -lldap_r by default. --- php-5.4.8/ext/ldap/config.m4.ldap_r +++ php-5.4.8/ext/ldap/config.m4 -@@ -95,7 +95,10 @@ if test "$PHP_LDAP" != "no"; then +@@ -117,7 +117,10 @@ if test "$PHP_LDAP" != "no"; then LDAP_PTHREAD= fi diff --git a/php-5.4.7-libdb.patch b/php-5.6.3-libdb.patch index bc4e1fc..dc0e40b 100644 --- a/php-5.4.7-libdb.patch +++ b/php-5.6.3-libdb.patch @@ -73,7 +73,7 @@ /* {{{ arginfo */ ZEND_BEGIN_ARG_INFO_EX(arginfo_dba_popen, 0, 0, 2) ZEND_ARG_INFO(0, path) -@@ -522,6 +526,10 @@ +@@ -535,6 +539,10 @@ php_info_print_table_start(); php_info_print_table_row(2, "DBA support", "enabled"); diff --git a/php-5.3.7-oci8conf.patch b/php-5.6.3-oci8conf.patch index 4a5c44f..f2d8f99 100644 --- a/php-5.3.7-oci8conf.patch +++ b/php-5.6.3-oci8conf.patch @@ -13,7 +13,7 @@ diff -up php5.3-201104170830/ext/ldap/php_ldap.h.remi-oci8 php5.3-201104170830/e diff -up php5.3-201104170830/ext/oci8/config.m4.remi-oci8 php5.3-201104170830/ext/oci8/config.m4 --- php5.3-201104170830/ext/oci8/config.m4.remi-oci8 2011-03-30 00:35:22.000000000 +0200 +++ php5.3-201104170830/ext/oci8/config.m4 2011-04-17 11:55:25.628871315 +0200 -@@ -291,6 +291,7 @@ if test "$PHP_OCI8" != "no"; then +@@ -376,6 +376,7 @@ if test "$PHP_OCI8" != "no"; then dnl Header directory for Instant Client SDK RPM install OCISDKRPMINC=`echo "$PHP_OCI8_INSTANT_CLIENT" | $PHP_OCI8_SED -e 's!^/usr/lib/oracle/\(.*\)/client\('${PHP_OCI8_IC_LIBDIR_SUFFIX}'\)*/lib[/]*$!/usr/include/oracle/\1/client\2!'` diff --git a/php-5.4.9-phpinfo.patch b/php-5.6.3-phpinfo.patch index b52a2f8..a11a298 100644 --- a/php-5.4.9-phpinfo.patch +++ b/php-5.6.3-phpinfo.patch @@ -5,7 +5,7 @@ The available extensions are not related to this command. --- php-5.4.9/ext/standard/info.c.orig 2012-12-11 10:43:02.450578276 +0100 +++ php-5.4.9/ext/standard/info.c 2012-12-11 10:44:12.530820821 +0100 -@@ -704,9 +704,6 @@ +@@ -743,9 +743,6 @@ #ifdef ARCHITECTURE php_info_print_table_row(2, "Architecture", ARCHITECTURE); #endif diff --git a/php-5.3.1-systzdata-v11.patch b/php-5.6.3-systzdata-v11.patch index 1097a26..bfca49b 100644 --- a/php-5.3.1-systzdata-v11.patch +++ b/php-5.6.3-systzdata-v11.patch @@ -2,7 +2,8 @@ Add support for use of the system timezone database, rather than embedding a copy. Discussed upstream but was not desired. History: -r11: dont display version in phpinfo +r11: use canonical names to avoid more case sensitivity issues + round lat/long from zone.tab towards zero per builtin db r10: make timezone case insensitive r9: fix another compile error without --with-system-tzdata configured (Michael Heimpold) r8: fix compile error without --with-system-tzdata configured @@ -18,6 +19,8 @@ r3: fix a crash if /usr/share/zoneinfo doesn't exist (Raphael Geissert) r2: add filesystem trawl to set up name alias index r1: initial revision +diff --git a/ext/date/lib/parse_tz.c b/ext/date/lib/parse_tz.c +index 5d2aec9..671b398 100644 --- a/ext/date/lib/parse_tz.c +++ b/ext/date/lib/parse_tz.c @@ -20,6 +20,16 @@ @@ -68,7 +71,7 @@ r1: initial revision /* read BC flag */ tz->bc = (**tzf == '\1'); *tzf += 1; -@@ -256,7 +276,405 @@ +@@ -256,7 +276,418 @@ void timelib_dump_tzinfo(timelib_tzinfo *tz) } } @@ -166,7 +169,7 @@ r1: initial revision + /* Round to five decimal place, not because it's a good idea, + * but, because the builtin data uses rounded data, so, match + * that. */ -+ *result = round(v * sign * 100000.0) / 100000.0; ++ *result = trunc(v * sign * 100000.0) / 100000.0; + + return p; +} @@ -294,7 +297,7 @@ r1: initial revision +{ + const timelib_tzdb_index_entry *alpha = first, *beta = second; + -+ return strcmp(alpha->id, beta->id); ++ return strcasecmp(alpha->id, beta->id); +} + + @@ -432,6 +435,26 @@ r1: initial revision + return S_ISREG(st->st_mode) && st->st_size > 20; +} + ++/* To allow timezone names to be used case-insensitively, find the ++ * canonical name for this timezone, if possible. */ ++static const char *canonical_tzname(const char *timezone) ++{ ++ if (timezonedb_system) { ++ timelib_tzdb_index_entry *ent, lookup; ++ ++ lookup.id = (char *)timezone; ++ ++ ent = bsearch(&lookup, timezonedb_system->index, ++ timezonedb_system->index_size, sizeof lookup, ++ sysdbcmp); ++ if (ent) { ++ return ent->id; ++ } ++ } ++ ++ return timezone; ++} ++ +/* Return the mmap()ed tzfile if found, else NULL. On success, the + * length of the mapped data is placed in *length. */ +static char *map_tzfile(const char *timezone, size_t *length) @@ -445,14 +468,7 @@ r1: initial revision + return NULL; + } + -+ if (system_location_table) { -+ const struct location_info *li; -+ if ((li = find_zone_info(system_location_table, timezone)) != NULL) { -+ /* Use the stored name to avoid case issue */ -+ timezone = li->name; -+ } -+ } -+ snprintf(fname, sizeof fname, ZONEINFO_PREFIX "/%s", timezone); ++ snprintf(fname, sizeof fname, ZONEINFO_PREFIX "/%s", canonical_tzname(timezone)); + + fd = open(fname, O_RDONLY); + if (fd == -1) { @@ -475,7 +491,7 @@ r1: initial revision { int left = 0, right = tzdb->index_size - 1; #ifdef HAVE_SETLOCALE -@@ -295,36 +713,135 @@ +@@ -295,36 +726,135 @@ static int seek_to_tz_position(const unsigned char **tzf, char *timezone, const return 0; } @@ -557,7 +573,7 @@ r1: initial revision + } + } + -+ snprintf(fname, sizeof fname, ZONEINFO_PREFIX "/%s", timezone); ++ snprintf(fname, sizeof fname, ZONEINFO_PREFIX "/%s", canonical_tzname(timezone)); + + return stat(fname, &st) == 0 && is_valid_tzfile(&st); + } @@ -614,6 +630,8 @@ r1: initial revision } else { tmp = NULL; } +diff --git a/ext/date/lib/timelib.m4 b/ext/date/lib/timelib.m4 +index c725572..4c837c7 100644 --- a/ext/date/lib/timelib.m4 +++ b/ext/date/lib/timelib.m4 @@ -78,3 +78,17 @@ stdlib.h @@ -634,18 +652,4 @@ r1: initial revision + fi +fi + ---- a/ext/date/php_date.c.old 2014-07-25 16:21:32.562376600 +0200 -+++ b/ext/date/php_date.c 2014-07-25 16:21:42.731424669 +0200 -@@ -887,8 +887,12 @@ - - php_info_print_table_start(); - php_info_print_table_row(2, "date/time support", "enabled"); -+#ifdef HAVE_SYSTEM_TZDATA -+ php_info_print_table_row(2, "Timezone Database", "system"); -+#else - php_info_print_table_row(2, "\"Olson\" Timezone Database Version", tzdb->version); - php_info_print_table_row(2, "Timezone Database", php_date_global_timezone_db_enabled ? "external" : "internal"); -+#endif - php_info_print_table_row(2, "Default timezone", guess_timezone(tzdb TSRMLS_CC)); - php_info_print_table_end(); - + @@ -133,7 +133,7 @@ Summary: PHP scripting language for creating dynamic web sites Name: php Version: 5.6.3 %if 0%{?snapdate:1}%{?rcver:1} -Release: 0.2.%{?snapdate}%{?rcver}%{?dist} +Release: 0.3.%{?snapdate}%{?rcver}%{?dist} %else Release: 1%{?dist} %endif @@ -173,10 +173,10 @@ Source52: phpdbg_webhelper.ini Source99: php-fpm.init # Build fixes -Patch5: php-5.2.0-includedir.patch +Patch5: php-5.6.3-includedir.patch Patch6: php-5.2.4-embed.patch Patch7: php-5.3.0-recode.patch -Patch8: php-5.4.7-libdb.patch +Patch8: php-5.6.3-libdb.patch # Fixes for extension modules # https://bugs.php.net/63171 no odbc call during timeout @@ -184,24 +184,26 @@ Patch21: php-5.4.7-odbctimer.patch # Functional changes Patch40: php-5.4.0-dlopen.patch -Patch42: php-5.3.1-systzdata-v11.patch +Patch42: php-5.6.3-systzdata-v11.patch # See http://bugs.php.net/53436 Patch43: php-5.4.0-phpize.patch # Use -lldap_r for OpenLDAP -Patch45: php-5.4.8-ldap_r.patch +Patch45: php-5.6.3-ldap_r.patch # Make php_config.h constant across builds -Patch46: php-5.4.9-fixheader.patch +Patch46: php-5.6.3-fixheader.patch # drop "Configure command" from phpinfo output -Patch47: php-5.4.9-phpinfo.patch +Patch47: php-5.6.3-phpinfo.patch # RC Patch -Patch91: php-5.3.7-oci8conf.patch +Patch91: php-5.6.3-oci8conf.patch # Upstream fixes (100+) # Security fixes (200+) # Fixes for tests (300+) +# Factory is droped from system tzdata +Patch300: php-5.6.3-datetests.patch # Revert changes for pcre < 8.34 Patch301: php-5.6.0-oldpcre.patch @@ -958,6 +960,7 @@ rm -rf ext/json # security patches # Fixes for tests +%patch300 -p1 -b .datetests %if %{with_libpcre} %if 0%{?fedora} < 21 # Only apply when system libpcre < 8.34 @@ -1949,6 +1952,10 @@ fi %changelog +* Thu Oct 30 2014 Remi Collet <rcollet@redhat.com> 5.6.3-0.3.RC1 +- new version of systzdata patch, fix case sensitivity +- ignore Factory in date tests + * Wed Oct 29 2014 Remi Collet <rcollet@redhat.com> 5.6.3-0.2.RC1 - php 5.6.3RC1 (refreshed) - enable phpdbg_webhelper new extension (in php-dbg) diff --git a/phpdbg_webhelper.ini b/phpdbg_webhelper.ini new file mode 100644 index 0000000..43b4617 --- /dev/null +++ b/phpdbg_webhelper.ini @@ -0,0 +1,6 @@ +; Enable 'phpdbg_webhelper' extension module +extension=phpdbg_webhelper.so + +; Configuration +;phpdbg.auth = '' +;phpdbg.path = '' |