summaryrefslogtreecommitdiff
path: root/lang/php52/files
diff options
context:
space:
mode:
Diffstat (limited to 'lang/php52/files')
-rw-r--r--lang/php52/files/patch-TSRM_threads.m411
-rw-r--r--lang/php52/files/patch-Zend::zend.h11
-rw-r--r--lang/php52/files/patch-Zend_zend_list.c38
-rw-r--r--lang/php52/files/patch-Zend_zend_list.h24
-rw-r--r--lang/php52/files/patch-acinclude.m453
-rw-r--r--lang/php52/files/patch-configure.in55
-rw-r--r--lang/php52/files/patch-ext_standard_array.c33
-rw-r--r--lang/php52/files/patch-ext_standard_basic_functions.c28
-rw-r--r--lang/php52/files/patch-ext_standard_image.c50
-rw-r--r--lang/php52/files/patch-ext_standard_php_dns.h13
-rw-r--r--lang/php52/files/patch-main::php_config.h.in12
-rw-r--r--lang/php52/files/patch-php.ini-dist18
-rw-r--r--lang/php52/files/patch-php.ini-recommended18
-rw-r--r--lang/php52/files/patch-sapi_cgi_Makefile.frag9
-rw-r--r--lang/php52/files/patch-sapi_cgi_config9.m455
-rw-r--r--lang/php52/files/patch-scripts::phpize.in13
16 files changed, 441 insertions, 0 deletions
diff --git a/lang/php52/files/patch-TSRM_threads.m4 b/lang/php52/files/patch-TSRM_threads.m4
new file mode 100644
index 000000000000..227f6d26c9d5
--- /dev/null
+++ b/lang/php52/files/patch-TSRM_threads.m4
@@ -0,0 +1,11 @@
+--- TSRM/threads.m4.orig 2005-04-27 15:22:18.000000000 +0200
++++ TSRM/threads.m4 2009-09-22 10:01:37.000000000 +0200
+@@ -79,7 +79,7 @@
+ pthread_mutexattr_t mattr;
+ int data = 1;
+ pthread_mutexattr_init(&mattr);
+- return pthread_create(&thd, NULL, thread_routine, &data);
++ return 0;
+ } ], [
+ pthreads_working=yes
+ ], [
diff --git a/lang/php52/files/patch-Zend::zend.h b/lang/php52/files/patch-Zend::zend.h
new file mode 100644
index 000000000000..49d678719636
--- /dev/null
+++ b/lang/php52/files/patch-Zend::zend.h
@@ -0,0 +1,11 @@
+--- Zend/zend.h.orig Tue Nov 15 14:35:22 2005
++++ Zend/zend.h Fri Nov 25 09:31:48 2005
+@@ -178,7 +178,7 @@
+ #endif
+
+
+-#if (HAVE_ALLOCA || (defined (__GNUC__) && __GNUC__ >= 2)) && !(defined(ZTS) && defined(ZEND_WIN32)) && !(defined(ZTS) && defined(NETWARE)) && !(defined(ZTS) && defined(HPUX)) && !defined(DARWIN)
++#if (HAVE_ALLOCA || (defined (__GNUC__) && __GNUC__ >= 2)) && !(defined(ZTS) && defined(ZEND_WIN32)) && !(defined(ZTS) && defined(NETWARE)) && !(defined(ZTS) && defined(HPUX)) && !defined(DARWIN) && !(defined(ZTS) && defined(__FreeBSD__))
+ # define do_alloca(p) alloca(p)
+ # define free_alloca(p)
+ #else
diff --git a/lang/php52/files/patch-Zend_zend_list.c b/lang/php52/files/patch-Zend_zend_list.c
new file mode 100644
index 000000000000..efa8862d1ce8
--- /dev/null
+++ b/lang/php52/files/patch-Zend_zend_list.c
@@ -0,0 +1,38 @@
+--- Zend/zend_list.c.orig 2007-01-01 10:35:46.000000000 +0100
++++ Zend/zend_list.c 2008-01-29 11:05:14.000000000 +0100
+@@ -48,7 +48,7 @@
+ return index;
+ }
+
+-ZEND_API int _zend_list_delete(int id TSRMLS_DC)
++ZEND_API int _zend_list_delete(ulong id TSRMLS_DC)
+ {
+ zend_rsrc_list_entry *le;
+
+@@ -65,7 +65,7 @@
+ }
+
+
+-ZEND_API void *_zend_list_find(int id, int *type TSRMLS_DC)
++ZEND_API void *_zend_list_find(ulong id, int *type TSRMLS_DC)
+ {
+ zend_rsrc_list_entry *le;
+
+@@ -78,7 +78,7 @@
+ }
+ }
+
+-ZEND_API int _zend_list_addref(int id TSRMLS_DC)
++ZEND_API int _zend_list_addref(ulong id TSRMLS_DC)
+ {
+ zend_rsrc_list_entry *le;
+
+@@ -350,7 +350,7 @@
+ }
+
+
+-char *zend_rsrc_list_get_rsrc_type(int resource TSRMLS_DC)
++char *zend_rsrc_list_get_rsrc_type(ulong resource TSRMLS_DC)
+ {
+ zend_rsrc_list_dtors_entry *lde;
+ int rsrc_type;
diff --git a/lang/php52/files/patch-Zend_zend_list.h b/lang/php52/files/patch-Zend_zend_list.h
new file mode 100644
index 000000000000..308ac56b33b2
--- /dev/null
+++ b/lang/php52/files/patch-Zend_zend_list.h
@@ -0,0 +1,24 @@
+--- Zend/zend_list.h.orig 2007-01-01 10:35:46.000000000 +0100
++++ Zend/zend_list.h 2008-01-29 11:05:12.000000000 +0100
+@@ -71,9 +71,9 @@
+ void zend_destroy_rsrc_list_dtors(void);
+
+ ZEND_API int zend_list_insert(void *ptr, int type);
+-ZEND_API int _zend_list_addref(int id TSRMLS_DC);
+-ZEND_API int _zend_list_delete(int id TSRMLS_DC);
+-ZEND_API void *_zend_list_find(int id, int *type TSRMLS_DC);
++ZEND_API int _zend_list_addref(ulong id TSRMLS_DC);
++ZEND_API int _zend_list_delete(ulong id TSRMLS_DC);
++ZEND_API void *_zend_list_find(ulong id, int *type TSRMLS_DC);
+
+ #define zend_list_addref(id) _zend_list_addref(id TSRMLS_CC)
+ #define zend_list_delete(id) _zend_list_delete(id TSRMLS_CC)
+@@ -82,7 +82,7 @@
+ ZEND_API int zend_register_resource(zval *rsrc_result, void *rsrc_pointer, int rsrc_type);
+ ZEND_API void *zend_fetch_resource(zval **passed_id TSRMLS_DC, int default_id, char *resource_type_name, int *found_resource_type, int num_resource_types, ...);
+
+-ZEND_API char *zend_rsrc_list_get_rsrc_type(int resource TSRMLS_DC);
++ZEND_API char *zend_rsrc_list_get_rsrc_type(ulong resource TSRMLS_DC);
+ ZEND_API int zend_fetch_list_dtor_id(char *type_name);
+
+ extern ZEND_API int le_index_ptr; /* list entry type for index pointers */
diff --git a/lang/php52/files/patch-acinclude.m4 b/lang/php52/files/patch-acinclude.m4
new file mode 100644
index 000000000000..4f9a9462f947
--- /dev/null
+++ b/lang/php52/files/patch-acinclude.m4
@@ -0,0 +1,53 @@
+--- acinclude.m4.orig 2009-05-09 22:28:02.000000000 +0200
++++ acinclude.m4 2009-06-25 08:08:05.000000000 +0200
+@@ -194,7 +194,7 @@
+ dnl
+ dnl which array to append to?
+ AC_DEFUN([PHP_ADD_SOURCES],[
+- PHP_ADD_SOURCES_X($1, $2, $3, ifelse($4,cli,PHP_CLI_OBJS,ifelse($4,sapi,PHP_SAPI_OBJS,PHP_GLOBAL_OBJS)))
++ PHP_ADD_SOURCES_X($1, $2, $3, ifelse($4,cli,PHP_CLI_OBJS,ifelse($4,sapi,PHP_SAPI_OBJS,ifelse($4,cgi,PHP_CGI_OBJS,PHP_GLOBAL_OBJS))))
+ ])
+
+ dnl
+@@ -968,15 +968,8 @@
+ if test "$3" != "shared" && test "$3" != "yes" && test "$4" = "cli"; then
+ dnl ---------------------------------------------- CLI static module
+ [PHP_]translit($1,a-z_-,A-Z__)[_SHARED]=no
+- case "$PHP_SAPI" in
+- cgi|embed[)]
+- PHP_ADD_SOURCES(PHP_EXT_DIR($1),$2,$ac_extra,)
+- EXT_STATIC="$EXT_STATIC $1"
+- ;;
+- *[)]
+ PHP_ADD_SOURCES(PHP_EXT_DIR($1),$2,$ac_extra,cli)
+- ;;
+- esac
++ PHP_ADD_SOURCES(PHP_EXT_DIR($1),$2,$ac_extra,cgi)
+ EXT_CLI_STATIC="$EXT_CLI_STATIC $1"
+ fi
+ PHP_ADD_BUILD_DIR($ext_builddir)
+@@ -1026,12 +1019,6 @@
+ build to be successful.
+ ])
+ fi
+- if test "x$is_it_enabled" = "xno" && test "x$3" != "xtrue"; then
+- AC_MSG_ERROR([
+-You've configured extension $1, which depends on extension $2,
+-but you've either not enabled $2, or have disabled it.
+-])
+- fi
+ dnl Some systems require that we link $2 to $1 when building
+ ])
+
+@@ -2303,9 +2290,9 @@
+ test -z "$PHP_IMAP_SSL" && PHP_IMAP_SSL=no
+
+ dnl Fallbacks for different configure options
+- if test "$PHP_OPENSSL" != "no"; then
++ if test -n "$PHP_OPENSSL" && test "$PHP_OPENSSL" != "no"; then
+ PHP_OPENSSL_DIR=$PHP_OPENSSL
+- elif test "$PHP_IMAP_SSL" != "no"; then
++ elif test -n "$PHP_IMAP_SSL" && test "$PHP_IMAP_SSL" != "no"; then
+ PHP_OPENSSL_DIR=$PHP_IMAP_SSL
+ fi
+
diff --git a/lang/php52/files/patch-configure.in b/lang/php52/files/patch-configure.in
new file mode 100644
index 000000000000..f5f5c5a113c9
--- /dev/null
+++ b/lang/php52/files/patch-configure.in
@@ -0,0 +1,55 @@
+--- configure.in.orig 2008-12-05 07:58:47.000000000 +0100
++++ configure.in 2008-12-05 08:02:26.000000000 +0100
+@@ -270,7 +270,6 @@
+ dnl .
+ dnl -------------------------------------------------------------------------
+
+-PTHREADS_CHECK
+ PHP_HELP_SEPARATOR([SAPI modules:])
+ PHP_SHLIB_SUFFIX_NAMES
+ PHP_SAPI=default
+@@ -295,7 +294,6 @@
+
+ if test "$enable_maintainer_zts" = "yes"; then
+ PTHREADS_ASSIGN_VARS
+- PTHREADS_FLAGS
+ fi
+
+ divert(3)
+@@ -1136,7 +1134,7 @@
+ EXPANDED_DATADIR=$datadir
+ EXPANDED_PHP_CONFIG_FILE_PATH=`eval echo "$PHP_CONFIG_FILE_PATH"`
+ EXPANDED_PHP_CONFIG_FILE_SCAN_DIR=`eval echo "$PHP_CONFIG_FILE_SCAN_DIR"`
+-INCLUDE_PATH=.:$EXPANDED_PEAR_INSTALLDIR
++INCLUDE_PATH=.:${prefix}/share/pear
+
+ exec_prefix=$old_exec_prefix
+ libdir=$old_libdir
+@@ -1344,22 +1342,19 @@
+ INLINE_CFLAGS="$INLINE_CFLAGS $standard_libtool_flag"
+ CXXFLAGS="$CXXFLAGS $standard_libtool_flag"
+
+-all_targets="$lcov_target \$(OVERALL_TARGET) \$(PHP_MODULES) \$(PHP_ZEND_EX) \$(PHP_CLI_TARGET)"
+-install_targets="$install_modules install-build install-headers install-programs $install_pear"
++all_targets="$lcov_target \$(OVERALL_TARGET) \$(PHP_MODULES) \$(PHP_ZEND_EX) \$(PHP_CLI_TARGET) \$(PHP_CGI_TARGET)"
++install_targets="$PHP_INSTALL_CLI_TARGET $PHP_INSTALL_CGI_TARGET $install_modules install-build install-headers install-programs $install_pear"
+
+ case $PHP_SAPI in
+- cli)
+- install_targets="$PHP_INSTALL_CLI_TARGET $install_targets"
+- ;;
+- *)
+- install_targets="install-sapi $PHP_INSTALL_CLI_TARGET $install_targets"
++ apache|apache2handler)
++ install_targets="install-sapi $install_targets"
+ ;;
+ esac
+
+ PHP_SUBST(all_targets)
+ PHP_SUBST(install_targets)
+
+-PHP_INSTALL_HEADERS([Zend/ TSRM/ include/ main/ main/streams/ regex/])
++PHP_INSTALL_HEADERS([Zend/ TSRM/ main/ main/streams/ regex/])
+
+ PHP_ADD_SOURCES(TSRM, TSRM.c tsrm_strtok_r.c tsrm_virtual_cwd.c)
+
diff --git a/lang/php52/files/patch-ext_standard_array.c b/lang/php52/files/patch-ext_standard_array.c
new file mode 100644
index 000000000000..bd6d4d0c95d4
--- /dev/null
+++ b/lang/php52/files/patch-ext_standard_array.c
@@ -0,0 +1,33 @@
+--- ext/standard/array.c.orig Mon Feb 12 20:20:48 2007
++++ ext/standard/array.c Mon Feb 12 20:22:14 2007
+@@ -295,6 +295,7 @@
+ PHP_FUNCTION(count)
+ {
+ zval *array;
++ zend_class_entry **ce_Countable;
+ long mode = COUNT_NORMAL;
+
+ if (zend_parse_parameters (ZEND_NUM_ARGS() TSRMLS_CC, "z|l", &array, &mode) == FAILURE)
+@@ -308,11 +309,11 @@
+ RETURN_LONG (php_count_recursive (array, mode TSRMLS_CC));
+ break;
+ case IS_OBJECT: {
+-#ifdef HAVE_SPL
+ /* it the object implements Countable we call its count() method */
+ zval *retval;
+
+- if (Z_OBJ_HT_P(array)->get_class_entry && instanceof_function(Z_OBJCE_P(array), spl_ce_Countable TSRMLS_CC)) {
++ if (zend_lookup_class_ex("Countable", 9, 0, &ce_Countable TSRMLS_CC) != FAILURE) {
++ if (Z_OBJ_HT_P(array)->get_class_entry && instanceof_function(Z_OBJCE_P(array), *ce_Countable TSRMLS_CC)) {
+ zend_call_method_with_0_params(&array, NULL, NULL, "count", &retval);
+ if (retval) {
+ convert_to_long(retval);
+@@ -321,7 +322,7 @@
+ }
+ return;
+ }
+-#endif
++ }
+ /* if not we return the number of properties (not taking visibility into account) */
+ if (Z_OBJ_HT_P(array)->count_elements) {
+ RETVAL_LONG(1);
diff --git a/lang/php52/files/patch-ext_standard_basic_functions.c b/lang/php52/files/patch-ext_standard_basic_functions.c
new file mode 100644
index 000000000000..9ef6dd343cbf
--- /dev/null
+++ b/lang/php52/files/patch-ext_standard_basic_functions.c
@@ -0,0 +1,28 @@
+--- ext/standard/basic_functions.c.orig 2008-06-09 14:06:40.000000000 +0200
++++ ext/standard/basic_functions.c 2008-06-09 14:08:28.000000000 +0200
+@@ -87,6 +87,7 @@
+ # include <sys/loadavg.h>
+ #endif
+
++#define HARTMUT_0
+ #ifdef HARTMUT_0
+ #include <getopt.h>
+ #endif
+@@ -3859,7 +3860,7 @@
+ SetEnvironmentVariable(pe->key, "bugbug");
+ #endif
+ putenv(pe->previous_value);
+-# if defined(PHP_WIN32)
++# if defined(PHP_WIN32) || __FreeBSD_version < 700050
+ efree(pe->previous_value);
+ # endif
+ } else {
+@@ -4461,7 +4462,7 @@
+ pe.previous_value = NULL;
+ for (env = environ; env != NULL && *env != NULL; env++) {
+ if (!strncmp(*env, pe.key, pe.key_len) && (*env)[pe.key_len] == '=') { /* found it */
+-#if defined(PHP_WIN32)
++#if defined(PHP_WIN32) || __FreeBSD_version < 700050
+ /* must copy previous value because MSVCRT's putenv can free the string without notice */
+ pe.previous_value = estrdup(*env);
+ #else
diff --git a/lang/php52/files/patch-ext_standard_image.c b/lang/php52/files/patch-ext_standard_image.c
new file mode 100644
index 000000000000..be29b54b2650
--- /dev/null
+++ b/lang/php52/files/patch-ext_standard_image.c
@@ -0,0 +1,50 @@
+--- ext/standard/image.c.orig 2007-10-04 15:31:11.000000000 +0200
++++ ext/standard/image.c 2007-11-13 22:47:04.000000000 +0100
+@@ -31,9 +31,7 @@
+ #endif
+ #include "php_image.h"
+
+-#if HAVE_ZLIB && !defined(COMPILE_DL_ZLIB)
+ #include "zlib.h"
+-#endif
+
+ /* file type markers */
+ PHPAPI const char php_sig_gif[3] = {'G', 'I', 'F'};
+@@ -80,9 +78,7 @@
+ REGISTER_LONG_CONSTANT("IMAGETYPE_JP2", IMAGE_FILETYPE_JP2, CONST_CS | CONST_PERSISTENT);
+ REGISTER_LONG_CONSTANT("IMAGETYPE_JPX", IMAGE_FILETYPE_JPX, CONST_CS | CONST_PERSISTENT);
+ REGISTER_LONG_CONSTANT("IMAGETYPE_JB2", IMAGE_FILETYPE_JB2, CONST_CS | CONST_PERSISTENT);
+-#if HAVE_ZLIB && !defined(COMPILE_DL_ZLIB)
+ REGISTER_LONG_CONSTANT("IMAGETYPE_SWC", IMAGE_FILETYPE_SWC, CONST_CS | CONST_PERSISTENT);
+-#endif
+ REGISTER_LONG_CONSTANT("IMAGETYPE_IFF", IMAGE_FILETYPE_IFF, CONST_CS | CONST_PERSISTENT);
+ REGISTER_LONG_CONSTANT("IMAGETYPE_WBMP", IMAGE_FILETYPE_WBMP, CONST_CS | CONST_PERSISTENT);
+ REGISTER_LONG_CONSTANT("IMAGETYPE_JPEG2000",IMAGE_FILETYPE_JPC, CONST_CS | CONST_PERSISTENT); /* keep alias */
+@@ -184,7 +180,6 @@
+ }
+ /* }}} */
+
+-#if HAVE_ZLIB && !defined(COMPILE_DL_ZLIB)
+ /* {{{ php_handle_swc
+ */
+ static struct gfxinfo *php_handle_swc(php_stream * stream TSRMLS_DC)
+@@ -255,7 +250,6 @@
+ return result;
+ }
+ /* }}} */
+-#endif
+
+ /* {{{ php_handle_swf
+ */
+@@ -1314,11 +1308,7 @@
+ result = php_handle_swf(stream TSRMLS_CC);
+ break;
+ case IMAGE_FILETYPE_SWC:
+-#if HAVE_ZLIB && !defined(COMPILE_DL_ZLIB)
+ result = php_handle_swc(stream TSRMLS_CC);
+-#else
+- php_error_docref(NULL TSRMLS_CC, E_NOTICE, "The image is a compressed SWF file, but you do not have a static version of the zlib extension enabled");
+-#endif
+ break;
+ case IMAGE_FILETYPE_PSD:
+ result = php_handle_psd(stream TSRMLS_CC);
diff --git a/lang/php52/files/patch-ext_standard_php_dns.h b/lang/php52/files/patch-ext_standard_php_dns.h
new file mode 100644
index 000000000000..8ab9e9c01d38
--- /dev/null
+++ b/lang/php52/files/patch-ext_standard_php_dns.h
@@ -0,0 +1,13 @@
+--- ext/standard/php_dns.h.orig Sun Jun 19 11:57:31 2005
++++ ext/standard/php_dns.h Sun Jun 19 12:03:37 2005
+@@ -25,6 +25,10 @@
+
+ #if HAVE_RES_NMKQUERY && HAVE_RES_NSEND && HAVE_DN_EXPAND && HAVE_DN_SKIPNAME
+ #define HAVE_DNS_FUNCS 1
++#define res_ninit __res_ninit
++#define res_nmkquery __res_nmkquery
++#define res_nsend __res_nsend
++#define res_nclose __res_nclose
+ #endif
+
+ PHP_FUNCTION(gethostbyaddr);
diff --git a/lang/php52/files/patch-main::php_config.h.in b/lang/php52/files/patch-main::php_config.h.in
new file mode 100644
index 000000000000..8e9938876421
--- /dev/null
+++ b/lang/php52/files/patch-main::php_config.h.in
@@ -0,0 +1,12 @@
+--- main/php_config.h.in.orig Wed Jan 11 15:25:52 2006
++++ main/php_config.h.in Wed May 3 09:38:09 2006
+@@ -2760,6 +2760,9 @@
+ /* Define if uint32_t type is present. */
+ #undef HAVE_UINT32_T
+
++/* Include external shared modules configurations */
++#include "ext/php_config.h"
++
+ /* Whether sprintf is broken */
+ #undef ZEND_BROKEN_SPRINTF
+
diff --git a/lang/php52/files/patch-php.ini-dist b/lang/php52/files/patch-php.ini-dist
new file mode 100644
index 000000000000..6d84f3a80891
--- /dev/null
+++ b/lang/php52/files/patch-php.ini-dist
@@ -0,0 +1,18 @@
+--- php.ini-dist.orig Fri Dec 30 18:19:43 2005
++++ php.ini-dist Mon Oct 16 08:12:28 2006
+@@ -165,6 +165,15 @@
+
+ ; Safe Mode
+ ;
++; SECURITY NOTE: The FreeBSD Security Officer strongly recommend that
++; the PHP Safe Mode feature not be relied upon for security, since the
++; issues Safe Mode tries to handle cannot properly be handled in PHP
++; (primarily due to PHP's use of external libraries). While many bugs
++; in Safe Mode has been fixed it's very likely that more issues exist
++; which allows a user to bypass Safe Mode restrictions.
++; For increased security we always recommend to install the Suhosin
++; extension.
++;
+ safe_mode = Off
+
+ ; By default, Safe Mode does a UID compare check when
diff --git a/lang/php52/files/patch-php.ini-recommended b/lang/php52/files/patch-php.ini-recommended
new file mode 100644
index 000000000000..7b648b1ea0b5
--- /dev/null
+++ b/lang/php52/files/patch-php.ini-recommended
@@ -0,0 +1,18 @@
+--- php.ini-recommended.orig Fri Dec 30 18:19:43 2005
++++ php.ini-recommended Mon Oct 16 08:13:05 2006
+@@ -223,6 +223,15 @@
+ ;
+ ; Safe Mode
+ ;
++; SECURITY NOTE: The FreeBSD Security Officer strongly recommend that
++; the PHP Safe Mode feature not be relied upon for security, since the
++; issues Safe Mode tries to handle cannot properly be handled in PHP
++; (primarily due to PHP's use of external libraries). While many bugs
++; in Safe Mode has been fixed it's very likely that more issues exist
++; which allows a user to bypass Safe Mode restrictions.
++; For increased security we recommend to always install the Suhosin
++; extension.
++;
+ safe_mode = Off
+
+ ; By default, Safe Mode does a UID compare check when
diff --git a/lang/php52/files/patch-sapi_cgi_Makefile.frag b/lang/php52/files/patch-sapi_cgi_Makefile.frag
new file mode 100644
index 000000000000..26a0e4b1a3ba
--- /dev/null
+++ b/lang/php52/files/patch-sapi_cgi_Makefile.frag
@@ -0,0 +1,9 @@
+--- sapi/cgi/Makefile.frag.orig Wed May 3 10:09:02 2006
++++ sapi/cgi/Makefile.frag Wed May 3 10:08:54 2006
+@@ -1,2 +1,5 @@
+-$(SAPI_CGI_PATH): $(PHP_GLOBAL_OBJS) $(PHP_SAPI_OBJS)
++$(SAPI_CGI_PATH): $(PHP_GLOBAL_OBJS) $(PHP_CGI_OBJS)
+ $(BUILD_CGI)
++
++install-cgi: $(SAPI_CGI_PATH)
++ @$(INSTALL_CGI)
diff --git a/lang/php52/files/patch-sapi_cgi_config9.m4 b/lang/php52/files/patch-sapi_cgi_config9.m4
new file mode 100644
index 000000000000..c40894155cc8
--- /dev/null
+++ b/lang/php52/files/patch-sapi_cgi_config9.m4
@@ -0,0 +1,55 @@
+--- sapi/cgi/config9.m4.orig Thu Jul 12 01:20:36 2007
++++ sapi/cgi/config9.m4 Wed Sep 5 07:55:06 2007
+@@ -25,7 +25,6 @@
+ dnl
+ dnl CGI setup
+ dnl
+-if test "$PHP_SAPI" = "default"; then
+ AC_MSG_CHECKING(whether to build CGI binary)
+ if test "$PHP_CGI" != "no"; then
+ AC_MSG_RESULT(yes)
+@@ -85,8 +84,9 @@
+ AC_MSG_RESULT($PHP_PATH_INFO_CHECK)
+
+ dnl Set install target and select SAPI
+- INSTALL_IT="@echo \"Installing PHP CGI binary: \$(INSTALL_ROOT)\$(bindir)/\"; \$(INSTALL) -m 0755 \$(SAPI_CGI_PATH) \$(INSTALL_ROOT)\$(bindir)/\$(program_prefix)php-cgi\$(program_suffix)\$(EXEEXT)"
+- PHP_SELECT_SAPI(cgi, program, $PHP_FCGI_FILES cgi_main.c getopt.c,, '$(SAPI_CGI_PATH)')
++ INSTALL_CGI="@echo \"Installing PHP CGI binary: \$(INSTALL_ROOT)\$(bindir)/\"; \$(INSTALL) -m 0755 \$(SAPI_CGI_PATH) \$(INSTALL_ROOT)\$(bindir)/\$(program_prefix)php-cgi\$(program_suffix)\$(EXEEXT)"
++ PHP_ADD_SOURCES(sapi/cgi, $PHP_FCGI_FILES cgi_main.c getopt.c,, cgi)
++ PHP_ADD_SOURCES(/main, internal_functions.c,,cgi)
+
+ case $host_alias in
+ *aix*)
+@@ -96,17 +96,29 @@
+ BUILD_CGI="\$(CC) \$(CFLAGS_CLEAN) \$(EXTRA_CFLAGS) \$(EXTRA_LDFLAGS_PROGRAM) \$(LDFLAGS) \$(NATIVE_RPATHS) \$(PHP_GLOBAL_OBJS:.lo=.o) \$(PHP_SAPI_OBJS:.lo=.o) \$(PHP_FRAMEWORKS) \$(EXTRA_LIBS) \$(ZEND_EXTRA_LIBS) -o \$(SAPI_CGI_PATH)"
+ ;;
+ *)
+- BUILD_CGI="\$(LIBTOOL) --mode=link \$(CC) -export-dynamic \$(CFLAGS_CLEAN) \$(EXTRA_CFLAGS) \$(EXTRA_LDFLAGS_PROGRAM) \$(LDFLAGS) \$(PHP_RPATHS) \$(PHP_GLOBAL_OBJS) \$(PHP_SAPI_OBJS) \$(EXTRA_LIBS) \$(ZEND_EXTRA_LIBS) -o \$(SAPI_CGI_PATH)"
++ BUILD_CGI="\$(LIBTOOL) --mode=link \$(CC) -export-dynamic \$(CFLAGS_CLEAN) \$(EXTRA_CFLAGS) \$(EXTRA_LDFLAGS_PROGRAM) \$(LDFLAGS) \$(PHP_RPATHS) \$(PHP_GLOBAL_OBJS) \$(PHP_CGI_OBJS) \$(EXTRA_LIBS) \$(ZEND_EXTRA_LIBS) -o \$(SAPI_CGI_PATH)"
+ ;;
+ esac
+
++ PHP_CGI_TARGET="\$(SAPI_CGI_PATH)"
++ PHP_INSTALL_CGI_TARGET="install-cgi"
+ PHP_SUBST(BUILD_CGI)
++ PHP_SUBST(INSTALL_CGI)
++ PHP_SUBST(PHP_CGI_OBJS)
++ PHP_SUBST(PHP_CGI_TARGET)
++ PHP_SUBST(PHP_INSTALL_CGI_TARGET)
+
+- elif test "$PHP_CLI" != "no"; then
+- AC_MSG_RESULT(no)
++ if test "$PHP_SAPI" = "default" ; then
++ PHP_BUILD_PROGRAM($SAPI_CGI_PATH)
++ fi
++ else
++ AC_MSG_RESULT(no)
++ if test "$PHP_SAPI" = "default" ; then
++ if test "$PHP_CLI" != "no" ; then
+ OVERALL_TARGET=
+ PHP_SAPI=cli
+ else
+ AC_MSG_ERROR([No SAPIs selected.])
+ fi
++ fi
+ fi
diff --git a/lang/php52/files/patch-scripts::phpize.in b/lang/php52/files/patch-scripts::phpize.in
new file mode 100644
index 000000000000..8d3afdbecc08
--- /dev/null
+++ b/lang/php52/files/patch-scripts::phpize.in
@@ -0,0 +1,13 @@
+--- scripts/phpize.in.orig Mon Dec 12 12:51:45 2005
++++ scripts/phpize.in Wed May 3 09:38:09 2006
+@@ -99,8 +99,8 @@
+
+ phpize_check_autotools()
+ {
+- test -z "$PHP_AUTOCONF" && PHP_AUTOCONF=autoconf
+- test -z "$PHP_AUTOHEADER" && PHP_AUTOHEADER=autoheader
++ test -z "$PHP_AUTOCONF" && PHP_AUTOCONF=autoconf-2.62
++ test -z "$PHP_AUTOHEADER" && PHP_AUTOHEADER=autoheader-2.62
+
+ if test ! -x "`$php_shtool path $PHP_AUTOCONF`"; then
+ cat <<EOF