Re: Subversion configure script broken for serf if sysroot path contains "-D"
From: Bruce Bye <bruce.bye_at_realvnc.com>
Date: Fri, 15 May 2015 14:56:32 +0000
On 15/05/15 14:21, Branko ╚ibej wrote:
If you attempt to cross-compile subversion with a sysroot path containing "-D", blame.c will fail to compile, failing to find serf.h.
The root cause is this line in serf.m4:
I assume the intention is simply to strip any pre-compile defines from the cflags returned by pkg-config, but the regex is too aggressive.
This was observed in subversion 1.8.9, doing a Yocto build on Linux, but a code inspection of 1.8.13 suggests the issue is still there and it doesn't look especially platform sensitive.
I'm pretty sure no-one wants to set up a Yocto environment just to reproduce this failure. :)
There's really no completely safe way to rewrite that regular expression. But I think you can avoid even invoking it by passing --with-serf=/path/to/serf/prefix to configure; if the Serf path is provided, we won't invoke pkg-config.
But then, since what the code is actually trying to get is the include path and not the full cflags, perhaps it could instead request --variable=includedir from pkg-config, and not need to munge the string at all.
It does look like that work-around would be fine in an isolated context, though.
This is an archived mail posted to the Subversion Dev mailing list.