From 03d670c8cc2dec0131c4dba97069d887cae239d0 Mon Sep 17 00:00:00 2001 From: "H.J. Lu" Date: Thu, 22 Nov 2012 14:10:47 +0000 Subject: Add STATIC_LIBASAN_LIBS for -static-libasan * gcc.c (ADD_STATIC_LIBASAN_LIBS): New macro. Defined with STATIC_LIBASAN_LIBS. (LIBASAN_SPEC): Add STATIC_LIBASAN_LIBS. * config/gnu-user.h (STATIC_LIBASAN_LIBS): New macro. From-SVN: r193725 --- gcc/ChangeLog | 7 +++++++ gcc/config/gnu-user.h | 4 ++++ gcc/gcc.c | 11 +++++++++-- 3 files changed, 20 insertions(+), 2 deletions(-) (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index fabcb5d..1e97691 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2012-11-22 H.J. Lu + + * gcc.c (ADD_STATIC_LIBASAN_LIBS): New macro. Defined + with STATIC_LIBASAN_LIBS. + (LIBASAN_SPEC): Add STATIC_LIBASAN_LIBS. + * config/gnu-user.h (STATIC_LIBASAN_LIBS): New macro. + 2012-11-22 Kyrylo Tkachov * config/arm/arm.md (*arm_abssi2): Define predicable attribute. diff --git a/gcc/config/gnu-user.h b/gcc/config/gnu-user.h index cb45749..8c4bbc6 100644 --- a/gcc/config/gnu-user.h +++ b/gcc/config/gnu-user.h @@ -98,3 +98,7 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see #define TARGET_C99_FUNCTIONS 1 #define TARGET_HAS_SINCOS 1 + +/* Additional libraries needed by -static-libasan. */ +#undef STATIC_LIBASAN_LIBS +#define STATIC_LIBASAN_LIBS "-ldl -lpthread" diff --git a/gcc/gcc.c b/gcc/gcc.c index 0f8bcea..764ee1b 100644 --- a/gcc/gcc.c +++ b/gcc/gcc.c @@ -545,11 +545,18 @@ proper position among the other output files. */ #define STACK_SPLIT_SPEC " %{fsplit-stack: --wrap=pthread_create}" #ifndef LIBASAN_SPEC +#ifdef STATIC_LIBASAN_LIBS +#define ADD_STATIC_LIBASAN_LIBS \ + " %{static-libasan:" STATIC_LIBASAN_LIBS "}" +#else +#define ADD_STATIC_LIBASAN_LIBS +#endif #ifdef HAVE_LD_STATIC_DYNAMIC #define LIBASAN_SPEC "%{static-libasan:" LD_STATIC_OPTION \ - "} -lasan %{static-libasan:" LD_DYNAMIC_OPTION "}" + "} -lasan %{static-libasan:" LD_DYNAMIC_OPTION "}" \ + ADD_STATIC_LIBASAN_LIBS #else -#define LIBASAN_SPEC "-lasan" +#define LIBASAN_SPEC "-lasan" ADD_STATIC_LIBASAN_LIBS #endif #endif -- cgit v1.1