Skip to content

Commit cc9c5d8

Browse files
hughmcmasternikic
authored andcommitted
Use PKG_CHECK_MODULES to detect the ffi library
1 parent 09ea55c commit cc9c5d8

File tree

1 file changed

+3
-33
lines changed

1 file changed

+3
-33
lines changed

ext/ffi/config.m4

Lines changed: 3 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -6,47 +6,17 @@ PHP_ARG_WITH([ffi],
66
[Include FFI support])])
77

88
if test "$PHP_FFI" != "no"; then
9-
if test -r $PHP_FFI/include/ffi.h; then
10-
FFI_INCDIR=$PHP_FFI/include
11-
FFI_LIBDIR=$PHP_FFI
12-
else
13-
if test -x "$PKG_CONFIG" && "$PKG_CONFIG" --exists libffi; then
14-
FFI_VER=`"$PKG_CONFIG" --modversion libffi`
15-
FFI_INCDIR=`"$PKG_CONFIG" --variable=includedir libffi`
16-
FFI_LIBDIR=`"$PKG_CONFIG" --variable=libdir libffi`
17-
AC_MSG_CHECKING(for libffi)
18-
AC_MSG_RESULT(found version $FFI_VER)
19-
else
20-
AC_MSG_CHECKING(for libffi in default path)
21-
for i in /usr/local /usr; do
22-
if test -r $i/include/ffi.h; then
23-
FFI_DIR=$i
24-
AC_MSG_RESULT(found in $i)
25-
break
26-
fi
27-
done
28-
29-
if test -z "$FFI_DIR"; then
30-
AC_MSG_RESULT(not found)
31-
AC_MSG_ERROR(Please reinstall the libffi distribution)
32-
fi
33-
34-
FFI_INCDIR="$FFI_DIR/include"
35-
FFI_LIBDIR="$FFI_DIR/$PHP_LIBDIR"
36-
fi
37-
fi
9+
PKG_CHECK_MODULES([FFI], [libffi])
3810

3911
AC_CHECK_TYPES(long double)
4012

4113
PHP_CHECK_LIBRARY(ffi, ffi_call,
4214
[
43-
PHP_ADD_INCLUDE($FFI_INCDIR)
44-
PHP_ADD_LIBRARY_WITH_PATH(ffi, $FFI_LIBDIR, FFI_SHARED_LIBADD)
15+
PHP_EVAL_INCLINE($FFI_CFLAGS)
16+
PHP_EVAL_LIBLINE($FFI_LIBS, FFI_SHARED_LIBADD)
4517
AC_DEFINE(HAVE_FFI,1,[ Have ffi support ])
4618
], [
4719
AC_MSG_ERROR(FFI module requires libffi)
48-
], [
49-
-L$FFI_LIBDIR
5020
])
5121

5222
PHP_NEW_EXTENSION(ffi, ffi.c ffi_parser.c, $ext_shared,, -DZEND_ENABLE_STATIC_TSRMLS_CACHE=1)

0 commit comments

Comments
 (0)