On Mon, Apr 03, 2017 at 10:54:38PM -0400, Jeff King wrote: > A nearby thread raised the question of whether we can rely on a version > of libcurl that contains a particular feature. The version in question > is curl 7.11.1, which came out in March 2004. I had a quick look at the 7.11.1 support, and I found that current git actually doesn't build with anything older than curl 7.19.4. The issue is aeae4db174, which moved some stuff to a helper function but didn't copy the corresponding #ifdefs. With that issue fixed, I could build with versions back to 7.12.2, which is the oldest curl version I could get to build on my modern system. Note that while I could build with those versions, I didn't actually check if the result worked. I'd say it's going to be increasingly likely with time that similar issues will crop up for such old versions of dependencies. Frank diff --git a/http.c b/http.c index 96d84bbed..8c782a086 100644 --- a/http.c +++ b/http.c @@ -674,6 +674,7 @@ void setup_curl_trace(CURL *handle) curl_easy_setopt(handle, CURLOPT_DEBUGDATA, NULL); } +#if LIBCURL_VERSION_NUM >= 0x071304 static long get_curl_allowed_protocols(int from_user) { long allowed_protocols = 0; @@ -689,6 +690,7 @@ static long get_curl_allowed_protocols(int from_user) return allowed_protocols; } +#endif static CURL *get_curl_handle(void) { -- "Debugging is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it." - Brian W. Kernighan