Skip to content

Commit

Permalink
- MFH Allow zend_extensions to be build inside ext and tested with 'm…
Browse files Browse the repository at this point in the history
…ake test'
  • Loading branch information
helly25 committed Feb 17, 2008
1 parent 22392af commit 2633dca
Show file tree
Hide file tree
Showing 3 changed files with 30 additions and 9 deletions.
9 changes: 7 additions & 2 deletions Makefile.global
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ all: $(all_targets)
@echo "Don't forget to run 'make test'."
@echo

build-modules: $(PHP_MODULES)
build-modules: $(PHP_MODULES) $(PHP_ZEND_EX)

libphp$(PHP_MAJOR_VERSION).la: $(PHP_GLOBAL_OBJS) $(PHP_SAPI_OBJS)
$(LIBTOOL) --mode=link $(CC) $(CFLAGS) $(EXTRA_CFLAGS) -rpath $(phptempdir) $(EXTRA_LDFLAGS) $(LDFLAGS) $(PHP_RPATHS) $(PHP_GLOBAL_OBJS) $(PHP_SAPI_OBJS) $(EXTRA_LIBS) $(ZEND_EXTRA_LIBS) -o $@
Expand Down Expand Up @@ -73,6 +73,11 @@ PHP_TEST_SHARED_EXTENSIONS = ` \
for i in $(PHP_MODULES)""; do \
. $$i; $(top_srcdir)/build/shtool echo -n -- " -d extension=$$dlname"; \
done; \
fi; \
if test "x$(PHP_ZEND_EX)" != "x"; then \
for i in $(PHP_ZEND_EX)""; do \
. $$i; $(top_srcdir)/build/shtool echo -n -- " -d $(ZEND_EXT_TYPE)=$(top_builddir)/modules/$$dlname"; \
done; \
fi`

test: all
Expand All @@ -84,7 +89,7 @@ test: all
elif test ! -z "$(SAPI_CLI_PATH)" && test -x "$(SAPI_CLI_PATH)"; then \
INI_FILE=`$(top_builddir)/$(SAPI_CLI_PATH) -r 'echo php_ini_loaded_file();'`; \
if test "$$INI_FILE"; then \
$(EGREP) -v '^extension[\t\ ]*=' "$$INI_FILE" > $(top_builddir)/tmp-php.ini; \
$(EGREP) -v '^(zend_)?extension(_debug)?(_ts)?[\t\ ]*=' "$$INI_FILE" > $(top_builddir)/tmp-php.ini; \
else \
echo > $(top_builddir)/tmp-php.ini; \
fi; \
Expand Down
14 changes: 9 additions & 5 deletions acinclude.m4
Original file line number Diff line number Diff line change
Expand Up @@ -837,7 +837,7 @@ AC_DEFUN([PHP_BUILD_PROGRAM],[
])

dnl
dnl PHP_SHARED_MODULE(module-name, object-var, build-dir, cxx)
dnl PHP_SHARED_MODULE(module-name, object-var, build-dir, cxx, zend_ext)
dnl
dnl Basically sets up the link-stage for building module-name
dnl from object_var in build-dir.
Expand All @@ -860,7 +860,11 @@ AC_DEFUN([PHP_SHARED_MODULE],[
;;
esac
PHP_MODULES="$PHP_MODULES \$(phplibdir)/$1.$suffix"
if test "x$5" = "xyes"; then
PHP_ZEND_EX="$PHP_ZEND_EX \$(phplibdir)/$1.$suffix"
else
PHP_MODULES="$PHP_MODULES \$(phplibdir)/$1.$suffix"
fi
PHP_SUBST($2)
cat >>Makefile.objects<<EOF
\$(phplibdir)/$1.$suffix: $3/$1.$suffix
Expand Down Expand Up @@ -916,7 +920,7 @@ AC_DEFUN([PHP_GEN_BUILD_DIRS],[
])

dnl
dnl PHP_NEW_EXTENSION(extname, sources [, shared [,sapi_class[, extra-cflags[, cxx]]]])
dnl PHP_NEW_EXTENSION(extname, sources [, shared [,sapi_class[, extra-cflags[, cxx[, zend_ext]]]]])
dnl
dnl Includes an extension in the build.
dnl
Expand Down Expand Up @@ -949,10 +953,10 @@ dnl ---------------------------------------------- Shared module
PHP_ADD_SOURCES_X(PHP_EXT_DIR($1),$2,$ac_extra,shared_objects_$1,yes)
case $host_alias in
*netware*[)]
PHP_SHARED_MODULE(php$1,shared_objects_$1, $ext_builddir, $6)
PHP_SHARED_MODULE(php$1,shared_objects_$1, $ext_builddir, $6, $7)
;;
*[)]
PHP_SHARED_MODULE($1,shared_objects_$1, $ext_builddir, $6)
PHP_SHARED_MODULE($1,shared_objects_$1, $ext_builddir, $6, $7)
;;
esac
AC_DEFINE_UNQUOTED([COMPILE_DL_]translit($1,a-z_-,A-Z__), 1, Whether to build $1 as dynamic module)
Expand Down
16 changes: 14 additions & 2 deletions configure.in
Original file line number Diff line number Diff line change
Expand Up @@ -899,7 +899,7 @@ enable_static=yes
case $php_build_target in
program|static)
standard_libtool_flag='-prefer-non-pic -static'
if test -z "$PHP_MODULES"; then
if test -z "$PHP_MODULES" && test -z "$PHP_ZEND_EX"; then
enable_shared=no
fi
;;
Expand Down Expand Up @@ -1166,6 +1166,7 @@ PHP_SUBST(PHP_CLI_OBJS)
PHP_SUBST(PHP_GLOBAL_OBJS)

PHP_SUBST(PHP_MODULES)
PHP_SUBST(PHP_ZEND_EX)

PHP_SUBST(EXT_LIBS)

Expand Down Expand Up @@ -1247,6 +1248,17 @@ if test "$PHP_THREAD_SAFETY" = "yes" && test "$PHP_MYSQL" = "yes"; then
CPPFLAGS="$CPPFLAGS -DTHREAD=1"
fi

if test "$PHP_DEBUG" = "yes" && test "$PHP_THREAD_SAFETY" = "yes; then
ZEND_EXT_TYPE="zend_extension_debug_ts"
elif test "$PHP_DEBUG" = "yes"; then
ZEND_EXT_TYPE="zend_extension_debug"
elif test "$PHP_THREAD_SAFETY" = "yes; then
ZEND_EXT_TYPE="zend_extension_ts"
else
ZEND_EXT_TYPE="zend_extension"
fi
PHP_SUBST(ZEND_EXT_TYPE)

dnl
dnl Libtool creation
dnl
Expand Down Expand Up @@ -1283,7 +1295,7 @@ CFLAGS="\$(CFLAGS_CLEAN) $standard_libtool_flag"
INLINE_CFLAGS="$INLINE_CFLAGS $standard_libtool_flag"
CXXFLAGS="$CXXFLAGS $standard_libtool_flag"

all_targets="$lcov_target \$(OVERALL_TARGET) \$(PHP_MODULES) \$(PHP_CLI_TARGET)"
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"

case $PHP_SAPI in
Expand Down

0 comments on commit 2633dca

Please sign in to comment.