Detailed symbols.map

Daniel van Vugt daniel.van.vugt at canonical.com
Wed Aug 26 09:40:08 UTC 2015


We can script character translation easily enough.

And your concern about how to make it foolproof when fools are so 
ingenious is a reasonable point, but not a new problem. We had the same 
problem with the old checksum tests.

I guess the way we want to and should maintain ABIs is that the contents 
of a stanza MIR_SERVER_N { } never changes (although you can always add 
a new stanza MIR_SERVER_N+1 with changes). So store a historical copy of 
existing "ABIs" such as MIR_SERVER_N and compare to make sure its 
contents never change (if still present at all).


On 26/08/15 16:06, Alan Griffiths wrote:
> On 26/08/15 07:30, Daniel van Vugt wrote:
>> If... we specified the complete function prototype for each C++ entry
>> in symbols.map (where the C++ symbol encodes its parameter types),
>> then we would be able to detect ABI breaks automatically as a build
>> failure. Instead of having to keep a keen eye on changes to include/*
>>
>> Just a thought.
>>
>
> This might detect some failures. But we'd need to write a filter to deal
> with all the characters the symbols.map parser doesn't like.
>
> But I fear that all that would happen is that the symbols.map would be
> updated to fix the build.
>



More information about the Mir-devel mailing list