New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 769734 link

Starred by 1 user

Issue metadata

Status: WontFix
Owner: ----
Closed: Sep 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug



Sign in to add a comment

libc++abi builds include system headers and not checked in ones

Project Member Reported by primiano@chromium.org, Sep 28 2017

Issue description

This is something I realized while looking at chromium's buildtools/third_party/libc++abi and replicating that in a personal project.
I don't think is causing any actual problem (and there is some good chance I am misreading / missing something from the build files).
Just writing this down in case it's useful for the future.

Essentially I think that the BUILD.gn files in buildtools/third_party/libc++/BUILD.gn (and libc++) are missing something like:

include_dirs = [ "trunk/include" ]

So when the translation units inside libc++ / libc++abi #include things like libcxx.h, __cxxabi_config.h etc, I think we end up getting the toolchain ones and not the ones fetched from buildtools/third_party/libc++abi/trunk

 

Comment 1 by thakis@chromium.org, Sep 28 2017

Cc: thomasanderson@chromium.org
Status: WontFix (was: Unconfirmed)
Ah found it, I was just reading wrongly reading the files. Apologies for the noise.
At the end we pick the right ones because build/config/posix/BUILD.gn applies globally the following

config("runtime_library") {
    cflags_cc += [
      "-nostdinc++",
      "-isystem" + rebase_path("$libcxx_prefix/include", root_build_dir),
      "-isystem" + rebase_path("$libcxxabi_prefix/include", root_build_dir),
    ]
}

(I missed those in my search because of -isystem vs -I)

Sign in to add a comment