blob: e6d8b7c45e0d794cc0fe3b9c86363dd7b379f343 [file] [log] [blame]
# Copyright 2022 The IREE Authors
#
# Licensed under the Apache License v2.0 with LLVM Exceptions.
# See https://llvm.org/LICENSE.txt for license information.
# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
"""Lit config for IREE."""
# Lint for undefined variables is disabled as config is not defined inside this
# file, instead config is injected by way of evaluating runlit.cfg.py from
# runlit.site.cfg.py which in turn is evaluated by lit.py.
# pylint: disable=undefined-variable
import os
import tempfile
import lit.formats
config.name = "IREE"
config.suffixes = [".mlir", ".txt"]
config.test_format = lit.formats.ShTest(execute_external=True)
# Forward all IREE environment variables, as well as some passthroughs.
# Note: env vars are case-insensitive on Windows, so check matches carefully.
# https://stackoverflow.com/q/7797269
passthrough_env_vars = [
# The Vulkan loader uses this
"VK_ICD_FILENAMES",
# WindowsLinkerTool uses these from vcvarsall
"VCTOOLSINSTALLDIR",
"UNIVERSALCRTSDKDIR",
"UCRTVERSION",
]
config.environment.update(
{
k: v
for k, v in os.environ.items()
if k.startswith("IREE_") or k in passthrough_env_vars
}
)
# Use the most preferred temp directory.
config.test_exec_root = (
os.environ.get("TEST_UNDECLARED_OUTPUTS_DIR")
or os.environ.get("TEST_TMPDIR")
or os.path.join(tempfile.gettempdir(), "lit")
)