diff options
-rw-r--r-- | dev-perl/WWW-Curl/WWW-Curl-4.150.0-r1.ebuild | 4 | ||||
-rw-r--r-- | dev-perl/WWW-Curl/WWW-Curl-4.170.0.ebuild | 4 | ||||
-rw-r--r-- | dev-perl/WWW-Curl/files/WWW-Curl-4.150.0-curl-7.50.2.patch | 40 |
3 files changed, 46 insertions, 2 deletions
diff --git a/dev-perl/WWW-Curl/WWW-Curl-4.150.0-r1.ebuild b/dev-perl/WWW-Curl/WWW-Curl-4.150.0-r1.ebuild index 8a2818fa127e..e600e514153c 100644 --- a/dev-perl/WWW-Curl/WWW-Curl-4.150.0-r1.ebuild +++ b/dev-perl/WWW-Curl/WWW-Curl-4.150.0-r1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2014 Gentoo Foundation +# Copyright 1999-2016 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Id$ @@ -19,3 +19,5 @@ RDEPEND="net-misc/curl" DEPEND="${RDEPEND}" SRC_TEST=online + +PATCHES=("${FILESDIR}"/${PN}-4.150.0-curl-7.50.2.patch) diff --git a/dev-perl/WWW-Curl/WWW-Curl-4.170.0.ebuild b/dev-perl/WWW-Curl/WWW-Curl-4.170.0.ebuild index fc0c8aae0e6a..aacac26bc3cd 100644 --- a/dev-perl/WWW-Curl/WWW-Curl-4.170.0.ebuild +++ b/dev-perl/WWW-Curl/WWW-Curl-4.170.0.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2015 Gentoo Foundation +# Copyright 1999-2016 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Id$ @@ -19,3 +19,5 @@ RDEPEND="net-misc/curl" DEPEND="${RDEPEND}" SRC_TEST=online + +PATCHES=("${FILESDIR}"/${PN}-4.150.0-curl-7.50.2.patch) diff --git a/dev-perl/WWW-Curl/files/WWW-Curl-4.150.0-curl-7.50.2.patch b/dev-perl/WWW-Curl/files/WWW-Curl-4.150.0-curl-7.50.2.patch new file mode 100644 index 000000000000..2fecfce621a8 --- /dev/null +++ b/dev-perl/WWW-Curl/files/WWW-Curl-4.150.0-curl-7.50.2.patch @@ -0,0 +1,40 @@ +curl-7.50.2 introduced a #define without integer value: + + #ifdef CURL_NO_OLDIES + #define CURL_STRICTER + #endif + +Heuristics in 'Makefile.PL' assumes all defines in form of + #define CURL_<something> <an-expression> +and generates a symbol lookup table in 'curlopt-constants.c' +as: + + static int + constant(const char *name) + { + errno = 0; + + if (strncmp(name, "CURL_", 5) == 0) { + name += 5; + switch (*name) { + ... + case 'S': + if (strEQ(name, "STRICTER")) return CURL_STRICTER; +Which is not valid C: + curlopt-constants.c:128:49: error: ‘CURL_STRICTER’ undeclared (first use in this function) + if (strEQ(name, "STRICTER")) return CURL_STRICTER; + ^~~~~~~~~~~~~ +diff --git a/Makefile.PL b/Makefile.PL +index f9170bb..fc1a55a 100644 +--- a/Makefile.PL ++++ b/Makefile.PL +@@ -122,2 +122,9 @@ if (!defined($curl_h)) { + while(<H>) { ++ # Skip defines without values like: ++ # #define CURL_STRICTER ++ if (/^#define (CURL[A-Za-z0-9_]*)$/) { ++ chomp; ++ warn "Skipping '$_': does not define a symbol"; ++ next; ++ } + if (/^#define (CURL[A-Za-z0-9_]*)/) { |