Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Thomas Petazzoni via buildroot <buildroot@buildroot.org>
To: Ben Wolsieffer <ben.wolsieffer@hefring.com>
Cc: buildroot@buildroot.org
Subject: Re: [Buildroot] [PATCH v2] package/uclibc: fix usage of DODEBUG option
Date: Tue, 7 Feb 2023 18:12:09 +0100	[thread overview]
Message-ID: <20230207181209.6e69b852@windsurf> (raw)
In-Reply-To: <20220803200629.3172370-1-Ben.Wolsieffer@hefring.com>

Hello Ben,

On Wed,  3 Aug 2022 16:06:29 -0400
Ben Wolsieffer <ben.wolsieffer@hefring.com> wrote:

> The DODEBUG option passes -O0 and -DDEBUG to the compiler, which has a
> significant impact on runtime behavior and performance. Currently,
> DODEBUG is enabled by BR2_ENABLE_DEBUG, but it makes more sense for it
> to be enabled by BR_ENABLE_RUNTIME_DEBUG.
> 
> This patch implements the above change, and also disables the DOSTRIP
> option, allowing Builroot to decide whether binaries should be stripped.
> 
> Lastly, this patch adds $(TARGET_DEBUGGING) to the compiler flags, to
> enable debug symbols when appropriate.
> 
> Signed-off-by: Ben Wolsieffer <Ben.Wolsieffer@hefring.com>
> ---
> Changes in v2:
>   - Always disable DOSTRIP.
>   - Only add $(TARGET_DEBUGGING) to CFLAGS, to avoid any unintended side
>     effects.

So after quite some time, I finally took care of your patch (sorry for
the delay!). I ended up splitting it into 3 separate commits, because
even though they are related, the 3 aspects are distinct. So here you
are:

commit f9867a725c12975af52dda9dffbdc33c3b0312db
Author: Ben Wolsieffer <Ben.Wolsieffer@hefring.com>
Date:   Tue Feb 7 17:53:37 2023 +0100

    package/uclibc: enable DODEBUG when BR2_ENABLE_RUNTIME_DEBUG
    
    The DODEBUG=y option of uClibc causes uClibc to be built with -O0 and
    -DDEBUG, which has a significant runtime performance
    impact. Currently, DODEBUG=y is passed when BR2_ENABLE_DEBUG=y, but
    BR2_ENABLE_DEBUG is only about enabling debugging symbols, not about
    runtime debugging additions. The more recently added
    BR2_ENABLE_RUNTIME_DEBUG option is precisely designed for that, so we
    changed the logic to pass DODEBUG=y when BR2_ENABLE_RUNTIME_DEBUG=y,
    and not BR2_ENABLE_DEBUG=y.
    
    This allows to build uClibc with debugging symbols when
    BR2_ENABLE_DEBUG=y, without disabling optimizations and adding more
    debugging features that have a runtime performance impact.
    
    Signed-off-by: Ben Wolsieffer <Ben.Wolsieffer@hefring.com>
    [Thomas: extracted from
    https://patchwork.ozlabs.org/project/buildroot/patch/20220803200629.3172370-1-Ben.Wolsieffer@hefring.com/
    and split into its own independent patch.]
    Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>

commit 17481bd0bf6abff260ccc579974b813050f91d4e
Author: Ben Wolsieffer <Ben.Wolsieffer@hefring.com>
Date:   Tue Feb 7 17:52:21 2023 +0100

    package/uclibc: pass $(TARGET_DEBUGGING) flags
    
    In order to have debugging symbols in uClibc, let's pass
    $(TARGET_DEBUGGING) in UCLIBC_EXTRA_CFLAGS.
    
    Signed-off-by: Ben Wolsieffer <Ben.Wolsieffer@hefring.com>
    [Thomas: extracted from
    https://patchwork.ozlabs.org/project/buildroot/patch/20220803200629.3172370-1-Ben.Wolsieffer@hefring.com/
    and split into its own independent patch.]
    Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>

commit cf92dcfaa92f6564830d10d4e18ae00fd8102ab2
Author: Ben Wolsieffer <Ben.Wolsieffer@hefring.com>
Date:   Tue Feb 7 17:50:59 2023 +0100

    package/uclibc: don't let uClibc build system strip uClibc
    
    Let Buildroot handle this, so we can have an unstripped uClibc if
    needed.
    
    Signed-off-by: Ben Wolsieffer <Ben.Wolsieffer@hefring.com>
    [Thomas: extracted from
    https://patchwork.ozlabs.org/project/buildroot/patch/20220803200629.3172370-1-Ben.Wolsieffer@hefring.com/
    and split into its own independent patch.]
    Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>

Thanks a lot!

Thomas
-- 
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

      reply	other threads:[~2023-02-07 17:12 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-08-03 20:06 [Buildroot] [PATCH v2] package/uclibc: fix usage of DODEBUG option Ben Wolsieffer
2023-02-07 17:12 ` Thomas Petazzoni via buildroot [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20230207181209.6e69b852@windsurf \
    --to=buildroot@buildroot.org \
    --cc=ben.wolsieffer@hefring.com \
    --cc=thomas.petazzoni@bootlin.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox