@@ -26,8 +26,15 @@ if test "$PHP_INFORMIX" != "no"; then
26
26
PHP_ADD_LIBPATH($PHP_INFORMIX/lib/esql, INFORMIX_SHARED_LIBADD)
27
27
fi
28
28
29
- IFX_LIBS=`$INFORMIXDIR/bin/esql -libs -shared | sed -e 's/-lm$//'`
30
- dnl -lm twice otherwise?
29
+ dnl Check if thread safety flags are needed
30
+ if test "$enable_experimental_zts" = "yes"; then
31
+ IFX_ESQL_FLAGS="-thread"
32
+ CPPFLAGS="$CPPFLAGS -DIFX_THREAD"
33
+ else
34
+ IFX_ESQL_FLAGS=""
35
+ fi
36
+
37
+ IFX_LIBS=`THREADLIB=POSIX $INFORMIXDIR/bin/esql $IFX_ESQL_FLAGS -libs`
31
38
IFX_LIBS=`echo $IFX_LIBS | sed -e 's/Libraries to be used://g' -e 's/esql: error -55923: No source or object file\.//g'`
32
39
dnl Seems to get rid of newlines.
33
40
dnl According to Perls DBD-Informix, might contain these strings.
@@ -44,9 +51,9 @@ if test "$PHP_INFORMIX" != "no"; then
44
51
45
52
if test $IFX_VERSION -ge "900"; then
46
53
AC_DEFINE ( HAVE_IFX_IUS ,1 ,[ ] )
47
- IFX_ESQL_FLAGS="-EDHAVE_IFX_IUS"
54
+ IFX_ESQL_FLAGS="$IFX_ESQL_FLAGS -EDHAVE_IFX_IUS"
48
55
else
49
- IFX_ESQL_FLAGS="-EUHAVE_IFX_IUS"
56
+ IFX_ESQL_FLAGS="$IFX_ESQL_FLAGS -EUHAVE_IFX_IUS"
50
57
fi
51
58
PHP_SUBST(IFX_ESQL_FLAGS)
52
59
@@ -55,19 +62,31 @@ if test "$PHP_INFORMIX" != "no"; then
55
62
*.o)
56
63
IFX_LIBOBJS="$IFX_LIBOBJS $i"
57
64
PHP_ADD_LIBPATH($ext_builddir, INFORMIX_SHARED_LIBADD)
58
- PHP_ADD_LIBRARY_DEFER(phpifx, 1, INFORMIX_SHARED_LIBADD)
65
+ PHP_ADD_LIBRARY_DEFER(phpifx, 1)
66
+ ;;
67
+ -lm)
68
+ ;;
69
+ -lc)
59
70
;;
60
71
-l*)
61
- lib=`echo $i|sed -e "s/^-l//" `
62
- PHP_ADD_LIBRARY_DEFER($lib, 1, INFORMIX_SHARED_LIBADD )
72
+ lib=`echo $i | cut -c 3- `
73
+ PHP_ADD_LIBRARY_DEFER($lib, 1)
63
74
;;
64
75
*.a)
65
- lib=`echo $i|sed -e "s# ^/.*/lib##g;s#\.a##g"`
66
- PHP_ADD_LIBRARY_DEFER($lib, 1, INFORMIX_SHARED_LIBADD)
76
+ case "`uname -s 2>/dev/null`" in
77
+ UnixWare | SCO_SV | UNIX_SV)
78
+ DLIBS="$DLIBS $i"
79
+ ;;
80
+ *)
81
+ ac_dir="`echo $i|sed 's# [^/]*$##;s#\/$##'`"
82
+ ac_lib="`echo $i|sed 's# ^/.*/lib##g;s#\.a##g'`"
83
+ DLIBS="$DLIBS -L$ac_dir -l$ac_lib"
84
+ ;;
85
+ esac
67
86
;;
68
87
esac
69
88
done
70
-
89
+
71
90
AC_DEFINE ( HAVE_IFX ,1 ,[ ] )
72
91
PHP_SUBST(INFORMIXDIR)
73
92
PHP_SUBST(IFX_LIBOBJS)
0 commit comments