(trying again without attachments)
Andi Gutmans wrote:
Another reminder, I'd like to roll RC1 on Monday. Everyone will be back from OSCON and we can start the Unicode merge right afterwards.
currently phpize just copies the php-src Makefile.global to
extensions, i have a patch ready for making this a seperate
file as some of the makefile targets really make no sense
with standalone extensions,
and esp. "make test" won't ever work for extensions the
way it is done now
now that extension loading using the -d command line option
finally works i'd like to suggest the attached small changes
to configure.in (install run-tests.php by default),
scripts/Makefile.frag (install the new phpize.global instead
of the php-src Makefile.global) and scripts/phpize.in
(copy run-tests.php to the extension dir, process the new
phpize.global to create the extensions Makefile.global instead
of the older Makefile.global)
this change will only affect PECL extensions, not the
regular build system, and it finaly makes "make test"
work for PECL, extension loading is taken care of for
the tests and only the local tests directory is
searched for tests
Index: configure.in
RCS file: /repository/php-src/configure.in,v
retrieving revision 1.577
diff -u -r1.577 configure.in
--- configure.in 27 Jul 2005 15:24:36 -0000 1.577
+++ configure.in 7 Aug 2005 20:45:11 -0000
@@ -1183,7 +1183,7 @@
CXXFLAGS="$CXXFLAGS $standard_libtool_flag"
all_targets='$(OVERALL_TARGET) $(PHP_MODULES) $(PHP_CLI_TARGET)'
-install_targets="$install_modules $install_pear install-build install-headers install-programs"
+install_targets="$install_modules $install_pear install-build install-headers install-programs install-tester"
case $PHP_SAPI in
cgi)
Index: scripts/Makefile.frag
RCS file: /repository/php-src/scripts/Makefile.frag,v
retrieving revision 1.23
diff -u -r1.23 Makefile.frag
--- scripts/Makefile.frag 7 Jun 2005 21:56:09 -0000 1.23
+++ scripts/Makefile.frag 7 Aug 2005 20:45:14 -0000
@@ -8,10 +8,10 @@
BUILD_FILES =
scripts/phpize.m4 \
- scripts/phpize.global
build/mkdep.awk
build/scan_makefile_in.awk
build/libtool.m4 \
- Makefile.global
acinclude.m4
ltmain.sh
Index: scripts/phpize.in
RCS file: /repository/php-src/scripts/phpize.in,v
retrieving revision 1.26
diff -u -r1.26 phpize.in
--- scripts/phpize.in 4 Aug 2005 16:57:15 -0000 1.26
+++ scripts/phpize.in 7 Aug 2005 20:45:14 -0000
@@ -8,7 +8,7 @@
builddir="pwd
"
FILES_BUILD="mkdep.awk scan_makefile_in.awk shtool libtool.m4"
-FILES="acinclude.m4 Makefile.global config.sub config.guess ltmain.sh"
+FILES="acinclude.m4 config.sub config.guess ltmain.sh ../run-tests.php"
CLEAN_FILES="$FILES *.o *.lo .la .deps .libs/ build/ include/ modules/ install-sh
mkinstalldirs missing config.nice config.sub config.guess configure configure.in
aclocal.m4 config.h config.h.in conftest ltmain.sh libtool config.cache autom4te.cache/
@@ -118,7 +118,7 @@
phpize_copy_files()
{
test -d build || mkdir build
- (cd "$phpdir" && cp $FILES_BUILD "$builddir"/build)
(cd "$phpdir" && cp $FILES "$builddir")
(cd "$builddir" && cat acinclude.m4 ./build/libtool.m4 > aclocal.m4)
@@ -129,6 +129,10 @@
sed
-e "s#@prefix@#$prefix#"
< "$phpdir/phpize.m4" > configure.in - sed \
- -e "s#@prefix@#$prefix#" \
- < "$phpdir/phpize.global" > Makefile.global
}
phpize_autotools()
===================================================================
This file becomes Makefile.global for self-contained extensions.
mkinstalldirs = $(top_srcdir)/build/shtool mkdir -p
INSTALL = $(top_srcdir)/build/shtool install -c
INSTALL_DATA = $(INSTALL) -m 644
DEFS = -DPHP_ATOM_INC -I$(top_builddir)/include -I$(top_builddir)/main -I$(top_srcdir)
COMMON_FLAGS = $(DEFS) $(INCLUDES) $(EXTRA_INCLUDES) $(CPPFLAGS) $(PHP_FRAMEWORKPATH)
CORE_HEADERS = Zend/ TSRM/ include/ main/ main/streams/ regex/ ext/standard/
INSTALL_HEADERS = $(CORE_HEADERS) $(INSTALL_EXT_HEADERS)
all: $(all_targets)
@echo
@echo "Build complete."
@echo
build-modules: $(PHP_MODULES)
install: $(all_targets) $(install_targets)
install-modules: build-modules
@test -d modules &&
$(mkinstalldirs) $(INSTALL_ROOT)$(EXTENSION_DIR)
@echo "Installing shared extensions: $(INSTALL_ROOT)$(EXTENSION_DIR)/"
@rm -f modules/.la >/dev/null 2>&1
@$(INSTALL) modules/ $(INSTALL_ROOT)$(EXTENSION_DIR)
test: all
TEST_PHP_EXECUTABLE="/usr/local/bin/php"
TEST_PHP_SRCDIR=$(top_srcdir)
CC="$(CC)"
/usr/local/bin/php -d 'open_basedir=' -d 'safe_mode=0' -d 'output_buffering=0' -d 'memory_limit=-1' run-tests.php -d 'extension_dir='pwd
'/modules' -d 'extension='basename $(PHP_MODULES) .la
'.so' tests;
clean:
find . -name *.lo -o -name *.o | xargs rm -f
find . -name *.la -o -name *.a | xargs rm -f
find . -name *.so | xargs rm -f
find . -name .libs -a -type d|xargs rm -rf
rm -f $(OVERALL_TARGET) modules/* libs/*
distclean: clean
rm -f config.cache config.log config.status Makefile.objects Makefile.fragments libtool main/php_config.h stamp-h php5.spec sapi/apache/libphp5.module buildmk.stamp
$(EGREP) define'.include/php' $(top_srcdir)/configure | $(SED) 's/.>//'|xargs rm -f
find . -name Makefile | xargs rm -f
.PHONY: all clean install distclean test
.NOEXPORT:
--
Hartmut Holzgraefe, Senior Support Engineer .
MySQL AB, www.mysql.com