mirror of
https://github.com/llvm/llvm-project.git
synced 2025-05-14 20:36:05 +00:00

This change adds the capability of building test inferiors with the -gmodules flag to enable module debug info support. Windows is excluded per @zturner. Reviewers: granata.enrico, aprantl, zturner, labath Subscribers: zturner, labath, lldb-commits Differential Revision: http://reviews.llvm.org/D19998 llvm-svn: 270848
31 lines
921 B
Python
31 lines
921 B
Python
from __future__ import absolute_import
|
|
from __future__ import print_function
|
|
|
|
# System modules
|
|
import os
|
|
import re
|
|
|
|
|
|
GMODULES_SUPPORT_MAP = {}
|
|
GMODULES_HELP_REGEX = re.compile(r"\s-gmodules\s")
|
|
|
|
|
|
def is_compiler_clang_with_gmodules(compiler_path):
|
|
# Before computing the result, check if we already have it cached.
|
|
if compiler_path in GMODULES_SUPPORT_MAP:
|
|
return GMODULES_SUPPORT_MAP[compiler_path]
|
|
|
|
def _gmodules_supported_internal():
|
|
compiler = os.path.basename(compiler_path)
|
|
if "clang" not in compiler:
|
|
return False
|
|
else:
|
|
# Check the compiler help for the -gmodules option.
|
|
clang_help = os.popen("%s --help" % compiler_path).read()
|
|
return GMODULES_HELP_REGEX.search(clang_help, re.DOTALL) is not None
|
|
|
|
GMODULES_SUPPORT_MAP[compiler_path] = _gmodules_supported_internal()
|
|
return GMODULES_SUPPORT_MAP[compiler_path]
|
|
|
|
|