| Elego ComPact Manual Set Version 1.2 | ||
|---|---|---|
| Prev | Chapter 8. Project Management using the Graphical User Interface | Next |
Bulding a project with ComPact is as simple as bulding individual packages. The main differences are that dependencies are now relevant on package level, and that building of a projects involves the shipment of packages to a certain pool. So the most important thing you have to decide is whether you want to use the local, project, or global pool to build your project.
The ComPact project manager investigates the dependencies of all packages and builds up a package dependency graph. To build a project means to invoke the build operation on all packages that are included in the project that need to be built in the correct order, which is simply a topological sort of the dependency graph. After each package has been built successfully, it is shipped to one of the package pools.
The behaviour of the project manager for certain types of packages is defined in the PkgBase.DefaultData resource. This file defines the structure of different types of packages, as well as a set of actions that may be applied to these types of packages. The actions have got a symbolic name and their use by ComPact is standardized. See Section A.2 in Elego ComPact Manual Appendices for further details.
Building, Cleaning, and Shipping .
Build will execute the actions mkdep, build, and ship in the correct order to build the complete project.
Clean will execute the action clean or realclean for all or selected packages of the project, depending on whether most or all is selected.
Ship will execute the action ship for all or selected packages of the project.
Options for all Build Operations . Here is a list of the possible option choices for the build actions:
local | global | project defines the package pool that is used if any package has been built and needs to be shipped during the build process.
dependency check | no dependency check Usually ComPact performs a complete recomputation of the dependencies at the start of every build, but it can be directed to use an old dependency graph saved in a previous build run.
keep going | stop on errors Normally, ComPact stops if any error is encountered during a program execution, but in some cases it might be useful to continue the build process.
selected | all Most of the commands of the project manager take one or more packages are arguments, and assume all packages if no package argument is present. You can select the packages you want as targets of the command invocation by clicking on the check box in the directory frames above.
modified | mod./dep. | outdated | outd./dep. | dependend The packages the project manager operates on can also be selected in a more implicit way. modified and outdated select the packages with the corresponding version control state, while mod./dep. and outd./dep. add the packages depending on these. dependend is used to add all packages depending on one or more explicitly selected packages. If you build a project with outdated packages, a checkout of these packages is implied, as packages can only be built in the local workspace. If the first build run fails, a second run cannot be started with the same arguments, as the state of the packages has changed since some have been checked out.