On Sat, Nov 17, 2012 at 12:22 PM, Jakub Jelinek <ja...@redhat.com> wrote: > On Sat, Nov 17, 2012 at 12:00:00PM -0800, H.J. Lu wrote: >> This patch adds -static-libasan. OK to install? > > Okay, thanks. > >> 2012-11-17 H.J. Lu <hongjiu...@intel.com> >> >> * common.opt (static-libasan): New option. >> * gcc.c (LIBASAN_SPEC): New macro. >> (LINK_COMMAND_SPEC): Replace -lasan with LIBASAN_SPEC. >> * doc/invoke.texi: Document -static-libasan. > > Jakub
This patch adds STATIC_LIBASAN_LIBS so that user doesn't need to add -ldl -lpthread by hand. OK to install? Thanks. -- H.J. --- 2012-11-17 H.J. Lu <hongjiu...@intel.com> * gcc.c (STATIC_LIBASAN_LIBS): New macro. (LIBASAN_SPEC): Add STATIC_LIBASAN_LIBS. * config/gnu-user.h (STATIC_LIBASAN_LIBS): New macro. 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 7a275e1..ef8a485 100644 --- a/gcc/gcc.c +++ b/gcc/gcc.c @@ -546,8 +546,12 @@ proper position among the other output files. */ #ifndef LIBASAN_SPEC #ifdef HAVE_LD_STATIC_DYNAMIC +#ifndef STATIC_LIBASAN_LIBS +#define STATIC_LIBASAN_LIBS +#endif #define LIBASAN_SPEC "%{static-libasan:" LD_STATIC_OPTION \ - "} -lasan %{static-libasan:" LD_DYNAMIC_OPTION "}" + "} -lasan %{static-libasan:" LD_DYNAMIC_OPTION \ + " " STATIC_LIBASAN_LIBS "}" #else #define LIBASAN_SPEC "-lasan" #endif