Mirror of the gdb mailing list
 help / color / mirror / Atom feed
From: Sam James via Gdb <gdb@sourceware.org>
To: "Tomasz Kłoczko" <kloczko.tomasz@gmail.com>
Cc: Joseph Myers <josmyers@redhat.com>,
	 Simon Marchi <simark@simark.ca>,
	gdb@sourceware.org
Subject: Re: gdb and ancient GNU autotools
Date: Tue, 27 Feb 2024 20:59:05 +0000	[thread overview]
Message-ID: <87o7c162ue.fsf@gentoo.org> (raw)
In-Reply-To: <CABB28CwZ8-EB0cq2J1ov7De-CXbb0D-CWtsC6SuqgNhSYtX3nw@mail.gmail.com> ("Tomasz =?utf-8?Q?K=C5=82oczko=22's?= message of "Tue, 27 Feb 2024 20:44:23 +0000")

Tomasz Kłoczko <kloczko.tomasz@gmail.com> writes:

[resending, sorry, my mail client recently changed bindings.]

> On Tue, 27 Feb 2024 at 17:33, Joseph Myers <josmyers@redhat.com> wrote:
> [..]
>
>  A reminder: mixing a libtool update into an autoconf/automake update would 
>  be a bad idea, a libtool update is likely a lot harder, since (a) the 
>  libtool version used is very old (reportedly based on upstream commit 
>  2c9c38d8a12eb0a2ce7fe9c3862523026c3d5622); (b) there are many local 
>  patches, probably including some that are not present upstream; (c) 
>  libtool commit 3334f7ed5851ef1e96b052f2984c4acdbf39e20c will need 
>  reverting because of usage of --with-sysroot incompatible with how the 
>  toolchain uses that option.
>
>  I did the last autoconf/automake update in GCC, but that was building very 
>  heavily on your work on that update for binutils-gdb and would have been a 
>  lot harder without your work to update the shared files and show the way 
>  for the sort of changes to make to GCC-specific files.
>
> In other words you are 100% AWARE that OOTB libtool is in dead state because it has been abandoned by maintainer(s), and
> no one wants to continue that work by forking it from current master (adding fixes -> release new versions etc), and at

No, the situation with the GNU toolchain's libtool version/soft fork vs
the upstream one is more complicated.

There's some patches which never got submitted upstream, some which need
to be reconciled with upstream changes, some where we really need to
figure out why they were done in the first place, etc.

(Joseph already identified one such deliberate divergence: --with-sysroot.)

It's not as simple as "GNU libtool is unmaintained". In fact, it's got
(another) new maintainer as of last month or so, and a lot of activity
upstream since then. But that's separate to the issue of the libtool
used within the GNU toolchain, although kind of related (active
maintainers might help motivate updating it and sorting through the local changes).


> the same time gdb maintainer(s) (and probably gcc and binutils as well) definitely want to stick with GNU autotools.
> You cannot eat cake and still have it on the plate ..
>
> Just FTR a few metrics from my +4.83k packages spec files (Fedora IIRC has now ~21k, Debian 30k .. ish)
>
> [tkloczko@pers-jacek SPECS]$ for i in meson libtool autoconf automake cmake; do echo "$i = $(grep -c BuildRequires:.$i -l
> *spec |wc -l)"; done
> meson = 436
> libtool = 844
> autoconf = 68
> automake = 1040
> cmake = 634
>
> Even if my 4.8k package population produces values which are not 100% accurate, these metrics will be probably only +/-
> 2-3% different on sampling them on a bigger population.
>
> In above metrics if something requires automake it uses autoconf as well, and as you can see:
> - The number of people who/projects which abandoned/not choose GNU autoconf is greater than cmake + meson (634+436 =
> 1070).
> - The number of those which are using libtool (844) is already LOWER than meson+cmake by ~20%.
> - Metric of the meson+cmake is almost as big as the set in which it is used by autoconf and/or automake (1040+68=1108).
>
> If no one will try to continue libtool maintenance atractor anchored in libtool will be changing those metrics with time
> in ONLY ONE DIRECTION which will be ONLY more and more affecting gcc, binutils, gdb trio.
>
> PURE LOGIC says that in this situation you guys (maintainers) have probably ONLY two solutions/choices:
> - someone will take over libtool to recover it from the current coma, and rescue in longer term gcc, binutils, gdb trio
> as well.
> - you can move to cmake or meson.

