|
Boost-Build : |
From: Andre Hentz (ahentz_at_[hidden])
Date: 2004-12-27 12:47:35
Alan Gutierrez wrote:
> * Alan Gutierrez <alan-jamboost_at_[hidden]> [2004-12-27 03:05]:
>
>> I've noticed that there is no "bundle" rule for OS X (darwin).
>>
>> If developed, could one be patched into Boost.Build? Or is that
>> best kept in my specific project?
>>
>> In fact, there is very little GUI support in Boost.Build, and
>> as I develop rules for resource compilers, would they belong in
>> Boost.Build to be used by other GUI developers, or is GUI
>> development specific to my project.
>>
>> Or are they there and I can't find them?
>
>
> For a start I'd like to create the bundle directory structure.
>
> mkdir -p "$(FULL_PATH_TO_EXE).app/Contents/MacOS"
> cp "$(FULL_PATH_TO_EXE)" "$(FULL_PATH_TO_EXE).app/Contents/MacOS"
>
> That would create a minimal EXE.
>
> What method should I pursue?
>
> * Creating a top level rule called bundle?
> - Probably necessary so's to specify other bundle resources.
>
> * Hooking exe?
I don't think you should change the EXE rule. One may want to provide a
'unbundled' version of some executables. Most of my MacOSX executables
are not in a bundle but I do have one that is.
As for the contents of a (very simple) bundle:
EXENAME.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
Perhaps the usage should look like:
exe myexe : $(SOURCES).cpp ;
bundle myexe.app : myexe : <icon>myexe.icns ;
Best,
Andre Hentz
Boost-Build list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk