- done
- if test "x$CURL_CONFIG" = "x"; then
- AC_MSG_RESULT([not found])
- AC_MSG_ERROR([could not find curl-config])
- else
- AC_MSG_RESULT([found: $CURL_CONFIG])
- fi
-
- dnl Debian stable has currently 7.18.2
- AC_MSG_CHECKING([for curl version >= 7.18.2])
- CURL_VERSION=`$CURL_CONFIG --version | $SED -e 's/[[^0-9\.]]//g'`
- AC_MSG_RESULT([$CURL_VERSION])
- if test `echo $CURL_VERSION | $SED -e 's/[[^0-9]]/ /g' | $AWK '{print $1*10000 + $2*100 + $3}'` -lt 71802; then
- AC_MSG_ERROR([libcurl version greater or equal to 7.18.2 required])
- fi
-
- dnl
- dnl compile tests
- dnl
-
- save_INCLUDES="$INCLUDES"
- INCLUDES=
- save_LIBS="$LIBS"
- LIBS=
- save_CFLAGS="$CFLAGS"
- CFLAGS=`$CURL_CONFIG --cflags`
- save_LDFLAGS="$LDFLAGS"
- LDFLAGS=`$CURL_CONFIG --libs`
- LDFLAGS="$LDFLAGS $ld_runpath_switch$CURL_DIR/$PHP_LIBDIR"
-
- AC_MSG_CHECKING([for SSL support in libcurl])
- CURL_SSL=`$CURL_CONFIG --feature | $EGREP SSL`
- if test "$CURL_SSL" = "SSL"; then
- AC_MSG_RESULT([yes])
- AC_DEFINE([PHP_HTTP_HAVE_SSL], [1], [ ])
-
- AC_MSG_CHECKING([for openssl support in libcurl])
- AC_TRY_RUN([
- #include <curl/curl.h>
- int main(int argc, char *argv[]) {
- curl_version_info_data *data = curl_version_info(CURLVERSION_NOW);
- if (data && data->ssl_version && *data->ssl_version) {
- const char *ptr = data->ssl_version;
- while(*ptr == ' ') ++ptr;
- return strncasecmp(ptr, "OpenSSL", sizeof("OpenSSL")-1);
- }
- return 1;
- }
- ], [
- AC_MSG_RESULT([yes])
- AC_CHECK_HEADER([openssl/crypto.h], [
- AC_DEFINE([PHP_HTTP_HAVE_OPENSSL], [1], [ ])
+ AC_CACHE_CHECK([for uidna_IDNToASCII], PECL_CACHE_VAR([HAVE_UIDNA_IDNToASCII]), [
+ if printf "%s" "$CFLAGS" | $EGREP -q "(^|\s)-Werror\b"; then
+ if ! printf "%s" "$CFLAGS" | $EGREP -q "(^|\s)-Wno-error=deprecated-declarations\b"; then
+ CFLAGS="$CFLAGS -Wno-error=deprecated-declarations"
+ fi
+ fi
+ AC_TRY_LINK([
+ #include <unicode/uidna.h>
+ ], [
+ uidna_IDNToASCII(0, 0, 0, 0, 0, 0, 0);
+ ], [
+ PECL_CACHE_VAR([HAVE_UIDNA_IDNToASCII])=yes
+ ], [
+ PECL_CACHE_VAR([HAVE_UIDNA_IDNToASCII])=no