Update to PHP 5.3.0 - New API/ABI

This commit is contained in:
Remi Collet 2009-07-12 16:47:12 +00:00
parent ca0ae5dd38
commit fc5ff27e44
16 changed files with 2319 additions and 1049 deletions

View File

@ -1 +1 @@
php-5.2.10.tar.bz2 php-5.3.0.tar.bz2

View File

@ -1,113 +0,0 @@
diff -up php-5.2.10/configure.in.gnusrc php-5.2.10/configure.in
--- php-5.2.10/configure.in.gnusrc 2009-06-17 14:22:41.000000000 +0200
+++ php-5.2.10/configure.in 2009-06-21 09:59:48.000000000 +0200
@@ -58,6 +58,8 @@ AC_DEFUN([PHP_EXT_DIR],[ext/$1])dnl
AC_DEFUN([PHP_EXT_SRCDIR],[$abs_srcdir/ext/$1])dnl
AC_DEFUN([PHP_ALWAYS_SHARED],[])dnl
+AC_DEFINE([_GNU_SOURCE], 1, [Define to enable GNU C Library extensions])
+
dnl Setting up the PHP version based on the information above.
dnl -------------------------------------------------------------------------
diff -up php-5.2.10/ext/interbase/interbase.c.gnusrc php-5.2.10/ext/interbase/interbase.c
--- php-5.2.10/ext/interbase/interbase.c.gnusrc 2008-12-31 12:17:38.000000000 +0100
+++ php-5.2.10/ext/interbase/interbase.c 2009-06-21 09:59:48.000000000 +0200
@@ -24,7 +24,6 @@
#include "config.h"
#endif
-#define _GNU_SOURCE
#include "php.h"
diff -up php-5.2.10/ext/pdo_firebird/firebird_driver.c.gnusrc php-5.2.10/ext/pdo_firebird/firebird_driver.c
--- php-5.2.10/ext/pdo_firebird/firebird_driver.c.gnusrc 2009-04-18 20:56:58.000000000 +0200
+++ php-5.2.10/ext/pdo_firebird/firebird_driver.c 2009-06-21 10:01:52.000000000 +0200
@@ -22,7 +22,6 @@
#include "config.h"
#endif
-#define _GNU_SOURCE
#include "php.h"
#ifdef ZEND_ENGINE_2
diff -up php-5.2.10/ext/standard/file.c.gnusrc php-5.2.10/ext/standard/file.c
--- php-5.2.10/ext/standard/file.c.gnusrc 2009-05-24 18:02:22.000000000 +0200
+++ php-5.2.10/ext/standard/file.c 2009-06-21 09:59:48.000000000 +0200
@@ -118,7 +118,6 @@ php_file_globals file_globals;
#ifdef HAVE_FNMATCH
#ifndef _GNU_SOURCE
-#define _GNU_SOURCE
#endif
#include <fnmatch.h>
#endif
diff -up php-5.2.10/ext/zlib/zlib_fopen_wrapper.c.gnusrc php-5.2.10/ext/zlib/zlib_fopen_wrapper.c
--- php-5.2.10/ext/zlib/zlib_fopen_wrapper.c.gnusrc 2009-01-20 16:43:05.000000000 +0100
+++ php-5.2.10/ext/zlib/zlib_fopen_wrapper.c 2009-06-21 09:59:48.000000000 +0200
@@ -19,8 +19,6 @@
/* $Id: zlib_fopen_wrapper.c,v 1.46.2.1.2.7 2009/01/20 15:43:05 felipe Exp $ */
-#define _GNU_SOURCE
-
#include "php.h"
#include "php_zlib.h"
#include "fopen_wrappers.h"
diff -up php-5.2.10/main/php.h.gnusrc php-5.2.10/main/php.h
--- php-5.2.10/main/php.h.gnusrc 2008-12-31 12:17:47.000000000 +0100
+++ php-5.2.10/main/php.h 2009-06-21 09:59:48.000000000 +0200
@@ -30,6 +30,7 @@
#define PHP_HAVE_STREAMS
#define YYDEBUG 0
+#include "php_config.h"
#include "php_version.h"
#include "zend.h"
#include "zend_qsort.h"
diff -up php-5.2.10/main/streams/cast.c.gnusrc php-5.2.10/main/streams/cast.c
--- php-5.2.10/main/streams/cast.c.gnusrc 2009-06-03 10:59:19.000000000 +0200
+++ php-5.2.10/main/streams/cast.c 2009-06-21 10:02:10.000000000 +0200
@@ -18,7 +18,6 @@
/* $Id: cast.c,v 1.12.2.1.2.6 2009/06/03 08:59:19 kalle Exp $ */
-#define _GNU_SOURCE
#include "php.h"
#include "php_globals.h"
#include "php_network.h"
diff -up php-5.2.10/main/streams/memory.c.gnusrc php-5.2.10/main/streams/memory.c
--- php-5.2.10/main/streams/memory.c.gnusrc 2009-05-16 22:28:02.000000000 +0200
+++ php-5.2.10/main/streams/memory.c 2009-06-21 10:02:25.000000000 +0200
@@ -18,7 +18,6 @@
/* $Id: memory.c,v 1.8.2.6.2.21 2009/05/16 20:28:02 lbarnaud Exp $ */
-#define _GNU_SOURCE
#include "php.h"
PHPAPI int php_url_decode(char *str, int len);
diff -up php-5.2.10/main/streams/streams.c.gnusrc php-5.2.10/main/streams/streams.c
--- php-5.2.10/main/streams/streams.c.gnusrc 2009-05-17 16:59:24.000000000 +0200
+++ php-5.2.10/main/streams/streams.c 2009-06-21 10:02:42.000000000 +0200
@@ -21,7 +21,6 @@
/* $Id: streams.c,v 1.82.2.6.2.38 2009/05/17 14:59:24 lbarnaud Exp $ */
-#define _GNU_SOURCE
#include "php.h"
#include "php_globals.h"
#include "php_network.h"
diff -up php-5.2.10/Zend/zend_language_parser.c.gnusrc php-5.2.10/Zend/zend_language_parser.c
--- php-5.2.10/Zend/zend_language_parser.c.gnusrc 2009-06-17 14:35:33.000000000 +0200
+++ php-5.2.10/Zend/zend_language_parser.c 2009-06-21 09:59:48.000000000 +0200
@@ -356,6 +356,8 @@
#include "zend_API.h"
#include "zend_constants.h"
+#include <string.h>
+
#define YYERROR_VERBOSE
#define YYSTYPE znode

View File

