Skip to content
Snippets Groups Projects
Christian R. G. Dreher's avatar
Christian Dreher authored
feature: Introduce summarize flag to only replace outputs if explicitly requested and not change default behaviour.
2dd9eb12
History

ArmarX Setup

Setup and maintenance tools for ArmarX and its dependencies.

Development Setup

git clone git@gitlab.com:ArmarX/meta/setup.git armarx-setup
cd armarx-setup/

# Create the virtual python environment by either (1) or (2):

# (1) Using Python Poetry
poetry install

# (2) Using pip and virtalenv
python3 -m venv .venv
pip3 install -r requirements.txt

Usage

See which commands are available:

./bin/armarx-setup --help

./bin/armarx-setup is a bash script which first activates the python environment, then calls the python script ./armarx-setup in the root directory if this repository (.).

If you have activated the python environment, you can also directly call ./armarx-setup.

To be able to run armarx-setup from anywhere, add this line to your ~/.bashrc:

export PATH=~/armarx-setup/bin:$PATH

Create a new workspace:

armarx-setup new

Use upgrade command to

  • install required apt packages (you are asked beforehand)
  • clone/update repositories
  • prepare (e.g., run cmake)
  • build (e.g., run cmake --build)
  • install

for all modules and their (direct and indirect) dependencies.

armarx-setup upgrade

To add or remove modules:

armarx-setup add module/path
armarx-setup remove module/path
# e.g.:
armarx-setup add armarx/ArmarXCore

Modules paths are paths to .json files in the data/modules directory.

Use Ninja instead of Unix Makefiles

To use Ninja as cmake generator, set the environment variable CMAKE_GENERATOR when running upgrade:

CMAKE_GENERATOR=Ninja armarx-setup upgrade

If you ran upgrade or prepare before, wipe all build directories first:

armarx-setup clean