public inbox for buildbot@sourceware.org
 help / color / mirror / Atom feed
* [PATCH] autoregen.py: Use autoreconf by default
@ 2024-04-28 21:23 Christophe Lyon
  2024-04-29  3:28 ` Simon Marchi
  0 siblings, 1 reply; 6+ messages in thread
From: Christophe Lyon @ 2024-04-28 21:23 UTC (permalink / raw)
  To: buildbot; +Cc: Christophe Lyon

Since the list of directories compatible with autoreconf is large,
make it the default, and introduce a list of directories to
reconfigure 'manually'.
---
 builder/containers/autoregen.py | 78 ++++-----------------------------
 1 file changed, 9 insertions(+), 69 deletions(-)

diff --git a/builder/containers/autoregen.py b/builder/containers/autoregen.py
index faffc88..0d93186 100755
--- a/builder/containers/autoregen.py
+++ b/builder/containers/autoregen.py
@@ -52,69 +52,15 @@ SKIP_DIRS = [
     "minizip",
 ]
 
-# these directories are known to be re-generatable with a simple autoreconf
-# without special -I flags
-# Entries commented out (and directories not listed) are handled by
-# regenerate_manually().
-AUTORECONF_DIRS = [
-    # subdirs common to binutils-gdb and gcc
-    "libbacktrace",
-    "libdecnumber", # No Makefile.am
-    "libiberty", # No Makefile.am
-    "zlib",
-
-    # binutils-gdb subdirs
-    "bfd",
-    "binutils",
-    "etc",
-    "gas",
-    "gdb",
-    "gdbserver",
-    "gdbsupport",
-    "gnulib",
-    "gold",
-    "gprof",
-    "gprofng",
-    "gprofng/libcollector",
-    "ld",
-    "libctf",
-    "libsframe",
-    "opcodes",
-    "sim",
-
-    # gcc subdirs
-    "c++tools", # No aclocal.m4
-    "gcc", # No Makefile.am
-    #"fixincludes", # autoreconf complains about GCC_AC_FUNC_MMAP_BLACKLIST
-    "gnattools", # No aclocal.m4
-    "gotools",
-    "libada", # No aclocal.m4
-    "libatomic",
-    "libcc1",
-    "libcody", # No aclocal.m4
-    "libcpp", # No Makefile.am
-    "libffi",
-    "libgcc", # No aclocal.m4
-    "libgfortran",
+MANUAL_CONF_DIRS = [
+    ".",
+    # autoreconf does not update aclocal.m4
+    "fixincludes",
     # Hack: ACLOCAL_AMFLAGS = -I .. -I ../config in Makefile.in but we
     # apply -I../config -I.. otherwise we do not match the current
     # contents
-    #"libgm2",
-    "libgo",
-    "libgomp",
-    "libgrust",
-    "libitm",
-    "libobjc", # No Makefile.am
-    "libphobos",
-    "libquadmath",
-    "libsanitizer",
-    "libssp",
-    "libstdc++-v3",
-    # This does not cover libvtv/testsuite/other-tests/Makefile.in
-    "libvtv",
-    "lto-plugin",
-]
-
+    "libgm2",
+    ]
 
 # Run the shell command CMD.
 #
@@ -146,12 +92,6 @@ def regenerate_manually():
         if (folder / ".." / "config").is_dir():
             include_arg = "-I../config"
 
-        # this is really a hack just for binutils-gdb/gprofng/libcollector
-        # make sure that the order of includes is done as --enable-maintainer-mode
-        if (folder / ".." / ".." / "config").is_dir():
-            include_arg = "-I../.."
-            include_arg2 = "-I../../config"
-
         if folder.stem == "fixincludes":
             include_arg = "-I.."
             include_arg2 = "-I../config"
@@ -215,7 +155,7 @@ for folder in sorted(config_folders):
     print(f"Entering directory {folder}", flush=True)
     os.chdir(folder)
 
-    if str(folder.relative_to(repo_root)) in AUTORECONF_DIRS:
-        regenerate_with_autoreconf()
-    else:
+    if str(folder.relative_to(repo_root)) in MANUAL_CONF_DIRS:
         regenerate_manually()
+    else:
+        regenerate_with_autoreconf()
-- 
2.34.1


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] autoregen.py: Use autoreconf by default
  2024-04-28 21:23 [PATCH] autoregen.py: Use autoreconf by default Christophe Lyon
@ 2024-04-29  3:28 ` Simon Marchi
  2024-04-29 12:27   ` Christophe Lyon
  0 siblings, 1 reply; 6+ messages in thread
From: Simon Marchi @ 2024-04-29  3:28 UTC (permalink / raw)
  To: Christophe Lyon, buildbot



On 2024-04-28 17:23, Christophe Lyon wrote:
> Since the list of directories compatible with autoreconf is large,
> make it the default, and introduce a list of directories to
> reconfigure 'manually'.

The patch looks fine to me.  I think we can clean up some things that
are no longer needed and make the code a bit nicer.  I can send a patch
series for this once this one is merged (I don't want to create
unnecessary conflicts).

Simon

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] autoregen.py: Use autoreconf by default
  2024-04-29  3:28 ` Simon Marchi
