CMake:Bundles And Frameworks: Difference between revisions
From KitwarePublic
Jump to navigationJump to search
(→Issue) |
|||
Line 7: | Line 7: | ||
All versions are ver1, ver2, ...) | All versions are ver1, ver2, ...) | ||
On Mac there are | On Mac there are several different cases of combinations of bundles, libraries, and unix tools. | ||
==Cases== | |||
===Unix tools only=== | |||
* No issues (just like any other unix) | |||
===Bundle only=== | ===Bundle only=== | ||
Line 25: | Line 30: | ||
appl1_res1 | appl1_res1 | ||
appl1_res2 | appl1_res2 | ||
</pre> | |||
===Framework only=== | |||
* Everything in a same directory: | |||
<pre> | |||
/Library/ | |||
Frameworks/ | |||
libr1.framework/ | |||
libr1 -> Versions/Current/libr1 | |||
Resources -> Versions/Current/Resources | |||
Versions/ | |||
Current -> ver2 | |||
ver2/ | |||
libr1 | |||
Resources/ | |||
Info.plist | |||
version.plist | |||
</pre> | </pre> | ||
Revision as of 20:27, 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 several different cases of combinations of bundles, libraries, and unix tools.
Cases
Unix tools only
- No issues (just like any other unix)
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
Framework only
- Everything in a same directory:
/Library/ Frameworks/ libr1.framework/ libr1 -> Versions/Current/libr1 Resources -> Versions/Current/Resources Versions/ Current -> ver2 ver2/ libr1 Resources/ Info.plist version.plist
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/ Frameworks/ 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
Bundle + 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