On 11/08/17 00:54, Jeff King wrote:
On Fri, Aug 11, 2017 at 12:23:42AM +0200, Tom G. Christensen wrote:
Er, sorry if I'm being dense, but how? Are you suggesting that by
removing the callsite of get_curl_allowed_protocols(), the compiler
might elide the now-dead code completely? I could certainly see it being
dropped after the compilation, but I'm surprised that it wouldn't
complain about the undeclared identifiers in the first place.
You're right, that should not be able to handle it.
Can you please double-check that you're
building against the correct version of curl, and that you are building
the HTTP parts of Git (which _are_ optional, and the test suite will
pass without them).
I use a mock buildroot and there is no other curl than the vendor supplied
7.15.5 installed:
[...]
OK, thanks for double-checking. I'm still puzzled why your build
succeeds and mine does not.
I know what's going on now and it's so simple.
Red Hats version of curl 7.15.5 includes a number of patches including
one that backports support for CURLPROTO_* (as part of a fix for
CVE-2009-0037).
I haven't checked el6 but I would not be surprised if there where
similar things going on there.
So in conclusion version based #ifdefs are misleading when used with
curl as shipped with RHEL.
-tgc