Hi Mathieu,

I think this topic would be worth raising on osg-users to get more input
from the community, as I'm neither an expert under OSX nor with CMake.
Could you straight a thread on osg-users for this?

Cheers,
Robert.

On Thu, Mar 4, 2010 at 1:30 PM, Mathieu Marache
<[email protected]>wrote:

> Hi Robert,
>
> It is a confusing subject... Other mac dev are welcomed to pop in this
> discussion...
>
> This submission tries to resolves two issues I encountered on mac while
> building with CMake's generated makefiles:
>
> 1. build and install directly and using those libs to create a bundle
> 2. build and install into a fakeroot and then copy/rsync to the real
> install location
>
> By default shared libraries are build with a rpath allowing the target to
> run from the build tree. A relinking should happen at 'make install' to
> change the stored rpath to the CMAKE_INSTALL_PREFIX LIBRARY DESTINATION but
> it doesn't so the rpath is just removed. This is not a problem in itself but
> when you want to use those installed libs on another projects that creates a
> Bundle (mac app) it needs the rpath information. This is why I forced it by
> default also (if I don't provide a REAL_INSTALL_PREFIX).
>
> Those relinking are triggered only when creating Frameworks/Bundles targets
> under macosx which we cannot yet do with current CMake 2.8 because it only
> supports one framework construction (where we want one for each of the main
> libs).
>
> Considering these issues made me simplify/correct the submission (attached
> file)
>
> I can keep those modification to myself if you think them too specific.
>
> Mathieu
>
>
> Le 4 mars 10 à 12:36, Robert Osfield a écrit :
>
>  Hi Mathieu,
>>
>> I'm confused by the need for a REAL_INSTALL_PREFIX.  Which does just
>> setting the CMAKE_INSTALL_PREFIX directly work?  If this doesn't work then
>> this is the thing to fix directly rather than have a platform specific
>> workaround.
>>
>> Is looks to me the only extra you've added over setting the
>> CMAKE_INSTALL_PREFIX directly is setting the CMAKE_BUILD_WITH_INSTALL_RPATH
>> set to TRUE and CMAKE_INSTALL_NAME_DIR.
>>
>> I would have thought if these are required to action a proper install then
>> it's something we'd want to have on by default.
>>
>> Robert.
>>
>>
>> 2010/3/3 Mathieu Marache <[email protected]>
>> Hi,
>>
>> I ran into a problem while compiling and installing OSG on a mac. The mac
>> produces dylib that retain the location of their dependencies. So we need to
>> relocate them during the install stage.
>>
>> Our scenario is that a CI machine compiles our sdks and publishs them to a
>> server that we rsync from. The dylib created with the Makefile generator had
>> their dependencies set on the CI machine compilations paths (that doesn't
>> exist on user's machines obviously).
>>
>> Here is a simple modification that will take the option variable
>> CMAKE_REAL_INSTALL_PREFIX and make this happen.
>>
>> As I'm testing the git mirror ( http://github.com/openscenegraph/osg ). I
>> also have pushed this modification on my clone :
>> http://github.com/mathieu/osg/network
>>
>>
>>
>>
>>
>> Mathieu
>>
>>
>> _______________________________________________
>> osg-submissions mailing list
>> [email protected]
>>
>> http://lists.openscenegraph.org/listinfo.cgi/osg-submissions-openscenegraph.org
>>
>>
>> _______________________________________________
>> osg-submissions mailing list
>> [email protected]
>>
>> http://lists.openscenegraph.org/listinfo.cgi/osg-submissions-openscenegraph.org
>>
>
> Mathieu
>
>
> _______________________________________________
> osg-submissions mailing list
> [email protected]
>
> http://lists.openscenegraph.org/listinfo.cgi/osg-submissions-openscenegraph.org
>
>
_______________________________________________
osg-submissions mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-submissions-openscenegraph.org

Reply via email to