[CMake] BundleUtilities (was RPATH on Mac)

David Cole david.cole at kitware.com
Wed Apr 20 11:25:48 EDT 2011


On Wed, Apr 20, 2011 at 11:17 AM, Michael Jackson <
mike.jackson at bluequartz.net> wrote:

> On Apr 20, 2011, at 10:55 AM, David Cole wrote:
>
> >
> > What is wrong with that one ?
> >
> > Nothing is wrong with it, but there is no link from the app to the
> plugin, so fixup_bundle cannot determine that it's necessary and
> automatically pull it in. The plugin, from the app's point of view, is
> something that may or may not exist, and if it does, it's dynamically
> loaded. So you need to install it into the bundle first, and then you need
> to tell fixup_bundle about it so that it gets included in the set of fixed
> up libraries.
> >
> > Hope this helps,
> > David
>
> Is that the part that changed from CMake 2.8.3 to 2.8.4? I am using CMake
> 2.8.3 and all my code works fine but I don't think I explicitly "install"
> the plugin but rather list it (the absolute path to the built plugin) as an
> argument to the "fixup_bundle" function. Will that scheme still work under
> CMake 2.8.4?
>
>  There are some other issues with CMake 2.8.4 with BundleUtilities and my
> code which is why I have not updated from 2.8.3
>
> Mike Jackson
> www.bluequartz.net
> _______________________________________________
> Powered by www.kitware.com
>
> Visit other Kitware open-source projects at
> http://www.kitware.com/opensource/opensource.html
>
> Please keep messages on-topic and check the CMake FAQ at:
> http://www.cmake.org/Wiki/CMake_FAQ
>
> Follow this link to subscribe/unsubscribe:
> http://www.cmake.org/mailman/listinfo/cmake
>


In CMake 2.8.3 and earlier, libs listed in the 2nd arg to fixup_bundle were
copied into the bundle. Half the people using it considered that behavior a
bug, half liked it just fine.

In 2.8.4, we "fixed" the bug (really, transferred it to the other half of
the people)...

In retrospect, I never should have allowed that change to go into CMake, but
there you have it: 2.8.3 and earlier copy the plugins, 2.8.4 and later do
not.

So: if you want a plugin inside your bundle, with CMake 2.8.4 and later, you
have to copy/install the plugin into the bundle yourself before calling
fixup_bundle.


Sorry for the persisting confusion,
David
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.cmake.org/pipermail/cmake/attachments/20110420/d529e292/attachment-0001.htm>


More information about the CMake mailing list