annotate libunwind/test/configs/llvm-libunwind-shared.cfg.in @ 236:c4bab56944e8 llvm-original

LLVM 16
author kono
date Wed, 09 Nov 2022 17:45:10 +0900
parents
children 1f2b6ac9f198
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
236
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
1 #
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
2 # Configuration file for running the libunwind tests against the shared library.
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
3 #
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
4
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
5 lit_config.load_config(config, '@CMAKE_CURRENT_BINARY_DIR@/cmake-bridge.cfg')
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
6
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
7 compile_flags = []
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
8 link_flags = []
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
9
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
10 if @LIBUNWIND_ENABLE_CET@:
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
11 compile_flags.append('-fcf-protection=full')
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
12
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
13 if '@CMAKE_SYSTEM_NAME@' == 'Linux':
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
14 link_flags.append('-Wl,--export-dynamic')
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
15
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
16 # Stack unwinding tests need unwinding tables and these are not generated by default on all targets.
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
17 compile_flags.append('-funwind-tables')
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
18
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
19 local_sysroot = '@CMAKE_OSX_SYSROOT@' or '@CMAKE_SYSROOT@'
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
20 config.substitutions.append(('%{flags}',
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
21 '-isysroot {}'.format(local_sysroot) if local_sysroot else ''
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
22 ))
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
23 config.substitutions.append(('%{compile_flags}',
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
24 '-nostdinc++ -I %{{include}} {}'.format(' '.join(compile_flags))
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
25 ))
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
26 config.substitutions.append(('%{link_flags}',
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
27 '-L %{{lib}} -Wl,-rpath,%{{lib}} -lunwind -ldl {}'.format(' '.join(link_flags))
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
28 ))
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
29 config.substitutions.append(('%{exec}',
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
30 '%{executor} --execdir %T -- '
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
31 ))
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
32
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
33 import os, site
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
34 site.addsitedir(os.path.join('@LIBUNWIND_LIBCXX_PATH@', 'utils'))
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
35 import libcxx.test.params, libcxx.test.newconfig, libcxx.test.newconfig
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
36 libcxx.test.newconfig.configure(
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
37 libcxx.test.params.DEFAULT_PARAMETERS,
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
38 libcxx.test.features.DEFAULT_FEATURES,
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
39 config,
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
40 lit_config
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
41 )