aboutsummaryrefslogtreecommitdiff
path: root/compiler-rt/test/safestack/lit.cfg.py
blob: 3f5565caa65c615d6f2575ba1842792d17c2e7d5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# -*- Python -*-

import os

# Setup config name.
config.name = "SafeStack-" + config.name_suffix

# Setup source root.
config.test_source_root = os.path.dirname(__file__)

# Test suffixes.
config.suffixes = [".c", ".cpp", ".m", ".mm", ".ll", ".test"]

# Add clang substitutions.
config.substitutions.append(
    (
        "%clang_nosafestack ",
        config.clang + config.target_cflags + " -O0 -fno-sanitize=safe-stack ",
    )
)
config.substitutions.append(
    (
        "%clang_safestack ",
        config.clang + config.target_cflags + " -O0 -fsanitize=safe-stack ",
    )
)

if config.lto_supported:
    config.substitutions.append(
        (
            r"%clang_lto_safestack ",
            " ".join([config.clang] + config.lto_flags + ["-fsanitize=safe-stack "]),
        )
    )

if config.target_os not in ["Linux", "FreeBSD", "NetBSD", "SunOS"]:
    config.unsupported = True