@ -1,482 +0,0 @@
--- php-5.2.4/main/logos.h.easter
+++ php-5.2.4/main/logos.h
@@ -491,386 +491,3 @@ static const unsigned char php_logo[] =
102, 63, 251, 220, 139, 16, 65, 26, 16, 112,
21, 116, 187, 251, 221, 240, 142, 119, 188, 3,
1, 0, 59, 0 };
-
-static const unsigned char php_egg_logo[] = {
- 71, 73, 70, 56, 57, 97, 120, 0, 67, 0,
- 247, 0, 0, 0, 255, 0, 107, 114, 178, 0,
- 0, 0, 31, 31, 31, 255, 255, 255, 106, 113,
- 176, 63, 63, 63, 127, 127, 127, 106, 112, 174,
- 191, 191, 191, 105, 111, 171, 223, 223, 223, 239,
- 239, 239, 144, 149, 197, 106, 111, 173, 245, 246,
- 250, 105, 110, 170, 218, 219, 235, 47, 47, 47,
- 162, 166, 206, 35, 36, 40, 153, 158, 202, 95,
- 95, 95, 175, 175, 175, 88, 93, 141, 159, 159,
- 159, 116, 122, 182, 125, 131, 187, 143, 143, 143,
- 38, 38, 41, 104, 108, 167, 171, 175, 211, 105,
- 109, 168, 102, 102, 153, 104, 108, 165, 45, 46,
- 58, 181, 184, 216, 111, 111, 111, 134, 140, 192,
- 102, 108, 168, 79, 79, 79, 199, 202, 226, 40,
- 41, 49, 92, 98, 150, 53, 53, 63, 236, 237,
- 245, 130, 130, 171, 122, 122, 160, 104, 107, 163,
- 50, 51, 67, 45, 45, 52, 207, 207, 207, 69,
- 72, 104, 15, 15, 15, 61, 61, 74, 227, 228,
- 240, 59, 62, 86, 103, 106, 162, 107, 107, 139,
- 73, 77, 113, 102, 103, 156, 54, 56, 76, 97,
- 103, 159, 137, 137, 182, 35, 35, 38, 190, 193,
- 221, 145, 145, 193, 103, 105, 159, 78, 82, 122,
- 76, 76, 95, 147, 148, 200, 92, 92, 117, 105,
- 105, 156, 103, 105, 160, 150, 150, 202, 64, 67,
- 95, 114, 114, 149, 108, 108, 159, 143, 143, 194,
- 84, 84, 106, 140, 140, 191, 102, 104, 157, 48,
- 48, 61, 27, 29, 42, 114, 114, 165, 83, 88,
- 132, 153, 153, 204, 121, 126, 186, 127, 127, 178,
- 208, 210, 230, 149, 149, 200, 146, 146, 197, 141,
- 143, 197, 55, 55, 67, 144, 145, 199, 133, 133,
- 184, 124, 124, 175, 110, 115, 171, 130, 133, 191,
- 88, 91, 137, 86, 92, 144, 154, 156, 172, 87,
- 92, 139, 85, 86, 125, 118, 123, 184, 121, 122,
- 172, 124, 128, 187, 82, 86, 130, 39, 39, 46,
- 99, 99, 128, 69, 69, 85, 97, 101, 153, 75,
- 75, 107, 115, 121, 182, 135, 138, 194, 101, 107,
- 165, 82, 84, 101, 102, 102, 140, 53, 57, 89,
- 69, 71, 101, 137, 137, 188, 109, 116, 179, 130,
- 130, 182, 57, 57, 76, 93, 99, 155, 117, 117,
- 168, 62, 63, 86, 84, 84, 122, 79, 79, 114,
- 112, 117, 177, 58, 58, 71, 127, 131, 189, 106,
- 106, 150, 76, 76, 101, 134, 135, 187, 20, 20,
- 31, 66, 71, 111, 125, 129, 182, 172, 173, 180,
- 86, 88, 131, 229, 230, 234, 108, 112, 171, 100,
- 105, 161, 161, 165, 203, 53, 53, 70, 95, 97,
- 146, 58, 60, 81, 217, 219, 234, 195, 196, 208,
- 82, 85, 125, 112, 118, 181, 82, 82, 106, 114,
- 117, 175, 154, 157, 195, 134, 134, 179, 111, 111,
- 162, 6, 7, 11, 110, 111, 146, 93, 93, 138,
- 77, 79, 116, 115, 119, 179, 103, 108, 161, 60,
- 64, 100, 98, 98, 145, 40, 40, 47, 51, 51,
- 63, 69, 69, 95, 73, 78, 122, 197, 198, 202,
- 54, 54, 58, 13, 14, 22, 108, 114, 174, 149,
- 152, 184, 101, 108, 167, 88, 88, 130, 106, 108,
- 162, 86, 91, 141, 84, 84, 116, 86, 86, 90,
- 129, 131, 186, 132, 135, 181, 160, 163, 183, 211,
- 212, 224, 91, 91, 123, 109, 109, 117, 104, 104,
- 135, 86, 86, 115, 90, 92, 108, 81, 83, 122,
- 103, 106, 130, 70, 70, 99, 121, 126, 170, 139,
- 139, 186, 73, 74, 94, 109, 109, 148, 139, 140,
- 189, 135, 138, 162, 176, 179, 199, 115, 115, 115,
- 106, 106, 144, 59, 63, 98, 67, 69, 96, 241,
- 241, 241, 102, 105, 149, 120, 120, 162, 68, 68,
- 90, 89, 89, 115, 51, 52, 79, 113, 113, 152,
- 33, 35, 55, 189, 190, 215, 79, 79, 104, 213,
- 214, 218, 94, 95, 142, 163, 164, 176, 86, 89,
- 133, 112, 112, 156, 80, 81, 118, 63, 65, 90,
- 102, 103, 124, 126, 129, 157, 72, 72, 98, 150,
- 150, 154, 72, 74, 100, 112, 112, 151, 138, 139,
- 192, 122, 125, 180, 49, 50, 64, 78, 78, 110,
- 119, 119, 157, 125, 126, 174, 77, 81, 119, 125,
- 126, 180, 56, 56, 72, 118, 120, 173, 46, 49,
- 77, 92, 96, 132, 188, 189, 197, 65, 65, 81,
- 165, 168, 200, 49, 51, 66, 143, 147, 194, 80,
- 82, 111, 192, 195, 215, 235, 235, 242, 105, 111,
- 170, 74, 77, 107, 183, 186, 210, 109, 111, 165,
- 117, 120, 152, 65, 66, 90, 182, 182, 186, 104,
- 104, 137, 123, 127, 163, 170, 171, 187, 110, 113,
- 163, 33, 249, 4, 1, 0, 0, 0, 0, 44,
- 0, 0, 0, 0, 120, 0, 67, 0, 0, 8,
- 255, 0, 1, 8, 28, 72, 176, 160, 193, 131,
- 8, 19, 42, 92, 200, 176, 161, 195, 135, 16,
- 35, 74, 156, 72, 177, 162, 197, 139, 24, 51,
- 106, 220, 200, 209, 162, 145, 43, 104, 188, 116,
- 28, 73, 210, 160, 23, 145, 8, 141, 24, 84,
- 50, 40, 128, 75, 17, 122, 228, 112, 65, 200,
- 69, 140, 146, 146, 56, 83, 170, 9, 144, 6,
- 192, 11, 38, 69, 190, 209, 88, 82, 196, 134,
- 141, 1, 44, 6, 40, 29, 64, 65, 30, 19,
- 29, 71, 138, 250, 137, 129, 163, 202, 157, 107,
- 99, 48, 96, 128, 246, 67, 200, 139, 23, 66,
- 62, 186, 212, 224, 36, 103, 206, 31, 58, 92,
- 56, 75, 214, 35, 198, 210, 183, 112, 153, 142,
- 88, 58, 231, 207, 11, 67, 113, 86, 172, 56,
- 65, 68, 91, 219, 185, 61, 226, 142, 160, 65,
- 163, 199, 167, 81, 102, 71, 2, 69, 26, 119,
- 169, 10, 28, 59, 180, 210, 216, 17, 137, 138,
- 152, 60, 1, 180, 250, 72, 194, 3, 148, 75,
- 151, 5, 16, 124, 254, 188, 98, 7, 156, 127,
- 24, 118, 196, 24, 209, 67, 138, 10, 32, 54,
- 92, 0, 224, 162, 50, 241, 68, 175, 79, 58,
- 188, 165, 16, 99, 201, 142, 49, 145, 68, 143,
- 254, 12, 1, 134, 112, 151, 30, 120, 136, 24,
- 206, 252, 115, 1, 15, 10, 70, 43, 200, 17,
- 125, 133, 190, 14, 29, 112, 84, 194, 99, 251,
- 161, 144, 35, 50, 88, 232, 255, 30, 32, 136,
- 70, 21, 31, 159, 65, 68, 111, 94, 64, 196,
- 122, 151, 8, 134, 228, 56, 222, 124, 180, 3,
- 8, 163, 219, 131, 24, 45, 26, 3, 133, 1,
- 108, 0, 211, 29, 67, 58, 188, 213, 193, 17,
- 226, 96, 246, 25, 2, 248, 213, 167, 64, 131,
- 38, 144, 16, 128, 7, 73, 68, 247, 203, 61,
- 100, 212, 7, 154, 2, 5, 72, 231, 65, 135,
- 205, 33, 176, 199, 0, 50, 44, 51, 224, 65,
- 46, 28, 17, 204, 82, 29, 20, 1, 134, 37,
- 195, 21, 0, 34, 115, 5, 56, 0, 98, 5,
- 4, 16, 176, 205, 51, 235, 76, 33, 64, 2,
- 11, 112, 163, 161, 141, 252, 121, 64, 223, 112,
- 34, 240, 160, 128, 15, 49, 168, 224, 206, 15,
- 39, 10, 132, 214, 120, 20, 220, 81, 135, 17,
- 104, 104, 200, 222, 140, 1, 68, 144, 163, 4,
- 40, 24, 80, 2, 7, 12, 92, 96, 71, 125,
- 92, 6, 160, 128, 3, 67, 14, 225, 193, 104,
- 107, 12, 208, 129, 14, 39, 230, 166, 20, 5,
- 75, 180, 194, 67, 35, 90, 246, 233, 146, 3,
- 4, 160, 34, 64, 6, 18, 28, 48, 64, 13,
- 7, 28, 128, 136, 159, 8, 176, 137, 38, 12,
- 57, 164, 169, 192, 24, 50, 12, 96, 195, 11,
- 98, 92, 129, 210, 72, 66, 60, 241, 22, 14,
- 39, 40, 32, 66, 154, 126, 50, 7, 65, 38,
- 4, 36, 32, 192, 170, 172, 94, 96, 64, 134,
- 26, 202, 255, 72, 234, 103, 211, 57, 202, 220,
- 42, 216, 28, 161, 212, 8, 24, 4, 242, 197,
- 108, 55, 105, 228, 66, 82, 187, 98, 160, 230,
- 145, 165, 14, 135, 64, 116, 94, 30, 192, 42,
- 171, 51, 164, 146, 44, 123, 48, 52, 88, 159,
- 8, 81, 160, 225, 131, 106, 20, 0, 81, 138,
- 61, 43, 88, 178, 5, 70, 46, 216, 57, 0,
- 17, 206, 185, 52, 65, 5, 13, 76, 240, 129,
- 75, 13, 108, 80, 170, 140, 1, 108, 240, 229,
- 179, 171, 18, 48, 197, 180, 46, 201, 27, 64,
- 60, 31, 126, 166, 193, 6, 241, 194, 151, 196,
- 126, 11, 230, 64, 68, 96, 3, 224, 64, 142,
- 38, 22, 233, 48, 94, 195, 39, 12, 23, 68,
- 142, 24, 63, 144, 241, 3, 17, 100, 65, 194,
- 186, 239, 54, 215, 64, 170, 248, 10, 32, 193,
- 12, 103, 38, 107, 130, 151, 26, 19, 112, 67,
- 203, 45, 231, 248, 64, 11, 244, 68, 160, 193,
- 103, 30, 32, 28, 128, 15, 107, 248, 81, 41,
- 11, 109, 12, 163, 6, 26, 181, 49, 36, 68,
- 17, 75, 45, 81, 49, 115, 24, 99, 60, 131,
- 53, 138, 36, 144, 128, 151, 77, 19, 208, 194,
- 4, 19, 220, 252, 153, 151, 18, 148, 92, 194,
- 12, 167, 36, 187, 65, 204, 78, 75, 157, 192,
- 62, 101, 164, 173, 8, 3, 26, 183, 240, 64,
- 10, 180, 164, 25, 5, 18, 122, 180, 161, 27,
- 5, 59, 4, 16, 70, 89, 11, 13, 255, 187,
- 20, 186, 245, 229, 24, 230, 0, 37, 11, 112,
- 200, 20, 116, 224, 114, 0, 153, 24, 167, 208,
- 64, 0, 56, 102, 80, 248, 0, 12, 80, 18,
- 1, 49, 249, 188, 67, 66, 10, 17, 180, 144,
- 227, 13, 89, 76, 0, 57, 1, 12, 36, 144,
- 193, 1, 6, 212, 80, 248, 179, 6, 44, 128,
- 113, 11, 143, 127, 38, 2, 22, 86, 200, 81,
- 15, 13, 74, 173, 17, 69, 31, 125, 143, 183,
- 3, 224, 34, 19, 176, 192, 234, 171, 215, 144,
- 193, 2, 174, 63, 80, 193, 4, 4, 200, 178,
- 186, 1, 82, 51, 48, 67, 244, 57, 74, 125,
- 64, 2, 86, 147, 64, 128, 179, 196, 175, 110,
- 193, 1, 12, 48, 208, 130, 115, 81, 224, 19,
- 199, 103, 59, 12, 160, 130, 35, 220, 37, 36,
- 68, 165, 20, 24, 171, 37, 243, 220, 119, 63,
- 57, 10, 4, 4, 113, 177, 5, 246, 219, 127,
- 64, 142, 11, 80, 93, 255, 188, 71, 0, 151,
- 64, 32, 10, 58, 251, 12, 96, 54, 161, 16,
- 55, 168, 111, 105, 90, 202, 130, 170, 6, 184,
- 186, 11, 20, 227, 3, 4, 48, 0, 5, 137,
- 231, 58, 13, 110, 176, 100, 23, 56, 0, 44,
- 146, 48, 170, 230, 156, 64, 5, 3, 0, 68,
- 66, 152, 160, 148, 188, 245, 201, 94, 245, 251,
- 224, 170, 36, 80, 2, 1, 148, 129, 0, 116,
- 144, 33, 190, 106, 224, 58, 29, 226, 235, 0,
- 22, 56, 4, 178, 255, 136, 195, 11, 10, 140,
- 32, 33, 149, 194, 65, 169, 82, 176, 189, 146,
- 89, 32, 71, 28, 176, 31, 13, 19, 69, 128,
- 93, 248, 144, 85, 6, 200, 209, 234, 74, 144,
- 168, 68, 89, 64, 2, 252, 43, 220, 12, 4,
- 176, 40, 230, 32, 0, 58, 39, 8, 204, 49,
- 14, 210, 137, 7, 150, 170, 2, 15, 136, 161,
- 0, 6, 208, 180, 4, 132, 201, 2, 9, 224,
- 64, 6, 8, 199, 42, 227, 93, 0, 135, 221,
- 59, 64, 6, 164, 70, 168, 194, 145, 169, 112,
- 25, 168, 26, 198, 22, 144, 0, 62, 178, 202,
- 2, 6, 80, 133, 169, 172, 181, 130, 1, 72,
- 161, 32, 74, 80, 131, 91, 98, 0, 154, 62,
- 153, 32, 142, 37, 91, 64, 4, 194, 64, 53,
- 140, 205, 131, 17, 12, 112, 164, 0, 178, 168,
- 175, 213, 161, 192, 117, 110, 187, 1, 1, 46,
- 80, 50, 202, 209, 50, 148, 4, 200, 68, 5,
- 150, 87, 129, 15, 76, 128, 21, 11, 136, 226,
- 179, 6, 160, 42, 62, 56, 135, 67, 206, 201,
- 193, 0, 186, 64, 16, 35, 196, 161, 10, 74,
- 89, 129, 3, 134, 56, 28, 38, 170, 50, 95,
- 65, 8, 128, 6, 76, 128, 181, 130, 137, 130,
- 3, 194, 100, 85, 15, 87, 103, 181, 10, 184,
- 4, 71, 97, 124, 22, 7, 8, 208, 181, 80,
- 222, 160, 57, 124, 64, 193, 45, 159, 149, 1,
- 3, 172, 225, 79, 244, 81, 64, 8, 66, 208,
- 255, 133, 1, 64, 73, 32, 87, 8, 64, 96,
- 128, 0, 130, 89, 13, 7, 71, 99, 220, 33,
- 1, 98, 215, 28, 78, 44, 64, 149, 210, 91,
- 157, 4, 8, 16, 178, 0, 92, 236, 154, 2,
- 32, 29, 57, 179, 201, 28, 100, 160, 32, 156,
- 172, 170, 167, 29, 232, 21, 163, 38, 64, 193,
- 5, 3, 160, 147, 64, 90, 178, 201, 100, 121,
- 169, 134, 248, 202, 162, 9, 234, 195, 135, 31,
- 61, 11, 127, 146, 43, 92, 9, 22, 250, 153,
- 27, 48, 160, 112, 36, 171, 37, 1, 180, 198,
- 31, 81, 212, 96, 158, 226, 148, 0, 172, 154,
- 19, 130, 45, 164, 161, 20, 69, 32, 136, 58,
- 148, 178, 4, 246, 12, 199, 94, 236, 44, 89,
- 13, 120, 122, 213, 6, 244, 194, 0, 72, 237,
- 96, 5, 9, 48, 83, 151, 4, 149, 117, 194,
- 43, 92, 22, 253, 37, 176, 10, 212, 194, 2,
- 72, 21, 128, 5, 102, 16, 141, 250, 196, 103,
- 8, 129, 56, 129, 250, 248, 6, 0, 77, 40,
- 165, 10, 195, 153, 38, 115, 48, 56, 188, 146,
- 101, 81, 66, 7, 157, 101, 9, 60, 40, 0,
- 252, 77, 176, 112, 12, 40, 224, 103, 64, 25,
- 83, 45, 150, 108, 162, 12, 29, 139, 240, 12,
- 208, 206, 86, 149, 96, 169, 163, 241, 0, 2,
- 93, 162, 215, 1, 80, 97, 32, 47, 80, 138,
- 25, 62, 115, 159, 52, 117, 72, 150, 32, 197,
- 34, 1, 204, 57, 154, 13, 255, 120, 41, 174,
- 255, 235, 172, 66, 37, 235, 146, 7, 164, 83,
- 182, 4, 80, 235, 108, 135, 35, 203, 194, 226,
- 139, 1, 251, 82, 22, 9, 103, 84, 0, 165,
- 212, 1, 181, 74, 169, 134, 140, 220, 147, 31,
- 71, 105, 224, 94, 134, 165, 104, 53, 9, 224,
- 141, 146, 97, 143, 120, 89, 140, 192, 104, 50,
- 232, 53, 203, 86, 150, 182, 218, 212, 94, 59,
- 10, 247, 63, 118, 12, 199, 3, 243, 25, 13,
- 4, 66, 160, 20, 38, 64, 119, 0, 80, 248,
- 2, 12, 152, 171, 128, 227, 140, 236, 167, 133,
- 123, 98, 10, 76, 240, 1, 13, 84, 64, 150,
- 182, 224, 4, 190, 240, 23, 220, 45, 18, 64,
- 188, 240, 106, 48, 190, 254, 104, 220, 103, 253,
- 239, 3, 38, 104, 64, 3, 60, 247, 0, 31,
- 225, 139, 114, 148, 200, 15, 117, 237, 51, 132,
- 38, 116, 129, 5, 4, 73, 237, 0, 172, 32,
- 6, 249, 38, 48, 0, 218, 203, 169, 119, 101,
- 214, 52, 70, 232, 118, 85, 137, 148, 240, 140,
- 57, 26, 128, 145, 1, 117, 150, 144, 205, 145,
- 231, 114, 196, 0, 198, 222, 148, 1, 161, 160,
- 149, 181, 98, 244, 5, 22, 216, 128, 32, 186,
- 90, 113, 64, 213, 100, 28, 230, 104, 79, 142,
- 143, 44, 93, 6, 46, 144, 72, 6, 220, 120,
- 85, 216, 211, 49, 190, 114, 84, 81, 31, 87,
- 182, 137, 184, 4, 18, 7, 92, 247, 91, 122,
- 166, 0, 255, 52, 68, 178, 171, 47, 6, 240,
- 4, 40, 15, 192, 13, 86, 80, 66, 24, 96,
- 240, 166, 230, 104, 175, 205, 196, 147, 128, 0,
- 241, 181, 211, 28, 97, 116, 149, 57, 42, 107,
- 0, 152, 87, 178, 117, 146, 183, 150, 95, 22,
- 174, 232, 72, 234, 32, 30, 176, 97, 0, 71,
- 32, 72, 27, 148, 226, 2, 43, 204, 194, 160,
- 48, 126, 244, 21, 89, 41, 56, 246, 90, 109,
- 52, 102, 126, 150, 235, 196, 172, 67, 215, 17,
- 245, 81, 33, 128, 131, 82, 84, 42, 16, 21,
- 243, 99, 202, 26, 194, 145, 145, 101, 72, 185,
- 252, 229, 8, 203, 63, 34, 0, 98, 63, 35,
- 102, 58, 158, 213, 135, 59, 125, 179, 150, 20,
- 192, 131, 16, 128, 33, 23, 36, 42, 200, 15,
- 148, 2, 60, 13, 141, 108, 215, 3, 52, 192,
- 245, 8, 240, 128, 172, 253, 250, 199, 108, 53,
- 235, 153, 129, 77, 193, 137, 62, 32, 220, 102,
- 228, 1, 18, 78, 90, 41, 55, 96, 82, 41,
- 52, 232, 100, 125, 236, 133, 109, 11, 112, 160,
- 139, 248, 30, 228, 235, 10, 108, 86, 2, 0,
- 58, 139, 239, 28, 141, 9, 26, 60, 0, 49,
- 133, 25, 5, 37, 67, 193, 1, 34, 221, 199,
- 255, 221, 224, 213, 14, 130, 130, 21, 142, 50,
- 0, 217, 16, 36, 20, 74, 193, 1, 2, 168,
- 169, 174, 172, 170, 83, 145, 85, 123, 155, 162,
- 251, 205, 129, 107, 174, 179, 162, 17, 255, 6,
- 185, 199, 89, 85, 104, 225, 113, 96, 112, 171,
- 50, 128, 5, 50, 16, 89, 101, 251, 9, 2,
- 77, 120, 129, 110, 80, 92, 144, 60, 40, 133,
- 20, 160, 118, 137, 151, 74, 150, 163, 126, 132,
- 97, 166, 19, 120, 68, 34, 208, 61, 156, 166,
- 205, 224, 229, 6, 104, 29, 111, 71, 67, 130,
- 8, 164, 128, 4, 13, 208, 192, 134, 1, 252,
- 172, 200, 222, 192, 31, 212, 80, 57, 183, 179,
- 86, 42, 16, 132, 160, 9, 72, 43, 130, 16,
- 12, 194, 5, 72, 68, 179, 79, 17, 120, 236,
- 170, 182, 202, 85, 6, 5, 221, 37, 4, 214,
- 192, 7, 200, 38, 236, 100, 61, 64, 238, 249,
- 226, 170, 134, 179, 16, 129, 32, 124, 128, 4,
- 31, 168, 0, 196, 53, 4, 131, 16, 108, 2,
- 28, 74, 249, 167, 65, 152, 145, 241, 252, 28,
- 105, 18, 128, 103, 165, 9, 10, 160, 30, 126,
- 225, 253, 6, 17, 32, 48, 122, 251, 52, 50,
- 152, 62, 43, 71, 139, 247, 188, 75, 134, 224,
- 108, 38, 36, 229, 201, 9, 241, 212, 185, 2,
- 80, 35, 46, 41, 0, 6, 152, 175, 108, 11,
- 64, 208, 103, 213, 251, 62, 0, 214, 36, 122,
- 22, 126, 207, 28, 71, 196, 130, 88, 44, 88,
- 123, 66, 92, 80, 169, 1, 220, 97, 14, 252,
- 201, 1, 126, 254, 94, 89, 105, 216, 138, 248,
- 252, 178, 151, 140, 79, 111, 115, 236, 175, 96,
- 46, 74, 177, 129, 255, 242, 21, 242, 131, 241,
- 196, 96, 7, 39, 40, 0, 12, 246, 171, 77,
- 32, 163, 85, 116, 67, 194, 126, 125, 152, 136,
- 237, 140, 14, 219, 247, 39, 160, 1, 5, 254,
- 35, 167, 54, 60, 228, 12, 252, 199, 20, 158,
- 176, 28, 17, 102, 122, 49, 71, 0, 76, 247,
- 39, 215, 39, 127, 163, 17, 1, 92, 119, 83,
- 4, 0, 127, 190, 167, 127, 75, 193, 2, 76,
- 32, 121, 12, 225, 5, 59, 3, 126, 74, 161,
- 2, 61, 96, 44, 21, 144, 74, 171, 50, 0,
- 112, 21, 89, 35, 7, 31, 16, 192, 37, 148,
- 38, 127, 204, 179, 0, 23, 176, 0, 211, 115,
- 58, 216, 147, 128, 125, 178, 2, 40, 180, 20,
- 50, 64, 107, 16, 161, 6, 10, 240, 6, 128,
- 32, 5, 112, 161, 2, 15, 48, 3, 139, 51,
- 3, 220, 22, 1, 133, 23, 35, 157, 231, 28,
- 113, 22, 34, 170, 215, 46, 136, 87, 1, 143,
- 192, 57, 17, 32, 129, 201, 98, 131, 75, 1,
- 4, 133, 208, 9, 22, 65, 5, 72, 128, 5,
- 90, 240, 2, 196, 162, 20, 198, 160, 12, 4,
- 16, 58, 52, 232, 1, 189, 231, 18, 107, 162,
- 33, 141, 130, 125, 10, 240, 30, 158, 151, 127,
- 55, 8, 4, 166, 96, 14, 35, 225, 2, 151,
- 64, 10, 111, 49, 24, 85, 96, 6, 24, 176,
- 2, 180, 82, 101, 74, 230, 134, 200, 244, 123,
- 8, 32, 2, 11, 56, 45, 62, 0, 126, 64,
- 255, 0, 8, 96, 160, 5, 56, 145, 6, 127,
- 80, 8, 19, 3, 23, 49, 240, 9, 139, 160,
- 21, 198, 114, 70, 139, 8, 26, 75, 104, 87,
- 28, 215, 30, 107, 56, 47, 13, 178, 2, 252,
- 183, 7, 132, 48, 46, 182, 225, 2, 20, 215,
- 24, 187, 225, 7, 130, 216, 28, 188, 167, 37,
- 111, 168, 33, 32, 144, 4, 159, 168, 37, 32,
- 192, 3, 67, 112, 2, 56, 192, 127, 205, 0,
- 5, 81, 2, 0, 104, 81, 4, 93, 32, 5,
- 50, 176, 7, 240, 0, 139, 31, 40, 29, 57,
- 176, 139, 180, 215, 134, 14, 50, 4, 4, 56,
- 45, 10, 192, 122, 174, 0, 9, 252, 151, 14,
- 194, 80, 140, 5, 177, 5, 84, 208, 7, 80,
- 32, 7, 1, 240, 6, 103, 144, 13, 56, 192,
- 129, 3, 48, 2, 68, 48, 7, 124, 166, 37,
- 16, 240, 98, 249, 145, 3, 81, 112, 125, 43,
- 48, 6, 39, 128, 30, 39, 96, 6, 128, 40,
- 63, 5, 144, 3, 163, 0, 7, 151, 166, 20,
- 82, 64, 8, 146, 8, 142, 9, 129, 5, 33,
- 128, 4, 232, 64, 90, 68, 192, 129, 64, 32,
- 9, 26, 114, 123, 28, 39, 2, 33, 144, 4,
- 46, 65, 4, 85, 16, 140, 76, 225, 22, 176,
- 40, 3, 64, 240, 22, 130, 112, 9, 124, 165,
- 144, 9, 193, 138, 225, 160, 51, 139, 80, 144,
- 187, 178, 4, 242, 227, 3, 8, 80, 45, 204,
- 33, 63, 16, 208, 108, 103, 190, 48, 14, 20,
- 160, 2, 32, 9, 139, 62, 249, 4, 24, 136,
- 146, 14, 97, 8, 129, 0, 1, 67, 192, 3,
- 5, 128, 59, 65, 200, 20, 75, 176, 4, 52,
- 192, 142, 112, 1, 4, 205, 23, 132, 43, 80,
- 9, 158, 16, 2, 124, 114, 142, 103, 240, 7,
- 221, 160, 3, 58, 192, 4, 47, 32, 148, 21,
- 225, 4, 72, 128, 4, 152, 224, 18, 62, 32,
- 9, 1, 232, 147, 62, 217, 1, 70, 49, 13,
- 186, 80, 14, 137, 160, 0, 73, 112, 118, 95,
- 160, 4, 152, 144, 3, 13, 137, 5, 98, 201,
- 17, 70, 0, 10, 55, 25, 2, 8, 224, 3,
- 231, 32, 5, 82, 208, 5, 50, 208, 1, 196,
- 2, 4, 130, 96, 3, 71, 224, 6, 183, 80,
- 7, 47, 96, 113, 7, 1, 6, 84, 0, 134,
- 2, 225, 4, 125, 144, 6, 9, 217, 151, 27,
- 225, 4, 77, 208, 4, 119, 249, 10, 13, 169,
- 7, 4, 129, 5, 84, 208, 62, 158, 185, 154,
- 8, 177, 5, 80, 208, 153, 172, 25, 155, 178,
- 57, 155, 180, 41, 148, 1, 1, 0, 59, 0 };
--- php-5.2.4/main/php_logos.c.easter
+++ php-5.2.4/main/php_logos.c
@@ -56,7 +56,6 @@ int php_init_info_logos(void)
return FAILURE;
php_register_info_logo(PHP_LOGO_GUID , "image/gif", php_logo , sizeof(php_logo));
- php_register_info_logo(PHP_EGG_LOGO_GUID, "image/gif", php_egg_logo, sizeof(php_egg_logo));
php_register_info_logo(ZEND_LOGO_GUID , "image/gif", zend_logo , sizeof(zend_logo));
return SUCCESS;
--- php-5.2.4/ext/standard/info.c.easter
+++ php-5.2.4/ext/standard/info.c
@@ -1058,21 +1058,7 @@ PHP_FUNCTION(phpcredits)
*/
PHPAPI char *php_logo_guid(void)
{
- char *logo_guid;
-
- time_t the_time;
- struct tm *ta, tmbuf;
-
- the_time = time(NULL);
- ta = php_localtime_r(&the_time, &tmbuf);
-
- if (ta && (ta->tm_mon==3) && (ta->tm_mday==1)) {
- logo_guid = PHP_EGG_LOGO_GUID;
- } else {
- logo_guid = PHP_LOGO_GUID;
- }
-
- return estrdup(logo_guid);
+ return estrdup(PHP_LOGO_GUID);
}
/* }}} */
@@ -1103,18 +1089,6 @@ PHP_FUNCTION(php_real_logo_guid)
}
/* }}} */
-/* {{{ proto string php_egg_logo_guid(void)
- Return the special ID used to request the PHP logo in phpinfo screens*/
-PHP_FUNCTION(php_egg_logo_guid)
-{
- if (ZEND_NUM_ARGS() != 0) {
- WRONG_PARAM_COUNT;
- }
-
- RETURN_STRINGL(PHP_EGG_LOGO_GUID, sizeof(PHP_EGG_LOGO_GUID)-1, 1);
-}
-/* }}} */
-
/* {{{ proto string zend_logo_guid(void)
Return the special ID used to request the Zend logo in phpinfo screens*/
PHP_FUNCTION(zend_logo_guid)
--- php-5.2.4/ext/standard/info.h.easter
+++ php-5.2.4/ext/standard/info.h
@@ -51,7 +51,6 @@
#endif /* HAVE_CREDITS_DEFS */
#define PHP_LOGO_GUID "PHPE9568F34-D428-11d2-A769-00AA001ACF42"
-#define PHP_EGG_LOGO_GUID "PHPE9568F36-D428-11d2-A769-00AA001ACF42"
#define ZEND_LOGO_GUID "PHPE9568F35-D428-11d2-A769-00AA001ACF42"
#define PHP_CREDITS_GUID "PHPB8B5F2A0-3C92-11d3-A3A9-4C7B08C10000"
@@ -62,7 +61,6 @@ PHP_FUNCTION(phpcredits);
PHP_FUNCTION(php_logo_guid);
PHP_FUNCTION(php_real_logo_guid);
PHP_FUNCTION(zend_logo_guid);
-PHP_FUNCTION(php_egg_logo_guid);
PHP_FUNCTION(php_sapi_name);
PHP_FUNCTION(php_uname);
PHP_FUNCTION(php_ini_scanned_files);
--- php-5.2.4/ext/standard/basic_functions.c.easter
+++ php-5.2.4/ext/standard/basic_functions.c
@@ -1753,10 +1753,6 @@ ZEND_BEGIN_ARG_INFO(arginfo_php_real_log
ZEND_END_ARG_INFO()
static
-ZEND_BEGIN_ARG_INFO(arginfo_php_egg_logo_guid, 0)
-ZEND_END_ARG_INFO()
-
-static
ZEND_BEGIN_ARG_INFO(arginfo_zend_logo_guid, 0)
ZEND_END_ARG_INFO()
@@ -3135,7 +3131,6 @@ zend_function_entry basic_functions[] =
PHP_FE(phpcredits, arginfo_phpcredits)
PHP_FE(php_logo_guid, arginfo_php_logo_guid)
PHP_FE(php_real_logo_guid, arginfo_php_real_logo_guid)
- PHP_FE(php_egg_logo_guid, arginfo_php_egg_logo_guid)
PHP_FE(zend_logo_guid, arginfo_zend_logo_guid)
PHP_FE(php_sapi_name, arginfo_php_sapi_name)
PHP_FE(php_uname, arginfo_php_uname)

263
php-5.2.5-systzdata.patch Normal file
View File

@ -0,0 +1,263 @@
Add support for use of the system timezone database, rather
than embedding a copy. Discussed upstream but was not desired.
History:
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
--- php-5.2.5/ext/date/lib/timelib.m4.systzdata
+++ php-5.2.5/ext/date/lib/timelib.m4
@@ -78,3 +78,17 @@ stdlib.h
dnl Check for strtoll, atoll
AC_CHECK_FUNCS(strtoll atoll strftime)
+
+PHP_ARG_WITH(system-tzdata, for use of system timezone data,
+[ --with-system-tzdata[=DIR] to specify use of system timezone data],
+no, no)
+
+if test "$PHP_SYSTEM_TZDATA" != "no"; then
+ AC_DEFINE(HAVE_SYSTEM_TZDATA, 1, [Define if system timezone data is used])
+
+ if test "$PHP_SYSTEM_TZDATA" != "yes"; then
+ AC_DEFINE_UNQUOTED(HAVE_SYSTEM_TZDATA_PREFIX, "$PHP_SYSTEM_TZDATA",
+ [Define for location of system timezone data])
+ fi
+fi
+
--- php-5.2.5/ext/date/lib/parse_tz.c.systzdata
+++ php-5.2.5/ext/date/lib/parse_tz.c
@@ -20,6 +20,16 @@
#include "timelib.h"
+#ifdef HAVE_SYSTEM_TZDATA
+#include <sys/mman.h>
+#include <sys/stat.h>
+#include <limits.h>
+#include <fcntl.h>
+#include <unistd.h>
+
+#include "php_scandir.h"
+#endif
+
#include <stdio.h>
#ifdef HAVE_LOCALE_H
@@ -31,7 +41,10 @@
#else
#include <strings.h>
#endif
+
+#ifndef HAVE_SYSTEM_TZDATA
#include "timezonedb.h"
+#endif
#if (defined(__APPLE__) || defined(__APPLE_CC__)) && (defined(__BIG_ENDIAN__) || defined(__LITTLE_ENDIAN__))
# if defined(__LITTLE_ENDIAN__)
@@ -206,6 +219,195 @@ void timelib_dump_tzinfo(timelib_tzinfo
}
}
+#ifdef HAVE_SYSTEM_TZDATA
+
+#ifdef HAVE_SYSTEM_TZDATA_PREFIX
+#define ZONEINFO_PREFIX HAVE_SYSTEM_TZDATA_PREFIX
+#else
+#define ZONEINFO_PREFIX "/usr/share/zoneinfo"
+#endif
+
+static const timelib_tzdb *timezonedb_system = NULL;
+
+/* Filter out some non-tzdata files and the posix/right databases, if
+ * present. */
+static int index_filter(const struct dirent *ent)
+{
+ return strcmp(ent->d_name, ".") != 0
+ && strcmp(ent->d_name, "..") != 0
+ && strcmp(ent->d_name, "posix") != 0
+ && strcmp(ent->d_name, "posixrules") != 0
+ && strcmp(ent->d_name, "right") != 0
+ && strstr(ent->d_name, ".tab") == NULL;
+}
+
+/* Create the zone identifier index by trawling the filesystem. */
+static void create_zone_index(timelib_tzdb *db)
+{
+ size_t dirstack_size, dirstack_top;
+ size_t index_size, index_next;
+ timelib_tzdb_index_entry *db_index;
+ char **dirstack;
+
+ /* LIFO stack to hold directory entries to scan; each slot is a
+ * directory name relative to the zoneinfo prefix. */
+ dirstack_size = 32;
+ dirstack = malloc(dirstack_size * sizeof *dirstack);
+ dirstack_top = 1;
+ dirstack[0] = strdup("");
+
+ /* Index array. */
+ index_size = 64;
+ db_index = malloc(index_size * sizeof *db_index);
+ index_next = 0;
+
+ do {
+ struct dirent **ents;
+ char name[PATH_MAX], *top;
+ int count;
+
+ /* Pop the top stack entry, and iterate through its contents. */
+ top = dirstack[--dirstack_top];
+ snprintf(name, sizeof name, ZONEINFO_PREFIX "/%s", top);
+
+ count = php_scandir(name, &ents, index_filter, php_alphasort);
+
+ while (count > 0) {
+ struct stat st;
+ const char *leaf = ents[count - 1]->d_name;
+
+ snprintf(name, sizeof name, ZONEINFO_PREFIX "/%s/%s",
+ top, leaf);
+
+ if (strlen(name) && stat(name, &st) == 0) {
+ /* Name, relative to the zoneinfo prefix. */
+ const char *root = top;
+
+ if (root[0] == '/') root++;
+
+ snprintf(name, sizeof name, "%s%s%s", root,
+ *root ? "/": "", leaf);
+
+ if (S_ISDIR(st.st_mode)) {
+ if (dirstack_top == dirstack_size) {
+ dirstack_size *= 2;
+ dirstack = realloc(dirstack,
+ dirstack_size * sizeof *dirstack);
+ }
+ dirstack[dirstack_top++] = strdup(name);
+ }
+ else {
+ if (index_next == index_size) {
+ index_size *= 2;
+ db_index = realloc(db_index,
+ index_size * sizeof *db_index);
+ }
+
+ db_index[index_next].id = strdup(name);
+ db_index[index_next++].pos = 0;
+ }
+ }
+
+ free(ents[--count]);
+ }
+
+ if (count != -1) free(ents);
+ free(top);
+ } while (dirstack_top);
+
+ db->index = db_index;
+ db->index_size = index_next;
+
+ free(dirstack);
+}
+
+/* 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)
+{
+ char fname[PATH_MAX];
+ struct stat st;
+ char *p;
+ int fd;
+
+ if (strstr(timezone, "..") != NULL) {
+ return NULL;
+ }
+
+ snprintf(fname, sizeof fname, ZONEINFO_PREFIX "/%s", timezone);
+
+ fd = open(fname, O_RDONLY);
+ if (fd == -1) {
+ return NULL;
+ } else if (fstat(fd, &st) != 0 || st.st_size < 21) {
+ close(fd);
+ return NULL;
+ }
+
+ *length = st.st_size;
+ p = mmap(NULL, st.st_size, PROT_READ, MAP_SHARED, fd, 0);
+ close(fd);
+
+ return p != MAP_FAILED ? p : NULL;
+}
+
+const timelib_tzdb *timelib_builtin_db(void)
+{
+ if (timezonedb_system == NULL) {
+ timelib_tzdb *tmp = malloc(sizeof *tmp);
+
+ tmp->version = "0.system";
+ tmp->data = NULL;
+ create_zone_index(tmp);
+ timezonedb_system = tmp;
+ }
+
+ return timezonedb_system;
+}
+
+const timelib_tzdb_index_entry *timelib_timezone_builtin_identifiers_list(int *count)
+{
+ *count = timezonedb_system->index_size;
+ return timezonedb_system->index;
+}
+
+int timelib_timezone_id_is_valid(char *timezone, const timelib_tzdb *tzdb)
+{
+ char fname[PATH_MAX];
+
+ if (strstr(timezone, "..") != NULL) {
+ return 0;
+ }
+
+ snprintf(fname, sizeof fname, ZONEINFO_PREFIX "/%s", timezone);
+
+ return access(fname, R_OK) == 0 ? 1 : 0;
+}
+
+timelib_tzinfo *timelib_parse_tzfile(char *timezone, const timelib_tzdb *tzdb)
+{
+ char *tzf, *orig;
+ timelib_tzinfo *tmp;
+ size_t len;
+
+ orig = map_tzfile(timezone, &len);
+ if (orig == NULL) {
+ return NULL;
+ }
+
+ tmp = timelib_tzinfo_ctor(timezone);
+
+ tzf = orig + 20;
+ read_header(&tzf, tmp);
+ read_transistions(&tzf, tmp);
+ read_types(&tzf, tmp);
+
+ munmap(orig, len);
+
+ return tmp;
+}
+#else /* !HAVE_SYSTEM_TZDATA */
+
static int seek_to_tz_position(const unsigned char **tzf, char *timezone, const timelib_tzdb *tzdb)
{
int left = 0, right = tzdb->index_size - 1;
@@ -279,6 +481,7 @@ timelib_tzinfo *timelib_parse_tzfile(cha
return tmp;
}
+#endif
static ttinfo* fetch_timezone_offset(timelib_tzinfo *tz, timelib_sll ts, timelib_sll *transition_time)
{

View File

@ -1,22 +0,0 @@
--- php-5.2.8/scripts/Makefile.frag.phpize64
+++ php-5.2.8/scripts/Makefile.frag
@@ -4,7 +4,7 @@
#
phpincludedir = $(includedir)/php
-phpbuilddir = $(libdir)/build
+phpbuilddir = $(libdir)/php/build
BUILD_FILES = \
scripts/phpize.m4 \
--- php-5.2.8/scripts/phpize.in.phpize64
+++ php-5.2.8/scripts/phpize.in
@@ -3,7 +3,7 @@
# Variable declaration
prefix='@prefix@'
exec_prefix="`eval echo @exec_prefix@`"
-phpdir="`eval echo @libdir@`/build"
+phpdir="@libdir@/php/build"
includedir="`eval echo @includedir@`/php"
builddir="`pwd`"
SED="@SED@"

View File

@ -1,19 +0,0 @@
Allow recode to be built with imap and mysql. The conflict is due
to symbol conflicts between the recode libraries and anything else,
but these should not matter (right? right! everything is fine, really)
if the extensions are loaded as DSOs *and* the libraries are loaded
using the magic RTLD_DEEPBIND.
--- php-5.2.8/ext/recode/config9.m4.recode
+++ php-5.2.8/ext/recode/config9.m4
@@ -4,9 +4,6 @@ dnl
dnl Check for extensions with which Recode can not work
if test "$PHP_RECODE" != "no"; then
- test "$PHP_IMAP" != "no" && recode_conflict="$recode_conflict imap"
- test "$PHP_MYSQL" != "no" && recode_conflict="$recode_conflict mysql"
-
if test -n "$recode_conflict"; then
AC_MSG_ERROR([recode extension can not be configured together with:$recode_conflict])
fi

689
php-5.3.0-easter.patch Normal file
View File

@ -0,0 +1,689 @@
diff -up php-5.3.0/ext/standard/basic_functions.c.easter php-5.3.0/ext/standard/basic_functions.c
--- php-5.3.0/ext/standard/basic_functions.c.easter 2009-06-20 08:07:35.000000000 +0200
+++ php-5.3.0/ext/standard/basic_functions.c 2009-07-12 13:46:08.000000000 +0200
@@ -1547,9 +1547,6 @@ ZEND_END_ARG_INFO()
ZEND_BEGIN_ARG_INFO(arginfo_php_real_logo_guid, 0)
ZEND_END_ARG_INFO()
-ZEND_BEGIN_ARG_INFO(arginfo_php_egg_logo_guid, 0)
-ZEND_END_ARG_INFO()
-
ZEND_BEGIN_ARG_INFO(arginfo_zend_logo_guid, 0)
ZEND_END_ARG_INFO()
@@ -2695,7 +2692,6 @@ const zend_function_entry basic_function
PHP_FE(phpcredits, arginfo_phpcredits)
PHP_FE(php_logo_guid, arginfo_php_logo_guid)
PHP_FE(php_real_logo_guid, arginfo_php_real_logo_guid)
- PHP_FE(php_egg_logo_guid, arginfo_php_egg_logo_guid)
PHP_FE(zend_logo_guid, arginfo_zend_logo_guid)
PHP_FE(php_sapi_name, arginfo_php_sapi_name)
PHP_FE(php_uname, arginfo_php_uname)
diff -up php-5.3.0/ext/standard/info.c.easter php-5.3.0/ext/standard/info.c
--- php-5.3.0/ext/standard/info.c.easter 2009-01-17 03:05:13.000000000 +0100
+++ php-5.3.0/ext/standard/info.c 2009-07-12 13:46:11.000000000 +0200
@@ -1268,21 +1268,7 @@ PHP_FUNCTION(phpcredits)
*/
PHPAPI char *php_logo_guid(void)
{
- char *logo_guid;
-
- time_t the_time;
- struct tm *ta, tmbuf;
-
- the_time = time(NULL);
- ta = php_localtime_r(&the_time, &tmbuf);
-
- if (ta && (ta->tm_mon==3) && (ta->tm_mday==1)) {
- logo_guid = PHP_EGG_LOGO_GUID;
- } else {
- logo_guid = PHP_LOGO_GUID;
- }
-
- return estrdup(logo_guid);
+ return estrdup(PHP_LOGO_GUID);
}
/* }}} */
@@ -1313,18 +1299,6 @@ PHP_FUNCTION(php_real_logo_guid)
}
/* }}} */
-/* {{{ proto string php_egg_logo_guid(void)
- Return the special ID used to request the PHP logo in phpinfo screens*/
-PHP_FUNCTION(php_egg_logo_guid)
-{
- if (zend_parse_parameters_none() == FAILURE) {
- return;
- }
-
- RETURN_STRINGL(PHP_EGG_LOGO_GUID, sizeof(PHP_EGG_LOGO_GUID)-1, 1);
-}
-/* }}} */
-
/* {{{ proto string zend_logo_guid(void)
Return the special ID used to request the Zend logo in phpinfo screens*/
PHP_FUNCTION(zend_logo_guid)
diff -up php-5.3.0/ext/standard/info.h.easter php-5.3.0/ext/standard/info.h
--- php-5.3.0/ext/standard/info.h.easter 2008-12-31 12:15:45.000000000 +0100
+++ php-5.3.0/ext/standard/info.h 2009-07-12 13:45:34.000000000 +0200
@@ -51,7 +51,6 @@
#endif /* HAVE_CREDITS_DEFS */
#define PHP_LOGO_GUID "PHPE9568F34-D428-11d2-A769-00AA001ACF42"
-#define PHP_EGG_LOGO_GUID "PHPE9568F36-D428-11d2-A769-00AA001ACF42"
#define ZEND_LOGO_GUID "PHPE9568F35-D428-11d2-A769-00AA001ACF42"
#define PHP_CREDITS_GUID "PHPB8B5F2A0-3C92-11d3-A3A9-4C7B08C10000"
@@ -62,7 +61,6 @@ PHP_FUNCTION(phpcredits);
PHP_FUNCTION(php_logo_guid);
PHP_FUNCTION(php_real_logo_guid);
PHP_FUNCTION(zend_logo_guid);
-PHP_FUNCTION(php_egg_logo_guid);
PHP_FUNCTION(php_sapi_name);
PHP_FUNCTION(php_uname);
PHP_FUNCTION(php_ini_scanned_files);
diff -up php-5.3.0/main/logos.h.easter php-5.3.0/main/logos.h
--- php-5.3.0/main/logos.h.easter 2008-12-31 12:15:47.000000000 +0100
+++ php-5.3.0/main/logos.h 2009-07-12 13:46:15.000000000 +0200
@@ -492,589 +492,3 @@ static const unsigned char php_logo[] =
21, 116, 187, 251, 221, 240, 142, 119, 188, 3,
1, 0, 59, 0 };
-static const unsigned char php_egg_logo[] = {
- 71, 73, 70, 56, 57, 97, 120, 0, 67, 0,
- 231, 255, 0, 18, 25, 33, 32, 30, 34, 28,
- 33, 44, 15, 35, 71, 6, 37, 85, 37, 40,
- 47, 34, 41, 53, 41, 40, 43, 9, 47, 109,
- 30, 45, 68, 21, 48, 84, 51, 46, 55, 43,
- 49, 59, 31, 59, 98, 15, 61, 128, 58, 55,
- 69, 50, 57, 74, 0, 66, 144, 56, 58, 60,
- 54, 59, 71, 32, 66, 113, 60, 65, 67, 63,
- 65, 84, 63, 68, 79, 28, 79, 145, 15, 82,
- 162, 75, 72, 98, 68, 78, 86, 74, 77, 88,
- 50, 82, 122, 41, 85, 134, 76, 78, 108, 70,
- 83, 101, 5, 94, 190, 0, 95, 197, 86, 80,
- 101, 28, 92, 159, 80, 84, 96, 83, 83, 115,
- 81, 87, 89, 22, 97, 183, 86, 88, 85, 0,
- 102, 210, 8, 101, 204, 24, 100, 177, 85, 90,
- 127, 35, 101, 169, 42, 100, 159, 88, 92, 103,
- 0, 107, 216, 69, 95, 132, 0, 108, 210, 84,
- 93, 112, 94, 90, 117, 18, 105, 201, 96, 92,
- 105, 89, 96, 98, 94, 93, 135, 94, 94, 126,
- 30, 106, 210, 7, 112, 222, 33, 108, 198, 16,
- 114, 217, 27, 113, 198, 24, 113, 209, 59, 108,
- 159, 96, 100, 138, 0, 120, 229, 44, 112, 180,
- 49, 112, 171, 71, 108, 148, 99, 104, 115, 90,
- 106, 125, 27, 115, 232, 100, 102, 147, 42, 115,
- 192, 86, 110, 137, 9, 123, 239, 106, 108, 105,
- 105, 105, 138, 33, 118, 228, 12, 125, 227, 48,
- 117, 208, 16, 126, 222, 37, 120, 224, 20, 125,
- 235, 35, 123, 213, 50, 121, 190, 43, 123, 206,
- 40, 123, 220, 105, 110, 160, 59, 122, 182, 78,
- 119, 158, 44, 122, 233, 3, 134, 250, 112, 112,
- 151, 73, 123, 175, 113, 118, 114, 51, 128, 205,
- 34, 129, 246, 11, 136, 245, 34, 130, 240, 113,
- 117, 149, 111, 116, 166, 111, 119, 141, 48, 130,
- 221, 38, 132, 235, 53, 130, 215, 97, 124, 146,
- 116, 122, 124, 117, 121, 131, 54, 130, 229, 41,
- 135, 232, 68, 130, 223, 46, 135, 246, 65, 134,
- 202, 42, 137, 241, 75, 131, 205, 124, 121, 161,
- 101, 125, 191, 86, 128, 210, 121, 122, 169, 105,
- 128, 157, 121, 122, 180, 114, 124, 181, 94, 128,
- 201, 81, 134, 185, 46, 138, 252, 76, 135, 195,
- 34, 142, 252, 62, 137, 229, 63, 138, 217, 33,
- 144, 247, 58, 139, 223, 56, 141, 246, 54, 143,
- 234, 57, 143, 241, 102, 135, 193, 129, 130, 176,
- 122, 136, 144, 46, 148, 252, 45, 149, 246, 118,
- 133, 191, 65, 146, 231, 73, 146, 216, 129, 133,
- 185, 135, 135, 156, 69, 148, 226, 44, 153, 255,
- 94, 143, 216, 132, 136, 175, 88, 146, 207, 137,
- 139, 136, 93, 146, 197, 95, 147, 188, 137, 139,
- 150, 104, 146, 178, 122, 143, 172, 135, 139, 191,
- 57, 156, 254, 67, 154, 245, 70, 154, 239, 134,
- 141, 180, 117, 145, 201, 120, 146, 190, 79, 154,
- 233, 140, 141, 188, 129, 144, 194, 142, 142, 176,
- 137, 147, 156, 88, 155, 222, 82, 157, 230, 93,
- 157, 218, 66, 162, 253, 100, 157, 210, 77, 161,
- 247, 55, 168, 255, 81, 162, 241, 148, 148, 195,
- 145, 149, 202, 127, 156, 204, 77, 166, 255, 142,
- 155, 177, 141, 153, 200, 123, 160, 193, 73, 171,
- 255, 93, 167, 240, 96, 167, 234, 152, 158, 160,
- 101, 167, 228, 119, 164, 206, 155, 158, 171, 110,
- 167, 219, 156, 155, 203, 89, 172, 252, 128, 164,
- 219, 151, 163, 174, 81, 178, 255, 158, 162, 202,
- 102, 175, 249, 93, 178, 251, 108, 175, 237, 103,
- 177, 244, 166, 168, 165, 97, 182, 255, 87, 185,
- 255, 149, 174, 216, 125, 181, 235, 110, 185, 252,
- 117, 183, 254, 171, 172, 209, 166, 175, 197, 103,
- 190, 255, 174, 176, 189, 140, 183, 221, 128, 184,
- 248, 120, 187, 249, 179, 180, 184, 115, 193, 253,
- 170, 183, 193, 174, 181, 215, 107, 197, 255, 135,
- 191, 246, 151, 192, 219, 187, 183, 213, 128, 197,
- 253, 121, 202, 255, 147, 198, 239, 188, 191, 219,
- 148, 200, 252, 192, 193, 197, 134, 205, 254, 171,
- 199, 236, 183, 199, 218, 163, 207, 251, 142, 213,
- 255, 158, 211, 253, 195, 205, 217, 166, 211, 245,
- 205, 204, 228, 153, 218, 255, 190, 210, 236, 186,
- 212, 231, 177, 213, 248, 162, 224, 255, 188, 221,
- 250, 214, 219, 221, 214, 219, 233, 174, 229, 254,
- 198, 225, 247, 209, 226, 248, 186, 233, 251, 227,
- 230, 239, 225, 241, 252, 253, 255, 252, 255, 255,
- 255, 33, 249, 4, 1, 10, 0, 255, 0, 44,
- 0, 0, 0, 0, 120, 0, 67, 0, 0, 8,
- 254, 0, 255, 9, 28, 72, 176, 160, 193, 131,
- 8, 19, 42, 92, 200, 176, 161, 195, 135, 16,
- 35, 74, 156, 72, 177, 162, 197, 139, 22, 131,
- 105, 12, 134, 177, 163, 199, 143, 193, 164, 73,
- 227, 38, 141, 28, 56, 112, 228, 76, 146, 20,
- 41, 205, 152, 75, 99, 183, 100, 201, 50, 101,
- 202, 147, 77, 79, 166, 102, 205, 250, 200, 19,
- 100, 73, 114, 239, 238, 221, 123, 71, 148, 104,
- 202, 163, 224, 86, 138, 124, 25, 115, 166, 205,
- 72, 145, 246, 72, 221, 195, 39, 207, 30, 69,
- 158, 118, 246, 220, 202, 208, 24, 184, 160, 252,
- 248, 9, 29, 59, 212, 100, 75, 99, 53, 159,
- 66, 93, 203, 182, 109, 84, 169, 124, 248, 156,
- 57, 163, 165, 174, 150, 60, 138, 76, 113, 221,
- 251, 207, 24, 183, 119, 97, 3, 135, 125, 71,
- 78, 90, 76, 62, 142, 70, 141, 18, 53, 109,
- 170, 227, 199, 144, 35, 75, 157, 91, 87, 137,
- 229, 28, 74, 190, 228, 229, 139, 209, 43, 96,
- 193, 247, 10, 203, 114, 212, 167, 82, 47, 93,
- 197, 138, 81, 163, 166, 173, 19, 47, 201, 176,
- 99, 59, 166, 171, 36, 135, 237, 22, 45, 114,
- 216, 209, 203, 25, 98, 176, 191, 66, 195, 134,
- 54, 230, 233, 150, 179, 100, 197, 106, 181, 90,
- 158, 171, 57, 179, 110, 231, 124, 185, 145, 77,
- 157, 186, 150, 218, 45, 76, 104, 111, 145, 71,
- 86, 239, 133, 198, 200, 254, 145, 189, 199, 205,
- 212, 212, 115, 244, 232, 157, 107, 86, 172, 185,
- 234, 92, 197, 154, 137, 11, 231, 11, 77, 245,
- 251, 178, 207, 40, 201, 254, 225, 131, 134, 39,
- 138, 124, 103, 80, 73, 68, 13, 37, 141, 39,
- 144, 213, 115, 14, 60, 235, 116, 211, 12, 123,
- 197, 136, 67, 141, 106, 226, 156, 51, 78, 16,
- 92, 208, 194, 7, 126, 28, 70, 166, 159, 9,
- 26, 132, 104, 130, 29, 2, 254, 67, 32, 81,
- 224, 200, 18, 91, 56, 240, 208, 35, 78, 51,
- 238, 49, 40, 223, 58, 240, 88, 99, 132, 31,
- 207, 168, 131, 14, 55, 206, 56, 115, 203, 41,
- 167, 172, 229, 73, 36, 158, 196, 133, 216, 83,
- 29, 58, 166, 69, 11, 26, 88, 96, 129, 6,
- 95, 112, 230, 213, 81, 210, 188, 21, 27, 59,
- 208, 208, 179, 14, 123, 205, 81, 227, 96, 55,
- 235, 208, 227, 14, 23, 126, 244, 162, 204, 49,
- 200, 64, 3, 13, 51, 194, 232, 162, 139, 50,
- 105, 106, 131, 13, 54, 225, 132, 227, 205, 157,
- 207, 96, 243, 204, 48, 195, 244, 72, 28, 126,
- 103, 48, 233, 164, 6, 36, 246, 20, 210, 81,
- 198, 224, 87, 143, 48, 12, 78, 8, 75, 43,
- 242, 21, 3, 38, 60, 227, 116, 224, 2, 22,
- 135, 32, 162, 41, 33, 112, 208, 129, 72, 35,
- 135, 8, 242, 72, 40, 163, 150, 82, 202, 42,
- 186, 172, 178, 203, 46, 169, 170, 154, 76, 50,
- 254, 123, 158, 194, 97, 14, 22, 60, 240, 192,
- 7, 188, 117, 228, 23, 74, 198, 88, 41, 219,
- 56, 189, 36, 19, 203, 57, 235, 80, 147, 11,
- 44, 176, 20, 211, 96, 51, 240, 192, 195, 14,
- 5, 36, 88, 129, 8, 33, 116, 200, 81, 198,
- 181, 101, 208, 1, 199, 27, 220, 110, 59, 69,
- 22, 130, 20, 82, 200, 35, 165, 76, 34, 110,
- 33, 147, 64, 162, 174, 42, 192, 200, 122, 223,
- 25, 38, 216, 186, 192, 19, 24, 133, 52, 82,
- 149, 247, 161, 179, 203, 35, 136, 8, 243, 72,
- 57, 244, 80, 179, 220, 39, 185, 192, 163, 77,
- 55, 244, 236, 227, 14, 5, 17, 0, 65, 7,
- 25, 101, 120, 81, 197, 196, 216, 82, 97, 49,
- 21, 81, 68, 145, 69, 22, 105, 116, 236, 113,
- 26, 161, 148, 59, 136, 24, 98, 64, 210, 203,
- 40, 28, 106, 161, 193, 2, 11, 88, 144, 171,
- 68, 246, 74, 163, 226, 125, 207, 156, 105, 8,
- 25, 212, 54, 218, 202, 39, 4, 227, 115, 142,
- 54, 233, 177, 211, 65, 4, 51, 84, 113, 109,
- 21, 77, 52, 1, 69, 23, 19, 15, 1, 197,
- 16, 84, 12, 17, 197, 182, 112, 8, 146, 198,
- 20, 86, 147, 139, 204, 49, 169, 78, 50, 200,
- 32, 144, 56, 210, 97, 14, 15, 176, 28, 37,
- 204, 198, 180, 228, 107, 108, 158, 60, 19, 202,
- 43, 159, 200, 225, 133, 28, 175, 224, 3, 15,
- 50, 176, 80, 2, 75, 254, 51, 94, 34, 140,
- 143, 208, 68, 119, 129, 45, 210, 93, 48, 13,
- 197, 210, 60, 240, 0, 133, 15, 111, 104, 138,
- 8, 28, 27, 79, 1, 199, 35, 163, 234, 18,
- 139, 155, 233, 206, 177, 97, 202, 22, 28, 112,
- 128, 14, 17, 5, 227, 210, 204, 213, 69, 178,
- 11, 40, 160, 16, 194, 8, 33, 134, 52, 17,
- 142, 122, 197, 236, 156, 11, 51, 185, 52, 3,
- 244, 62, 128, 207, 16, 49, 182, 93, 36, 125,
- 120, 23, 135, 67, 193, 131, 15, 112, 148, 147,
- 143, 58, 216, 8, 3, 249, 198, 89, 192, 1,
- 199, 33, 143, 196, 18, 203, 42, 144, 104, 222,
- 33, 31, 26, 120, 62, 194, 67, 162, 255, 121,
- 159, 35, 149, 104, 58, 135, 21, 100, 64, 92,
- 69, 139, 198, 238, 156, 236, 222, 226, 208, 131,
- 207, 56, 13, 56, 80, 116, 19, 215, 54, 81,
- 197, 24, 73, 23, 126, 248, 16, 62, 248, 144,
- 133, 62, 110, 112, 194, 50, 202, 113, 8, 231,
- 101, 193, 7, 64, 152, 220, 184, 30, 129, 42,
- 93, 168, 66, 108, 29, 50, 129, 231, 52, 208,
- 16, 89, 220, 162, 87, 248, 137, 68, 29, 178,
- 160, 6, 53, 188, 225, 5, 85, 176, 86, 21,
- 232, 1, 15, 113, 228, 98, 57, 173, 104, 143,
- 151, 224, 241, 190, 248, 249, 160, 126, 114, 136,
- 161, 181, 202, 16, 53, 167, 13, 97, 120, 105,
- 184, 7, 7, 12, 224, 4, 111, 192, 65, 114,
- 254, 144, 3, 66, 26, 14, 145, 6, 43, 88,
- 1, 11, 107, 128, 196, 42, 86, 1, 65, 14,
- 181, 224, 0, 1, 160, 160, 66, 100, 114, 139,
- 181, 197, 230, 22, 117, 152, 194, 20, 162, 160,
- 134, 42, 144, 64, 10, 248, 163, 67, 122, 214,
- 17, 187, 79, 232, 45, 23, 226, 16, 7, 62,
- 240, 97, 13, 5, 16, 109, 12, 215, 98, 4,
- 207, 64, 193, 51, 77, 53, 66, 83, 84, 240,
- 65, 26, 218, 113, 1, 3, 180, 1, 27, 144,
- 19, 196, 183, 128, 128, 196, 66, 132, 98, 13,
- 63, 72, 228, 15, 176, 32, 134, 68, 52, 241,
- 62, 45, 8, 64, 0, 106, 144, 144, 89, 152,
- 66, 22, 8, 186, 207, 40, 214, 32, 8, 107,
- 216, 194, 5, 67, 144, 218, 15, 134, 208, 5,
- 68, 184, 15, 30, 205, 120, 148, 25, 97, 1,
- 157, 125, 208, 227, 25, 3, 136, 64, 12, 232,
- 215, 136, 121, 200, 35, 31, 249, 168, 71, 61,
- 242, 33, 143, 118, 108, 67, 30, 208, 128, 195,
- 32, 218, 49, 1, 1, 180, 1, 121, 199, 120,
- 197, 35, 136, 184, 134, 102, 146, 11, 137, 88,
- 80, 228, 37, 104, 145, 36, 13, 72, 178, 80,
- 5, 153, 5, 78, 50, 73, 157, 72, 92, 98,
- 13, 135, 208, 135, 63, 252, 129, 132, 40, 116,
- 193, 105, 192, 11, 5, 62, 92, 217, 140, 157,
- 49, 162, 21, 104, 60, 199, 62, 224, 225, 10,
- 2, 68, 128, 10, 114, 254, 32, 196, 49, 178,
- 113, 129, 11, 112, 224, 159, 37, 224, 192, 6,
- 46, 176, 129, 108, 148, 99, 21, 213, 40, 230,
- 1, 78, 128, 3, 55, 240, 34, 29, 216, 8,
- 197, 36, 122, 81, 10, 114, 61, 2, 93, 107,
- 136, 230, 28, 230, 96, 13, 43, 202, 230, 1,
- 1, 56, 128, 119, 10, 146, 150, 251, 240, 65,
- 21, 88, 200, 194, 60, 198, 233, 143, 84, 164,
- 193, 104, 72, 43, 195, 49, 214, 8, 143, 216,
- 49, 226, 157, 197, 208, 70, 251, 216, 193, 5,
- 2, 100, 160, 10, 129, 64, 4, 54, 54, 81,
- 2, 24, 148, 128, 6, 48, 160, 193, 81, 3,
- 202, 0, 115, 120, 99, 19, 19, 40, 128, 1,
- 74, 208, 79, 6, 20, 32, 12, 222, 8, 133,
- 45, 136, 241, 141, 103, 232, 194, 84, 143, 72,
- 195, 15, 196, 112, 9, 87, 248, 226, 22, 28,
- 58, 3, 20, 183, 71, 144, 89, 16, 201, 163,
- 145, 185, 68, 74, 7, 145, 130, 106, 140, 83,
- 15, 136, 40, 131, 181, 154, 48, 6, 111, 140,
- 145, 61, 173, 72, 214, 131, 210, 83, 41, 2,
- 160, 128, 12, 140, 104, 68, 57, 220, 80, 212,
- 106, 224, 50, 151, 250, 248, 69, 9, 24, 208,
- 6, 126, 28, 225, 2, 1, 32, 70, 53, 126,
- 193, 88, 1, 0, 96, 17, 165, 96, 2, 65,
- 113, 16, 6, 76, 96, 98, 27, 202, 16, 43,
- 89, 51, 193, 10, 82, 108, 174, 58, 38, 144,
- 254, 228, 203, 134, 4, 87, 200, 220, 1, 11,
- 64, 160, 66, 16, 12, 80, 128, 118, 216, 195,
- 5, 141, 40, 31, 182, 216, 145, 30, 23, 181,
- 135, 149, 212, 8, 19, 60, 188, 145, 0, 4,
- 100, 225, 19, 59, 155, 7, 13, 78, 80, 130,
- 109, 60, 67, 24, 141, 128, 67, 33, 204, 81,
- 130, 2, 84, 224, 30, 37, 152, 128, 4, 242,
- 113, 167, 121, 216, 162, 152, 39, 120, 6, 8,
- 4, 192, 128, 13, 112, 160, 159, 6, 192, 68,
- 41, 122, 240, 131, 65, 0, 2, 16, 115, 48,
- 171, 51, 238, 3, 69, 41, 254, 195, 173, 181,
- 125, 12, 31, 122, 0, 132, 25, 248, 192, 3,
- 211, 56, 0, 13, 54, 145, 5, 50, 236, 149,
- 126, 236, 104, 17, 60, 186, 113, 44, 73, 73,
- 120, 29, 174, 136, 37, 28, 102, 215, 10, 121,
- 208, 192, 13, 71, 72, 135, 50, 38, 22, 133,
- 66, 164, 163, 187, 12, 216, 6, 7, 24, 112,
- 132, 114, 192, 33, 13, 144, 248, 69, 1, 0,
- 112, 2, 98, 126, 54, 30, 211, 32, 6, 26,
- 120, 11, 12, 32, 244, 64, 12, 115, 240, 195,
- 18, 174, 0, 8, 87, 144, 226, 20, 164, 147,
- 76, 36, 3, 48, 82, 243, 4, 120, 42, 3,
- 182, 193, 10, 86, 48, 3, 18, 20, 32, 0,
- 2, 32, 129, 26, 200, 80, 133, 194, 53, 129,
- 12, 236, 160, 17, 60, 210, 7, 11, 113, 172,
- 227, 204, 225, 144, 129, 254, 97, 65, 33, 12,
- 129, 165, 131, 3, 55, 112, 131, 45, 142, 81,
- 5, 42, 188, 225, 17, 237, 88, 241, 2, 36,
- 107, 128, 69, 196, 66, 13, 130, 120, 6, 26,
- 60, 187, 136, 106, 120, 22, 23, 186, 224, 90,
- 60, 12, 0, 0, 78, 76, 161, 7, 88, 152,
- 67, 16, 92, 176, 4, 34, 92, 97, 11, 91,
- 200, 132, 53, 204, 35, 153, 51, 72, 146, 94,
- 255, 120, 242, 84, 60, 177, 4, 41, 171, 64,
- 5, 59, 0, 2, 5, 18, 128, 1, 56, 220,
- 236, 90, 189, 83, 3, 59, 206, 97, 230, 102,
- 64, 55, 23, 201, 61, 179, 55, 26, 128, 128,
- 52, 188, 162, 24, 204, 128, 196, 52, 56, 0,
- 131, 77, 88, 67, 24, 132, 64, 196, 33, 212,
- 241, 139, 11, 20, 224, 8, 104, 184, 128, 0,
- 170, 129, 8, 53, 100, 193, 25, 16, 0, 0,
- 0, 182, 49, 104, 6, 36, 67, 153, 143, 184,
- 68, 2, 0, 192, 133, 52, 160, 0, 11, 87,
- 120, 129, 11, 88, 192, 110, 18, 144, 128, 8,
- 153, 118, 70, 162, 34, 99, 129, 40, 10, 196,
- 164, 128, 232, 193, 10, 98, 16, 131, 29, 248,
- 27, 8, 133, 224, 32, 33, 132, 123, 173, 70,
- 172, 35, 141, 235, 64, 6, 116, 97, 65, 172,
- 51, 103, 98, 0, 25, 120, 133, 48, 218, 163,
- 138, 84, 252, 51, 27, 232, 160, 6, 51, 160,
- 193, 142, 108, 28, 97, 2, 12, 176, 7, 18,
- 254, 250, 136, 142, 14, 102, 161, 19, 140, 102,
- 64, 59, 178, 189, 1, 109, 188, 34, 20, 133,
- 240, 131, 103, 57, 113, 136, 31, 44, 97, 14,
- 91, 32, 1, 187, 89, 224, 110, 23, 144, 160,
- 8, 96, 240, 3, 46, 146, 44, 149, 15, 4,
- 96, 1, 247, 174, 206, 41, 176, 96, 131, 29,
- 240, 32, 6, 42, 224, 247, 14, 124, 16, 5,
- 58, 88, 221, 193, 85, 240, 2, 51, 194, 113,
- 142, 110, 72, 40, 23, 202, 233, 70, 179, 202,
- 209, 1, 2, 212, 129, 25, 108, 202, 133, 55,
- 208, 192, 129, 18, 152, 227, 30, 230, 216, 6,
- 49, 156, 64, 108, 8, 164, 226, 30, 48, 152,
- 192, 6, 158, 65, 7, 53, 88, 1, 9, 158,
- 61, 194, 52, 102, 76, 12, 109, 8, 35, 22,
- 144, 232, 196, 161, 225, 32, 134, 43, 92, 161,
- 8, 47, 120, 1, 17, 212, 237, 110, 12, 252,
- 28, 211, 156, 128, 140, 18, 36, 41, 144, 215,
- 194, 198, 19, 115, 0, 194, 10, 84, 192, 131,
- 33, 240, 187, 223, 62, 160, 66, 178, 7, 14,
- 49, 50, 208, 233, 96, 231, 152, 16, 123, 230,
- 83, 142, 12, 59, 32, 22, 26, 103, 70, 43,
- 230, 1, 130, 182, 95, 128, 6, 19, 184, 64,
- 240, 139, 234, 134, 120, 84, 99, 197, 109, 240,
- 134, 26, 232, 80, 7, 11, 104, 123, 27, 72,
- 0, 192, 6, 228, 49, 14, 61, 165, 131, 6,
- 0, 144, 0, 43, 4, 254, 49, 136, 43, 16,
- 33, 8, 30, 136, 60, 188, 225, 237, 238, 23,
- 20, 97, 11, 153, 127, 204, 230, 3, 240, 223,
- 234, 140, 2, 11, 83, 142, 58, 15, 202, 80,
- 133, 167, 199, 96, 8, 141, 128, 155, 33, 62,
- 65, 6, 67, 112, 29, 26, 21, 114, 14, 204,
- 144, 83, 212, 112, 14, 222, 80, 118, 98, 128,
- 12, 180, 35, 12, 185, 32, 15, 16, 0, 103,
- 71, 0, 98, 71, 0, 3, 48, 224, 6, 219,
- 48, 15, 143, 32, 9, 28, 48, 1, 188, 80,
- 14, 84, 160, 6, 137, 192, 104, 23, 144, 14,
- 217, 38, 1, 188, 112, 130, 188, 0, 3, 152,
- 149, 10, 230, 50, 8, 150, 22, 4, 50, 0,
- 6, 91, 64, 4, 46, 224, 2, 145, 7, 126,
- 65, 16, 4, 91, 128, 11, 234, 199, 121, 255,
- 16, 23, 178, 81, 7, 82, 32, 2, 168, 22,
- 3, 62, 48, 4, 100, 160, 6, 79, 23, 5,
- 135, 240, 10, 173, 48, 45, 251, 7, 13, 231,
- 160, 38, 102, 118, 14, 117, 82, 39, 126, 0,
- 113, 186, 128, 12, 12, 88, 11, 185, 176, 13,
- 19, 112, 3, 37, 192, 15, 185, 84, 15, 243,
- 16, 15, 234, 112, 12, 136, 80, 10, 237, 64,
- 12, 196, 112, 15, 215, 64, 5, 112, 128, 11,
- 22, 208, 103, 182, 32, 1, 0, 192, 0, 239,
- 5, 80, 23, 208, 6, 207, 80, 8, 96, 3,
- 111, 70, 128, 6, 118, 192, 4, 96, 0, 121,
- 254, 36, 240, 2, 96, 176, 33, 150, 192, 5,
- 92, 224, 43, 235, 39, 16, 103, 224, 121, 144,
- 49, 10, 63, 48, 3, 163, 23, 3, 195, 243,
- 129, 101, 160, 6, 169, 247, 10, 200, 0, 10,
- 204, 209, 10, 194, 16, 14, 201, 195, 34, 7,
- 151, 12, 225, 0, 12, 10, 224, 0, 147, 160,
- 13, 180, 227, 133, 208, 240, 11, 196, 230, 6,
- 253, 112, 12, 159, 208, 119, 86, 103, 8, 214,
- 246, 10, 209, 80, 14, 209, 0, 10, 67, 0,
- 7, 227, 16, 15, 247, 192, 15, 72, 192, 91,
- 246, 176, 13, 169, 176, 8, 110, 144, 10, 214,
- 5, 61, 35, 227, 2, 91, 32, 3, 86, 33,
- 21, 92, 0, 6, 47, 224, 1, 50, 32, 10,
- 176, 17, 137, 63, 72, 137, 142, 113, 10, 98,
- 208, 116, 81, 199, 111, 60, 64, 5, 143, 83,
- 6, 67, 160, 6, 177, 16, 14, 208, 160, 13,
- 106, 194, 12, 200, 160, 12, 218, 112, 12, 82,
- 152, 12, 187, 160, 10, 151, 64, 1, 8, 240,
- 3, 10, 184, 51, 148, 208, 10, 139, 85, 2,
- 37, 176, 9, 253, 32, 12, 134, 80, 6, 251,
- 83, 62, 84, 144, 45, 141, 64, 8, 84, 192,
- 3, 158, 8, 4, 86, 64, 10, 28, 32, 0,
- 56, 224, 13, 194, 176, 11, 222, 80, 14, 202,
- 16, 10, 135, 32, 46, 141, 7, 111, 45, 224,
- 24, 145, 144, 9, 91, 0, 6, 70, 0, 6,
- 112, 101, 116, 72, 247, 254, 15, 123, 112, 6,
- 176, 65, 11, 63, 176, 111, 59, 208, 111, 154,
- 216, 142, 135, 0, 10, 136, 16, 10, 194, 160,
- 13, 201, 160, 13, 117, 34, 14, 208, 128, 12,
- 186, 208, 11, 187, 112, 9, 128, 224, 1, 20,
- 64, 0, 8, 96, 3, 203, 1, 11, 159, 112,
- 83, 175, 80, 15, 52, 208, 118, 196, 144, 15,
- 185, 32, 66, 67, 80, 5, 100, 64, 7, 81,
- 83, 56, 85, 48, 3, 20, 233, 3, 54, 208,
- 3, 157, 192, 0, 0, 64, 12, 208, 0, 10,
- 63, 4, 7, 202, 54, 146, 133, 48, 7, 151,
- 64, 4, 96, 112, 146, 144, 225, 7, 96, 192,
- 5, 226, 40, 21, 245, 38, 69, 158, 48, 23,
- 145, 97, 10, 115, 96, 3, 34, 48, 122, 231,
- 88, 122, 112, 160, 6, 165, 16, 11, 161, 112,
- 12, 202, 112, 9, 151, 16, 14, 226, 32, 143,
- 244, 40, 6, 24, 224, 0, 8, 128, 0, 17,
- 128, 2, 135, 128, 66, 173, 64, 9, 140, 64,
- 9, 185, 208, 15, 196, 144, 10, 191, 192, 15,
- 236, 0, 10, 114, 96, 56, 93, 32, 7, 73,
- 120, 67, 80, 64, 5, 59, 128, 132, 84, 0,
- 4, 107, 48, 104, 5, 240, 13, 194, 0, 10,
- 111, 0, 4, 64, 32, 57, 105, 128, 46, 171,
- 48, 7, 223, 39, 4, 145, 1, 132, 157, 246,
- 105, 2, 49, 11, 115, 33, 142, 167, 240, 3,
- 54, 224, 3, 153, 152, 56, 80, 243, 6, 112,
- 254, 0, 138, 177, 32, 12, 208, 160, 10, 106,
- 130, 13, 0, 24, 14, 197, 128, 148, 107, 208,
- 3, 86, 32, 138, 202, 193, 51, 85, 121, 83,
- 173, 112, 14, 229, 192, 14, 234, 80, 14, 173,
- 160, 87, 101, 0, 60, 33, 148, 132, 112, 32,
- 60, 60, 48, 3, 184, 233, 3, 170, 224, 75,
- 237, 128, 13, 79, 72, 5, 84, 246, 45, 83,
- 0, 136, 221, 71, 4, 50, 64, 147, 29, 178,
- 100, 35, 37, 147, 132, 249, 24, 137, 128, 152,
- 43, 224, 111, 57, 121, 132, 92, 4, 7, 161,
- 160, 12, 111, 162, 11, 115, 32, 153, 199, 176,
- 117, 63, 83, 158, 244, 8, 10, 148, 48, 144,
- 237, 25, 8, 44, 26, 8, 114, 16, 8, 169,
- 193, 8, 11, 41, 56, 133, 195, 3, 244, 99,
- 117, 84, 80, 5, 80, 192, 111, 244, 195, 63,
- 64, 16, 10, 186, 32, 12, 5, 234, 3, 49,
- 48, 3, 195, 153, 6, 88, 48, 50, 240, 246,
- 1, 73, 178, 7, 253, 213, 86, 90, 224, 160,
- 142, 33, 6, 33, 48, 101, 254, 118, 67, 169,
- 39, 8, 175, 208, 132, 210, 179, 11, 189, 176,
- 5, 202, 160, 12, 107, 194, 117, 83, 216, 10,
- 180, 83, 149, 44, 234, 5, 99, 224, 5, 127,
- 224, 5, 110, 58, 6, 178, 89, 6, 74, 51,
- 49, 80, 192, 144, 246, 83, 6, 159, 210, 119,
- 166, 55, 75, 12, 57, 3, 213, 201, 132, 160,
- 160, 6, 81, 48, 4, 254, 51, 48, 3, 89,
- 96, 68, 73, 234, 125, 65, 96, 2, 73, 18,
- 91, 1, 240, 50, 255, 160, 8, 81, 234, 24,
- 142, 176, 4, 33, 32, 2, 137, 57, 3, 84,
- 0, 5, 29, 84, 53, 64, 154, 42, 170, 144,
- 9, 92, 112, 9, 165, 16, 143, 196, 98, 133,
- 12, 184, 51, 104, 170, 166, 99, 176, 166, 115,
- 227, 162, 173, 154, 52, 247, 217, 101, 89, 87,
- 6, 132, 208, 8, 62, 89, 5, 67, 144, 147,
- 19, 195, 3, 43, 96, 3, 81, 240, 10, 141,
- 160, 6, 95, 217, 159, 126, 106, 3, 71, 36,
- 6, 68, 80, 4, 50, 144, 36, 106, 21, 0,
- 108, 5, 165, 147, 42, 21, 166, 96, 169, 83,
- 214, 111, 137, 83, 5, 206, 3, 10, 161, 48,
- 61, 170, 224, 7, 32, 0, 1, 50, 0, 9,
- 186, 64, 39, 86, 104, 120, 202, 161, 170, 140,
- 224, 166, 106, 250, 7, 109, 234, 166, 49, 228,
- 5, 134, 224, 5, 73, 67, 63, 114, 80, 5,
- 183, 154, 58, 55, 164, 2, 177, 73, 6, 80,
- 96, 164, 108, 214, 10, 92, 198, 63, 51, 16,
- 2, 6, 75, 95, 138, 42, 165, 248, 1, 82,
- 34, 117, 16, 166, 80, 23, 155, 115, 11, 87,
- 96, 161, 51, 192, 111, 156, 170, 108, 160, 32,
- 61, 171, 192, 10, 32, 16, 124, 48, 208, 9,
- 189, 128, 148, 208, 16, 14, 176, 72, 59, 55,
- 69, 154, 129, 192, 166, 127, 176, 166, 114, 163,
- 254, 166, 94, 0, 49, 77, 192, 3, 73, 208,
- 4, 115, 67, 6, 160, 128, 171, 132, 160, 6,
- 60, 10, 49, 60, 96, 3, 112, 112, 179, 100,
- 16, 8, 236, 8, 4, 54, 96, 176, 33, 128,
- 2, 40, 192, 2, 68, 160, 4, 213, 116, 77,
- 9, 33, 169, 90, 48, 21, 115, 160, 111, 153,
- 184, 3, 114, 136, 58, 135, 208, 173, 171, 224,
- 10, 253, 132, 6, 81, 113, 10, 172, 240, 38,
- 216, 160, 13, 242, 40, 164, 104, 250, 7, 129,
- 224, 174, 129, 192, 8, 114, 208, 166, 134, 128,
- 63, 17, 147, 56, 77, 32, 155, 132, 32, 138,
- 136, 80, 5, 58, 11, 5, 47, 219, 5, 253,
- 9, 7, 46, 74, 8, 236, 232, 3, 244, 133,
- 2, 71, 139, 180, 44, 16, 4, 73, 178, 100,
- 148, 164, 16, 121, 80, 23, 82, 225, 10, 55,
- 153, 137, 70, 168, 6, 136, 32, 8, 47, 86,
- 8, 165, 160, 9, 19, 96, 6, 142, 193, 7,
- 163, 176, 11, 202, 192, 117, 242, 232, 78, 108,
- 235, 174, 238, 58, 6, 104, 203, 170, 73, 227,
- 5, 73, 48, 179, 65, 139, 171, 175, 80, 109,
- 84, 80, 52, 178, 217, 4, 187, 58, 4, 217,
- 82, 5, 83, 99, 5, 61, 128, 180, 190, 203,
- 2, 46, 192, 180, 78, 36, 73, 254, 197, 184,
- 117, 145, 7, 180, 192, 116, 138, 201, 111, 133,
- 74, 117, 89, 112, 8, 186, 160, 9, 23, 16,
- 25, 159, 171, 83, 240, 254, 120, 66, 104, 58,
- 6, 129, 176, 166, 174, 10, 167, 100, 80, 175,
- 245, 138, 51, 160, 144, 11, 112, 153, 71, 47,
- 84, 62, 49, 91, 122, 116, 0, 60, 81, 0,
- 4, 152, 122, 180, 75, 144, 1, 25, 112, 184,
- 17, 68, 188, 15, 209, 184, 90, 80, 173, 54,
- 80, 168, 167, 39, 60, 22, 243, 6, 208, 43,
- 189, 146, 49, 10, 218, 112, 174, 19, 119, 44,
- 60, 67, 186, 45, 234, 162, 114, 80, 175, 93,
- 86, 6, 159, 0, 10, 177, 11, 7, 81, 112,
- 132, 47, 75, 175, 78, 99, 52, 60, 160, 2,
- 86, 90, 168, 54, 176, 4, 46, 144, 1, 87,
- 112, 141, 213, 113, 6, 245, 102, 111, 16, 33,
- 169, 138, 48, 177, 152, 184, 147, 19, 153, 122,
- 28, 154, 12, 156, 48, 189, 146, 241, 12, 87,
- 8, 13, 26, 215, 30, 237, 89, 11, 200, 128,
- 12, 178, 3, 93, 235, 234, 5, 101, 144, 132,
- 208, 149, 41, 21, 252, 144, 220, 27, 60, 117,
- 250, 116, 161, 228, 163, 132, 116, 5, 46, 144,
- 8, 248, 161, 4, 11, 32, 73, 139, 27, 17,
- 166, 240, 5, 144, 208, 3, 251, 187, 111, 165,
- 39, 135, 136, 240, 10, 146, 41, 192, 146, 113,
- 10, 231, 96, 133, 212, 32, 12, 112, 195, 162,
- 104, 27, 8, 173, 0, 55, 183, 214, 10, 55,
- 85, 149, 79, 200, 173, 144, 99, 96, 170, 35,
- 92, 192, 51, 4, 116, 64, 127, 161, 244, 129,
- 254, 83, 80, 156, 147, 16, 100, 222, 8, 91,
- 80, 116, 0, 103, 51, 17, 193, 192, 10, 145,
- 123, 161, 6, 118, 181, 175, 240, 38, 153, 64,
- 195, 53, 76, 178, 218, 128, 12, 185, 80, 149,
- 109, 251, 7, 132, 32, 7, 134, 240, 7, 49,
- 180, 182, 107, 11, 187, 91, 122, 8, 82, 96,
- 3, 89, 128, 8, 173, 208, 8, 154, 92, 6,
- 141, 208, 8, 129, 96, 8, 3, 103, 117, 207,
- 35, 81, 27, 203, 131, 212, 161, 4, 32, 21,
- 0, 18, 0, 169, 18, 49, 14, 107, 128, 137,
- 251, 150, 122, 87, 43, 12, 245, 8, 12, 27,
- 240, 151, 82, 241, 12, 218, 64, 13, 56, 44,
- 12, 181, 192, 8, 105, 123, 83, 210, 44, 55,
- 160, 204, 162, 148, 64, 48, 185, 16, 10, 161,
- 80, 68, 105, 48, 190, 114, 76, 205, 55, 149,
- 79, 172, 71, 45, 112, 208, 8, 163, 178, 10,
- 201, 128, 203, 176, 161, 5, 39, 60, 73, 30,
- 49, 8, 82, 230, 197, 95, 169, 202, 109, 162,
- 12, 192, 64, 3, 150, 0, 27, 201, 35, 12,
- 108, 34, 12, 210, 220, 162, 55, 229, 162, 110,
- 26, 203, 238, 249, 198, 177, 160, 12, 144, 48,
- 8, 177, 112, 12, 194, 0, 148, 205, 1, 55,
- 210, 44, 205, 229, 67, 7, 201, 6, 42, 12,
- 148, 12, 190, 0, 27, 124, 240, 1, 80, 20,
- 0, 46, 243, 17, 170, 96, 5, 133, 122, 155,
- 31, 168, 202, 14, 141, 254, 12, 189, 128, 4,
- 146, 32, 25, 124, 160, 13, 171, 44, 144, 45,
- 106, 8, 134, 240, 162, 11, 188, 182, 208, 149,
- 66, 229, 169, 13, 151, 160, 10, 247, 88, 10,
- 68, 89, 182, 85, 233, 96, 194, 101, 209, 81,
- 160, 108, 151, 211, 11, 192, 240, 24, 168, 192,
- 7, 42, 243, 209, 11, 144, 200, 30, 145, 12,
- 105, 80, 168, 205, 171, 6, 231, 252, 10, 151,
- 179, 11, 156, 112, 4, 252, 188, 198, 100, 112,
- 205, 46, 26, 208, 114, 243, 162, 238, 233, 133,
- 104, 87, 143, 47, 192, 10, 202, 80, 10, 200,
- 64, 148, 225, 160, 198, 104, 26, 8, 179, 137,
- 183, 114, 120, 8, 166, 162, 212, 190, 66, 43,
- 158, 115, 0, 243, 194, 21, 127, 232, 167, 51,
- 224, 111, 84, 87, 203, 165, 176, 11, 154, 0,
- 3, 220, 244, 24, 189, 16, 206, 14, 214, 182,
- 11, 108, 8, 105, 107, 211, 239, 36, 12, 150,
- 29, 39, 30, 176, 5, 172, 208, 11, 14, 205,
- 12, 218, 80, 11, 235, 73, 9, 44, 42, 155,
- 134, 128, 49, 181, 60, 9, 170, 48, 10, 230,
- 161, 5, 31, 240, 0, 125, 253, 0, 160, 182,
- 23, 147, 64, 180, 23, 58, 117, 84, 23, 5,
- 130, 112, 42, 174, 0, 3, 150, 240, 151, 171,
- 144, 58, 1, 205, 174, 114, 80, 205, 160, 108,
- 214, 3, 25, 209, 185, 160, 13, 202, 208, 0,
- 3, 224, 1, 151, 32, 166, 152, 57, 48, 134,
- 254, 112, 83, 16, 115, 45, 114, 184, 6, 125,
- 112, 7, 123, 160, 5, 241, 178, 0, 125, 61,
- 2, 216, 196, 23, 144, 80, 96, 21, 91, 177,
- 253, 19, 5, 83, 112, 216, 192, 80, 2, 95,
- 96, 23, 82, 234, 9, 165, 128, 8, 65, 27,
- 180, 110, 74, 8, 163, 221, 182, 54, 157, 205,
- 181, 192, 128, 185, 240, 10, 208, 160, 11, 13,
- 160, 0, 24, 0, 6, 208, 32, 158, 208, 208,
- 30, 234, 42, 223, 85, 144, 5, 216, 45, 23,
- 57, 208, 218, 44, 227, 221, 22, 240, 4, 90,
- 241, 29, 170, 64, 157, 215, 170, 147, 196, 147,
- 208, 201, 128, 4, 102, 96, 25, 32, 94, 23,
- 147, 120, 7, 125, 176, 6, 113, 160, 6, 214,
- 60, 55, 106, 122, 223, 114, 4, 79, 39, 148,
- 11, 255, 77, 1, 20, 112, 5, 170, 48, 182,
- 205, 12, 205, 159, 64, 57, 120, 144, 221, 219,
- 157, 3, 38, 80, 43, 101, 195, 50, 19, 238,
- 203, 189, 1, 185, 243, 188, 188, 62, 48, 5,
- 202, 128, 13, 201, 192, 6, 110, 224, 86, 121,
- 0, 226, 82, 174, 4, 34, 126, 6, 36, 222,
- 7, 120, 96, 226, 220, 226, 56, 17, 44, 154,
- 151, 227, 148, 118, 201, 10, 124, 50, 10, 142,
- 176, 33, 215, 225, 227, 77, 2, 228, 182, 242,
- 0, 53, 240, 5, 68, 94, 34, 229, 120, 169,
- 137, 169, 2, 6, 150, 5, 229, 186, 206, 48,
- 64, 16, 166, 160, 8, 192, 81, 62, 229, 32,
- 142, 25, 84, 238, 222, 115, 49, 232, 132, 110,
- 23, 215, 113, 25, 218, 17, 34, 78, 178, 232,
- 181, 98, 1, 109, 30, 32, 37, 162, 16, 151,
- 64, 184, 152, 26, 127, 73, 94, 10, 73, 9,
- 12, 56, 128, 16, 218, 148, 7, 121, 240, 5,
- 182, 17, 234, 162, 158, 3, 184, 129, 27, 218,
- 113, 234, 218, 209, 31, 253, 17, 34, 172, 206,
- 232, 38, 160, 3, 0, 82, 225, 145, 206, 16,
- 148, 142, 169, 116, 126, 164, 186, 144, 12, 187,
- 237, 16, 150, 20, 9, 118, 96, 7, 95, 240,
- 5, 216, 145, 29, 168, 158, 234, 170, 174, 1,
- 31, 160, 3, 184, 17, 236, 120, 33, 235, 179,
- 254, 16, 144, 75, 184, 136, 153, 106, 22, 185,
- 6, 147, 192, 10, 174, 176, 1, 60, 65, 19,
- 145, 240, 230, 207, 222, 17, 128, 64, 184, 33,
- 96, 164, 86, 144, 6, 225, 226, 165, 154, 32,
- 1, 223, 190, 238, 21, 225, 10, 75, 128, 2,
- 54, 240, 3, 66, 148, 6, 228, 178, 11, 192,
- 192, 4, 236, 158, 239, 2, 17, 16, 0, 59};
-
diff -up php-5.3.0/main/php_logos.c.easter php-5.3.0/main/php_logos.c
--- php-5.3.0/main/php_logos.c.easter 2008-12-31 12:15:47.000000000 +0100
+++ php-5.3.0/main/php_logos.c 2009-07-12 13:45:50.000000000 +0200
@@ -56,7 +56,6 @@ int php_init_info_logos(void)
return FAILURE;
php_register_info_logo(PHP_LOGO_GUID , "image/gif", php_logo , sizeof(php_logo));
- php_register_info_logo(PHP_EGG_LOGO_GUID, "image/gif", php_egg_logo, sizeof(php_egg_logo));
php_register_info_logo(ZEND_LOGO_GUID , "image/gif", zend_logo , sizeof(zend_logo));
return SUCCESS;

