[cmake-developers] SONAME on APPLE?
Stephen Kelly
steveire at gmail.com
Tue Jul 10 05:55:04 EDT 2012
Brad King wrote:
> On 07/09/2012 01:15 PM, Stephen Kelly wrote:
>> More interesting is that cmake is generating an IMPORTED_SONAME of just
>> 'cmakeqt' when I build the library as a framework (no full path, no
>> version number, no file extension). Is this a bug in CMake?
>
> There is explicit code for the case here:
>
>
http://cmake.org/gitweb?p=cmake.git;a=blob;f=Source/cmTarget.cxx;hb=v2.8.8#l3279
>
> -Brad
Ok, so what you said earlier:
> > Should I set the IMPORTED_SONAME to these
> > full paths to the installation location on APPLE? Wouldn't that make the
> > frameworks non-relocatable, or is that a bug in Qt anyway?
>
> Ideally the IMPORTED_SONAME should match the shared library id of
> the actual library file. That's what CMake wants to know.
... was not the full story.
The IMPORTED_SONAME should match the shared library id, except for APPLE
FRAMEWORKS, in which case it should be the outputName? Are there other
exceptions?
If creating IMPORTED targets by hand is a valid usecase (I think it is -
FindQt4 does it too, and there are benefits for other Find modules to do
so), I could try to document this more clearly.
Thanks,
Steve.
More information about the cmake-developers
mailing list