On Thu, Oct 18, 2012 at 11:15:33AM -0700, Xinliang David Li wrote:
> >> --- Makefile.def (revision 192487)
> >> +++ Makefile.def (working copy)
> >> @@ -119,6 +119,7 @@ target_modules = { module= libstdc++-v3;
> >> lib_path=src/.libs;
> >> raw_cxx=true; };
> >> target_modules = { module= libmudflap; lib_path=.libs; };
> >> +target_modules = { module= libasan; lib_path=.libs; };
> >> target_modules = { module= libssp; lib_path=.libs; };
> >> target_modules = { module= newlib; };
> >> target_modules = { module= libgcc; bootstrap=true; no_check=true; };
> >
> > Shouldn't libasan, given it is a C++ shared library, depend on libstdc++-v3?
> >
>
> I don't think it should depend on any C++ libraries. libasan is
> written in C++, but I don't see any C++ features that require C++
> runtime support (libstdc++, libcsup++) are used -- otherwise the
> archive libasan can not be used with C program.
Is it compiled with -fno-exceptions -fno-rtti? Without it it would
require either libstdc++ or libsupc++. I see it uses at least
#include <new>, so even if it doesn't link against libstdc++, it needs
its headers being setup and thus need to depend at the toplevel
on libstdc++ being built (and likely needs to use
`$(...)/libstdc++-v3/scripts/testsuite_flags --build-includes`
) when compiling.
Jakub