115
php-5.3.0-gnusrc.patch Normal file
View File

@ -0,0 +1,115 @@
diff -up php-5.3.0RC3/configure.in.gnusrc php-5.3.0RC3/configure.in
--- php-5.3.0RC3/configure.in.gnusrc 2009-06-10 20:18:43.000000000 +0200
+++ php-5.3.0RC3/configure.in 2009-06-12 07:38:08.000000000 +0200
@@ -58,6 +58,8 @@ AC_DEFUN([PHP_EXT_DIR],[ext/$1])dnl
AC_DEFUN([PHP_EXT_SRCDIR],[$abs_srcdir/ext/$1])dnl
AC_DEFUN([PHP_ALWAYS_SHARED],[])dnl
+AC_DEFINE([_GNU_SOURCE], 1, [Define to enable GNU C Library extensions])
+
dnl Setting up the PHP version based on the information above.
dnl -------------------------------------------------------------------------
diff -up php-5.3.0RC3/ext/interbase/interbase.c.gnusrc php-5.3.0RC3/ext/interbase/interbase.c
--- php-5.3.0RC3/ext/interbase/interbase.c.gnusrc 2008-12-31 12:15:38.000000000 +0100
+++ php-5.3.0RC3/ext/interbase/interbase.c 2009-06-12 07:38:08.000000000 +0200
@@ -24,7 +24,6 @@
#include "config.h"
#endif
-#define _GNU_SOURCE
#include "php.h"
diff -up php-5.3.0RC3/ext/pdo_firebird/firebird_driver.c.gnusrc php-5.3.0RC3/ext/pdo_firebird/firebird_driver.c
--- php-5.3.0RC3/ext/pdo_firebird/firebird_driver.c.gnusrc 2009-04-18 20:56:11.000000000 +0200
+++ php-5.3.0RC3/ext/pdo_firebird/firebird_driver.c 2009-06-12 07:38:08.000000000 +0200
@@ -22,7 +22,6 @@
#include "config.h"
#endif
-#define _GNU_SOURCE
#include "php.h"
#ifdef ZEND_ENGINE_2
diff -up php-5.3.0RC3/ext/standard/file.c.gnusrc php-5.3.0RC3/ext/standard/file.c
--- php-5.3.0RC3/ext/standard/file.c.gnusrc 2009-05-24 18:01:47.000000000 +0200
+++ php-5.3.0RC3/ext/standard/file.c 2009-06-12 07:40:44.000000000 +0200
@@ -123,9 +123,6 @@ php_file_globals file_globals;
#endif
#if defined(HAVE_FNMATCH) && !defined(PHP_WIN32)
-# ifndef _GNU_SOURCE
-# define _GNU_SOURCE
-# endif
# include <fnmatch.h>
#endif
diff -up php-5.3.0RC3/ext/zlib/zlib_fopen_wrapper.c.gnusrc php-5.3.0RC3/ext/zlib/zlib_fopen_wrapper.c
--- php-5.3.0RC3/ext/zlib/zlib_fopen_wrapper.c.gnusrc 2009-01-20 16:41:23.000000000 +0100
+++ php-5.3.0RC3/ext/zlib/zlib_fopen_wrapper.c 2009-06-12 07:38:08.000000000 +0200
@@ -19,8 +19,6 @@
/* $Id: zlib_fopen_wrapper.c,v 1.46.2.1.2.4.2.3 2009/01/20 15:41:23 felipe Exp $ */
-#define _GNU_SOURCE
-
#include "php.h"
#include "php_zlib.h"
#include "fopen_wrappers.h"
diff -up php-5.3.0RC3/main/php.h.gnusrc php-5.3.0RC3/main/php.h
--- php-5.3.0RC3/main/php.h.gnusrc 2008-12-31 12:15:47.000000000 +0100
+++ php-5.3.0RC3/main/php.h 2009-06-12 07:38:08.000000000 +0200
@@ -30,6 +30,7 @@
#define PHP_HAVE_STREAMS
#define YYDEBUG 0
+#include "php_config.h"
#include "php_version.h"
#include "zend.h"
#include "zend_qsort.h"
diff -up php-5.3.0RC3/main/streams/cast.c.gnusrc php-5.3.0RC3/main/streams/cast.c
--- php-5.3.0RC3/main/streams/cast.c.gnusrc 2009-04-20 10:28:44.000000000 +0200
+++ php-5.3.0RC3/main/streams/cast.c 2009-06-12 07:38:08.000000000 +0200
@@ -18,7 +18,6 @@
/* $Id: cast.c,v 1.12.2.1.2.1.2.6 2009/04/20 08:28:44 pajoye Exp $ */
-#define _GNU_SOURCE
#include "php.h"
#include "php_globals.h"
#include "php_network.h"
diff -up php-5.3.0RC3/main/streams/memory.c.gnusrc php-5.3.0RC3/main/streams/memory.c
--- php-5.3.0RC3/main/streams/memory.c.gnusrc 2009-05-16 22:27:36.000000000 +0200
+++ php-5.3.0RC3/main/streams/memory.c 2009-06-12 07:41:07.000000000 +0200
@@ -18,7 +18,6 @@
/* $Id: memory.c,v 1.8.2.6.2.17.2.4 2009/05/16 20:27:36 lbarnaud Exp $ */
-#define _GNU_SOURCE
#include "php.h"
PHPAPI int php_url_decode(char *str, int len);
diff -up php-5.3.0RC3/main/streams/streams.c.gnusrc php-5.3.0RC3/main/streams/streams.c
--- php-5.3.0RC3/main/streams/streams.c.gnusrc 2009-05-17 16:58:10.000000000 +0200
+++ php-5.3.0RC3/main/streams/streams.c 2009-06-12 07:40:53.000000000 +0200
@@ -21,7 +21,6 @@
/* $Id: streams.c,v 1.82.2.6.2.18.2.28 2009/05/17 14:58:10 lbarnaud Exp $ */
-#define _GNU_SOURCE
#include "php.h"
#include "php_globals.h"
#include "php_network.h"
diff -up php-5.3.0RC3/Zend/zend_language_parser.c.gnusrc php-5.3.0RC3/Zend/zend_language_parser.c
--- php-5.3.0RC3/Zend/zend_language_parser.c.gnusrc 2009-06-10 20:23:36.000000000 +0200
+++ php-5.3.0RC3/Zend/zend_language_parser.c 2009-06-12 07:38:08.000000000 +0200
@@ -366,6 +366,8 @@
#include "zend_API.h"
#include "zend_constants.h"
+#include <string.h>
+
#define YYERROR_VERBOSE
#define YYSTYPE znode

