1
0
mirror of https://github.com/php/php-src.git synced 2026-04-27 01:48:26 +02:00
Files
archived-php-src/ext/curl/config.m4
T
Eli Schwartz 78e4f04752 ext/curl: port to pkg-config macro and consistently require its use
curl 7.15.1 in December 2006 first added pkg-config support, which is
earlier than the minimum supported version for php. This should
therefore be uiversally supported.
2018-12-09 17:28:02 +01:00

124 lines
2.8 KiB
Plaintext

dnl config.m4 for extension curl
PHP_ARG_WITH(curl, for cURL support,
[ --with-curl Include cURL support])
if test "$PHP_CURL" != "no"; then
PKG_CHECK_MODULES([CURL], [libcurl >= 7.15.5])
PKG_CHECK_VAR([CURL_FEATURES], [libcurl], [supported_features])
dnl common stuff (pkg-config / curl-config)
PHP_EVAL_LIBLINE($CURL_LIBS, CURL_SHARED_LIBADD)
PHP_EVAL_INCLINE($CURL_CFLAGS, CURL_SHARED_LIBADD)
AC_MSG_CHECKING([for SSL support in libcurl])
case "$CURL_FEATURES" in
*SSL*)
CURL_SSL=yes
AC_MSG_RESULT([yes])
;;
*)
CURL_SSL=no
AC_MSG_RESULT([no])
;;
esac
if test "$CURL_SSL" = yes; then
AC_DEFINE([HAVE_CURL_SSL], [1], [Have cURL with SSL support])
save_CFLAGS="$CFLAGS"
CFLAGS=$CURL_CFLAGS
save_LDFLAGS="$LDFLAGS"
LDFLAGS=$CURL_LIBS
AC_PROG_CPP
AC_MSG_CHECKING([for openssl support in libcurl])
AC_RUN_IFELSE([AC_LANG_SOURCE([[
#include <strings.h>
#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_HEADERS([openssl/crypto.h], [
AC_DEFINE([HAVE_CURL_OPENSSL], [1], [Have cURL with OpenSSL support])
])
], [
AC_MSG_RESULT([no])
], [
AC_MSG_RESULT([no])
])
AC_MSG_CHECKING([for gnutls support in libcurl])
AC_RUN_IFELSE([AC_LANG_SOURCE([[
#include <strings.h>
#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, "GnuTLS", sizeof("GnuTLS")-1);
}
return 1;
}
]])], [
AC_MSG_RESULT([yes])
AC_CHECK_HEADER([gcrypt.h], [
AC_DEFINE([HAVE_CURL_GNUTLS], [1], [Have cURL with GnuTLS support])
])
], [
AC_MSG_RESULT([no])
], [
AC_MSG_RESULT([no])
])
CFLAGS="$save_CFLAGS"
LDFLAGS="$save_LDFLAGS"
else
AC_MSG_RESULT([no])
fi
PHP_CHECK_LIBRARY(curl,curl_easy_perform,
[
AC_DEFINE(HAVE_CURL,1,[ ])
],[
AC_MSG_ERROR(There is something wrong. Please check config.log for more information.)
],[
$CURL_LIBS
])
PHP_CHECK_LIBRARY(curl,curl_easy_strerror,
[
AC_DEFINE(HAVE_CURL_EASY_STRERROR,1,[ ])
],[],[
$CURL_LIBS
])
PHP_CHECK_LIBRARY(curl,curl_multi_strerror,
[
AC_DEFINE(HAVE_CURL_MULTI_STRERROR,1,[ ])
],[],[
$CURL_LIBS
])
PHP_NEW_EXTENSION(curl, interface.c multi.c share.c curl_file.c, $ext_shared)
PHP_SUBST(CURL_SHARED_LIBADD)
fi