Environment variables in the MATE container¶
This document lists and describes the environment variables defined and used by the various MATE Docker containers.
Variables that are not listed in this document may be defined for internal build and configuration purposes. These unlisted variables should not be relied upon.
MATE_BDIST_ROOT¶
Provenance: mate-dev or mate-dist
Container default: /mate/.out/bdist (dev) or /opt/mate (dist)
MATE_BDIST_ROOT provides an absolute reference to the MATE “distribution”;
i.e. a hermetic collection of all libraries, executables, and resources needed
to run MATE.
MATE_DEFAULT_MEMORY_LIMIT_GB¶
Provenance: mate-dev or mate-dist
Container default: 32
This variable sets the default memory limit for individual builds, in gibibytes. The memory limit can still be overridden on a per-build basis.
LLVM_WEDLOCK_INSTALL_DIR¶
Provenance: mate-dev or mate-dist
Container default: ${MATE_BDIST_ROOT}/llvm-wedlock
This is an organization variable that will be useful for setting LLVM_BIN and LLVM_DIR
in the case that they ever change or need to be reset to use wedlock-specific tools/libraries.
This is the install path for all tools built in the llvm-wedlock repository.
Note: This directory does not necessarily include wedlock-related opt passes – they are
located in LLVM_PASS_DIR.
LLVM_WEDLOCK_BIN¶
Provenance: mate-dev or mate-dist
Container default: None.
By default, MATE will discover a functional Wedlock build of the LLVM toolchain under
${MATE_BDIST_ROOT}/llvm-wedlock/bin. This variable can be used to override that
default, specifying a separate Wedlock build of LLVM for testing or debugging purposes.
LLVM_DIR¶
Provenance: mate-dev or mate-dist
Container default: ${LLVM_WEDLOCK_INSTALL_DIR}/lib/cmake/llvm
The LLVM_DIR variable’s value will be a directory, under which CMake configuration for building
LLVM passes will be present.
Clang_DIR¶
Provenance: mate-dev or mate-dist
Container default: ${LLVM_WEDLOCK_INSTALL_DIR}/lib/cmake/clang
The Clang_DIR variable’s value will be a directory, under which CMake configuration for building
Clang analyses will be present.
PATH¶
Provenance: mate-dev or mate-dist
The PATH variable’s value will contain multiple additional paths. Container consumers should not
rely on the presence of any particular path or upon path orderings other than specified below.
gclang and gclang++ should not be present on the PATH; they will be supplied
under ${MATE_BIST_ROOT}/libexec. Similarly, the llvm-wedlock toolchain’s programs
should not be present by default: any components that wish to use them should load
the Wedlock LLVM bin path onto the PATH temporarily (or access them directly).
Furthermore, any specific versions of tools used/required by the tools manually installed in this Docker image will almost certainly take precedence over system-installed tools.