To accommodate tsan (and msan in the future), the directory structure
needs to be changed. The top level directory can be called something
like librt with the following subdirs: asan, tsan, sanitizer_common,
and interception.  Also the libasan should be linked in statically by
default.

thanks,

David

On Fri, Oct 19, 2012 at 6:42 PM, Wei Mi <w...@google.com> wrote:
> And this is the second part.
>
> Thanks,
> Wei.
>
> On Fri, Oct 19, 2012 at 6:41 PM, Wei Mi <w...@google.com> wrote:
>> Thanks David. Here is the patch after removing m4 directory under libasan.
>> And I add the dependence libasan on libstdc++-v3 to avoid problem
>> under parallel making for now.
>>
>> The patch is too big even after compressed, so I have to split the
>> patch into two parts contained in two mails. patch.part1.txt and
>> patch.part2.txt. This is the first part.
>>
>> --- a/Makefile.def      2012-10-19 15:36:36.156106282 -0700
>> +++ b/Makefile.def      2012-10-19 15:36:51.656186869 -0700
>> @@ -504,7 +504,6 @@
>>  dependencies = { module=configure-target-libobjc;
>> on=configure-target-boehm-gc; };
>>  dependencies = { module=all-target-libobjc; on=all-target-boehm-gc; };
>>  dependencies = { module=configure-target-libstdc++-v3;
>> on=configure-target-libgomp; };
>> +dependencies = { module=configure-target-libasan;
>> on=all-target-libstdc++-v3; };
>>  // parallel_list.o and parallel_settings.o depend on omp.h, which is
>>  // generated by the libgomp configure.  Unfortunately, due to the use of
>>  //  recursive make, we can't be that specific.
>>
>> Thanks,
>> Wei.
>>
>> On Fri, Oct 19, 2012 at 12:52 PM, Xinliang David Li <davi...@google.com> 
>> wrote:
>>> The library builds fine with the following diff. The file acinclude.m4
>>> is cloned from libmudflap.
>>>
>>> David
>>>
>>> index 485d169..3e847f1 100644
>>> --- a/libasan/aclocal.m4
>>> +++ b/libasan/aclocal.m4
>>> @@ -1037,8 +1037,8 @@ AC_SUBST([am__tar])
>>>  AC_SUBST([am__untar])
>>>  ]) # _AM_PROG_TAR
>>>
>>> -m4_include([m4/libtool.m4])
>>> -m4_include([m4/ltoptions.m4])
>>> -m4_include([m4/ltsugar.m4])
>>> -m4_include([m4/ltversion.m4])
>>> -m4_include([m4/lt~obsolete.m4])
>>> +m4_include([../config/ltoptions.m4])
>>> +m4_include([../config/ltsugar.m4])
>>> +m4_include([../config/ltversion.m4])
>>> +#m4_include([../config/lt~obsolete.m4])
>>> +m4_include([acinclude.m4])
>>>
>>>
>>> On Fri, Oct 19, 2012 at 11:02 AM, Wei Mi <w...@google.com> wrote:
>>>> David, I put the m4 subdir under libasan because once I use the .m4
>>>> files (libtool.m4  lt~obsolete.m4  ltoptions.m4  ltsugar.m4
>>>> ltversion.m4) and ltmain.sh under $topsrcdir, the problem that a bad
>>>> libtool was generated under
>>>> $topbuilddir/x86_64-unknown-linux-gnu/libasan you met yesterday
>>>> appeared.  That is why I had to generate the new libtool m4 files and
>>>> ltmain.sh using libtoolize.
>>>>
>>>> Thanks,
>>>> Wei.
>>>>
>>>> On Fri, Oct 19, 2012 at 10:16 AM, Xinliang David Li <davi...@google.com> 
>>>> wrote:
>>>>> I tried it, and this version works for me.
>>>>>
>>>>> Your probably do not need to add the m4 subdir under libasan.  The
>>>>> required m4 files are either in .. or ../config dir. See how
>>>>> libmudflap does it.
>>>>>
>>>>> Other than that, if there are no other comments, the change is good to
>>>>> check into the branch. Remaining bugs can always be found and fixed
>>>>> later.
>>>>>
>>>>> thanks,
>>>>>
>>>>> David
>>>>>
>>>>>
>>>>>
>>>>> On Thu, Oct 18, 2012 at 8:04 PM, Wei Mi <w...@google.com> wrote:
>>>>>> Hi,
>>>>>>
>>>>>> David cought a problem in the last patch when he tries to built
>>>>>> libasan. The problem was that an incomplete libtool under libasan
>>>>>> build directory was generated. The cause is that the old patch used an
>>>>>> old ltmain.sh to generate libtool. I fix it and attach a new patch.
>>>>>> And the new patch move -lpthread and -ldl to libasan LDFLAGS.
>>>>>>
>>>>>> Thanks,
>>>>>> Wei.

Reply via email to