summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ext/informix/Makefile.am3
-rw-r--r--ext/informix/config.m412
2 files changed, 14 insertions, 1 deletions
diff --git a/ext/informix/Makefile.am b/ext/informix/Makefile.am
index 51337b0c0f..89e65f2d30 100644
--- a/ext/informix/Makefile.am
+++ b/ext/informix/Makefile.am
@@ -2,6 +2,9 @@
INCLUDES=@INCLUDES@ -I@top_srcdir@ -I@top_srcdir@/libzend
noinst_LTLIBRARIES=libphpext_informix.la
+noinst_LIBRARIES=libifx.a
+libifx_a_SOURCES=stub.c
+libifx_a_LIBADD=@IFX_OBJS@
libphpext_informix_la_SOURCES=ifx.c
libphpext_informix_la_LIBADD=@IFX_LIBS@
diff --git a/ext/informix/config.m4 b/ext/informix/config.m4
index 39164a628e..21ad6ff27b 100644
--- a/ext/informix/config.m4
+++ b/ext/informix/config.m4
@@ -60,7 +60,16 @@ WARNING: You specified Informix base install directory that is different
AC_DEFINE_UNQUOTED(IFX_VERSION, $IFX_VERSION)
AC_MSG_RESULT(yes)
PHP_EXTENSION(informix)
- IFX_LIBS="$IFX_LFLAGS $IFX_LIBS"
+ for i in $IFX_LIBS; do
+ case "$i" in
+ *.o)
+ IFX_OBJS="$IFX_OBJS $i"
+ IFX_LIBADD="$IFX_LIBADD -Lext/informix -lifx";;
+ *)
+ IFX_LIBADD="$IFX_LIBADD $i";;
+ esac
+ done
+ IFX_LIBS="$IFX_LFLAGS $IFX_LIBADD"
INCLUDES="$INCLUDES $IFX_INCLUDE"
fi
else
@@ -72,6 +81,7 @@ WARNING: You specified Informix base install directory that is different
])
AC_SUBST(INFORMIXDIR)
AC_SUBST(IFX_LIBS)
+AC_SUBST(IFX_OBJS)
divert(5)