All of 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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.