[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Octave-patch-tracker] [patch #8314] Patch to build system to use @rpath
Michael C. Grant
[Octave-patch-tracker] [patch #8314] Patch to build system to use @rpath for Mac liboctave/libinterp
Thu, 13 Feb 2014 16:22:14 +0000
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/32.0.1700.107 Safari/537.36
Summary: Patch to build system to use @rpath for Mac
Project: GNU Octave
Submitted by: mcgrant
Submitted on: Thu 13 Feb 2014 04:22:13 PM GMT
Priority: 5 - Normal
Assigned to: None
Discussion Lock: Any
The following patch inserts additional build steps (using "all-local") in
libinterp/Makefile, liboctave/Makefile, and src/Makefile so that these
internal libraries and the binaries use the @rpath construct.
Specifically, the libraries' "install names" are changed to
@rpath/liboctinterp.2.dylib and @rpath/liboctave.2.dylib, and the executables
add $(octlibdir) to their RPATH list.
Why does this matter? It enables MEX/OCT files to be shared between users
without recompilation and without having to resort to DYLD_LIBRARY_PATH
tricks. I believe this is already possible for Linux and/or Windows, but these
steps are needed for the Mac. (Indeed, Octave Forge's app bundles have to do
something like this on a larger scale).
If you study the patch you will see I attempted to ensure that this is engaged
ONLY on a Mac, only when shared libraries are being built, and only when the
'install_name_tool' utility is available. So this should leave builds for all
other platforms unchanged.
Date: Thu 13 Feb 2014 04:22:13 PM GMT Name: rpath.diff Size: 3kB By:
Reply to this item at:
Message sent via/by Savannah
- [Octave-patch-tracker] [patch #8314] Patch to build system to use @rpath for Mac liboctave/libinterp,
Michael C. Grant <=