@@ -11,16 +11,16 @@ config.substitutions.append((r"%clang ", ' '.join([config.clang]) + ' '))
1111config.substitutions.append((r" %clangxx " , clangxx + ' ' ))
1212if config.lto_supported:
1313 clang_cfi = ' ' .join(config.lto_launch + [config.clang] + config.lto_flags + [' -flto -fsanitize=cfi ' ])
14- clangxx_cfi = clang_cfi + ' ' .join(config.cxx_mode_flags) + ' '
15- diag_flags = ' -fno-sanitize-trap=cfi -fsanitize-recover=cfi '
16- clang_cfi_diag = clang_cfi + diag_flags
17- clangxx_cfi_diag = clangxx_cfi + diag_flags
18- config.substitutions.append((r" %clang_cfi " , clang_cfi))
19- config.substitutions.append((r" %clangxx_cfi " , clangxx_cfi ))
20- config.substitutions.append((r" %clang_cfi_diag " , clang_cfi_diag ))
21- config.substitutions.append((r" %clangxx_cfi_diag " , clangxx_cfi_diag ))
22- config.substitutions.append((r" %clangxx_cfi_dso " , clangxx_cfi + ' -fsanitize-cfi-cross-dso ' ))
23- config.substitutions.append((r" %clangxx_cfi_dso_diag " , clangxx_cfi_diag + ' -fsanitize-cfi-cross- dso ' ))
14+ cxx = ' ' .join(config.cxx_mode_flags) + ' '
15+ diag = ' -fno-sanitize-trap=cfi -fsanitize-recover=cfi '
16+ non_dso = ' -fvisibility=hidden '
17+ dso = ' -fsanitize-cfi-cross-dso -fvisibility=default '
18+ config.substitutions.append((r" %clang_cfi " , clang_cfi + non_dso ))
19+ config.substitutions.append((r" %clangxx_cfi " , clang_cfi + cxx + non_dso ))
20+ config.substitutions.append((r" %clang_cfi_diag " , clang_cfi + non_dso + diag ))
21+ config.substitutions.append((r" %clangxx_cfi_diag " , clang_cfi + cxx + non_dso + diag ))
22+ config.substitutions.append((r" %clangxx_cfi_dso " , clang_cfi + cxx + dso ))
23+ config.substitutions.append((r" %clangxx_cfi_dso_diag " , clang_cfi + cxx + dso + diag ))
2424else:
2525 config.unsupported = True
2626
0 commit comments