[PATCH] meson: Add -finstrument-functions to debug builds

Paul Elder paul.elder at ideasonboard.com
Fri Sep 13 01:00:35 CEST 2024


On Thu, Sep 12, 2024 at 05:58:54PM +0100, Kieran Bingham wrote:
> Quoting Paul Elder (2024-09-12 17:49:09)
> > Add -finstrument-functions to debug (and debugoptimized) build types.
> > This will mainly be used for tracing functions with lttng by
> > LD_PRELOADing liblttng-ust-cyg-profile.so (or
> > liblttng-ust-cyg-profile-fast.so).
> > 
> > Signed-off-by: Paul Elder <paul.elder at ideasonboard.com>
> > ---
> >  meson.build | 6 ++++++
> >  1 file changed, 6 insertions(+)
> > 
> > diff --git a/meson.build b/meson.build
> > index 432ae1337..e8014e77f 100644
> > --- a/meson.build
> > +++ b/meson.build
> > @@ -109,6 +109,12 @@ common_arguments = [
> >      '-include', meson.current_build_dir() / 'config.h',
> >  ]
> >  
> > +if get_option('buildtype').startswith('debug')
> 
> Why is this added to debug builds rather than any build with 'tracing
> enabled' ?

On one hand, good point.

On the other hand, the function tracing *should* work without tracing
enabled in libcamera. So technically they can be used separately. It's a
matter of if we think there's an actual purpose for enabling it.


Paul

> 
> meson_options has:
> 
> option('tracing',
>         type : 'feature',
>         value : 'auto',
>         description : 'Enable tracing (based on lttng)')
> 
> so this could be 'if get_option('tracing') ?
> 
> 
> > +    common_arguments += [
> > +        '-finstrument-functions',
> > +    ]
> > +endif
> > +
> >  c_arguments = []
> >  cpp_arguments = []
> >  
> > -- 
> > 2.39.2
> >


More information about the libcamera-devel mailing list