X-Git-Url: https://git.m6w6.name/?p=m6w6%2Fext-http;a=blobdiff_plain;f=config9.m4;h=e32d14660864a7a48016764e29e31c3273c41086;hp=bae4032c8a711f18e866832561c8dcb849a7c178;hb=f753226f1f45e10ef3916256ec1bc0416c8644a8;hpb=8d05291f42b3b42159b3fe91492aa4862f3d4405 diff --git a/config9.m4 b/config9.m4 index bae4032..e32d146 100644 --- a/config9.m4 +++ b/config9.m4 @@ -8,10 +8,6 @@ PHP_ARG_WITH([http-zlib-dir], [], [ --with-http-zlib-dir[=DIR] HTTP: where to find zlib], $PHP_HTTP, $PHP_HTTP) PHP_ARG_WITH([http-libcurl-dir], [], [ --with-http-libcurl-dir[=DIR] HTTP: where to find libcurl], $PHP_HTTP, $PHP_HTTP) -PHP_ARG_WITH([http-libneon-dir], [], -[ --with-http-libneon-dir[=DIR] HTTP: where to find libneon], $PHP_HTTP, $PHP_HTTP) -PHP_ARG_WITH([http-libserf-dir], [], -[ --with-http-libserf-dir[=DIR] HTTP: where to find libserf], $PHP_HTTP, $PHP_HTTP) PHP_ARG_WITH([http-libevent-dir], [], [ --with-http-libevent-dir[=DIR] HTTP: where to find libevent], $PHP_HTTP_LIBCURL_DIR, "") @@ -133,92 +129,40 @@ dnl ---- fi fi -dnl ---- -dnl NEON -dnl ---- - - if test "$PHP_HTTP_LIBNEON_DIR" = "no"; then - AC_DEFINE([PHP_HTTP_HAVE_NEON], [0], [ ]) - else - AC_MSG_CHECKING([for neon/ne_session.h]) - NEON_DIR= - for i in "$PHP_HTTP_LIBNEON_DIR" /usr/local /usr /opt; do - if test -f "$i/include/neon/ne_session.h"; then - NEON_DIR=$i - break - fi - done - - if test "x$NEON_DIR" = "x"; then - AC_MSG_RESULT([not found]) - AC_DEFINE([PHP_HTTP_HAVE_NEON], [0], [ ]) - else - AC_MSG_RESULT([found in $NEON_DIR]) - - AC_MSG_CHECKING([for neon-config]) - NEON_CONFIG= - for i in "$NEON_DIR/bin/neon-config" "$NEON_DIR/neon-config" `which neon-config`; do - if test -x "$i"; then - NEON_CONFIG=$i - break - fi - done - if test "x$NEON_CONFIG" = "x"; then - AC_MSG_RESULT([not found]) - AC_DEFINE([PHP_HTTP_HAVE_NEON], [0], [ ]) - else - AC_MSG_RESULT([found: $NEON_CONFIG]) - - AC_MSG_CHECKING([for libneon version]) - PHP_HTTP_NEON_VERSION=`$NEON_CONFIG --version | $SED -re 's/^neon ([[^ :]]+).*/\1/g'` - if test "x$PHP_HTTP_NEON_VERSION" = "x"; then - AC_MSG_RESULT([unknown]) - PHP_HTTP_NEON_VERSION="unknown" - else - AC_MSG_RESULT([$PHP_HTTP_NEON_VERSION]) - fi - AC_DEFINE_UNQUOTED([PHP_HTTP_NEON_VERSION], ["$PHP_HTTP_NEON_VERSION"], [neon-config --version]) - PHP_ADD_INCLUDE($NEON_DIR/include) - PHP_ADD_LIBRARY_WITH_PATH(neon, $NEON_DIR/$PHP_LIBDIR, HTTP_SHARED_LIBADD) - AC_DEFINE([PHP_HTTP_HAVE_NEON], [1], [Have libneon support]) - HTTP_HAVE_A_REQUEST_LIB=true - fi - fi - fi - dnl ---- dnl SERF dnl ---- +dnl +dnl if test "$PHP_HTTP_LIBSERF_DIR" = "no"; then +dnl AC_DEFINE([PHP_HTTP_HAVE_SERF], [0], [ ]) +dnl else +dnl AC_MSG_CHECKING([for serf-?/serf.h]) +dnl SERF_DIR= +dnl for i in "$PHP_HTTP_LIBSERF_DIR" /usr/local /usr /opt; do +dnl if test -f "$i/include/serf-0/serf.h"; then +dnl SERF_DIR=$i +dnl SERF_VER=0 +dnl break +dnl elif test -f "$i/include/serf-1/serf.h"; then +dnl SERF_DIR=$i +dnl SERF_VER=1 +dnl fi +dnl done - if test "$PHP_HTTP_LIBSERF_DIR" = "no"; then - AC_DEFINE([PHP_HTTP_HAVE_SERF], [0], [ ]) - else - AC_MSG_CHECKING([for serf-?/serf.h]) - SERF_DIR= - for i in "$PHP_HTTP_LIBSERF_DIR" /usr/local /usr /opt; do - if test -f "$i/include/serf-0/serf.h"; then - SERF_DIR=$i - SERF_VER=0 - break - elif test -f "$i/include/serf-1/serf.h"; then - SERF_DIR=$i - SERF_VER=1 - fi - done +dnl if test "x$SERF_DIR" = "x"; then +dnl AC_MSG_RESULT([not found]) +dnl AC_DEFINE([PHP_HTTP_HAVE_SERF], [0], [ ]) +dnl else +dnl AC_MSG_RESULT([found in $SERF_DIR]) - if test "x$SERF_DIR" = "x"; then - AC_MSG_RESULT([not found]) - AC_DEFINE([PHP_HTTP_HAVE_SERF], [0], [ ]) - else - AC_MSG_RESULT([found in $SERF_DIR]) +dnl PHP_ADD_INCLUDE($SERF_DIR/include/serf-$SERF_VER) +dnl PHP_ADD_LIBRARY_WITH_PATH(serf-$SERF_VER, $SERF_DIR/$PHP_LIBDIR, HTTP_SHARED_LIBADD) +dnl AC_DEFINE([PHP_HTTP_HAVE_SERF], [1], [Have libserf support]) +dnl HTTP_HAVE_A_REQUEST_LIB=true +dnl fi +dnl fi +dnl - PHP_ADD_INCLUDE($SERF_DIR/include/serf-$SERV_VER) - PHP_ADD_LIBRARY_WITH_PATH(serf-$SERF_VER, $SERF_DIR/$PHP_LIBDIR, HTTP_SHARED_LIBADD) - AC_DEFINE([PHP_HTTP_HAVE_SERF], [1], [Have libserf support]) - HTTP_HAVE_A_REQUEST_LIB=true - fi - fi - dnl ---- dnl CURL dnl ---- @@ -298,6 +242,7 @@ dnl ---- AC_MSG_RESULT([yes]) AC_CHECK_HEADER([openssl/crypto.h], [ AC_DEFINE([PHP_HTTP_HAVE_OPENSSL], [1], [ ]) + CURL_SSL="crypto" ]) ], [ AC_MSG_RESULT([no]) @@ -321,6 +266,7 @@ dnl ---- AC_MSG_RESULT([yes]) AC_CHECK_HEADER([gcrypt.h], [ AC_DEFINE([PHP_HTTP_HAVE_GNUTLS], [1], [ ]) + CURL_SSL="gcrypt" ]) ], [ AC_MSG_RESULT([no]) @@ -356,6 +302,9 @@ dnl ---- PHP_ADD_INCLUDE($CURL_DIR/include) PHP_ADD_LIBRARY_WITH_PATH(curl, $CURL_DIR/$PHP_LIBDIR, HTTP_SHARED_LIBADD) PHP_EVAL_LIBLINE(`$CURL_CONFIG --libs`, HTTP_SHARED_LIBADD) + if test "x$CURL_SSL" != "x"; then + PHP_ADD_LIBRARY_WITH_PATH([$CURL_SSL], $CURL_DIR/$PHP_LIBDIR, PHP_HTTP_SHARED_LIBADD) + fi AC_DEFINE([PHP_HTTP_HAVE_CURL], [1], [Have libcurl support]) HTTP_HAVE_A_REQUEST_LIB=true fi @@ -372,7 +321,7 @@ dnl ---- AC_MSG_WARN([event support is incompatible with pecl/event; continuing without libevent support]) AC_DEFINE([PHP_HTTP_HAVE_EVENT], [0], [ ]) ], [ - AC_MSG_CHECKING([for event.h]) + AC_MSG_CHECKING([for event2/event.h]) EVENT_DIR= for i in "$PHP_HTTP_LIBEVENT_DIR" /usr/local /usr /opt; do if test -f "$i/include/event.h"; then @@ -388,12 +337,20 @@ dnl ---- AC_MSG_RESULT([found in $EVENT_DIR]) AC_MSG_CHECKING([for libevent version, roughly]) - EVENT_VER="1.1b or lower" - if test -f "$EVENT_DIR/include/evhttp.h" && test -f "$EVENT_DIR/include/evdns.h"; then - if test -f "$EVENT_DIR/include/evrpc.h"; then - EVENT_VER="1.4 or greater" + + if test -f "$EVENT_DIR/include/event2/event.h"; then + EVENT_VER="`$EGREP _EVENT_VERSION $EVENT_DIR/include/event2/event-config.h | $AWK '{print $3}'`" + AC_DEFINE([PHP_HTTP_HAVE_EVENT2], [1], [ ]) + else + AC_DEFINE([PHP_HTTP_HAVE_EVENT2], [0], [ ]) + if test -f "$EVENT_DIR/include/evhttp.h" && test -f "$EVENT_DIR/include/evdns.h"; then + if test -f "$EVENT_DIR/include/evrpc.h"; then + EVENT_VER="1.4 or greater" + else + EVENT_VER="1.2 or greater" + fi else - EVENT_VER="1.2 or greater" + EVENT_VER="1.1b or lower" fi fi AC_DEFINE_UNQUOTED([PHP_HTTP_EVENT_VERSION], ["$EVENT_VER"], [ ]) @@ -406,9 +363,61 @@ dnl ---- ]) fi +dnl ---- +dnl RAPHF +dnl ---- + HTTP_HAVE_PHP_EXT([raphf], [ + AC_MSG_CHECKING([for php_raphf.h]) + HTTP_EXT_RAPHF_INCDIR= + for i in `echo $INCLUDES | $SED -e's/-I//g'` $abs_srcdir ../raphf; do + if test -d $i; then + if test -f $i/php_raphf.h; then + HTTP_EXT_RAPHF_INCDIR=$i + break + elif test -f $i/ext/raphf/php_raphf.h; then + HTTP_EXT_RAPHF_INCDIR=$i/ext/raphf + break + fi + fi + done + if test "x$HTTP_EXT_RAPHF_INCDIR" = "x"; then + AC_MSG_ERROR([not found]) + else + AC_MSG_RESULT([$HTTP_EXT_RAPHF_INCDIR]) + AC_DEFINE([PHP_HTTP_HAVE_PHP_RAPHF_H], [1], [Have ext/raphf support]) + PHP_ADD_INCLUDE([$HTTP_EXT_RAPHF_INCDIR]) + fi + ]) + +dnl ---- +dnl PROPRO +dnl ---- + HTTP_HAVE_PHP_EXT([propro], [ + AC_MSG_CHECKING([for php_propro.h]) + HTTP_EXT_PROPRO_INCDIR= + for i in `echo $INCLUDES | $SED -e's/-I//g'` $abs_srcdir ../propro; do + if test -d $i; then + if test -f $i/php_propro.h; then + HTTP_EXT_PROPRO_INCDIR=$i + break + elif test -f $i/ext/propro/php_propro.h; then + HTTP_EXT_PROPRO_INCDIR=$i/ext/propro + break + fi + fi + done + if test "x$HTTP_EXT_PROPRO_INCDIR" = "x"; then + AC_MSG_ERROR([not found]) + else + AC_MSG_RESULT([$HTTP_EXT_PROPRO_INCDIR]) + AC_DEFINE([PHP_HTTP_HAVE_PHP_PROPRO_H], [1], [Have ext/propro support]) + PHP_ADD_INCLUDE([$HTTP_EXT_PROPRO_INCDIR]) + fi + ]) + PHP_ARG_WITH([http-shared-deps], [whether to depend on extensions which have been built shared], [ --without-http-shared-deps HTTP: do not depend on extensions like hash - and iconv (when they're built shared)], $PHP_HTTP, $PHP_HTTP) + and iconv (when they are built shared)], $PHP_HTTP, $PHP_HTTP) dnl ---- dnl HASH dnl ---- @@ -435,6 +444,12 @@ dnl ---- fi ]) +dnl ---- +dnl JSON +dnl ---- + HTTP_HAVE_PHP_EXT([json]) + + dnl ---- dnl ICONV dnl ---- @@ -444,17 +459,23 @@ dnl ---- dnl DONE dnl ---- PHP_HTTP_SOURCES="\ - php_http.c \ php_http_buffer.c \ + php_http.c \ + php_http_client.c \ + php_http_client_curl.c \ + php_http_client_request.c \ + php_http_client_response.c \ php_http_cookie.c \ + php_http_curl.c \ php_http_encoding.c \ php_http_env.c \ + php_http_env_request.c \ php_http_env_response.c \ php_http_etag.c \ php_http_exception.c \ php_http_filter.c \ - php_http_headers.c \ php_http_header_parser.c \ + php_http_headers.c \ php_http_info.c \ php_http_message_body.c \ php_http_message.c \ @@ -462,18 +483,9 @@ dnl ---- php_http_misc.c \ php_http_negotiate.c \ php_http_object.c \ + php_http_options.c \ php_http_params.c \ - php_http_resource_factory.c \ - php_http_persistent_handle.c \ - php_http_property_proxy.c \ php_http_querystring.c \ - php_http_request.c \ - php_http_request_factory.c \ - php_http_curl.c \ - php_http_neon.c \ - php_http_request_pool.c \ - php_http_request_datashare.c \ - php_http_request_method.c \ php_http_strlist.c \ php_http_url.c \ php_http_version.c \ @@ -483,21 +495,39 @@ dnl ---- dnl shared extension deps HTTP_SHARED_DEP([hash]) HTTP_SHARED_DEP([iconv]) + HTTP_SHARED_DEP([json]) + + dnl extension deps + PHP_ADD_EXTENSION_DEP([http], [raphf], true) + PHP_ADD_EXTENSION_DEP([http], [propo], true) PHP_SUBST([HTTP_SHARED_LIBADD]) PHP_HTTP_HEADERS=" - php_http.h \ + php_http_api.h \ php_http_buffer.h \ + php_http_curl_client.h \ + php_http_curl_client_datashare.h \ + php_http_client_datashare.h \ + php_http_client_factory.h \ + php_http_client.h \ + php_http_client_interface.h \ + php_http_curl_client_pool.h \ + php_http_client_pool.h \ + php_http_client_request.h \ + php_http_client_response.h \ php_http_cookie.h \ + php_http_curl.h \ php_http_encoding.h \ php_http_env.h \ + php_http_env_request.h \ php_http_env_response.h \ php_http_etag.h \ php_http_exception.h \ php_http_filter.h \ - php_http_headers.h \ + php_http.h \ php_http_header_parser.h \ + php_http_headers.h \ php_http_info.h \ php_http_message_body.h \ php_http_message.h \ @@ -505,18 +535,9 @@ dnl ---- php_http_misc.h \ php_http_negotiate.h \ php_http_object.h \ + php_http_options.h \ php_http_params.h \ - php_http_resource_factory.h \ - php_http_persistent_handle.h \ - php_http_property_proxy.h \ php_http_querystring.h \ - php_http_request_datashare.h \ - php_http_request.h \ - php_http_request_factory.h \ - php_http_curl.h \ - php_http_neon.h \ - php_http_request_method.h \ - php_http_request_pool.h \ php_http_strlist.h \ php_http_url.h \ php_http_version.h \