Skip to content

build.py

Utility to build a software app using multiple configuration files.

This utility builds multiple executables from the same application code, provided with different data.

It assumes a build system with a specific interface which most existing kernels comply with. In particular, it assumes the following:

  • the build command should be a make target defined by the Snitch cluster target.
  • the data generation can be configured through a JSON file. The path to this file is provided to the build system in the $(APP)_DATA_CFG environment variable, where $(APP) coincides with the build command name.
  • all build artifacts are created in the directory specified by the $(APP)_BUILD_DIR environment variable.

This utility takes a list of data configuration files as input and builds the application with the data generated from each configuration. Build artifacts are stored in a separate directory for each configuration.

The utility can optionally generate a testlist file which can be used to run the generated executables using the run.py utility.