Hi all,
Pretty much all the feedback that I've received has been addressed. If you have anything to share please go ahead, otherwise I will be pushing this tomorrow/the day after.
Thanks Emil
On 1 April 2015 at 17:15, Emil Velikov emil.l.velikov@gmail.com wrote:
Hi all,
As mentioned by Alan, some compilers do not like it when the symbol declaration and definition differ wrt their visibility attribute.
Afaict there are three ways to handle this;
- Add the drm_public macro into the public headers, and annotate the
declarations.
- Use version script to limit the exported symbols.
- Remove the drm_public macro/VISIBILITY_CFLAGS and annotate the
private symbols.
From the above three I believe that 3) is the better one as:
- it does not add drm_public to the library API,
- does not rely on features that some platform may be missing (or
require singling out every platform in the configure.ac script).
So I've went ahead with 3), added a few tests and wired them to `make check' so that one can easily catch problems.
I have checked that the libraries do not export any new symbols and the scripts work as intended nearly a dozen times :-)
The whole series can be found in branch reannotate-symbols at https://github.com/evelikov/libdrm
Cheers, Emil