CMake:Bundles And Frameworks: Difference between revisions
From KitwarePublic
Jump to navigationJump to search
No edit summary |
|||
Line 88: | Line 88: | ||
<pre> | <pre> | ||
/Library/ | |||
Frameworks/ | |||
libr1.framework/ | |||
libr1 -> Versions/Current/libr1 | |||
Resources -> Versions/Current/Resources | |||
Versions/ | |||
Current -> ver2 | |||
ver2/ | |||
libr1 | |||
Resources/ | |||
Info.plist | |||
version.plist | |||
/usr/ | |||
bin/ | |||
appl1 | |||
appl2 -> /Library/Frameworks/libr1.framework/Commands/appl2 | |||
appl3 -> /Library/Frameworks/libr1.framework/Version/ver1/bin/appl3 | |||
share/ | |||
appl1-version/ | |||
appl1_aux1 | |||
appl1_aux2 | |||
</pre> | |||
===Framework + Unix tools=== | |||
* Framework stuff in one directory, unix tools in typical unix location | |||
<pre> | |||
/Applications/ | |||
appl1.app/ | |||
Contents/ | |||
Info.plist | |||
MacOS/ | |||
appl1 -> appl1-ver1 | |||
appl1-ver2 | |||
appl1_aux1 | |||
appl1_aux2 | |||
Resources/ | |||
appl1_res1 | |||
appl1_res2 | |||
/Library/ | /Library/ | ||
Frameworks/ | Frameworks/ |
Revision as of 20:22, 16 March 2006
Issue
(In all examples, the applications are named appl1, appl2, ..., libraries are named libr1, libr2, ..., header files are named appl1_header1, appl2_header2, libr1_header1, ..., and there are auxilary files associated with application and library appl1_aux1, appl2_aux2, libr1_aux1, .... and some resource files associated with application and library appl1_res1, appl2_res2, libr1_res1, .... All versions are ver1, ver2, ...)
On Mac there are four different cases:
Bundle only
- Everything in a same directory:
/Applications/ appl1.app/ Contents/ Info.plist MacOS/ appl1 -> appl1-1 appl1-1 appl1_aux1 appl1_aux2 Resources/ appl1_res1 appl1_res2
Bundle + Framework
- Bundle stuff in one directory, framework stuff in another one
/Applications/ appl1.app/ Contents/ Info.plist MacOS/ appl1 -> appl1-ver1 appl1-ver2 appl1_aux1 appl1_aux2 Resources/ appl1_res1 appl1_res2 /Library/ Framework/ libr1.framework/ libr1 -> Versions/Current/libr1 Resources -> Versions/Current/Resources Versions/ Current -> ver2 ver2/ libr1 Resources/ Info.plist version.plist
Bundle + Unix tools
- Bundle stuff in one directory, unix tools in typical unix location
/Applications/ appl1.app/ Contents/ Info.plist MacOS/ appl1 -> appl1-ver1 appl1-ver2 appl1_aux1 appl1_aux2 Resources/ appl1_res1 appl1_res2 /usr/ bin/ appl2 share/ appl2-version/ appl2_aux1 appl2_aux2
Framework + Unix tools
- Framework stuff in one directory, unix tools in typical unix location
/Library/ Frameworks/ libr1.framework/ libr1 -> Versions/Current/libr1 Resources -> Versions/Current/Resources Versions/ Current -> ver2 ver2/ libr1 Resources/ Info.plist version.plist /usr/ bin/ appl1 appl2 -> /Library/Frameworks/libr1.framework/Commands/appl2 appl3 -> /Library/Frameworks/libr1.framework/Version/ver1/bin/appl3 share/ appl1-version/ appl1_aux1 appl1_aux2
Framework + Unix tools
- Framework stuff in one directory, unix tools in typical unix location
/Applications/ appl1.app/ Contents/ Info.plist MacOS/ appl1 -> appl1-ver1 appl1-ver2 appl1_aux1 appl1_aux2 Resources/ appl1_res1 appl1_res2 /Library/ Frameworks/ libr1.framework/ libr1 -> Versions/Current/libr1 Resources -> Versions/Current/Resources Versions/ Current -> ver2 ver2/ libr1 Resources/ Info.plist version.plist /usr/ bin/ appl1 appl2 -> /Library/Frameworks/libr1.framework/Commands/appl2 appl3 -> /Library/Frameworks/libr1.framework/Version/ver1/bin/appl3 share/ appl1-version/ appl1_aux1 appl1_aux2