1// vim:ft=javascript 2 3ARG_WITH("curl", "cURL support", "no"); 4 5if (PHP_CURL != "no") { 6 var ver_num = NaN; 7 var f = PHP_PHP_BUILD + "/include/curl/curlver.h"; 8 if (FSO.FileExists(f)) { 9 var reg = /LIBCURL_VERSION_NUM\s+(0x[a-z0-9]+)/gi; 10 var m = reg.exec(file_get_contents(PHP_PHP_BUILD + "/include/curl/curlver.h")); 11 if (!!m && m.length >= 2) { 12 ver_num = parseInt(m[1]); 13 } 14 } 15 16 if (CHECK_LIB("libcurl_a.lib;libcurl.lib", "curl", PHP_CURL) && 17 CHECK_HEADER_ADD_INCLUDE("curl/easy.h", "CFLAGS_CURL") && 18 SETUP_OPENSSL("curl", PHP_CURL) > 0 && 19 CHECK_LIB("winmm.lib", "curl", PHP_CURL) && 20 CHECK_LIB("wldap32.lib", "curl", PHP_CURL) && 21 (((PHP_ZLIB=="no") && (CHECK_LIB("zlib_a.lib;zlib.lib", "curl", PHP_CURL))) || 22 (PHP_ZLIB_SHARED && CHECK_LIB("zlib.lib", "curl", PHP_CURL)) || (PHP_ZLIB == "yes" && (!PHP_ZLIB_SHARED))) && 23 !isNaN(ver_num) && 24 (ver_num <= parseInt("0x073b00") || ver_num > parseInt("0x073b00") && 25 CHECK_LIB("normaliz.lib", "curl", PHP_CURL) && 26 CHECK_LIB("libssh2.lib", "curl", PHP_CURL) && 27 CHECK_LIB("nghttp2.lib", "curl", PHP_CURL)) 28 ) { 29 EXTENSION("curl", "interface.c multi.c share.c curl_file.c"); 30 AC_DEFINE('HAVE_CURL', 1, 'Have cURL library'); 31 AC_DEFINE('HAVE_CURL_SSL', 1, 'Have SSL suppurt in cURL'); 32 AC_DEFINE('HAVE_CURL_EASY_STRERROR', 1, 'Have curl_easy_strerror in cURL'); 33 AC_DEFINE('HAVE_CURL_MULTI_STRERROR', 1, 'Have curl_multi_strerror in cURL'); 34 ADD_FLAG("CFLAGS_CURL", "/D CURL_STATICLIB"); 35 // TODO: check for curl_version_info 36 } else { 37 WARNING("curl not enabled; libraries and headers not found"); 38 } 39} 40