View File

@ -1,5 +1,6 @@
--- php-5.2.8/sapi/apache2handler/config.m4.install diff -up php5.3-200812131330/sapi/apache2handler/config.m4.install php5.3-200812131330/sapi/apache2handler/config.m4
+++ php-5.2.8/sapi/apache2handler/config.m4 --- php5.3-200812131330/sapi/apache2handler/config.m4.install 2008-03-12 00:31:53.000000000 +0100
+++ php5.3-200812131330/sapi/apache2handler/config.m4 2008-12-13 16:20:06.000000000 +0100
@@ -68,7 +68,7 @@ if test "$PHP_APXS2" != "no"; then @@ -68,7 +68,7 @@ if test "$PHP_APXS2" != "no"; then
fi fi

36
php-5.3.0-oci8conf.patch Normal file
View File

@ -0,0 +1,36 @@
diff -up ext/pdo_oci/config.m4.remi-oci8 ext/pdo_oci/config.m4
--- ext/pdo_oci/config.m4.remi-oci8 2008-10-22 22:35:52.000000000 +0200
+++ ext/pdo_oci/config.m4 2008-12-13 16:25:25.000000000 +0100
@@ -74,7 +74,10 @@ You need to tell me where to find your O
PDO_OCI_IC_PREFIX="`echo $PDO_OCI_DIR | cut -d, -f2`"
PDO_OCI_IC_VERS="`echo $PDO_OCI_DIR | cut -d, -f3`"
AC_MSG_CHECKING([for oci.h])
- if test -f $PDO_OCI_IC_PREFIX/include/oracle/$PDO_OCI_IC_VERS/client/oci.h ; then
+ if test -f $PDO_OCI_IC_PREFIX/include/oracle/$PDO_OCI_IC_VERS/client64/oci.h ; then
+ PHP_ADD_INCLUDE($PDO_OCI_IC_PREFIX/include/oracle/$PDO_OCI_IC_VERS/client64)
+ AC_MSG_RESULT($PDO_OCI_IC_PREFIX/include/oracle/$PDO_OCI_IC_VERS/client64)
+ elif test -f $PDO_OCI_IC_PREFIX/include/oracle/$PDO_OCI_IC_VERS/client/oci.h ; then
PHP_ADD_INCLUDE($PDO_OCI_IC_PREFIX/include/oracle/$PDO_OCI_IC_VERS/client)
AC_MSG_RESULT($PDO_OCI_IC_PREFIX/include/oracle/$PDO_OCI_IC_VERS/client)
elif test -f $PDO_OCI_IC_PREFIX/lib/oracle/$PDO_OCI_IC_VERS/client/include/oci.h ; then
@@ -91,6 +94,10 @@ You need to tell me where to find your O
fi
if test -f "$PDO_OCI_IC_PREFIX/lib/oracle/$PDO_OCI_IC_VERS/client/lib/libclntsh.so" ; then
PDO_OCI_LIB_DIR="$PDO_OCI_IC_PREFIX/lib/oracle/$PDO_OCI_IC_VERS/client/lib"
+ elif test -f "$PDO_OCI_IC_PREFIX/lib64/oracle/$PDO_OCI_IC_VERS/client64/lib/libclntsh.so" ; then
+ PDO_OCI_LIB_DIR="$PDO_OCI_IC_PREFIX/lib64/oracle/$PDO_OCI_IC_VERS/client64/lib"
+ elif test -f "$PDO_OCI_IC_PREFIX/lib64/oracle/$PDO_OCI_IC_VERS/client/lib/libclntsh.so" ; then
+ PDO_OCI_LIB_DIR="$PDO_OCI_IC_PREFIX/lib64/oracle/$PDO_OCI_IC_VERS/client/lib"
elif test -f "$PDO_OCI_IC_PREFIX/client/lib/libclntsh.so" ; then
PDO_OCI_LIB_DIR="$PDO_OCI_IC_PREFIX/client/lib"
elif test -f "$PDO_OCI_IC_PREFIX/libclntsh.so" ; then
--- ext/oci8/config.m4.remi-oci8 2009-03-13 00:52:37.000000000 +0100
+++ ext/oci8/config.m4 2009-03-24 20:42:39.000000000 +0100
@@ -306,6 +306,7 @@
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!'`
+ OCISDKRPMINC=`echo "$PHP_OCI8_INSTANT_CLIENT" | $PHP_OCI8_SED -e 's!^/usr/\(lib64\|lib\)/oracle/\(.*\)/\(client64\|client\)/lib[/]*$!/usr/include/oracle/\2/\3!'`
dnl Header directory for Instant Client SDK zip file install
OCISDKZIPINC=$PHP_OCI8_INSTANT_CLIENT/sdk/include

