Skip to content

Commit 3ef5b4a

Browse files
committed
rely on pkg-config
1 parent be78be9 commit 3ef5b4a

File tree

1 file changed

+21
-6
lines changed

1 file changed

+21
-6
lines changed

config.m4

Lines changed: 21 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,27 @@ if test "$PHP_XZ" != "no"; then
1010
LIBNAME=lzma # you may want to change this
1111
LIBSYMBOL=lzma_stream_encoder # you most likely want to change this
1212

13-
PHP_CHECK_LIBRARY($LIBNAME,$LIBSYMBOL,
14-
[
15-
PHP_ADD_LIBRARY($LIBNAME, 1, XZ_SHARED_LIBADD)
16-
],[
17-
AC_MSG_ERROR([wrong xz lib version or lib not found])
18-
])
13+
AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
14+
15+
AC_MSG_CHECKING(for liblzma)
16+
if test -x "$PKG_CONFIG" && $PKG_CONFIG --exists liblzma; then
17+
LIBLZMA_INCLINE=`$PKG_CONFIG liblzma --cflags`
18+
LIBLZMA_LIBLINE=`$PKG_CONFIG liblzma --libs`
19+
LIBLZMA_VERSION=`$PKG_CONFIG liblzma --modversion`
20+
AC_MSG_RESULT(from pkg-config: version $LIBLZMA_VERSION)
21+
PHP_EVAL_LIBLINE($LIBLZMA_LIBLINE, XZ_SHARED_LIBADD)
22+
PHP_EVAL_INCLINE($LIBLZMA_INCLINE)
23+
else
24+
AC_MSG_WARN([not found using pkg-config, fallback to system directory])
25+
26+
PHP_CHECK_LIBRARY($LIBNAME,$LIBSYMBOL,
27+
[
28+
PHP_ADD_LIBRARY($LIBNAME, 1, XZ_SHARED_LIBADD)
29+
],[
30+
AC_MSG_ERROR([wrong xz lib version or lib not found])
31+
])
32+
fi
33+
1934
PHP_SUBST(XZ_SHARED_LIBADD)
2035

2136
PHP_NEW_EXTENSION(xz, xz.c xz_fopen_wrapper.c utils.c, $ext_shared, -DZEND_ENABLE_STATIC_TSRMLS_CACHE=1)

0 commit comments

Comments
 (0)