types refactoring
[m6w6/ext-psi] / config.m4
index b54c98ee9373af09a620a01aaa8fd6c2d763783c..47ee1b071268c15aaf0856ff14f003a491287f0e 100644 (file)
--- a/config.m4
+++ b/config.m4
@@ -62,6 +62,7 @@ if test "$PHP_PSI" != no; then
        PSI_CHECK_LIBJIT
        PSI_CHECK_LIBFFI
 
+       AC_PATH_PROG(NM, nm)
        AC_FUNC_FNMATCH
        
        PSI_CONFIG_INIT
@@ -110,14 +111,17 @@ if test "$PHP_PSI" != no; then
        AC_DEFINE_UNQUOTED([PSI_VA_DECLS], [$PSI_VA_DECLS], [Predefined vararg functions])
 
        PHP_ADD_INCLUDE($PHP_PSI_SRCDIR/src)
+       PHP_ADD_INCLUDE($PHP_PSI_SRCDIR/src/types)
        PHP_ADD_BUILD_DIR($PHP_PSI_BUILDDIR/src)
-
-       PHP_PSI_HEADERS=`(cd $PHP_PSI_SRCDIR/src && echo *.h)`
-       PHP_PSI_SOURCES= # parser* should come first
-       PHP_PSI_SOURCES="$PHP_PSI_SOURCES src/parser_proc.c src/parser.c"
-       PHP_PSI_SOURCES="$PHP_PSI_SOURCES src/libjit.c src/libffi.c src/engine.c"
-       PHP_PSI_SOURCES="$PHP_PSI_SOURCES src/marshal.c src/calc.c src/module.c"
-       PHP_PSI_SOURCES="$PHP_PSI_SOURCES `(cd $PHP_PSI_SRCDIR && echo src/context*.c)`"
+       PHP_ADD_BUILD_DIR($PHP_PSI_BUILDDIR/src/types)
+
+       PHP_PSI_HEADERS=`(cd $PHP_PSI_SRCDIR/src && ls *.h types/*.h)`
+       # parser* should come first
+       PHP_PSI_SOURCES=" \
+               src/parser_proc.c \
+               src/parser.c \
+               `(cd $PHP_PSI_SRCDIR && ls src/*.c src/types/*.c | $EGREP -v '^src/parser')` \
+       "
 
        PHP_NEW_EXTENSION(psi, $PHP_PSI_SOURCES, $ext_shared)
        PHP_INSTALL_HEADERS(ext/psi, php_psi.h $PHP_PSI_HEADERS)