@ 2024-04-29 12:27   ` Christophe Lyon
  2024-04-29 16:44     ` Mark Wielaard
  2024-04-30  2:26     ` Simon Marchi
  0 siblings, 2 replies; 6+ messages in thread
From: Christophe Lyon @ 2024-04-29 12:27 UTC (permalink / raw)
  To: Simon Marchi; +Cc: buildbot

On Mon, 29 Apr 2024 at 05:28, Simon Marchi <simark@simark.ca> wrote:
>
>
>
> On 2024-04-28 17:23, Christophe Lyon wrote:
> > Since the list of directories compatible with autoreconf is large,
> > make it the default, and introduce a list of directories to
> > reconfigure 'manually'.
>
> The patch looks fine to me.  I think we can clean up some things that
> are no longer needed and make the code a bit nicer.  I can send a patch
> series for this once this one is merged (I don't want to create
> unnecessary conflicts).
>

Thanks for your comments.

Mark, if you are happy with the changes, can you apply this patch?

Thanks,

Christophe

> Simon

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] autoregen.py: Use autoreconf by default
  2024-04-29 12:27   ` Christophe Lyon
@ 2024-04-29 16:44     ` Mark Wielaard
  2024-04-30  2:26     ` Simon Marchi
  1 sibling, 0 replies; 6+ messages in thread
From: Mark Wielaard @ 2024-04-29 16:44 UTC (permalink / raw)
  To: Christophe Lyon, Simon Marchi; +Cc: buildbot

Hi Christophe,

On Mon, 2024-04-29 at 14:27 +0200, Christophe Lyon wrote:
> On Mon, 29 Apr 2024 at 05:28, Simon Marchi <simark@simark.ca> wrote:
> > On 2024-04-28 17:23, Christophe Lyon wrote:
> > > Since the list of directories compatible with autoreconf is large,
> > > make it the default, and introduce a list of directories to
> > > reconfigure 'manually'.
> > 
> > The patch looks fine to me.  I think we can clean up some things that
> > are no longer needed and make the code a bit nicer.  I can send a patch
> > series for this once this one is merged (I don't want to create
> > unnecessary conflicts).
> 
> Thanks for your comments.
> 
> Mark, if you are happy with the changes, can you apply this patch?

I quickly tried on my local binutils-gdb and gcc checkouts and things
look good. Pushed.

Thanks,

Mark

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] autoregen.py: Use autoreconf by default
  2024-04-29 12:27   ` Christophe Lyon
  2024-04-29 16:44     ` Mark Wielaard
