public inbox for libc-alpha@sourceware.org
 help / color / mirror / Atom feed
* [PATCH v1] scripts: Add support for build x86-64 glibc with multiple ISA levels
@ 2022-07-04  4:15 Noah Goldstein
  2022-07-13  1:34 ` Noah Goldstein
  2022-07-14 12:14 ` Adhemerval Zanella Netto
  0 siblings, 2 replies; 5+ messages in thread
From: Noah Goldstein @ 2022-07-04  4:15 UTC (permalink / raw)
  To: libc-alpha

Tested all added builds on x86-64-v3 machine.
---
I was a bit concerned we would need to check the host (building) machine
before enabling higher ISA builds, but everything seems to be working.

I tested the x86-64 v4 build on a v3 machine. If there is a case I missed
and we do need to check host machine LMK.

Result running all x86-64 builds:

rm -rf build-many;  python3 src/glibc/scripts/build-many-glibcs.py build-many/ checkout gcc-vcs-11; python3 src/glibc/scripts/build-many-glibcs.py build-many/ host-libraries --keep=failed; python3 src/glibc/scripts/build-many-glibcs.py build-many compilers x86_64-linux-gnu --keep=failed; python3 src/glibc/scripts/build-many-glibcs.py build-many glibcs x86_64-linux-gnu x86_64-linux-gnu-disable-multi-arch x86_64-linux-gnu-isa-v2 x86_64-linux-gnu-isa-v2-disable-multi-arch x86_64-linux-gnu-isa-v3 x86_64-linux-gnu-isa-v3-disable-multi-arch x86_64-linux-gnu-isa-v4 x86_64-linux-gnu-isa-v4-disable-multi-arch x86_64-linux-gnu-minimal x86_64-linux-gnu-no-pie x86_64-linux-gnu-x32 x86_64-linux-gnu-x32-no-pie x86_64-linux-gnu --keep=failed
configure.ac:83: installing 'build-aux/compile'
configure.ac:46: installing 'build-aux/config.guess'
configure.ac:46: installing 'build-aux/config.sub'
configure.ac:26: installing 'build-aux/install-sh'
configure.ac:26: installing 'build-aux/missing'
Makefile.am: installing './INSTALL'
Makefile.am: installing 'build-aux/depcomp'
Makefile.am:32: installing 'build-aux/mdate-sh'
doc/Makefrag.am:106: warning: user target '$(srcdir)/doc/version.texi' defined here ...
Makefile.am:155:   'doc/Makefrag.am' included from here
/usr/share/automake-1.16/am/texi-vers.am: ... overrides Automake target '$(srcdir)/doc/version.texi' defined here
Makefile.am:32: installing 'build-aux/texinfo.tex'
parallel-tests: installing 'build-aux/test-driver'
configure.ac:25: installing 'build-aux/compile'
configure.ac:9: installing 'build-aux/config.guess'
configure.ac:9: installing 'build-aux/config.sub'
configure.ac:14: installing 'build-aux/install-sh'
configure.ac:14: installing 'build-aux/missing'
Makefile.am: installing './INSTALL'
Makefile.am: installing 'build-aux/depcomp'
configure.ac: installing 'build-aux/ylwrap'
parallel-tests: installing 'build-aux/test-driver'
PASS: host-libraries gmp rm
PASS: host-libraries gmp mkdir
PASS: host-libraries gmp configure
PASS: host-libraries gmp build
PASS: host-libraries gmp check
PASS: host-libraries gmp install
PASS: host-libraries gmp cleanup
PASS: host-libraries mpfr rm
PASS: host-libraries mpfr mkdir
PASS: host-libraries mpfr configure
PASS: host-libraries mpfr build
PASS: host-libraries mpfr check
PASS: host-libraries mpfr install
PASS: host-libraries mpfr cleanup
PASS: host-libraries mpc rm
PASS: host-libraries mpc mkdir
PASS: host-libraries mpc configure
PASS: host-libraries mpc build
PASS: host-libraries mpc check
PASS: host-libraries mpc install
PASS: host-libraries mpc cleanup
PASS: host-libraries done
PASS: compilers-x86_64-linux-gnu check-host-libraries
PASS: compilers-x86_64-linux-gnu binutils rm
PASS: compilers-x86_64-linux-gnu binutils mkdir
PASS: compilers-x86_64-linux-gnu binutils configure
PASS: compilers-x86_64-linux-gnu binutils build
PASS: compilers-x86_64-linux-gnu binutils install
PASS: compilers-x86_64-linux-gnu binutils cleanup
PASS: compilers-x86_64-linux-gnu linux rm
PASS: compilers-x86_64-linux-gnu linux mkdir
PASS: compilers-x86_64-linux-gnu linux install-headers
PASS: compilers-x86_64-linux-gnu linux cleanup
PASS: compilers-x86_64-linux-gnu gcc-first rm
PASS: compilers-x86_64-linux-gnu gcc-first mkdir
PASS: compilers-x86_64-linux-gnu gcc-first configure
PASS: compilers-x86_64-linux-gnu gcc-first build
PASS: compilers-x86_64-linux-gnu gcc-first install
PASS: compilers-x86_64-linux-gnu gcc-first cleanup
PASS: compilers-x86_64-linux-gnu glibc x86_64-linux-gnu rm
PASS: compilers-x86_64-linux-gnu glibc x86_64-linux-gnu mkdir
PASS: compilers-x86_64-linux-gnu glibc x86_64-linux-gnu configure
PASS: compilers-x86_64-linux-gnu glibc x86_64-linux-gnu build
PASS: compilers-x86_64-linux-gnu glibc x86_64-linux-gnu install
PASS: compilers-x86_64-linux-gnu glibc x86_64-linux-gnu mkdir-lib
PASS: compilers-x86_64-linux-gnu glibc x86_64-linux-gnu cleanup
PASS: compilers-x86_64-linux-gnu glibc x86_64-linux-gnu-x32 rm
PASS: compilers-x86_64-linux-gnu glibc x86_64-linux-gnu-x32 mkdir
PASS: compilers-x86_64-linux-gnu glibc x86_64-linux-gnu-x32 configure
PASS: compilers-x86_64-linux-gnu glibc x86_64-linux-gnu-x32 build
PASS: compilers-x86_64-linux-gnu glibc x86_64-linux-gnu-x32 install
PASS: compilers-x86_64-linux-gnu glibc x86_64-linux-gnu-x32 mkdir-lib
PASS: compilers-x86_64-linux-gnu glibc x86_64-linux-gnu-x32 cleanup
PASS: compilers-x86_64-linux-gnu glibc i686-linux-gnu rm
PASS: compilers-x86_64-linux-gnu glibc i686-linux-gnu mkdir
PASS: compilers-x86_64-linux-gnu glibc i686-linux-gnu configure
PASS: compilers-x86_64-linux-gnu glibc i686-linux-gnu build
PASS: compilers-x86_64-linux-gnu glibc i686-linux-gnu install
PASS: compilers-x86_64-linux-gnu glibc i686-linux-gnu mkdir-lib
PASS: compilers-x86_64-linux-gnu glibc i686-linux-gnu cleanup
PASS: compilers-x86_64-linux-gnu gcc rm
PASS: compilers-x86_64-linux-gnu gcc mkdir
PASS: compilers-x86_64-linux-gnu gcc configure
PASS: compilers-x86_64-linux-gnu gcc build
PASS: compilers-x86_64-linux-gnu gcc install
PASS: compilers-x86_64-linux-gnu gcc cleanup
PASS: compilers-x86_64-linux-gnu done
Makefile:161: warning: overriding recipe for target 'glibcs-x86_64-linux-gnu'
Makefile:5: warning: ignoring old recipe for target 'glibcs-x86_64-linux-gnu'
PASS: glibcs-x86_64-linux-gnu check-compilers
PASS: glibcs-x86_64-linux-gnu-isa-v3 check-compilers
PASS: glibcs-x86_64-linux-gnu-disable-multi-arch check-compilers
PASS: glibcs-x86_64-linux-gnu-isa-v2-disable-multi-arch check-compilers
PASS: glibcs-x86_64-linux-gnu-isa-v4 check-compilers
PASS: glibcs-x86_64-linux-gnu-isa-v3-disable-multi-arch check-compilers
PASS: glibcs-x86_64-linux-gnu-isa-v2 check-compilers
PASS: glibcs-x86_64-linux-gnu-minimal check-compilers
PASS: glibcs-x86_64-linux-gnu-no-pie check-compilers
PASS: glibcs-x86_64-linux-gnu-x32-no-pie check-compilers
PASS: glibcs-x86_64-linux-gnu-x32 check-compilers
PASS: glibcs-x86_64-linux-gnu-isa-v4-disable-multi-arch check-compilers
PASS: glibcs-x86_64-linux-gnu-isa-v3 rm
PASS: glibcs-x86_64-linux-gnu-disable-multi-arch rm
PASS: glibcs-x86_64-linux-gnu rm
PASS: glibcs-x86_64-linux-gnu-isa-v2-disable-multi-arch rm
PASS: glibcs-x86_64-linux-gnu-isa-v4 rm
PASS: glibcs-x86_64-linux-gnu-isa-v3-disable-multi-arch rm
PASS: glibcs-x86_64-linux-gnu-isa-v2 rm
PASS: glibcs-x86_64-linux-gnu-minimal rm
PASS: glibcs-x86_64-linux-gnu-x32-no-pie rm
PASS: glibcs-x86_64-linux-gnu-isa-v4-disable-multi-arch rm
PASS: glibcs-x86_64-linux-gnu-no-pie rm
PASS: glibcs-x86_64-linux-gnu-x32 rm
PASS: glibcs-x86_64-linux-gnu mkdir
PASS: glibcs-x86_64-linux-gnu-isa-v2-disable-multi-arch mkdir
PASS: glibcs-x86_64-linux-gnu-disable-multi-arch mkdir
PASS: glibcs-x86_64-linux-gnu-isa-v3-disable-multi-arch mkdir
PASS: glibcs-x86_64-linux-gnu-isa-v2 mkdir
PASS: glibcs-x86_64-linux-gnu-minimal mkdir
PASS: glibcs-x86_64-linux-gnu-isa-v3 mkdir
PASS: glibcs-x86_64-linux-gnu-no-pie mkdir
PASS: glibcs-x86_64-linux-gnu-x32-no-pie mkdir
PASS: glibcs-x86_64-linux-gnu-isa-v4-disable-multi-arch mkdir
PASS: glibcs-x86_64-linux-gnu-isa-v4 mkdir
PASS: glibcs-x86_64-linux-gnu-x32 mkdir
PASS: glibcs-x86_64-linux-gnu-minimal configure
PASS: glibcs-x86_64-linux-gnu-disable-multi-arch configure
PASS: glibcs-x86_64-linux-gnu configure
PASS: glibcs-x86_64-linux-gnu-x32 configure
PASS: glibcs-x86_64-linux-gnu-isa-v2 configure
PASS: glibcs-x86_64-linux-gnu-isa-v2-disable-multi-arch configure
PASS: glibcs-x86_64-linux-gnu-x32-no-pie configure
PASS: glibcs-x86_64-linux-gnu-isa-v3-disable-multi-arch configure
PASS: glibcs-x86_64-linux-gnu-isa-v3 configure
PASS: glibcs-x86_64-linux-gnu-no-pie configure
PASS: glibcs-x86_64-linux-gnu-isa-v4-disable-multi-arch configure
PASS: glibcs-x86_64-linux-gnu-isa-v4 configure
PASS: glibcs-x86_64-linux-gnu-minimal build
PASS: glibcs-x86_64-linux-gnu-disable-multi-arch build
PASS: glibcs-x86_64-linux-gnu-isa-v3-disable-multi-arch build
PASS: glibcs-x86_64-linux-gnu-isa-v2-disable-multi-arch build
PASS: glibcs-x86_64-linux-gnu-minimal install
PASS: glibcs-x86_64-linux-gnu-minimal mkdir-lib
PASS: glibcs-x86_64-linux-gnu-isa-v4-disable-multi-arch build
PASS: glibcs-x86_64-linux-gnu build
PASS: glibcs-x86_64-linux-gnu-x32-no-pie build
PASS: glibcs-x86_64-linux-gnu-isa-v2 build
PASS: glibcs-x86_64-linux-gnu-no-pie build
PASS: glibcs-x86_64-linux-gnu-isa-v4 build
PASS: glibcs-x86_64-linux-gnu-x32 build
PASS: glibcs-x86_64-linux-gnu-isa-v3 build
PASS: glibcs-x86_64-linux-gnu-disable-multi-arch install
PASS: glibcs-x86_64-linux-gnu-disable-multi-arch mkdir-lib
PASS: glibcs-x86_64-linux-gnu-isa-v3-disable-multi-arch install
PASS: glibcs-x86_64-linux-gnu-isa-v3-disable-multi-arch mkdir-lib
PASS: glibcs-x86_64-linux-gnu-isa-v2-disable-multi-arch install
PASS: glibcs-x86_64-linux-gnu-isa-v2-disable-multi-arch mkdir-lib
PASS: glibcs-x86_64-linux-gnu-isa-v4-disable-multi-arch install
PASS: glibcs-x86_64-linux-gnu-isa-v4-disable-multi-arch mkdir-lib
PASS: glibcs-x86_64-linux-gnu install
PASS: glibcs-x86_64-linux-gnu mkdir-lib
PASS: glibcs-x86_64-linux-gnu-isa-v2 install
PASS: glibcs-x86_64-linux-gnu-isa-v2 mkdir-lib
PASS: glibcs-x86_64-linux-gnu-x32-no-pie install
PASS: glibcs-x86_64-linux-gnu-x32-no-pie mkdir-lib
PASS: glibcs-x86_64-linux-gnu-no-pie install
PASS: glibcs-x86_64-linux-gnu-no-pie mkdir-lib
PASS: glibcs-x86_64-linux-gnu-isa-v3 install
PASS: glibcs-x86_64-linux-gnu-isa-v3 mkdir-lib
PASS: glibcs-x86_64-linux-gnu-isa-v4 install
PASS: glibcs-x86_64-linux-gnu-isa-v4 mkdir-lib
PASS: glibcs-x86_64-linux-gnu-x32 install
PASS: glibcs-x86_64-linux-gnu-x32 mkdir-lib
PASS: glibcs-x86_64-linux-gnu-minimal check
PASS: glibcs-x86_64-linux-gnu-minimal save-logs
PASS: glibcs-x86_64-linux-gnu-minimal cleanup
PASS: glibcs-x86_64-linux-gnu-disable-multi-arch check
PASS: glibcs-x86_64-linux-gnu-disable-multi-arch save-logs
PASS: glibcs-x86_64-linux-gnu-disable-multi-arch cleanup
PASS: glibcs-x86_64-linux-gnu-isa-v3-disable-multi-arch check
PASS: glibcs-x86_64-linux-gnu-isa-v3-disable-multi-arch save-logs
PASS: glibcs-x86_64-linux-gnu-isa-v2-disable-multi-arch check
PASS: glibcs-x86_64-linux-gnu-isa-v2-disable-multi-arch save-logs
PASS: glibcs-x86_64-linux-gnu-isa-v3-disable-multi-arch cleanup
PASS: glibcs-x86_64-linux-gnu-isa-v2-disable-multi-arch cleanup
PASS: glibcs-x86_64-linux-gnu-isa-v4-disable-multi-arch check
PASS: glibcs-x86_64-linux-gnu-isa-v4-disable-multi-arch save-logs
PASS: glibcs-x86_64-linux-gnu-isa-v4-disable-multi-arch cleanup
PASS: glibcs-x86_64-linux-gnu check
PASS: glibcs-x86_64-linux-gnu save-logs
PASS: glibcs-x86_64-linux-gnu cleanup
PASS: glibcs-x86_64-linux-gnu-isa-v2 check
PASS: glibcs-x86_64-linux-gnu-isa-v2 save-logs
PASS: glibcs-x86_64-linux-gnu-isa-v2 cleanup
PASS: glibcs-x86_64-linux-gnu-x32 check
PASS: glibcs-x86_64-linux-gnu-x32 save-logs
PASS: glibcs-x86_64-linux-gnu-x32 cleanup
PASS: glibcs-x86_64-linux-gnu-x32-no-pie check
PASS: glibcs-x86_64-linux-gnu-x32-no-pie save-logs
PASS: glibcs-x86_64-linux-gnu-x32-no-pie cleanup
PASS: glibcs-x86_64-linux-gnu-no-pie check
PASS: glibcs-x86_64-linux-gnu-no-pie save-logs
PASS: glibcs-x86_64-linux-gnu-isa-v3 check
PASS: glibcs-x86_64-linux-gnu-isa-v3 save-logs
PASS: glibcs-x86_64-linux-gnu-no-pie cleanup
PASS: glibcs-x86_64-linux-gnu-isa-v4 check
PASS: glibcs-x86_64-linux-gnu-isa-v4 save-logs
PASS: glibcs-x86_64-linux-gnu-isa-v3 cleanup
PASS: glibcs-x86_64-linux-gnu-isa-v4 cleanup


 scripts/build-many-glibcs.py | 17 ++++++++++++++++-
 1 file changed, 16 insertions(+), 1 deletion(-)

