Disable update_cc_test_checks.py tests in stand-alone builds

The script is located in the llvm/ sub-directory, so it is not available
for when doing a stand-alone build.

See https://discourse.llvm.org/t/rfc-stand-alone-build-support/61291

Differential Revision: https://reviews.llvm.org/D123967
This commit is contained in:
Tom Stellard 2022-08-11 20:53:34 -07:00
parent 0bc993edf4
commit 74384c7fce
3 changed files with 34 additions and 23 deletions

View File

@ -3,6 +3,7 @@
llvm_canonicalize_cmake_booleans(
CLANG_BUILD_EXAMPLES
CLANG_BUILT_STANDALONE
CLANG_DEFAULT_PIE_ON_LINUX
CLANG_ENABLE_OPAQUE_POINTERS_INTERNAL
CLANG_ENABLE_ARCMT

View File

@ -37,6 +37,7 @@ config.use_z3_solver = lit_config.params.get('USE_Z3_SOLVER', "@USE_Z3_SOLVER@")
config.has_plugins = @CLANG_PLUGIN_SUPPORT@
config.clang_vendor_uti = "@CLANG_VENDOR_UTI@"
config.llvm_external_lit = path(r"@LLVM_EXTERNAL_LIT@")
config.standalone_build = @CLANG_BUILT_STANDALONE@
import lit.llvm
lit.llvm.initialize(lit_config, config)

View File

@ -10,27 +10,36 @@ except ImportError:
from pipes import quote as shell_quote
config.test_format = lit.formats.ShTest(execute_external=False)
config.suffixes = ['.test']
clang_path = os.path.join(config.clang_tools_dir, 'clang')
extra_args = '--clang ' + shell_quote(clang_path)
opt_path = os.path.join(config.llvm_tools_dir, 'opt')
extra_args += ' --opt ' + shell_quote(opt_path)
script_path = os.path.join(config.llvm_src_root, 'utils',
'update_cc_test_checks.py')
assert os.path.isfile(script_path)
# Windows: llvm-lit.py, Linux: llvm-lit
if config.llvm_external_lit:
lit = config.llvm_external_lit
if config.standalone_build:
# These tests require the update_cc_test_checks.py script from the llvm
# source tree, so skip these tests if we are doing standalone builds.
# These tests are only relevant to developers working with the
# update_cc_test_checks.py tool; they don't provide any coverage
# for any of the clang source code.
config.unsupported = True
else:
lit = shell_quote(glob.glob(os.path.join(config.llvm_tools_dir, 'llvm-lit*'))[0])
python = shell_quote(config.python_executable)
config.substitutions.append(
('%update_cc_test_checks', "%s %s %s" % (
python, shell_quote(script_path), extra_args)))
config.substitutions.append(
('%clang_tools_dir', shell_quote(config.clang_tools_dir)))
config.substitutions.append(
('%lit', "%s %s -Dclang_lit_site_cfg=%s -j1 -vv" % (
python, lit, shell_quote(config.clang_lit_site_cfg))))
config.test_format = lit.formats.ShTest(execute_external=False)
config.suffixes = ['.test']
clang_path = os.path.join(config.clang_tools_dir, 'clang')
extra_args = '--clang ' + shell_quote(clang_path)
opt_path = os.path.join(config.llvm_tools_dir, 'opt')
extra_args += ' --opt ' + shell_quote(opt_path)
script_path = os.path.join(config.llvm_src_root, 'utils',
'update_cc_test_checks.py')
assert os.path.isfile(script_path)
# Windows: llvm-lit.py, Linux: llvm-lit
if config.llvm_external_lit:
lit = config.llvm_external_lit
else:
lit = shell_quote(glob.glob(os.path.join(config.llvm_tools_dir, 'llvm-lit*'))[0])
python = shell_quote(config.python_executable)
config.substitutions.append(
('%update_cc_test_checks', "%s %s %s" % (
python, shell_quote(script_path), extra_args)))
config.substitutions.append(
('%clang_tools_dir', shell_quote(config.clang_tools_dir)))
config.substitutions.append(
('%lit', "%s %s -Dclang_lit_site_cfg=%s -j1 -vv" % (
python, lit, shell_quote(config.clang_lit_site_cfg))))