-
Notifications
You must be signed in to change notification settings - Fork 26
MaintenanceTools
The Maintenance tools are a set of CMake scripts used to download, configure and build omegalib and its modules. They are designed to simplify repetitive or error-prone operations.
The source code of all the tools is in etc/mtools
This document lists all currently available maintenance tools and information on their usage.
All tool command lines are in the form
omega <command>[.subcommand] [target] [option]
Where
-
command
is the main command to execute. -
subcommand
is an optional specifier for the main command. -
target
is either a local directory containing an omegalib version or the name of a remote branch (depending on the command). -
option
is an optional argument supported by some commands.
You can type the name of a command without any arguments to get help about that command.
omega add {local-dir} {modules}
Adds optional modules to a local omegalib copy.
-
local-dir
: name of local installation directory. -
modules
: a list of optional modules to install with omegalib. modules are separated by ; with no space between them. Usecommon-modules
to install a set of commonly used omegalib.
Example
> omega add master omegaVtk;omegaOsg
omega build {local-dir} [debug]
Builds a local omegalib copy
-
local-dir
: name of local installation directory") -
debug
(optional): if specified, build in debug mode")
Example
> omega build master debug
omega choose {local-dir}
(windows only) Selects a specific omegalib distribution, and generates a script file that can be invoked to select that distribution as the active one. This command needs to be invoked only once for each distribution you have installed. Afterwards you can use the generated chooser script (named choose_[distribution name].bat) to select that distribution.
-
local-dir
: : name of local installation directory
Example
> omega choose master <- generates the selection script for the master distribution
> omega choose release <- generates the selection script for the releasedistribution
> choose_master
> orun <- will onvoke orun from the master distribution
> choose_release
> orun <- will onvoke orun from the releasedistribution
omega get [local-dir:]{version} {modules} [vs12|xcode]
Downloads and builds omegalib and optional modules
-
local-dir
(optional): name of local installation directory. default value is the version name. -
version
: name of the omegalib version to download. Use master to download the latest version. -
modules
: a list of optional modules to install with omegalib modules are separated by ; with no space between them. Use 'common-modules' to install a set of commonly used omegalib modules. Use 'plain' to skip module installation. -
vs12
(Windows only): force generating a Visual Studio 2012. solution. If not present, build defaults to Visual Studio 2013. -
xcode
(OSX only): force generating an XCode project instead of a makefile
Example
> omega get master common-modules
omega module.stat [local-dir]
Prints the list of local changes on all modules installed on one distribution
omega pack.[prepare|build|publish]
Utilities for packaging omegalib and modules to installable binaries. If you run
pack without arguments, the command will execute pack.prepare
, pack.build
and
pack.publish
on the selected omegalib version.
-
local-dir
: name of local installation directory.
Example
> omega pack.prepare master
> omega pack master
omega pack.prepare {local-dir}
Prepares files for packaging into installers. Run pack-build after this to generate the installer binaries.
-
local-dir
: name of local installation directory.
Example
> omega pack master
omega pack.build {local-dir}
Generates binaries for online and offline installation.
-
local-dir
: name of local installation directory.
Example
> omega pack-build master
omega pack.publish {local-dir}
Publish the package binaries on S3.
-
local-dir
: name of local installation directory
Example
> omega pack.publish master
omega pack.app {local-dir} {app-dir}
(experimental, windows only) packages a single application. This command does not generate an installer, but places an application and all the required modules inside the 'pack' directory in the current working dir.
-
local-dir
: : name of local installation directory -
app-dir
: path to the directory containing the application. The directory must contain aCMakeLists.txt
file and apack.cmake
file with the same format and contents used by omegalib modules.
Example
> omega pack master apps/application
omega set {local-dir} [variable] [value]
Sets configuration variables or gets information about them.
-
local-dir
: name of local installation directory. -
variable
: name or prefix of a configuration variable. If left unspecified omega get will list all available configuration variables. -
value
: value to set for the variable. If unspecified, omega get will list all variables without setting them.
Example
> omega set OMEGA_BUILD_EXAMPLES true
omega update {local-dir}
Updates a local omegalib install and all its modules.
-
local-dir
: name of local installation directory.
Example
> omega update master