diff --git a/scripts/build-many-glibcs.py b/scripts/build-many-glibcs.py
index 35b82752fa..54f9b2318c 100755
--- a/scripts/build-many-glibcs.py
+++ b/scripts/build-many-glibcs.py
@@ -458,7 +458,22 @@ class Context(object):
                                       {'arch': 'i486',
                                        'ccopts': '-m32 -march=i486'},
                                       {'arch': 'i586',
-                                       'ccopts': '-m32 -march=i586'}])
+                                       'ccopts': '-m32 -march=i586'},
+                                      {'variant': 'isa-v2',
+                                       'ccopts': '-march=x86-64-v2'},
+                                      {'variant': 'isa-v2-disable-multi-arch',
+                                       'ccopts': '-march=x86-64-v2',
+                                       'cfg': ['--disable-multi-arch']},
+                                      {'variant': 'isa-v3',
+                                       'ccopts': '-march=x86-64-v3'},
+                                      {'variant': 'isa-v3-disable-multi-arch',
+                                       'ccopts': '-march=x86-64-v3',
+                                       'cfg': ['--disable-multi-arch']},
+                                      {'variant': 'isa-v4',
+                                       'ccopts': '-march=x86-64-v4'},
+                                      {'variant': 'isa-v4-disable-multi-arch',
+                                       'ccopts': '-march=x86-64-v4',
+                                       'cfg': ['--disable-multi-arch']}])
 
     def add_config(self, **args):
         """Add an individual build configuration."""
-- 
2.34.1


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

end of thread, other threads:[~2022-07-22 19:48 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-07-04  4:15 [PATCH v1] scripts: Add support for build x86-64 glibc with multiple ISA levels Noah Goldstein
2022-07-13  1:34 ` Noah Goldstein
2022-07-14 12:14 ` Adhemerval Zanella Netto
2022-07-14 14:56   ` Noah Goldstein
2022-07-22 19:48     ` Joseph Myers

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).