Commit b5161efc authored by thomasanderson's avatar thomasanderson Committed by Commit Bot

Move c++ configs from buildtools to build/config/c++ [src-side change]

This CL moves //buildtools/third_party/libc++:no_libstdcpp and part of
/buildtools/third_party/libc++:config into //build/config/c++/c++.
This has several advantages:
* Users can remove libc++ config if they want since it's added in
  BUILDCONFIG.gn
* Allows removal of libcxx_proxy
* libc++-specific configs are in buildtools and non-libc++ configs are
  in build/config
* Allows changing c++ flags without having to roll buildtools
* Removes a bit of duplicated build configuration

buildtools change:
https://codereview.chromium.org/2962423002

BUG=593874
R=thakis@chromium.org
TBR=dpranke@chromium.org
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_chromium_msan_rel_ng;master.tryserver.chromium.linux:linux_chromium_ubsan_rel_ng;master.tryserver.chromium.linux:linux_chromium_dbg_ng

Review-Url: https://codereview.chromium.org/2964243002
Cr-Commit-Position: refs/heads/master@{#486229}
parent 5602cce8
......@@ -56,7 +56,7 @@ vars = {
# Three lines of non-changing comments so that
# the commit queue can handle CLs rolling build tools
# and whatever else without interference from each other.
'buildtools_revision': '1dcd1bdbe93467531a50b60dbd18860803ca7be1',
'buildtools_revision': 'c2827ae578be603fb41a141631c27c3c09191dca',
# Three lines of non-changing comments so that
# the commit queue can handle CLs rolling SwiftShader
# and whatever else without interference from each other.
......
......@@ -272,7 +272,7 @@ group("exe_and_shlib_deps") {
public_deps += [ "//build/config/sanitizers:deps" ]
}
if (use_custom_libcxx) {
public_deps += [ "//buildtools/third_party/libc++:libcxx_proxy" ]
public_deps += [ "//buildtools/third_party/libc++" ]
}
if (use_afl) {
public_deps += [ "//third_party/afl" ]
......
......@@ -19,5 +19,38 @@ config("c++flags") {
"-isystem" + rebase_path("$prefix/libc++/$include", root_build_dir),
"-isystem" + rebase_path("$prefix/libc++abi/$include", root_build_dir),
]
if (is_linux && current_cpu == "arm") {
cflags_c = [ "-isystem" +
rebase_path("$prefix/libunwind/$include", root_build_dir) ]
cflags_cc += [ "-isystem" +
rebase_path("$prefix/libunwind/$include", root_build_dir) ]
}
# Make sure we don't link against libc++ or libstdc++.
ldflags = [ "-nodefaultlibs" ]
# Unfortunately, there's no way to disable linking against just
# libc++ (besides using clang instead of clang++); -nodefaultlibs
# removes all of the default libraries, so add back the ones that we
# need.
libs = [
"c",
"m",
]
if (!is_mac) {
libs += [
"gcc_s",
"rt",
]
}
if (is_mac && using_sanitizer) {
lib_dirs = [ "//third_party/llvm-build/Release+Asserts/lib/clang/$clang_version/lib/darwin" ]
if (is_asan) {
libs += [ "clang_rt.asan_osx_dynamic" ]
}
}
}
}
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment