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.