diff options
author | Carsten Brandt <mail@cebe.cc> | 2017-07-14 13:45:33 +0200 |
---|---|---|
committer | Joe Watkins <krakjoe@php.net> | 2017-07-25 06:58:11 +0100 |
commit | 3fd7d819b8ea164bdf255cddcd0a1b1d156f4a3b (patch) | |
tree | 3add0c8a8b005201f25e2f575b9eb1118e3420aa | |
parent | 69b48f83dfc287a8430cf8e993d0937c5128623f (diff) | |
download | php-git-3fd7d819b8ea164bdf255cddcd0a1b1d156f4a3b.tar.gz |
Fixed finding CURL on systems with multiarch support
fixes https://bugs.php.net/bug.php?id=74125
This commit makes the cURL config script aware of debian/ubuntu
[multiarch support][1] which installs architecture specific
headers in a different location.
It checks whether the `dpkg-architecture` script exists and is
executeable, if that is the case, the multiarch architecture is
detected by calling `dpkg-architecture -qDEB_HOST_MULTIARCH` as
documented in [debian multiarch implementation docs][2]:
> `/usr/include/<triplet>`: used for arch-varying headers
[1]: https://wiki.debian.org/Multiarch
[2]: https://wiki.debian.org/Multiarch/Implementation
-rw-r--r-- | NEWS | 4 | ||||
-rw-r--r-- | ext/curl/config.m4 | 22 |
2 files changed, 23 insertions, 3 deletions
@@ -6,6 +6,10 @@ PHP NEWS . Fixed bug #74947 (Segfault in scanner on INF number). (Laruence) . Fixed bug #74954 (null deref and segfault in zend_generator_resume()). (Bob) +- cURL: + . Fixed bug #74125 (Fixed finding CURL on systems with multiarch support). + (cebe) + - Mbstring: . Fixed bug #71606 (Segmentation fault mb_strcut with HTML-ENTITIES encoding). (cmb) diff --git a/ext/curl/config.m4 b/ext/curl/config.m4 index 2f82c3485d..63682e0f06 100644 --- a/ext/curl/config.m4 +++ b/ext/curl/config.m4 @@ -17,11 +17,23 @@ if test "$PHP_CURL" != "no"; then break fi done + if test -z "$CURL_DIR"; then + AC_MSG_RESULT(not found) + if which dpkg-architecture>/dev/null; then + AC_MSG_CHECKING(for cURL in multiarch path) + CURL_MULTIARCH_INCLUDE=/usr/include/$(dpkg-architecture -qDEB_HOST_MULTIARCH) + if test -r $CURL_MULTIARCH_INCLUDE/curl/easy.h; then + CURL_DIR=/usr + AC_MSG_RESULT(found in $CURL_MULTIARCH_INCLUDE) + else + AC_MSG_RESULT(not found) + fi + fi + fi fi if test -z "$CURL_DIR"; then - AC_MSG_RESULT(not found) - AC_MSG_ERROR(Please reinstall the libcurl distribution - + AC_MSG_ERROR(Could not find cURL, please reinstall the libcurl distribution - easy.h should be in <curl-dir>/include/curl/) fi @@ -45,7 +57,11 @@ if test "$PHP_CURL" != "no"; then AC_MSG_ERROR(cURL version 7.10.5 or later is required to compile php with cURL support) fi - PHP_ADD_INCLUDE($CURL_DIR/include) + if test -z "$CURL_MULTIARCH_INCLUDE"; then + PHP_ADD_INCLUDE($CURL_DIR/include) + else + PHP_ADD_INCLUDE($CURL_MULTIARCH_INCLUDE) + fi PHP_EVAL_LIBLINE($CURL_LIBS, CURL_SHARED_LIBADD) PHP_ADD_LIBRARY_WITH_PATH(curl, $CURL_DIR/$PHP_LIBDIR, CURL_SHARED_LIBADD) |