VaRA research tool

Module for the research tool VaRA that describes the VaRA code base layout and how to configure and setup VaRA.

class varats.tools.research_tools.vara.VaRACodeBase(base_dir)[source]

Bases: varats.tools.research_tools.research_tool.CodeBase

Layout of the VaRA code base: setting up vara-llvm-project fork, VaRA, and optinaly phasar for static analysis.

setup_vara_remotes()[source]

Sets up VaRA specific upstream remotes for projects that were forked.

Return type

None

Setup build-config folder link for VaRA’s default build setup scripts.

Return type

None

checkout_vara_version(version, use_dev_branches)[source]

Checkout out a specific version of VaRA.

Parameters
  • version (int) – major version number, e.g., 100 or 110

  • use_dev_branches (bool) – true, if one wants the current development version

Return type

None

setup_submodules()[source]

Set up the git submodules of all sub projects.

Return type

None

pull()[source]

Pull and update all SubProject s.

Return type

None

class varats.tools.research_tools.vara.VaRA(base_dir)[source]

Bases: varats.tools.research_tools.research_tool.ResearchTool[varats.tools.research_tools.vara.VaRACodeBase]

Research tool implementation for VaRA.

Find the main repo online on github: https://github.com/se-passau/VaRA

static source_location()[source]

Returns the source location of the research tool.

Return type

Path

static has_source_location()[source]

Checks if a source location of the research tool is configured.

Return type

bool

static install_location()[source]

Returns the install location of the research tool.

Return type

Path

static has_install_location()[source]

Checks if a install location of the research tool is configured.

Return type

bool

setup(source_folder, **kwargs)[source]

Setup the research tool VaRA with it’s code base. This method sets up all relevant config variables, downloads repositories via the CodeBase, checkouts the correct branches and prepares the research tool to be built.

Parameters
  • source_folder (Optional[Path]) – location to store the code base in

  • **kwargs

    • version

    • install_prefix

Return type

None

upgrade()[source]

Upgrade the research tool to a newer version.

Return type

None

build(build_type, install_location)[source]

Build/Compile VaRA in the specified build_type. This method leaves VaRA in a finished state, i.e., being ready to be installed.

Parameters

build_type (BuildType) – which type of build should be used, e.g., debug, development or release

Return type

None

verify_install(install_location)[source]

Verify if VaRA was correctly installed.

Return type

bool

Returns

True, if the tool was correctly installed