Skip to content
Alessandro Febretti edited this page Apr 28, 2016 · 13 revisions

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.

add

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. Use common-modules to install a set of commonly used omegalib.

Example

> omega add master omegaVtk;omegaOsg

build

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

choose

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

get

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

module.stat

omega module.stat [local-dir]

Prints the list of local changes on all modules installed on one distribution

pack

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

pack.prepare

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

pack.build

omega pack.build {local-dir}

Generates binaries for online and offline installation.

  • local-dir: name of local installation directory.

Example

> omega pack-build master

pack.publish

omega pack.publish {local-dir}

Publish the package binaries on S3.

  • local-dir: name of local installation directory

Example

> omega pack.publish master

pack.app

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 a CMakeLists.txt file and a pack.cmake file with the same format and contents used by omegalib modules.

Example

> omega pack master apps/application

set

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

update

omega update {local-dir}

Updates a local omegalib install and all its modules.

  • local-dir: name of local installation directory.

Example

> omega update master
Clone this wiki locally