[nolibc] Disable the GCC stack protector when building sanitizer runtimes.

This is the first in a sequence of changes designed to eliminate the
libc dependency in sanitizer_common.  The main motivation for these
changes is to be able to provide an alternative for the current
interceptor-based technique for instrumenting functions in libc.
In this new technique, we compile libc with instrumentation.  This has
the potential advantages of being more accurate than interception and
reducing the amount of custom code required for each libc function.
As a side effect of this, we cannot depend on libc in the sanitizer
runtime due to mutual dependency issues.

This change disables the GCC stack protector, which introduces a libc
dependency and is enabled by default in Ubuntu.

Differential Revision: http://llvm-reviews.chandlerc.com/D755

llvm-svn: 181422
This commit is contained in:
Peter Collingbourne 2013-05-08 10:39:05 +00:00
parent 0f0234e16e
commit 5829a98c48
1 changed files with 1 additions and 0 deletions

View File

@ -126,6 +126,7 @@ set(SANITIZER_COMMON_CFLAGS
-fno-exceptions
-fomit-frame-pointer
-funwind-tables
-fno-stack-protector
-O3
)
if(NOT WIN32)