summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--build.mk25
-rw-r--r--ext/pcre/config0.m464
-rw-r--r--ext/standard/array.c18
-rw-r--r--main/internal_functions_win32.c4
-rw-r--r--php4dllts.dsp8
5 files changed, 38 insertions, 81 deletions
diff --git a/build.mk b/build.mk
index 69c52cee2c..8341a47a87 100644
--- a/build.mk
+++ b/build.mk
@@ -11,7 +11,9 @@
#
# $Id$
-LT_TARGETS = ltconfig ltmain.sh config.guess config.sub
+
+LT_TARGETS = ltmain.sh ltconfig
+LT_PATCHES = patch-aa patch-ab
SUBDIRS = libzend TSRM
@@ -20,7 +22,7 @@ makefile_in_files = $(makefile_am_files:.am=.in)
makefile_files = $(makefile_am_files:e.am=e)
config_h_in = php_config.h.in
-
+
config_h_files = \
$(shell echo ext/*/config.h.stub sapi/*/config.h.stub)
@@ -29,7 +31,7 @@ config_m4_files = \
acconfig_h_SOURCES = acconfig.h.in $(config_h_files)
-targets = $(makefile_in_files) configure $(config_h_in)
+targets = $(makefile_in_files) $(LT_TARGETS) configure $(config_h_in)
all: $(targets)
@for i in $(SUBDIRS); do \
@@ -61,17 +63,20 @@ acconfig.h: $(acconfig_h_SOURCES)
@echo rebuilding $@
@cat $(acconfig_h_SOURCES) > $@
+$(LT_TARGETS): $(LT_PATCHES)
+ rm -f $(LT_TARGETS)
+ libtoolize --automake -c -f
+ patch ltconfig < patch-aa
+ patch ltmain.sh < patch-ab
+ @grep compile_rpath ltconfig >/dev/null 2>&1 || (\
+ echo "patching libtool components failed."; \
+ exit 1)
+
+
$(makefile_in_files): $(makefile_am_files) aclocal.m4
@echo rebuilding Makefile.in\'s
- @for i in $(LT_TARGETS); do \
- if test -f "$$i"; then \
- mv $$i $$i.bak; \
- cp $$i.bak $$i; \
- fi; \
- done
@automake -a -i $(AMFLAGS) $(makefile_files) 2>&1 \
| grep -v PHP_OUTPUT_FILES || true >&2
- @for i in $(LT_TARGETS); do mv $$i.bak $$i; done
aclocal.m4: configure.in acinclude.m4
aclocal
diff --git a/ext/pcre/config0.m4 b/ext/pcre/config0.m4
deleted file mode 100644
index 729e99e52d..0000000000
--- a/ext/pcre/config0.m4
+++ /dev/null
@@ -1,64 +0,0 @@
-dnl $Id$
-dnl config.m4 for extension pcre
-
-dnl By default we'll compile and link against the bundled PCRE library
-dnl if DIR is supplied, we'll use that for linking
-
-AC_MSG_CHECKING(whether to include PCRE support)
-AC_ARG_WITH(pcre-regex,
-[ --without-pcre-regex Do not include Perl Compatible Regular Expressions
- support. Use --with-pcre-regex=DIR to specify DIR
- where PCRE's include and library files are located,
- if not using bundled library.],
-[
- case "$withval" in
- no)
- AC_MSG_RESULT(no)
- ;;
- yes)
- EXTRA_LIBS="-L$abs_builddir/ext/pcre/pcrelib -lpcre $EXTRA_LIBS"
- PCRE_SUBDIR="pcrelib"
- AC_DEFINE(HAVE_BUNDLED_PCRE, 1)
- AC_MSG_RESULT(yes)
- PHP_EXTENSION(pcre)
- PHP_OUTPUT(ext/pcre/pcrelib/Makefile)
- ;;
- *)
- if test -f $withval/pcre.h ; then
- changequote({,})
- pcre_major=`grep PCRE_MAJOR $withval/pcre.h | sed -e 's/[^0-9]//g'`
- pcre_minor=`grep PCRE_MINOR $withval/pcre.h | sed -e 's/[^0-9]//g'`
- changequote([,])
- pcre_version=$pcre_major$pcre_minor
- if test "$pcre_version" -ge 208; then
- AC_ADD_INCLUDE($withval)
- else
- AC_MSG_ERROR(PCRE extension requires PCRE library version >= 2.08)
- fi
- else
- AC_MSG_ERROR(Could not find pcre.h in $withval)
- fi
-
- if test -f $withval/libpcre.a ; then
- AC_ADD_LIBRARY_WITH_PATH(pcre, $withval)
- else
- AC_MSG_ERROR(Could not find libpcre.a in $withval)
- fi
-
- AC_DEFINE(HAVE_PCRE, 1)
- AC_MSG_RESULT(yes)
- PHP_EXTENSION(pcre)
- ;;
- esac
-],[
- PCRE_LIBADD=pcrelib/libpcre.la
- PCRE_SUBDIRS=pcrelib
- AC_DEFINE(HAVE_BUNDLED_PCRE, 1)
- AC_MSG_RESULT(yes)
- PHP_EXTENSION(pcre)
- PHP_OUTPUT(ext/pcre/pcrelib/Makefile)
-])
-AC_SUBST(PCRE_LIBADD)
-AC_SUBST(PCRE_SUBDIRS)
-
-AC_CHECK_FUNC(memmove, [], [AC_DEFINE(USE_BCOPY, 1)])
diff --git a/ext/standard/array.c b/ext/standard/array.c
index cf8114a2b6..a802aeb0e3 100644
--- a/ext/standard/array.c
+++ b/ext/standard/array.c
@@ -57,7 +57,6 @@ function_entry array_functions[] = {
PHP_FE(uksort, first_arg_force_ref)
PHP_FE(shuffle, first_arg_force_ref)
PHP_FE(array_walk, first_arg_force_ref)
- PHP_FALIAS(sizeof, count, first_arg_allow_ref)
PHP_FE(count, first_arg_allow_ref)
PHP_FE(end, first_arg_force_ref)
PHP_FE(prev, first_arg_force_ref)
@@ -65,7 +64,6 @@ function_entry array_functions[] = {
PHP_FE(reset, first_arg_force_ref)
PHP_FE(current, first_arg_force_ref)
PHP_FE(key, first_arg_force_ref)
- PHP_FALIAS(pos, current, first_arg_force_ref)
PHP_FE(min, NULL)
PHP_FE(max, NULL)
PHP_FE(in_array, NULL)
@@ -85,6 +83,10 @@ function_entry array_functions[] = {
PHP_FE(array_count_values, NULL)
PHP_FE(array_reverse, NULL)
PHP_FE(array_pad, NULL)
+
+ /* Aliases */
+ PHP_FALIAS(pos, current, first_arg_force_ref)
+ PHP_FALIAS(sizeof, count, first_arg_allow_ref)
{NULL, NULL, NULL}
};
@@ -102,6 +104,8 @@ zend_module_entry array_module_entry = {
PHP_MINIT_FUNCTION(array)
{
+ ELS_FETCH();
+
REGISTER_LONG_CONSTANT("EXTR_OVERWRITE", EXTR_OVERWRITE, CONST_CS | CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("EXTR_SKIP", EXTR_SKIP, CONST_CS | CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("EXTR_PREFIX_SAME", EXTR_PREFIX_SAME, CONST_CS | CONST_PERSISTENT);
@@ -574,10 +578,12 @@ PHP_FUNCTION(reset)
if (zend_hash_get_current_data(target_hash, (void **) &entry) == FAILURE) {
return;
}
-
- *return_value = **entry;
- pval_copy_constructor(return_value);
- INIT_PZVAL(return_value); /* XXX is this needed? */
+
+ if (return_value_used) {
+ *return_value = **entry;
+ pval_copy_constructor(return_value);
+ /* INIT_PZVAL(return_value); XXX is this needed? - No! :) */
+ }
}
PHP_FUNCTION(current)
diff --git a/main/internal_functions_win32.c b/main/internal_functions_win32.c
index 73ceb20b8d..403738aeb5 100644
--- a/main/internal_functions_win32.c
+++ b/main/internal_functions_win32.c
@@ -46,6 +46,7 @@
#include "ext/standard/php3_standard.h"
#include "ext/standard/php_lcg.h"
#include "ext/standard/php_output.h"
+#include "ext/standard/php_array.h"
#include "ext/COM/php_COM.h"
#include "ext/standard/reg.h"
#include "ext/pcre/php_pcre.h"
@@ -82,7 +83,8 @@ zend_module_entry *php3_builtin_modules[] = {
phpext_odbc_ptr,
phpext_lcg_ptr,
phpext_session_ptr,
- phpext_output_ptr
+ phpext_output_ptr,
+ array_module_ptr
};
diff --git a/php4dllts.dsp b/php4dllts.dsp
index 0d1e929cab..f0be228be3 100644
--- a/php4dllts.dsp
+++ b/php4dllts.dsp
@@ -271,6 +271,10 @@ SOURCE=.\ext\apache\apache.c
# End Source File
# Begin Source File
+SOURCE=.\ext\standard\array.c
+# End Source File
+# Begin Source File
+
SOURCE=.\ext\standard\base64.c
# End Source File
# Begin Source File
@@ -560,6 +564,10 @@ SOURCE=.\functions\php3_syslog.h
# End Source File
# Begin Source File
+SOURCE=.\ext\standard\php_array.h
+# End Source File
+# Begin Source File
+
SOURCE=.\ext\standard\php_lcg.h
# End Source File
# Begin Source File