Browse Source

- Added PHP_TEST_BUILD macro which can be used to test whether build

works / would work with current LIBS (+ additional extra-libs)
PEAR_1_4DEV
foobar 23 years ago
parent
commit
0bf907b1e6
  1. 40
      acinclude.m4
  2. 20
      ext/imap/config.m4

40
acinclude.m4

@ -1788,7 +1788,20 @@ AC_DEFUN([PHP_SETUP_LIBXML], [
LIBXML_INCS=`$XML2_CONFIG --cflags`
PHP_EVAL_LIBLINE($LIBXML_LIBS, $1)
PHP_EVAL_INCLINE($LIBXML_INCS)
AC_DEFINE(HAVE_LIBXML, 1, [ ])
dnl Check that build works with given libs
AC_CACHE_CHECK(whether libxml build works, php_cv_libxml_build_works, [
PHP_TEST_BUILD(xmlInitParser,
[
php_cv_libxml_build_works=yes
AC_DEFINE(HAVE_LIBXML, 1, [ ])
], [
AC_MSG_RESULT(no)
AC_MSG_ERROR([build test failed. Please check the config.log for details.])
], [
[$]$1
])
])
$2
else
AC_MSG_ERROR([libxml2 version 2.5.10 or greater required.])
@ -1880,3 +1893,28 @@ IFS="- /.
APACHE_VERSION=`expr [$]4 \* 1000000 + [$]5 \* 1000 + [$]6`
])
dnl
dnl PHP_TEST_BUILD(function, action-if-ok, action-if-not-ok [, extra-libs [, extra-source]])
dnl This macro checks whether build works and given function exists.
dnl
AC_DEFUN(PHP_TEST_BUILD, [
old_LIBS=$LIBS
LIBS="$4 $LIBS"
AC_TRY_RUN([
$5
char $1();
int main() {
$1();
return 0;
}
], [
LIBS=$old_LIBS
$2
],[
LIBS=$old_LIBS
$3
],[
LIBS=$old_LIBS
])
])

20
ext/imap/config.m4

@ -20,11 +20,10 @@ AC_DEFUN(IMAP_LIB_CHK,[
done
])
dnl PHP_IMAP_TEST_BUILD(function, action-if-ok, action-if-not-ok [, extra-libs])
dnl PHP_IMAP_TEST_BUILD(function, action-if-ok, action-if-not-ok, extra-libs)
AC_DEFUN(PHP_IMAP_TEST_BUILD, [
old_LIBS=$LIBS
LIBS="$4 $LIBS"
AC_TRY_RUN([
PHP_TEST_BUILD([$1], [$2], [$3], [$4],
[
void mm_log(void){}
void mm_dlog(void){}
void mm_flags(void){}
@ -40,17 +39,6 @@ AC_DEFUN(PHP_IMAP_TEST_BUILD, [
void mm_exists(void){}
void mm_searched(void){}
void mm_expunged(void){}
char $1();
int main() {
$1();
return 0;
}
], [
LIBS=$old_LIBS
$2
],[
LIBS=$old_LIBS
$3
])
])
@ -206,7 +194,7 @@ if test "$PHP_IMAP" != "no"; then
AC_DEFINE(HAVE_IMAP_AUTH_GSS, 1, [ ])
], [], $TST_LIBS)
AC_MSG_CHECKING(whether IMAP works)
AC_MSG_CHECKING(whether build with IMAP works)
PHP_IMAP_TEST_BUILD(mail_newbody, [
AC_MSG_RESULT(yes)
], [

Loading…
Cancel
Save