@ 2024-04-30  2:26     ` Simon Marchi
  2024-04-30  8:50       ` Christophe Lyon
  1 sibling, 1 reply; 6+ messages in thread
From: Simon Marchi @ 2024-04-30  2:26 UTC (permalink / raw)
  To: Christophe Lyon; +Cc: buildbot



On 2024-04-29 08:27, Christophe Lyon wrote:
> On Mon, 29 Apr 2024 at 05:28, Simon Marchi <simark@simark.ca> wrote:
>>
>>
>>
>> On 2024-04-28 17:23, Christophe Lyon wrote:
>>> Since the list of directories compatible with autoreconf is large,
>>> make it the default, and introduce a list of directories to
>>> reconfigure 'manually'.
>>
>> The patch looks fine to me.  I think we can clean up some things that
>> are no longer needed and make the code a bit nicer.  I can send a patch
>> series for this once this one is merged (I don't want to create
>> unnecessary conflicts).
>>
> 
> Thanks for your comments.
> 
> Mark, if you are happy with the changes, can you apply this patch?
> 
> Thanks,
> 
> Christophe
> 
>> Simon

FYI, I sent these two patches to gcc-patches to try to get rid of the
quirks entirely:

https://inbox.sourceware.org/gcc-patches/20240430020040.92188-1-simon.marchi@polymtl.ca/T/#u
https://inbox.sourceware.org/gcc-patches/20240430022420.114397-1-simon.marchi@polymtl.ca/T/#u

If these (or equivalent) get merged, then we'll be able to do everything
with autoreconf, it will simplify things a lot.

Simon

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] autoregen.py: Use autoreconf by default
  2024-04-30  2:26     ` Simon Marchi
@ 2024-04-30  8:50       ` Christophe Lyon
  0 siblings, 0 replies; 6+ messages in thread
From: Christophe Lyon @ 2024-04-30  8:50 UTC (permalink / raw)
  To: Simon Marchi; +Cc: buildbot

On Tue, 30 Apr 2024 at 04:26, Simon Marchi <simark@simark.ca> wrote:
>
>
>
> On 2024-04-29 08:27, Christophe Lyon wrote:
> > On Mon, 29 Apr 2024 at 05:28, Simon Marchi <simark@simark.ca> wrote:
> >>
> >>
> >>
> >> On 2024-04-28 17:23, Christophe Lyon wrote:
> >>> Since the list of directories compatible with autoreconf is large,
> >>> make it the default, and introduce a list of directories to
> >>> reconfigure 'manually'.
> >>
> >> The patch looks fine to me.  I think we can clean up some things that
> >> are no longer needed and make the code a bit nicer.  I can send a patch
> >> series for this once this one is merged (I don't want to create
> >> unnecessary conflicts).
> >>
> >
> > Thanks for your comments.
> >
> > Mark, if you are happy with the changes, can you apply this patch?
> >
> > Thanks,
> >
> > Christophe
> >
> >> Simon
>
> FYI, I sent these two patches to gcc-patches to try to get rid of the
> quirks entirely:
>
> https://inbox.sourceware.org/gcc-patches/20240430020040.92188-1-simon.marchi@polymtl.ca/T/#u
> https://inbox.sourceware.org/gcc-patches/20240430022420.114397-1-simon.marchi@polymtl.ca/T/#u
>
> If these (or equivalent) get merged, then we'll be able to do everything
> with autoreconf, it will simplify things a lot.
>

Great, thanks!

Christophe

> Simon

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2024-04-30  8:51 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-04-28 21:23 [PATCH] autoregen.py: Use autoreconf by default Christophe Lyon
2024-04-29  3:28 ` Simon Marchi
2024-04-29 12:27   ` Christophe Lyon
2024-04-29 16:44     ` Mark Wielaard
2024-04-30  2:26     ` Simon Marchi
2024-04-30  8:50       ` Christophe Lyon

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).