Very often when a configuration is added or chanages our build fails with an undefined reference at the final link time. The problem is the build system not always realizes it needs to relink some of the intermediate ("convenience") libraries. We have some logic in webkitdirs.pm to force autogen to run in case configuration options change; a natural addition to that is to also remove the libtool files for all libraries to force a relink, which should cause all of the dependencies to be evaluated and properly satisfied. I'm testing a patch.
mrobinson, btw, I was thinking
there was a patch today that broke the ews badly, its crime was setting svg and svg fonts to be disabled by default
(it was an unrelated change, the developer probably just forgot about it)
The settings or compile-time options?
<kov> build-webkit options
we could have survived that if our logic that checks whether to re-run autogen also removed *.la, I think
it's ugly, but is probably better than having the ews broken for a while, maybe
<mrobinson> kov: Yeah, I think that's the way to go.
kov: Did the patch re-run autogen?
<mrobinson> Did build-webkit re-run autogen?
<kov> it had to, because --enable-svg turned into --disable-svg, etc
I didn't check tbh, but I would be surprised if it didn't, that check is pretty reliable heh
<mrobinson> It's odd that make isn't smart enough to understand that when the defines change, everything has to be rebuilt that uses them.
<mrobinson> I guess it doesn't track the actual command-line of the compiler...
<kov> mrobinson, this was the patch: https://bugs.webkit.org/show_bug.cgi?id=62698
it did run autogen
I believe we have managed to make this less of a problem after a lot of changes.