Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP

Loading…

Allow this framework to be bundled more flexibly on OS X #88

Open
wants to merge 1 commit into from

1 participant

@natevw

(e.g. as a subframework within another bundle)

See these for more discussion of why this is better:
http://overooped.com/post/87887322/use-rpath-instead-of-loader-path-or-executable-path
http://www.dribin.org/dave/blog/archives/2009/11/15/rpath/

In my case, I needed SocketRocket to be a ± hidden dependency within a site-specific framework and the app could not be deployed with the previous installation path. (simply using @loader_path does work because within an app it would be at @loader_path/../Frameworks but within a parent framework it needs @loader_path/Frameworks.)

@natevw natevw Allow this framework to be bundled more flexibly on OS X (e.g. as a s…
…ubframework within another bundle)

See these for more discussion of why this is better:
http://overooped.com/post/87887322/use-rpath-instead-of-loader-path-or-executable-path
http://www.dribin.org/dave/blog/archives/2009/11/15/rpath/

In my case, I needed SocketRocket to be a ± hidden dependency within a site-specific framework and the app could not be deployed with the previous installation path.
d59e61e
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Commits on Mar 27, 2013
  1. @natevw

    Allow this framework to be bundled more flexibly on OS X (e.g. as a s…

    natevw authored
    …ubframework within another bundle)
    
    See these for more discussion of why this is better:
    http://overooped.com/post/87887322/use-rpath-instead-of-loader-path-or-executable-path
    http://www.dribin.org/dave/blog/archives/2009/11/15/rpath/
    
    In my case, I needed SocketRocket to be a ± hidden dependency within a site-specific framework and the app could not be deployed with the previous installation path.
This page is out of date. Refresh to see the latest.
Showing with 3 additions and 2 deletions.
  1. +1 −0  README.rst
  2. +2 −2 SocketRocket.xcodeproj/project.pbxproj
View
1  README.rst
@@ -79,6 +79,7 @@ more rhudimentary and less robust.
2. Add ``SocketRocket.framework`` to the link libraries
3. If you don't have a "copy files" step for ``Framework``, create one
4. Add ``SocketRocket.framework`` to the "copy files" step.
+5. Add ``@loader_path/../Frameworks`` to the "Runpath Search Paths" setting of your app target
API
---
View
4 SocketRocket.xcodeproj/project.pbxproj
@@ -602,7 +602,7 @@
GCC_PREFIX_HEADER = "SocketRocket/SocketRocket-Prefix.pch";
GCC_SYMBOLS_PRIVATE_EXTERN = NO;
INFOPLIST_FILE = "SocketRocketOSX/SocketRocketOSX-Info.plist";
- LD_DYLIB_INSTALL_NAME = "@executable_path/../Frameworks/$(EXECUTABLE_PATH)";
+ INSTALL_PATH = "@rpath";
ONLY_ACTIVE_ARCH = YES;
OTHER_LDFLAGS = "-ObjC";
PRODUCT_NAME = SocketRocket;
@@ -629,7 +629,7 @@
GCC_PREFIX_HEADER = "SocketRocket/SocketRocket-Prefix.pch";
GCC_SYMBOLS_PRIVATE_EXTERN = NO;
INFOPLIST_FILE = "SocketRocketOSX/SocketRocketOSX-Info.plist";
- LD_DYLIB_INSTALL_NAME = "@executable_path/../Frameworks/$(EXECUTABLE_PATH)";
+ INSTALL_PATH = "@rpath";
OTHER_LDFLAGS = "-ObjC";
PRODUCT_NAME = SocketRocket;
SDKROOT = macosx;
Something went wrong with that request. Please try again.