diff --git a/CMakeLists.txt b/CMakeLists.txt index 0343801..1f9f49d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -39,6 +39,12 @@ if (WIN32) endif() include_directories(third_party/llvm/include) +include_directories(third_party/swift/include) +add_definitions( + -DLLVM_DISABLE_ABI_BREAKING_CHECKS_ENFORCING=1 + -DSWIFT_SUPPORT_OLD_MANGLING=1 + -DSWIFT_STDLIB_HAS_TYPE_PRINTING=1 +) add_executable(demumble demumble.cc third_party/llvm/lib/Demangle/Demangle.cpp @@ -47,6 +53,17 @@ add_executable(demumble third_party/llvm/lib/Demangle/MicrosoftDemangle.cpp third_party/llvm/lib/Demangle/MicrosoftDemangleNodes.cpp third_party/llvm/lib/Demangle/RustDemangle.cpp + third_party/swift/lib/Demangling/Context.cpp + third_party/swift/lib/Demangling/CrashReporter.cpp + third_party/swift/lib/Demangling/Demangler.cpp + third_party/swift/lib/Demangling/Errors.cpp + third_party/swift/lib/Demangling/ManglingUtils.cpp + third_party/swift/lib/Demangling/NodeDumper.cpp + third_party/swift/lib/Demangling/NodePrinter.cpp + third_party/swift/lib/Demangling/OldDemangler.cpp + third_party/swift/lib/Demangling/OldRemangler.cpp + third_party/swift/lib/Demangling/Punycode.cpp + third_party/swift/lib/Demangling/Remangler.cpp ) set_target_properties(demumble PROPERTIES CXX_STANDARD 17 CXX_STANDARD_REQUIRED ON)