Application Bundle
Added by Steve Sharp over 3 years ago
does Jamplus (or anyone) have any rules for generating macosx application bundles ?
Thanks!
Steve.
Replies (4)
RE: Application Bundle
-
Added by Joshua Jensen over 3 years ago
An application bundle is just a bunch of random files in certain directories. How would you want a rule for making a bundle to work? I could see the rule writing the .plist file into the bundle. CMake does it like so:
SET(MACOSX_BUNDLE_INFO_STRING "1.3 Build 1859, Copyright 2007 Cavebug Games LLC")
SET(MACOSX_BUNDLE_ICON_FILE "Pathstorm")
SET(MACOSX_BUNDLE_GUI_IDENTIFIER "")
SET(MACOSX_BUNDLE_LONG_VERSION_STRING "1.3 Build 1859")
SET(MACOSX_BUNDLE_BUNDLE_NAME "Pathstorm")
SET(MACOSX_BUNDLE_SHORT_VERSION_STRING "1.3")
SET(MACOSX_BUNDLE_BUNDLE_VERSION "1.0")
SET(MACOSX_BUNDLE_COPYRIGHT "Copyright 2007 Cavebug Games LLC")
SET_SOURCE_FILES_PROPERTIES(${EXTRA_DATA} PROPERTIES MACOSX_PACKAGE_LOCATION Resources)
SET_SOURCE_FILES_PROPERTIES(${DOCS_SRCS} PROPERTIES MACOSX_PACKAGE_LOCATION Resources/Docs)
SET_SOURCE_FILES_PROPERTIES(${EXTRA_FRAMEWORKS} PROPERTIES MACOSX_PACKAGE_LOCATION Frameworks)
The MACOSX_PACKAGE_LOCATION bit is just as easily done with a copy or even a symbolic link (through the SoftLink rule).
Thoughts?
Josh
RE: Application Bundle
-
Added by Steve Sharp over 3 years ago
yeah thats kinda what i was thinking, pass the target executable, the icon and some info and generate the info.plist :
#=============================================================================
rule sh.MacBundle ( TARGET : executable info icon )
{
- TARGET.app/Contents
- Info.plist <-- at least includes the locations of executable and icon
- MacOS/ <-- executable here (or a link to it)
- Resources/ <-- application icon here #
}
RE: Application Bundle
-
Added by Joshua Jensen over 3 years ago
How does this feel?
if $(PLATFORM) in macosx32 macosx64 {
C.BundleInfo SimpleWx : info : "1.1 Build 1000, Copyright 2010 wxWidgets" ;
C.BundleInfo SimpleWx : iconfile : "SimpleWx" ;
C.BundleInfo SimpleWx : longversion : "1.1 Build 1000" ;
C.BundleInfo SimpleWx : bundlename : "SimpleWx" ;
C.BundleInfo SimpleWx : shortversion : 1.1 ;
C.BundleInfo SimpleWx : bundleversion : 1.0 ;
C.BundleInfo SimpleWx : copyright : "Copyright 2010 wxWidgets" ;
}
C.Application SimpleWx : $(SRCS) : windows bundle ;
-Josh
RE: Application Bundle
-
Added by Steve Sharp about 3 years ago
Perfect, that works a treat! (bit late reply i know!)
(1-4/4)