OSDN Git Service

Disable canonical prefixes of system headers
authorAndrew Hsieh <andrewhsieh@google.com>
Fri, 9 May 2014 06:13:13 +0000 (14:13 +0800)
committerAndrew Hsieh <andrewhsieh@google.com>
Fri, 9 May 2014 14:12:49 +0000 (22:12 +0800)
commit48f239c94faca140427afc9aa06cf356b1b6b0de
tree562563adb0d1935d7d7b0e2395b4402fc73970d0
parentafe444a564ed72cdda792822a0c9dab57a8c9172
Disable canonical prefixes of system headers

GCC know a few pre-defined paths (relative to its location) to
search for headers, libraries, program, etc.  By default GCC prefixes
its own path(argv[0]) and calls realpath() which result in absolute
path with all symlink, . and .. removed.

It's usually good to have canonicalised paths, but absolute paths
in *.d file can cause unnecessary relinking when stale entries
in ccache cache hit

Add -no-canonical-prefixes (gcc>=4.6) and
-fno-canonical-system-headers (gcc>4.6) to disable realpath() on
prefixed paths

Change-Id: I58d739e61fb013015fb05a9c98b2132b307f915a
core/clang/config.mk
core/combo/HOST_linux-x86.mk
core/combo/TARGET_linux-arm.mk
core/combo/TARGET_linux-arm64.mk
core/combo/TARGET_linux-mips.mk
core/combo/TARGET_linux-mips64.mk
core/combo/TARGET_linux-x86.mk
core/combo/TARGET_linux-x86_64.mk