24
php-5.3.0-phpize64.patch Normal file
View File

@ -0,0 +1,24 @@
diff -up php5.3-200812131330/scripts/Makefile.frag.phpize64 php5.3-200812131330/scripts/Makefile.frag
--- php5.3-200812131330/scripts/Makefile.frag.phpize64 2005-11-22 00:08:02.000000000 +0100
+++ php5.3-200812131330/scripts/Makefile.frag 2008-12-13 16:21:42.000000000 +0100
@@ -4,7 +4,7 @@
#
phpincludedir = $(includedir)/php
-phpbuilddir = $(libdir)/build
+phpbuilddir = $(libdir)/php/build
BUILD_FILES = \
scripts/phpize.m4 \
diff -up php5.3-200812131330/scripts/phpize.in.phpize64 php5.3-200812131330/scripts/phpize.in
--- php5.3-200812131330/scripts/phpize.in.phpize64 2007-06-29 03:10:35.000000000 +0200
+++ php5.3-200812131330/scripts/phpize.in 2008-12-13 16:24:27.000000000 +0100
@@ -3,7 +3,7 @@
# Variable declaration
prefix='@prefix@'
exec_prefix="`eval echo @exec_prefix@`"
-phpdir="`eval echo @libdir@`/build"
+phpdir="@libdir@/php/build"
includedir="`eval echo @includedir@`/php"
builddir="`pwd`"
SED="@SED@"

