-
Notifications
You must be signed in to change notification settings - Fork 127
Developer: Toolchain of archipel client
Cappuccino applications don't have to be "built". They can be run right from the source directory, but then, the Cappuccino runtime will have to parse source on the fly. This decreases the overall performances. But for developing needs, performance is not really necessary. By the way, all the bundles (located in ModulesSources) have to be built, otherwise they won't load at all.
The really low level way to build a module is:
cd ModulesSources/MyModule/
jake release ; jake debug
cd ../../Modules
ln -s ModulesModulesSources/MyModules/Build/{Debug/Release}/MyModule
And then edit Modules/modules.plist to tell Archipel to load the module :
<dict>
<key>folder</key>
<string>MyModule</string>
</dict>
All of above is a pain. So we provide a script called buildArchipel
that automates all these tasks.
cd ArchipelClient # you must be in this directory
./buildArchipel -bg --modules=MyModule
If you want to build two or more modules, separate them with commas:
./buildArchipel -bg --modules=Module1,Module2,...,ModuleN
If you use the g
options the module plist will only contains the modules given with --modules
.
If you want to build all modules:
./buildArchipel -bag [--config=Release|Debug]
Then you can update some modules without regenerating the plist using:
./buildArchipel -b --modules=Module1,Module2
You also can sync all the localization files:
./buildArchipel -al
Or just for one module:
./buildArchipel -l --modules=Module1
For more information just type the following:
./buildArchipel --help
This script build Archipel GUI according to a the following set of options.
Copyright (c) 2010 Antoine Mercadal <[email protected]>
Usage: build.py COMMAND [CONFIG] TARGETS [OPTIONS]
COMMAND are the following:
-b | --build : build the TARGETS
-C | --clean : clean the TARGETS builded
CONFIG is the following:
--config=<conf> : <conf> can be 'release' of 'debug'. If ommited, default config is 'debug'.
TARGETS are the following:
-a | --all : build all. Projects and all modules;
-p | --project : build only Archipel without any modules;
-m | --allmodules : build only all modules;
--modules=<list> : build a given list of module. <list> is "moduleA,moduleC" whith no space.
OPTIONS are the following:
-I | --installmodules : copy all the already builded modules according to TARGET to the destination dir.
-u | --uninstallmodules : remove all the builded modules according to TARGET from the destination dir.
-g | --generateplist : generate a modules.plist file according to TARGET.
-h | --help : display this message
-e | --example : display some usage example;
--native=<platform> : generate a native app. platform supported are [MacOS] (case sensitive).
--ignoremodules=<list> : ignore list of modules. <list> is "moduleA,moduleC" whith no space.
--exportsdk=<path> : generate and export Archipel SDK to <path>
--export=<path> : export the ready to use flattened application to <path>