Toolchain packages are generally special.

Can you please reconsider your tone? It comes across aggressive to me.

> Above two possibilities are HARD LOGICAL CONCLUSIONS taken straight from results of those metrics with which
> (conclusions) you may not agree but existence of it is completely independent of what you can add more as comment (and
> anyone here as persons with EnoughGood exp in context of build automation).
>
> As I wrote I can try to help in both possible scenarios but first someone needs to MAKE THE DECISION about taking over
> libtool or about starting to move towards cmake or meson.
> I'm 100% sure that many other people may and WILL help with above (necessary) changes BUT as long as libtool is
> unmaintained, investing anyone's time is HIGHLY RISKY that time will be wasted.
> In other words in the current state probably that you will stay ALONE and no one will be trying to help you -> time which
> you already spend on maintaining gcc, gdb binutils trion will be more or less kind of LOST .. is only GROWING with every
> day of lack of that STRATEGIC decision.
>
> I'm the only messenger .. please don't kill the messenger.
>
> kloczek
> PS. I found my ncurses and gdb issue solution but because it is JFDIN I'm not going to publish it.
> In other words my issue has now a solution (which I'm not happy/proud of what I've done but ItWorks™️)


  parent reply	other threads:[~2024-02-27 21:00 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-02-24 16:28 Tomasz Kłoczko via Gdb
2024-02-24 16:51 ` Sam James via Gdb
2024-02-24 17:15   ` Tomasz Kłoczko via Gdb
2024-02-24 17:21     ` Sam James via Gdb
2024-02-24 18:30       ` Tomasz Kłoczko via Gdb
2024-02-24 19:31         ` Mark Wielaard
2024-02-25  0:22           ` Tomasz Kłoczko via Gdb
2024-02-25  7:56             ` Mark Wielaard
2024-02-25  8:05             ` Eli Schwartz via Gdb
2024-02-25 10:40               ` Mark Wielaard
2024-02-25 21:19                 ` Eli Schwartz via Gdb
2024-02-25 21:50                   ` Tomasz Kłoczko via Gdb
2024-02-25 22:20                     ` Andreas Schwab
2024-02-25 23:32                     ` Mark Wielaard
2024-02-26  0:29                       ` Tomasz Kłoczko via Gdb
2024-02-26  0:46                         ` Eli Schwartz via Gdb
2024-02-26  0:55                           ` Tomasz Kłoczko via Gdb
2024-02-26 11:44                         ` Mark Wielaard
2024-02-26 12:13                           ` Tomasz Kłoczko via Gdb
2024-02-26  0:26                     ` Eli Schwartz via Gdb
2024-02-27 15:25         ` Tom Tromey
2024-02-27 16:37         ` Simon Marchi via Gdb
2024-02-27 17:33           ` Joseph Myers via Gdb
2024-02-27 17:42             ` Tom Tromey
2024-02-27 20:44             ` Tomasz Kłoczko via Gdb
2024-02-27 20:57               ` Tomasz Kłoczko via Gdb
2024-02-27 20:59               ` Sam James via Gdb [this message]
2024-02-26  0:58 ` Andrew Pinski via Gdb
2024-02-27 15:27   ` Tom Tromey

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=87o7c162ue.fsf@gentoo.org \
    --to=gdb@sourceware.org \
    --cc=josmyers@redhat.com \
    --cc=kloczko.tomasz@gmail.com \
    --cc=sam@gentoo.org \
    --cc=simark@simark.ca \
    /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