Hi Stephen,

Thank you for not dropping the ball after my initial "it's not that
easy" reply.

On Sat, May 09, 2020 at 10:53:10AM +0200, Stephen Kitt wrote:
> There’s another part of the transition which bothers me: if we add memusage
> to a package which is depended upon (albeit temporarily) by libc-dev-bin, it
> becomes part of build-essential, and adding memusage means adding libgd3,
> libfontconfig1, libfreetype6, etc. to all builds...
> It occurred to me that there is however a way to add memusage while
> transitioning cleanly, over a few years. It seems to me that the binaries in
> libc-dev-bin can be split into two categories: binaries that are expected as
> build tools (gencat and rpcgen), and binaries that are useful as tools for
> understanding programs but not building them (memusage, memusagestat, mtrace,
> sotruss, sprof). How about the following?
> * We add a new package, say libc-devtools, containing the second type of
>   tools (mtrace, sotruss, sprof). For transition purposes, libc-dev-bin
>   depends on that in Bullseye.
> * We add another package, memusage, containing memusage and memusagestat.
>   That’s the package which ends up with all the annoying extra dependencies,
>   but nothing depends on it.
> * In Bookworm, libc-dev-bin can drop the dependency on libc-devtools, and we
>   can merge memusage into libc-devtools.
> Does that make sense?

All of what you write here makes very much sense to me and the
trade-offs seem good to me. What you propose will result in making the
bootstrapping/profile stuff simpler/better. That said, I am not a glibc
maintainer. I don't see the full picture.

I have two minor remarks:
 * Should libc-devtools maybe recommend memusage already?
 * We cannot simply have libc-devtools absorb memusage in bookworm.
   Doing so would break upgrades when someone has memusage, but not
   libc-devtools installed. Therefore memusage likely needs to be a
   transitional dummy package in bookworm and can only be removed one
   release later. I'm wondering whether this could be avoided if we had
   memusage depend on libc-devtools.

Neither of these touch the core of your thoughts.

I'm happy to review patches to make this happen. Please continue to Cc
me if you want my review.


Reply via email to