mirror of
https://github.com/klzgrad/naiveproxy.git
synced 2026-05-29 10:26:32 +03:00
libc++: Disable exceptions and RTTI
Except on Mac, where exceptions are required. And except on Android, where rtti is required.
This commit is contained in:
4
src/buildtools/third_party/libc++/BUILD.gn
vendored
4
src/buildtools/third_party/libc++/BUILD.gn
vendored
@@ -543,12 +543,8 @@ target(libcxx_target_type, "libc++") {
|
||||
# so that modules can be used for other chromium targets which don't enable
|
||||
# exception and rtti.
|
||||
configs -= configs_to_remove + [
|
||||
"//build/config/compiler:no_exceptions",
|
||||
"//build/config/compiler:no_rtti",
|
||||
]
|
||||
configs += configs_to_add + [
|
||||
"//build/config/compiler:exceptions",
|
||||
"//build/config/compiler:rtti",
|
||||
]
|
||||
|
||||
deps = [ "//third_party/llvm-libc:llvm-libc-shared" ]
|
||||
|
||||
30
src/buildtools/third_party/libc++abi/BUILD.gn
vendored
30
src/buildtools/third_party/libc++abi/BUILD.gn
vendored
@@ -100,4 +100,34 @@ target(libcxxabi_target_type, "libc++abi") {
|
||||
if (use_libcxx_modules) {
|
||||
configs -= [ "//build/config/compiler:libcxx_module" ]
|
||||
}
|
||||
if (!is_apple) {
|
||||
sources -= [
|
||||
"//third_party/libc++abi/src/src/cxa_exception.cpp",
|
||||
"//third_party/libc++abi/src/src/cxa_personality.cpp",
|
||||
"//third_party/libc++abi/src/src/private_typeinfo.cpp",
|
||||
]
|
||||
sources += [
|
||||
"//third_party/libc++abi/src/src/cxa_noexception.cpp",
|
||||
]
|
||||
defines += [ "_LIBCXXABI_NO_EXCEPTIONS" ]
|
||||
configs -= [
|
||||
"//build/config/compiler:exceptions",
|
||||
"//build/config/compiler:rtti",
|
||||
]
|
||||
configs += [
|
||||
"//build/config/compiler:no_exceptions",
|
||||
"//build/config/compiler:no_rtti",
|
||||
]
|
||||
}
|
||||
if (is_android) {
|
||||
sources += [
|
||||
"//third_party/libc++abi/src/src/private_typeinfo.cpp",
|
||||
]
|
||||
configs -= [
|
||||
"//build/config/compiler:no_rtti",
|
||||
]
|
||||
configs += [
|
||||
"//build/config/compiler:rtti",
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user