-
Notifications
You must be signed in to change notification settings - Fork 10.4k
/
Copy pathCMakeLists.txt
34 lines (31 loc) · 1.18 KB
/
CMakeLists.txt
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
set(swift_demangling_compile_flags
LLVM_DISABLE_ABI_BREAKING_CHECKS_ENFORCING=1
SWIFT_SUPPORT_OLD_MANGLING=1
SWIFT_STDLIB_HAS_TYPE_PRINTING=1)
if(SWIFT_RUNTIME_CRASH_REPORTER_CLIENT)
list(APPEND swift_demangling_compile_flags
"-DSWIFT_HAVE_CRASHREPORTERCLIENT=1")
endif()
add_swift_host_library(swiftDemangling STATIC
Demangler.cpp
Context.cpp
ManglingUtils.cpp
NodeDumper.cpp
NodePrinter.cpp
OldDemangler.cpp
OldRemangler.cpp
Punycode.cpp
Remangler.cpp
Errors.cpp
CrashReporter.cpp)
target_compile_definitions(swiftDemangling PRIVATE
${swift_demangling_compile_flags})
# NOTE: Runtime libraries that depend on swiftDemangling should define
# SWIFT_INLINE_NAMESPACE to specify the identifier that will be used for an
# inline namespace that will be added around the symbols defined by this
# library. This keeps the demangling symbols in those libraries distinct
# from those in the compiler, which prevents ODR violations in certain
# contexts; for example, on platforms that support statically linking the
# Swift standard library, it allows this to happen safely when the binary
# also links in compiler libraries that may not match exactly with the
# runtime version.