Index: third_party/libc++abi/BUILD.gn |
diff --git a/third_party/libc++abi/BUILD.gn b/third_party/libc++abi/BUILD.gn |
new file mode 100644 |
index 0000000000000000000000000000000000000000..19e77ea621cb0ea596d94324adb20a50ded40d23 |
--- /dev/null |
+++ b/third_party/libc++abi/BUILD.gn |
@@ -0,0 +1,59 @@ |
+# Copyright 2015 The Chromium Authors. All rights reserved. |
+# Use of this source code is governed by a BSD-style license that can be |
+# found in the LICENSE file. |
+ |
+config("config") { |
earthdok
2015/05/26 16:18:46
If you want to have a common config then please mo
Sam McNally
2015/05/27 00:12:09
Done.
|
+ include_dirs = [ |
+ "trunk/include", |
earthdok
2015/05/26 16:18:46
What is this path relative to? I.e., when libc++/B
Sam McNally
2015/05/27 00:12:09
Relative to the BUILD.gn containing the config. Wh
|
+ "../libc++/trunk/include", |
+ ] |
+ cflags = [ |
+ "-fstrict-aliasing", |
+ "-nostdinc++", |
+ "-std=c++11", |
+ ] |
+ ldflags = [ "-nodefaultlibs" ] |
+ |
+ # TODO(GYP): Remove "-pthread" from ldflags. It somehow causes a warning from |
+ # clang about an unused compilation option. |
+ # TODO(earthdok): find out what's causing the warning. |
earthdok
2015/05/26 16:18:46
I'm resolving this TODO in https://codereview.chro
Sam McNally
2015/05/27 00:12:09
Done.
|
+ libs = [ |
+ "c", |
+ "gcc_s", |
+ "pthread", |
+ "rt", |
+ ] |
+} |
+ |
+static_library("libc++abi") { |
+ sources = [ |
+ "trunk/src/abort_message.cpp", |
+ "trunk/src/cxa_aux_runtime.cpp", |
+ "trunk/src/cxa_default_handlers.cpp", |
+ "trunk/src/cxa_demangle.cpp", |
+ "trunk/src/cxa_exception.cpp", |
+ "trunk/src/cxa_exception_storage.cpp", |
+ "trunk/src/cxa_guard.cpp", |
+ "trunk/src/cxa_handlers.cpp", |
+ "trunk/src/cxa_new_delete.cpp", |
+ "trunk/src/cxa_personality.cpp", |
+ "trunk/src/cxa_unexpected.cpp", |
+ "trunk/src/cxa_vector.cpp", |
+ "trunk/src/cxa_virtual.cpp", |
+ "trunk/src/exception.cpp", |
+ "trunk/src/private_typeinfo.cpp", |
+ "trunk/src/stdexcept.cpp", |
+ "trunk/src/typeinfo.cpp", |
+ ] |
+ configs -= [ |
+ "//build/config/compiler:chromium_code", |
+ "//build/config/compiler:no_rtti", |
+ "//build/config/gcc:no_exceptions", |
+ "//build/config/gcc:symbol_visibility_hidden", |
+ ] |
+ configs += [ |
+ ":config", |
+ "//build/config/compiler:no_chromium_code", |
+ "//build/config/compiler:rtti", |
+ ] |
+} |