[lttng-dev] Request change name of function lookup_enum in libbabeltrace to make GDB use this lib

Hui Zhu teawater at gmail.com
Mon Dec 10 03:30:12 EST 2012


On Thu, Dec 6, 2012 at 11:57 PM, Pedro Alves <palves at redhat.com> wrote:
> On 12/05/2012 12:08 PM, Mathieu Desnoyers wrote:
>> * Hui Zhu (teawater at gmail.com) wrote:
>>> Hi,
>>>
>>> I am working on add CTF support to GDB.  You can see my patch review threads in:
>>> http://sourceware.org/ml/gdb-patches/2012-11/msg00552.html
>>> http://sourceware.org/ml/gdb-patches/2012-11/msg00554.html
>>> http://sourceware.org/ml/gdb-patches/2012-11/msg00553.html
>>> http://sourceware.org/ml/gdb-patches/2012-11/msg00555.html
>>> http://sourceware.org/ml/gdb-patches/2012-11/msg00556.html
>>>
>>> To make GDB support CTF read, I use libbabeltrace with GDB.  You can
>>> see the patch in
>>> http://sourceware.org/ml/gdb-patches/2012-11/msg00555.html.
>>> I have a issue is  libbabeltrace have a function called lookup_enum
>>> that is same with a GDB function.
>>> I change the function name of GDB to handle this issue in my patch.
>>>
>>> But Tom said let libbabeltrace to change function name is better.
>>> So I send this mail to ask do you mind change the function name of
>>> lookup_enum?   If you can change the function name that will be really
>>> helpful for us.  Thanks a lot.
>>> And I post a patch about change the function name in libbabeltrace.
>>
>> I'm CCing Julien Desfossez on this one. From what I see,
>> include/babeltrace/types.h is not included into the system, so it should
>> not be considered to be a public header of libbabeltrace.
>
> I've just built and installed babeltrace 1.0.0 (where's the mainline repository,
> BTW?), and indeed, I'm not seeing the types.h file anywhere in the
> installed tree:
>
> $ ~/src/babeltrace/install/include> find
> .
> ./babeltrace
> ./babeltrace/trace-handle.h
> ./babeltrace/list.h
> ./babeltrace/babeltrace.h
> ./babeltrace/context.h
> ./babeltrace/iterator.h
> ./babeltrace/ctf
> ./babeltrace/ctf/callbacks.h
> ./babeltrace/ctf/events.h
> ./babeltrace/ctf/iterator.h
> ./babeltrace/format.h
> ./babeltrace/clock-types.h
>
> The GDB patch is including types.h explicitly:
>
> +#ifdef HAVE_LIBBABELTRACE
> +#include <babeltrace/babeltrace.h>
> +#include <babeltrace/types.h>
> +#include <babeltrace/ctf/events.h>
> +#include <babeltrace/ctf/iterator.h>
>
> So indeed, Hui, you'll need to make sure your patch works against an
> installed babeltrace, making sure it does not pick up headers
> from babeltrace's source directory.  If there's really no reason to
> include that types.h header (since it seems you don't really need any
> function declared in that file), maybe there's actually nothing for
> babeltrace to do.

Oops, sorry for I miss something.
I use include babeltrace/types.h because I use function
get_int_signedness that defined inside it.

Thanks,
Hui


>
>> Julien, is there an publically exposed babeltrace API that performs
>> something similar to the internal lookup_enum() ?
>>
>> Hui, are you using other functions from include/babeltrace/types.h ?
>
> --
> Pedro Alves
>



More information about the lttng-dev mailing list