17
php-5.3.0-recode.patch Normal file
View File

@ -0,0 +1,17 @@
diff -up php-5.3.0beta1/ext/recode/config9.m4.recode php-5.3.0beta1/ext/recode/config9.m4
--- php-5.3.0beta1/ext/recode/config9.m4.recode 2008-12-02 00:30:21.000000000 +0100
+++ php-5.3.0beta1/ext/recode/config9.m4 2009-02-28 09:46:50.000000000 +0100
@@ -4,13 +4,6 @@ dnl
dnl Check for extensions with which Recode can not work
if test "$PHP_RECODE" != "no"; then
- test "$PHP_IMAP" != "no" && recode_conflict="$recode_conflict imap"
-
- if test -n "$MYSQL_LIBNAME"; then
- PHP_CHECK_LIBRARY($MYSQL_LIBNAME, hash_insert, [
- recode_conflict="$recode_conflict mysql"
- ])
- fi
if test -n "$recode_conflict"; then
AC_MSG_ERROR([recode extension can not be configured together with:$recode_conflict])

301
php-5.3.0-systzdata.patch Normal file
View File

@ -0,0 +1,301 @@
diff -up ext/date/lib/parse_tz.c.systzdata ext/date/lib/parse_tz.c
--- ext/date/lib/parse_tz.c.systzdata 2008-12-31 12:15:35.000000000 +0100
+++ ext/date/lib/parse_tz.c 2009-02-28 09:51:07.000000000 +0100
@@ -20,6 +20,16 @@
#include "timelib.h"
+#ifdef HAVE_SYSTEM_TZDATA
+#include <sys/mman.h>
+#include <sys/stat.h>
+#include <limits.h>
+#include <fcntl.h>
+#include <unistd.h>
+
+#include "php_scandir.h"
+#endif
+
#include <stdio.h>
#ifdef HAVE_LOCALE_H
@@ -31,7 +41,10 @@
#else
#include <strings.h>
#endif
+
+#ifndef HAVE_SYSTEM_TZDATA
#include "timezonedb.h"
+#endif
#if (defined(__APPLE__) || defined(__APPLE_CC__)) && (defined(__BIG_ENDIAN__) || defined(__LITTLE_ENDIAN__))
# if defined(__LITTLE_ENDIAN__)
@@ -253,6 +266,211 @@ void timelib_dump_tzinfo(timelib_tzinfo
}
}
+#ifdef HAVE_SYSTEM_TZDATA
+
+#ifdef HAVE_SYSTEM_TZDATA_PREFIX
+#define ZONEINFO_PREFIX HAVE_SYSTEM_TZDATA_PREFIX
+#else
+#define ZONEINFO_PREFIX "/usr/share/zoneinfo"
+#endif
+
+#define SYSTEM_TZFILE "/etc/localtime"
+
+static const timelib_tzdb *timezonedb_system = NULL;
+
+/* Filter out some non-tzdata files and the posix/right databases, if
+ * present. */
+static int index_filter(const struct dirent *ent)
+{
+ return strcmp(ent->d_name, ".") != 0
+ && strcmp(ent->d_name, "..") != 0
+ && strcmp(ent->d_name, "posix") != 0
+ && strcmp(ent->d_name, "posixrules") != 0
+ && strcmp(ent->d_name, "right") != 0
+ && strstr(ent->d_name, ".tab") == NULL;
+}
+
+/* Create the zone identifier index by trawling the filesystem. */
+static void create_zone_index(timelib_tzdb *db)
+{
+ size_t dirstack_size, dirstack_top;
+ size_t index_size, index_next;
+ timelib_tzdb_index_entry *db_index;
+ char **dirstack;
+
+ /* LIFO stack to hold directory entries to scan; each slot is a
+ * directory name relative to the zoneinfo prefix. */
+ dirstack_size = 32;
+ dirstack = malloc(dirstack_size * sizeof *dirstack);
+ dirstack_top = 1;
+ dirstack[0] = strdup("");
+
+ /* Index array. */
+ index_size = 64;
+ db_index = malloc(index_size * sizeof *db_index);
+ index_next = 0;
+
+ do {
+ struct dirent **ents;
+ char name[PATH_MAX], *top;
+ int count;
+
+ /* Pop the top stack entry, and iterate through its contents. */
+ top = dirstack[--dirstack_top];
+ snprintf(name, sizeof name, ZONEINFO_PREFIX "/%s", top);
+
+ count = php_scandir(name, &ents, index_filter, php_alphasort);
+
+ while (count > 0) {
+ struct stat st;
+ const char *leaf = ents[count - 1]->d_name;
+
+ snprintf(name, sizeof name, ZONEINFO_PREFIX "/%s/%s",
+ top, leaf);
+
+ if (strlen(name) && stat(name, &st) == 0) {
+ /* Name, relative to the zoneinfo prefix. */
+ const char *root = top;
+
+ if (root[0] == '/') root++;
+
+ snprintf(name, sizeof name, "%s%s%s", root,
+ *root ? "/": "", leaf);
+
+ if (S_ISDIR(st.st_mode)) {
+ if (dirstack_top == dirstack_size) {
+ dirstack_size *= 2;
+ dirstack = realloc(dirstack,
+ dirstack_size * sizeof *dirstack);
+ }
+ dirstack[dirstack_top++] = strdup(name);
+ }
+ else {
+ if (index_next == index_size) {
+ index_size *= 2;
+ db_index = realloc(db_index,
+ index_size * sizeof *db_index);
+ }
+
+ db_index[index_next].id = strdup(name);
+ db_index[index_next++].pos = 0;
+ }
+ }
+
+ free(ents[--count]);
+ }
+
+ if (count != -1) free(ents);
+ free(top);
+ } while (dirstack_top);
+
+ db->index = db_index;
+ db->index_size = index_next;
+
+ free(dirstack);
+}
+
+/* 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)
+{
+ char fname[PATH_MAX];
+ const char *fn;
+ struct stat st;
+ char *p;
+ int fd;
+
+ if (strcmp(timezone, TIMELIB_SYSTEM_TZID) == 0) {
+ fn = SYSTEM_TZFILE;
+ }
+ else {
+ if (strstr(timezone, "..") != NULL) {
+ return NULL;
+ }
+
+ snprintf(fname, sizeof fname, ZONEINFO_PREFIX "/%s", timezone);
+ fn = fname;
+ }
+
+ fd = open(fn, O_RDONLY);
+ if (fd == -1) {
+ return NULL;
+ } else if (fstat(fd, &st) != 0 || st.st_size < 21) {
+ close(fd);
+ return NULL;
+ }
+
+ *length = st.st_size;
+ p = mmap(NULL, st.st_size, PROT_READ, MAP_SHARED, fd, 0);
+ close(fd);
+
+ return p != MAP_FAILED ? p : NULL;
+}
+
+const timelib_tzdb *timelib_builtin_db(void)
+{
+ if (timezonedb_system == NULL) {
+ timelib_tzdb *tmp = malloc(sizeof *tmp);
+
+ tmp->version = "0.system";
+ tmp->data = NULL;
+ create_zone_index(tmp);
+ timezonedb_system = tmp;
+ }
+
+ return timezonedb_system;
+}
+
+const timelib_tzdb_index_entry *timelib_timezone_builtin_identifiers_list(int *count)
+{
+ *count = timezonedb_system->index_size;
+ return timezonedb_system->index;
+}
+
+int timelib_timezone_id_is_valid(char *timezone, const timelib_tzdb *tzdb)
+{
+ char fname[PATH_MAX];
+ const char *fn;
+
+ if (strcmp(timezone, TIMELIB_SYSTEM_TZID) == 0) {
+ fn = SYSTEM_TZFILE;
+ }
+ else {
+ if (strstr(timezone, "..") != NULL) {
+ return 0;
+ }
+
+ snprintf(fname, sizeof fname, ZONEINFO_PREFIX "/%s", timezone);
+ fn = fname;
+ }
+
+ return access(fn, R_OK) == 0 ? 1 : 0;
+}
+
+timelib_tzinfo *timelib_parse_tzfile(char *timezone, const timelib_tzdb *tzdb)
+{
+ char *tzf, *orig;
+ timelib_tzinfo *tmp;
+ size_t len;
+
+ orig = map_tzfile(timezone, &len);
+ if (orig == NULL) {
+ return NULL;
+ }
+
+ tmp = timelib_tzinfo_ctor(timezone);
+
+ tzf = orig + 20;
+ read_header(&tzf, tmp);
+ read_transistions(&tzf, tmp);
+ read_types(&tzf, tmp);
+
+ munmap(orig, len);
+
+ return tmp;
+}
+#else /* !HAVE_SYSTEM_TZDATA */
+
static int seek_to_tz_position(const unsigned char **tzf, char *timezone, const timelib_tzdb *tzdb)
{
int left = 0, right = tzdb->index_size - 1;
@@ -328,6 +546,7 @@ timelib_tzinfo *timelib_parse_tzfile(cha
return tmp;
}
+#endif
static ttinfo* fetch_timezone_offset(timelib_tzinfo *tz, timelib_sll ts, timelib_sll *transition_time)
{
diff -up ext/date/lib/timelib.h.systzdata ext/date/lib/timelib.h
--- ext/date/lib/timelib.h.systzdata 2008-12-31 12:15:35.000000000 +0100
+++ ext/date/lib/timelib.h 2009-02-28 09:51:07.000000000 +0100
@@ -34,6 +34,10 @@
#define TIMELIB_SPECIAL_DAY_OF_WEEK_IN_MONTH 0x02
#define TIMELIB_SPECIAL_LAST_DAY_OF_WEEK_IN_MONTH 0x03
+#ifdef HAVE_SYSTEM_TZDATA
+#define TIMELIB_SYSTEM_TZID "System/Localtime"
+#endif
+
#ifndef LONG_MAX
#define LONG_MAX 2147483647L
#endif
diff -up ext/date/lib/timelib.m4.systzdata ext/date/lib/timelib.m4
--- ext/date/lib/timelib.m4.systzdata 2005-07-04 01:30:52.000000000 +0200
+++ ext/date/lib/timelib.m4 2009-02-28 09:51:07.000000000 +0100
@@ -78,3 +78,17 @@ stdlib.h
dnl Check for strtoll, atoll
AC_CHECK_FUNCS(strtoll atoll strftime)
+
+PHP_ARG_WITH(system-tzdata, for use of system timezone data,
+[ --with-system-tzdata[=DIR] to specify use of system timezone data],
+no, no)
+
+if test "$PHP_SYSTEM_TZDATA" != "no"; then
+ AC_DEFINE(HAVE_SYSTEM_TZDATA, 1, [Define if system timezone data is used])
+
+ if test "$PHP_SYSTEM_TZDATA" != "yes"; then
+ AC_DEFINE_UNQUOTED(HAVE_SYSTEM_TZDATA_PREFIX, "$PHP_SYSTEM_TZDATA",
+ [Define for location of system timezone data])
+ fi
+fi
+
diff -up ext/date/php_date.c.systzdata ext/date/php_date.c
--- ext/date/php_date.c.systzdata 2009-01-27 14:48:10.000000000 +0100
+++ ext/date/php_date.c 2009-02-28 09:51:07.000000000 +0100
@@ -829,6 +829,11 @@ static char* guess_timezone(const timeli
if (DATEG(default_timezone) && (strlen(DATEG(default_timezone)) > 0) && timelib_timezone_id_is_valid(DATEG(default_timezone), tzdb)) {
return DATEG(default_timezone);
}
+#ifdef TIMELIB_SYSTEM_TZID
+ if (timelib_timezone_id_is_valid(TIMELIB_SYSTEM_TZID, tzdb)) {
+ return TIMELIB_SYSTEM_TZID;
+ }
+#endif
#if HAVE_TM_ZONE
/* Try to guess timezone from system information */
{

1125
php.ini

File diff suppressed because it is too large Load Diff

153
php.spec
View File

@ -1,12 +1,18 @@
%define contentdir /var/www %global contentdir /var/www
%define apiver 20041225 # API/ABI check
%define zendver 20060613 %global apiver 20090626
%define pdover 20060511 %global zendver 20090626
%global pdover 20080721
# Extension version
%global fileinfover 1.0.5-dev
%global pharver 2.0.0-dev
%global zipver 1.9.1
%define httpd_mmn %(cat %{_includedir}/httpd/.mmn || echo missing-httpd-devel) %define httpd_mmn %(cat %{_includedir}/httpd/.mmn || echo missing-httpd-devel)
Summary: PHP scripting language for creating dynamic web sites Summary: PHP scripting language for creating dynamic web sites
Name: php Name: php
Version: 5.2.10 Version: 5.3.0
Release: 1%{?dist} Release: 1%{?dist}
License: PHP License: PHP
Group: Development/Languages Group: Development/Languages
@ -18,13 +24,13 @@ Source2: php.ini
Source3: macros.php Source3: macros.php
# Build fixes # Build fixes
Patch1: php-5.2.10-gnusrc.patch Patch1: php-5.3.0-gnusrc.patch
Patch2: php-5.2.8-install.patch Patch2: php-5.3.0-install.patch
Patch3: php-5.2.4-norpath.patch Patch3: php-5.2.4-norpath.patch
Patch4: php-5.2.8-phpize64.patch Patch4: php-5.3.0-phpize64.patch
Patch5: php-5.2.0-includedir.patch Patch5: php-5.2.0-includedir.patch
Patch6: php-5.2.4-embed.patch Patch6: php-5.2.4-embed.patch
Patch7: php-5.2.8-recode.patch Patch7: php-5.3.0-recode.patch
# Fixes for extension modules # Fixes for extension modules
Patch20: php-4.3.11-shutdown.patch Patch20: php-4.3.11-shutdown.patch
@ -32,18 +38,17 @@ Patch21: php-5.2.3-macropen.patch
# Functional changes # Functional changes
Patch40: php-5.0.4-dlopen.patch Patch40: php-5.0.4-dlopen.patch
Patch41: php-5.2.4-easter.patch Patch41: php-5.3.0-easter.patch
Patch42: php-5.2.6-systzdata.patch Patch42: php-5.2.5-systzdata.patch
# Fixes for tests # Fixes for tests
Patch60: php-5.2.7-tests-dashn.patch
Patch61: php-5.0.4-tests-wddx.patch Patch61: php-5.0.4-tests-wddx.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: bzip2-devel, curl-devel >= 7.9, db4-devel, gmp-devel BuildRequires: bzip2-devel, curl-devel >= 7.9, db4-devel, gmp-devel
BuildRequires: httpd-devel >= 2.0.46-1, pam-devel BuildRequires: httpd-devel >= 2.0.46-1, pam-devel
BuildRequires: libstdc++-devel, openssl-devel, sqlite-devel >= 3.0.0 BuildRequires: libstdc++-devel, openssl-devel, sqlite-devel >= 3.6.0
BuildRequires: zlib-devel, pcre-devel >= 6.6, smtpdaemon, readline-devel BuildRequires: zlib-devel, pcre-devel >= 6.6, smtpdaemon, readline-devel
BuildRequires: bzip2, perl, libtool >= 1.4.3, gcc-c++ BuildRequires: bzip2, perl, libtool >= 1.4.3, gcc-c++
Obsoletes: php-dbg, php3, phpfi, stronghold-php Obsoletes: php-dbg, php3, phpfi, stronghold-php
@ -97,8 +102,12 @@ Provides: php-bz2, php-calendar, php-ctype, php-curl, php-date, php-exif
Provides: php-ftp, php-gettext, php-gmp, php-hash, php-iconv, php-libxml Provides: php-ftp, php-gettext, php-gmp, php-hash, php-iconv, php-libxml
Provides: php-reflection, php-session, php-shmop, php-simplexml, php-sockets Provides: php-reflection, php-session, php-shmop, php-simplexml, php-sockets
Provides: php-spl, php-tokenizer, php-openssl, php-pcre Provides: php-spl, php-tokenizer, php-openssl, php-pcre
Provides: php-zlib, php-json, php-zip, php-dbase Provides: php-zlib, php-json, php-zip, php-fileinfo
Obsoletes: php-openssl, php-pecl-zip, php-pecl-json, php-json, php-dbase Obsoletes: php-openssl, php-pecl-zip, php-pecl-json, php-json, php-pecl-phar, php-pecl-Fileinfo
# For obsoleted pecl extension
Provides: php-pecl-zip = %{zipver}, php-pecl(zip) = %{zipver}
Provides: php-pecl-phar = %{pharver}, php-pecl(phar) = %{pharver}
Provides: php-pecl-Fileinfo = %{fileinfover}, php-pecl(Fileinfo) = %{fileinfover}
%description common %description common
The php-common package contains files used by both the php The php-common package contains files used by both the php
@ -152,6 +161,7 @@ Group: Development/Languages
Requires: php-common = %{version}-%{release} Requires: php-common = %{version}-%{release}
Obsoletes: php-pecl-pdo-sqlite, php-pecl-pdo Obsoletes: php-pecl-pdo-sqlite, php-pecl-pdo
Provides: php-pdo-abi = %{pdover} Provides: php-pdo-abi = %{pdover}
Provides: php-sqlite3, php-pdo_sqlite
%description pdo %description pdo
The php-pdo package contains a dynamic shared object that will add The php-pdo package contains a dynamic shared object that will add
@ -163,7 +173,7 @@ databases.
Summary: A module for PHP applications that use MySQL databases Summary: A module for PHP applications that use MySQL databases
Group: Development/Languages Group: Development/Languages
Requires: php-common = %{version}-%{release}, php-pdo Requires: php-common = %{version}-%{release}, php-pdo
Provides: php_database, php-mysqli Provides: php_database, php-mysqli, php-pdo_mysql
Obsoletes: mod_php3-mysql, stronghold-php-mysql Obsoletes: mod_php3-mysql, stronghold-php-mysql
BuildRequires: mysql-devel >= 4.1.0 BuildRequires: mysql-devel >= 4.1.0
@ -178,7 +188,7 @@ this package and the php package.
Summary: A PostgreSQL database module for PHP Summary: A PostgreSQL database module for PHP
Group: Development/Languages Group: Development/Languages
Requires: php-common = %{version}-%{release}, php-pdo Requires: php-common = %{version}-%{release}, php-pdo
Provides: php_database Provides: php_database, php-pdo_pgsql
Obsoletes: mod_php3-pgsql, stronghold-php-pgsql Obsoletes: mod_php3-pgsql, stronghold-php-pgsql
BuildRequires: krb5-devel, openssl-devel, postgresql-devel BuildRequires: krb5-devel, openssl-devel, postgresql-devel
@ -206,7 +216,7 @@ communication.
Group: Development/Languages Group: Development/Languages
Requires: php-common = %{version}-%{release}, php-pdo Requires: php-common = %{version}-%{release}, php-pdo
Summary: A module for PHP applications that use ODBC databases Summary: A module for PHP applications that use ODBC databases
Provides: php_database Provides: php_database, php-pdo_odbc
Obsoletes: stronghold-php-odbc Obsoletes: stronghold-php-odbc
BuildRequires: unixODBC-devel BuildRequires: unixODBC-devel
@ -292,16 +302,6 @@ Requires: php-common = %{version}-%{release}
The php-mbstring package contains a dynamic shared object that will add The php-mbstring package contains a dynamic shared object that will add
support for multi-byte string handling to PHP. support for multi-byte string handling to PHP.
%package ncurses
Summary: A module for PHP applications for using ncurses interfaces
Group: Development/Languages
Requires: php-common = %{version}-%{release}
BuildRequires: ncurses-devel
%description ncurses
The php-ncurses package contains a dynamic shared object that will add
support for using the ncurses terminal output interfaces.
%package gd %package gd
Summary: A module for PHP applications for using the gd graphics library Summary: A module for PHP applications for using the gd graphics library
Group: Development/Languages Group: Development/Languages
@ -341,16 +341,6 @@ BuildRequires: libmcrypt-devel
The php-mcrypt package contains a dynamic shared object that will add The php-mcrypt package contains a dynamic shared object that will add
support for using the mcrypt library to PHP. support for using the mcrypt library to PHP.
%package mhash
Summary: Standard PHP module provides mhash support
Group: Development/Languages
Requires: php-common = %{version}-%{release}
BuildRequires: mhash-devel
%description mhash
The php-mhash package contains a dynamic shared object that will add
support for using the mhash library to PHP.
%package tidy %package tidy
Summary: Standard PHP module provides tidy library support Summary: Standard PHP module provides tidy library support
Group: Development/Languages Group: Development/Languages
@ -366,6 +356,7 @@ Summary: MSSQL database module for PHP
Group: Development/Languages Group: Development/Languages
Requires: php-common = %{version}-%{release}, php-pdo Requires: php-common = %{version}-%{release}, php-pdo
BuildRequires: freetds-devel BuildRequires: freetds-devel
Provides: php-pdo_dblib
%description mssql %description mssql
The php-mssql package contains a dynamic shared object that will The php-mssql package contains a dynamic shared object that will
@ -404,6 +395,27 @@ BuildRequires: recode-devel
The php-recode package contains a dynamic shared object that will add The php-recode package contains a dynamic shared object that will add
support for using the recode library to PHP. support for using the recode library to PHP.
%package intl
Summary: Internationalization extension for PHP applications
Group: System Environment/Libraries
Requires: php-common = %{version}-%{release}
BuildRequires: libicu-devel >= 3.6
%description intl
The php-intl package contains a dynamic shared object that will add
support for using the ICU library to PHP.
%package enchant
Summary: Human Language and Character Encoding Support
Group: System Environment/Libraries
Requires: php-common = %{version}-%{release}
BuildRequires: enchant-devel >= 1.2.4
%description enchant
The php-intl package contains a dynamic shared object that will add
support for using the enchant library to PHP.
%prep %prep
%setup -q %setup -q
%patch1 -p1 -b .gnusrc %patch1 -p1 -b .gnusrc
@ -421,13 +433,12 @@ support for using the recode library to PHP.
%patch41 -p1 -b .easter %patch41 -p1 -b .easter
%patch42 -p1 -b .systzdata %patch42 -p1 -b .systzdata
%patch60 -p1 -b .tests-dashn
%patch61 -p1 -b .tests-wddx %patch61 -p1 -b .tests-wddx
# Prevent %%doc confusion over LICENSE files # Prevent %%doc confusion over LICENSE files
cp Zend/LICENSE Zend/ZEND_LICENSE cp Zend/LICENSE Zend/ZEND_LICENSE
cp TSRM/LICENSE TSRM_LICENSE cp TSRM/LICENSE TSRM_LICENSE
cp regex/COPYRIGHT regex_COPYRIGHT cp ext/ereg/regex/COPYRIGHT regex_COPYRIGHT
cp ext/gd/libgd/README gd_README cp ext/gd/libgd/README gd_README
# Multiple builds for multiple SAPIs # Multiple builds for multiple SAPIs
@ -464,6 +475,27 @@ if test "x${vpdo}" != "x%{pdover}"; then
exit 1 exit 1
fi fi
# Check for some extension version
ver=$(sed -n '/#define PHP_FILEINFO_VERSION /{s/.* "//;s/".*$//;p}' ext/fileinfo/php_fileinfo.h)
if test "$ver" != "%{fileinfover}"; then
: Error: Upstream FILEINFO version is now ${ver}, expecting %{fileinfover}.
: Update the fileinfover macro and rebuild.
exit 1
fi
ver=$(sed -n '/#define PHP_PHAR_VERSION /{s/.* "//;s/".*$//;p}' ext/phar/php_phar.h)
if test "$ver" != "%{pharver}"; then
: Error: Upstream PHAR version is now ${ver}, expecting %{pharver}.
: Update the pharver macro and rebuild.
exit 1
fi
ver=$(sed -n '/#define PHP_ZIP_VERSION_STRING /{s/.* "//;s/".*$//;p}' ext/zip/php_zip.h)
if test "$ver" != "%{zipver}"; then
: Error: Upstream ZIP version is now ${ver}, expecting %{zipver}.
: Update the zipver macro and rebuild.
exit 1
fi
%build %build
# aclocal workaround - to be improved # aclocal workaround - to be improved
cat `aclocal --print-ac-dir`/{libtool,ltoptions,ltsugar,ltversion,lt~obsolete}.m4 >>aclocal.m4 cat `aclocal --print-ac-dir`/{libtool,ltoptions,ltsugar,ltversion,lt~obsolete}.m4 >>aclocal.m4
@ -547,7 +579,6 @@ build --enable-force-cgi-redirect \
--with-imap=shared --with-imap-ssl \ --with-imap=shared --with-imap-ssl \
--enable-mbstring=shared \ --enable-mbstring=shared \
--enable-mbregex \ --enable-mbregex \
--with-ncurses=shared \
--with-gd=shared \ --with-gd=shared \
--enable-bcmath=shared \ --enable-bcmath=shared \
--enable-dba=shared --with-db4=%{_prefix} \ --enable-dba=shared --with-db4=%{_prefix} \
@ -572,25 +603,29 @@ build --enable-force-cgi-redirect \
--with-pdo-pgsql=shared,%{_prefix} \ --with-pdo-pgsql=shared,%{_prefix} \
--with-pdo-sqlite=shared,%{_prefix} \ --with-pdo-sqlite=shared,%{_prefix} \
--with-pdo-dblib=shared,%{_prefix} \ --with-pdo-dblib=shared,%{_prefix} \
--with-sqlite3=shared,%{_prefix} \
--enable-json=shared \ --enable-json=shared \
--enable-zip=shared \ --enable-zip=shared \
--with-readline \ --with-readline \
--enable-dbase=shared \
--with-pspell=shared \ --with-pspell=shared \
--enable-phar=shared \
--with-mcrypt=shared,%{_prefix} \ --with-mcrypt=shared,%{_prefix} \
--with-mhash=shared,%{_prefix} \
--with-tidy=shared,%{_prefix} \ --with-tidy=shared,%{_prefix} \
--with-mssql=shared,%{_prefix} \ --with-mssql=shared,%{_prefix} \
--enable-sysvmsg=shared --enable-sysvshm=shared --enable-sysvsem=shared \ --enable-sysvmsg=shared --enable-sysvshm=shared --enable-sysvsem=shared \
--enable-posix=shared \ --enable-posix=shared \
--with-unixODBC=shared,%{_prefix} \ --with-unixODBC=shared,%{_prefix} \
--enable-fileinfo=shared \
--enable-intl=shared \
--with-icu-dir=%{_prefix} \
--with-enchant=shared,%{_prefix} \
--with-recode=shared,%{_prefix} --with-recode=shared,%{_prefix}
popd popd
without_shared="--without-mysql --without-gd \ without_shared="--without-mysql --without-gd \
--without-unixODBC --disable-dom \ --disable-dom --disable-dba --without-unixODBC \
--disable-dba --without-unixODBC \
--disable-pdo --disable-xmlreader --disable-xmlwriter \ --disable-pdo --disable-xmlreader --disable-xmlwriter \
--without-sqlite3 --disable-phar --disable-fileinfo \
--disable-json --without-pspell --disable-wddx \ --disable-json --without-pspell --disable-wddx \
--without-curl --disable-posix \ --without-curl --disable-posix \
--disable-sysvmsg --disable-sysvshm --disable-sysvsem" --disable-sysvmsg --disable-sysvshm --disable-sysvsem"
@ -668,11 +703,15 @@ install -m 755 -d $RPM_BUILD_ROOT%{_sysconfdir}/php.d
install -m 755 -d $RPM_BUILD_ROOT%{_localstatedir}/lib/php install -m 755 -d $RPM_BUILD_ROOT%{_localstatedir}/lib/php
install -m 700 -d $RPM_BUILD_ROOT%{_localstatedir}/lib/php/session install -m 700 -d $RPM_BUILD_ROOT%{_localstatedir}/lib/php/session
# Fix the link
(cd $RPM_BUILD_ROOT%{_bindir}; ln -sfn phar.phar phar)
# Generate files lists and stub .ini files for each subpackage # Generate files lists and stub .ini files for each subpackage
for mod in pgsql mysql mysqli odbc ldap snmp xmlrpc imap \ for mod in pgsql mysql mysqli odbc ldap snmp xmlrpc imap \
mbstring ncurses gd dom xsl soap bcmath dba xmlreader xmlwriter \ mbstring gd dom xsl soap bcmath dba xmlreader xmlwriter \
pdo pdo_mysql pdo_pgsql pdo_odbc pdo_sqlite json zip \ pdo pdo_mysql pdo_pgsql pdo_odbc pdo_sqlite json zip \
dbase mcrypt mhash tidy pdo_dblib mssql pspell curl wddx \ sqlite3 enchant phar fileinfo intl \
mcrypt tidy pdo_dblib mssql pspell curl wddx \
posix sysvshm sysvsem sysvmsg recode interbase pdo_firebird; do posix sysvshm sysvsem sysvmsg recode interbase pdo_firebird; do
cat > $RPM_BUILD_ROOT%{_sysconfdir}/php.d/${mod}.ini <<EOF cat > $RPM_BUILD_ROOT%{_sysconfdir}/php.d/${mod}.ini <<EOF
; Enable ${mod} extension module ; Enable ${mod} extension module
@ -700,12 +739,13 @@ cat files.pdo_firebird >> files.interbase
# sysv* and posix in packaged in php-process # sysv* and posix in packaged in php-process
cat files.sysv* files.posix > files.process cat files.sysv* files.posix > files.process
# Package pdo_sqlite with pdo; isolating the sqlite dependency # Package sqlite3 and pdo_sqlite with pdo; isolating the sqlite dependency
# isn't useful at this time since rpm itself requires sqlite. # isn't useful at this time since rpm itself requires sqlite.
cat files.pdo_sqlite >> files.pdo cat files.pdo_sqlite >> files.pdo
cat files.sqlite3 >> files.pdo
# Package json, dbase and zip in -common. # Package json, zip, curl, phar and fileinfo in -common.
cat files.json files.dbase files.zip files.curl > files.common cat files.json files.zip files.curl files.phar files.fileinfo > files.common
# Install the macros file: # Install the macros file:
install -d $RPM_BUILD_ROOT%{_sysconfdir}/rpm install -d $RPM_BUILD_ROOT%{_sysconfdir}/rpm
@ -753,6 +793,8 @@ rm files.* macros.php
%defattr(-,root,root) %defattr(-,root,root)
%{_bindir}/php %{_bindir}/php
%{_bindir}/php-cgi %{_bindir}/php-cgi
%{_bindir}/phar.phar
%{_bindir}/phar
%{_mandir}/man1/php.1* %{_mandir}/man1/php.1*
%doc sapi/cgi/README* sapi/cli/README %doc sapi/cgi/README* sapi/cli/README
@ -784,7 +826,6 @@ rm files.* macros.php
%files xml -f files.xml %files xml -f files.xml
%files xmlrpc -f files.xmlrpc %files xmlrpc -f files.xmlrpc
%files mbstring -f files.mbstring %files mbstring -f files.mbstring
%files ncurses -f files.ncurses
%files gd -f files.gd %files gd -f files.gd
%doc gd_README %doc gd_README
%files soap -f files.soap %files soap -f files.soap
@ -792,15 +833,23 @@ rm files.* macros.php
%files dba -f files.dba %files dba -f files.dba
%files pdo -f files.pdo %files pdo -f files.pdo
%files mcrypt -f files.mcrypt %files mcrypt -f files.mcrypt
%files mhash -f files.mhash
%files tidy -f files.tidy %files tidy -f files.tidy
%files mssql -f files.mssql %files mssql -f files.mssql
%files pspell -f files.pspell %files pspell -f files.pspell
%files intl -f files.intl
%files process -f files.process %files process -f files.process
%files recode -f files.recode %files recode -f files.recode
%files interbase -f files.interbase %files interbase -f files.interbase
%files enchant -f files.enchant
%changelog %changelog
* Sun Jul 12 2009 Remi Collet <Fedora@famillecollet.com> 5.3.0-1
- update to 5.3.0
- remove ncurses, dbase, mhash extensions
- add enchant, sqlite3, intl, phar, fileinfo extensions
- raise sqlite version to 3.6.0 (for sqlite3, build with --enable-load-extension)
- sync with upstream "production" php.ini
* Sat Jun 21 2009 Remi Collet <Fedora@famillecollet.com> 5.2.10-1 * Sat Jun 21 2009 Remi Collet <Fedora@famillecollet.com> 5.2.10-1
- update to 5.2.10 - update to 5.2.10
- add interbase sub-package - add interbase sub-package

View File

@ -1 +1 @@
15c7b5a87f57332d6fc683528e28247b php-5.2.10.tar.bz2 846760cd655c98dfd86d6d97c3d964b0 php-5.3.0.tar.bz2