config-list.mk Darwin: Use --with-gnu-as

Message ID 20230815193635.6lk7kqqjzkbfh22w@lug-owl.de
State Accepted
Headers
Series config-list.mk Darwin: Use --with-gnu-as |

Checks

Context Check Description
snail/gcc-patch-check success Github commit url

Commit Message

Jan-Benedict Glaw Aug. 15, 2023, 7:36 p.m. UTC
  Hi!

config-list.mk Darwin: Use --with-gnu-as for mass-building tests

As `config-list.mk` is probably mostly used on Linux system, where
Apple's tools aren't around. Let's use --with-gnu-as instead to have
an useable assembler.

contrib/ChangeLog:

	* config-list.mk (i686-apple-darwin): Use --with-gnu-as.
	(i686-apple-darwin9): Ditto.
	(i686-apple-darwin10): Ditto.
	(powerpc-darwin8): Ditto.
	(powerpc-darwin7): Ditto.
	(powerpc64-darwin): Ditto.
	(x86_64-apple-darwin): Ditto.



Okay for trunk?

Thanks,
  Jan-Benedict


--
  

Comments

Rainer Orth Aug. 15, 2023, 7:49 p.m. UTC | #1
Hi Jan-Benedict,

> config-list.mk Darwin: Use --with-gnu-as for mass-building tests
>
> As `config-list.mk` is probably mostly used on Linux system, where
> Apple's tools aren't around. Let's use --with-gnu-as instead to have
> an useable assembler.
>
> contrib/ChangeLog:
>
> 	* config-list.mk (i686-apple-darwin): Use --with-gnu-as.
> 	(i686-apple-darwin9): Ditto.
> 	(i686-apple-darwin10): Ditto.
> 	(powerpc-darwin8): Ditto.
> 	(powerpc-darwin7): Ditto.
> 	(powerpc64-darwin): Ditto.
> 	(x86_64-apple-darwin): Ditto.

this doesn't seem right: binutils toplevel configure.ac has gas in
noconfigdirs for all but i?86-*-darwin*.

	Rainer
  
Iain Sandoe Aug. 15, 2023, 7:51 p.m. UTC | #2
Hi  Jan-Benedict,

> On 15 Aug 2023, at 20:36, Jan-Benedict Glaw <jbglaw@lug-owl.de> wrote:

> config-list.mk Darwin: Use --with-gnu-as for mass-building tests
> 
> As `config-list.mk` is probably mostly used on Linux system, where
> Apple's tools aren't around. Let's use --with-gnu-as instead to have
> an useable assembler.

* Actually I’m somewhat surprised that an “out of the tin” binutils assembler
would work for any arch other than probably x86_64 (which is what Adacore
folks supported for a while).  Otherwise, I’d kind of expect that the mach-o-specific
asm directives would trip things up quite quickly.  GAS is not going to produce
any sensible relocations for powerpc (I have a BFD patch, but it needs some
polish)

* Does this prevent it working properly, in the event that a Linux user has
 an installation of mach-o tools (e.g. cctools or llvm)?
 (there are several Linux-buildable branches floating around - and I am
  working on making something more ‘official’)

* Other than those questions, no objection from me (i.e. OK for trunk).

Iain




> 
> contrib/ChangeLog:
> 
> 	* config-list.mk (i686-apple-darwin): Use --with-gnu-as.
> 	(i686-apple-darwin9): Ditto.
> 	(i686-apple-darwin10): Ditto.
> 	(powerpc-darwin8): Ditto.
> 	(powerpc-darwin7): Ditto.
> 	(powerpc64-darwin): Ditto.
> 	(x86_64-apple-darwin): Ditto.
> 
> diff --git a/contrib/config-list.mk b/contrib/config-list.mk
> index e570b13c71b..02d1a4fe6d2 100644
> --- a/contrib/config-list.mk
> +++ b/contrib/config-list.mk
> @@ -47,7 +47,9 @@ LIST = aarch64-elf aarch64-freebsd13 aarch64-linux-gnu aarch64-rtems \
>   hppa-linux-gnuOPT-enable-sjlj-exceptions=yes hppa64-linux-gnu \
>   hppa64-hpux11.3 \
>   hppa64-hpux11.0OPT-enable-sjlj-exceptions=yes \
> -  i686-pc-linux-gnu i686-apple-darwin i686-apple-darwin9 i686-apple-darwin10 \
> +  i686-pc-linux-gnu \
> +  i686-apple-darwinOPT-with-gnu-as i686-apple-darwin9OPT-with-gnu-as \
> +  i686-apple-darwin10OPT-with-gnu-as \
>   i686-freebsd13 i686-kfreebsd-gnu \
>   i686-netbsdelf9 \
>   i686-openbsd i686-elf i686-kopensolaris-gnu i686-gnu \
> @@ -75,8 +77,8 @@ LIST = aarch64-elf aarch64-freebsd13 aarch64-linux-gnu aarch64-rtems \
>   nvptx-none \
>   or1k-elf or1k-linux-uclibc or1k-linux-musl or1k-rtems \
>   pdp11-aout \
> -  powerpc-darwin8 \
> -  powerpc-darwin7 powerpc64-darwin powerpc-freebsd13 powerpc-netbsd \
> +  powerpc-darwin8OPT-with-gnu-as \
> +  powerpc-darwin7OPT-with-gnu-as powerpc64-darwinOPT-with-gnu-as powerpc-freebsd13 powerpc-netbsd \
>   powerpc-eabisimaltivec powerpc-eabisim ppc-elf \
>   powerpc-eabialtivec powerpc-xilinx-eabi powerpc-eabi \
>   powerpc-rtems \
> @@ -96,7 +98,7 @@ LIST = aarch64-elf aarch64-freebsd13 aarch64-linux-gnu aarch64-rtems \
>   sparc-wrs-vxworks sparc64-elf sparc64-rtems sparc64-linux \
>   sparc64-netbsd sparc64-openbsd \
>   v850e1-elf v850e-elf v850-elf v850-rtems vax-linux-gnu \
> -  vax-netbsdelf visium-elf x86_64-apple-darwin x86_64-gnu \
> +  vax-netbsdelf visium-elf x86_64-apple-darwinOPT-with-gnu-as x86_64-gnu \
>   x86_64-pc-linux-gnuOPT-with-fpmath=avx \
>   x86_64-elfOPT-with-fpmath=sse x86_64-freebsd13 x86_64-netbsd \
>   x86_64-w64-mingw32 \
> 
> 
> Okay for trunk?
> 
> Thanks,
>  Jan-Benedict
> 
> 
> --
  
Jan-Benedict Glaw Aug. 16, 2023, 6:52 p.m. UTC | #3
Hi Rainer!

On Tue, 2023-08-15 21:49:37 +0200, Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> wrote:
> > config-list.mk Darwin: Use --with-gnu-as for mass-building tests
> >
> > As `config-list.mk` is probably mostly used on Linux system, where
> > Apple's tools aren't around. Let's use --with-gnu-as instead to have
> > an useable assembler.
> >
> > contrib/ChangeLog:
> >
> > 	* config-list.mk (i686-apple-darwin): Use --with-gnu-as.
> > 	(i686-apple-darwin9): Ditto.
> > 	(i686-apple-darwin10): Ditto.
> > 	(powerpc-darwin8): Ditto.
> > 	(powerpc-darwin7): Ditto.
> > 	(powerpc64-darwin): Ditto.
> > 	(x86_64-apple-darwin): Ditto.
> 
> this doesn't seem right: binutils toplevel configure.ac has gas in
> noconfigdirs for all but i?86-*-darwin*.

You are right, I have to retract this patch. I had a similar patch
running for some Solaris variant and initially built this one
accordingly. However, in the end it didn't work (as you expected from
configure.ac), but I didn't drop it from my patch directory.

Sorry for the noise,
  Jan-Benedict

--
  

Patch

diff --git a/contrib/config-list.mk b/contrib/config-list.mk
index e570b13c71b..02d1a4fe6d2 100644
--- a/contrib/config-list.mk
+++ b/contrib/config-list.mk
@@ -47,7 +47,9 @@  LIST = aarch64-elf aarch64-freebsd13 aarch64-linux-gnu aarch64-rtems \
   hppa-linux-gnuOPT-enable-sjlj-exceptions=yes hppa64-linux-gnu \
   hppa64-hpux11.3 \
   hppa64-hpux11.0OPT-enable-sjlj-exceptions=yes \
-  i686-pc-linux-gnu i686-apple-darwin i686-apple-darwin9 i686-apple-darwin10 \
+  i686-pc-linux-gnu \
+  i686-apple-darwinOPT-with-gnu-as i686-apple-darwin9OPT-with-gnu-as \
+  i686-apple-darwin10OPT-with-gnu-as \
   i686-freebsd13 i686-kfreebsd-gnu \
   i686-netbsdelf9 \
   i686-openbsd i686-elf i686-kopensolaris-gnu i686-gnu \
@@ -75,8 +77,8 @@  LIST = aarch64-elf aarch64-freebsd13 aarch64-linux-gnu aarch64-rtems \
   nvptx-none \
   or1k-elf or1k-linux-uclibc or1k-linux-musl or1k-rtems \
   pdp11-aout \
-  powerpc-darwin8 \
-  powerpc-darwin7 powerpc64-darwin powerpc-freebsd13 powerpc-netbsd \
+  powerpc-darwin8OPT-with-gnu-as \
+  powerpc-darwin7OPT-with-gnu-as powerpc64-darwinOPT-with-gnu-as powerpc-freebsd13 powerpc-netbsd \
   powerpc-eabisimaltivec powerpc-eabisim ppc-elf \
   powerpc-eabialtivec powerpc-xilinx-eabi powerpc-eabi \
   powerpc-rtems \
@@ -96,7 +98,7 @@  LIST = aarch64-elf aarch64-freebsd13 aarch64-linux-gnu aarch64-rtems \
   sparc-wrs-vxworks sparc64-elf sparc64-rtems sparc64-linux \
   sparc64-netbsd sparc64-openbsd \
   v850e1-elf v850e-elf v850-elf v850-rtems vax-linux-gnu \
-  vax-netbsdelf visium-elf x86_64-apple-darwin x86_64-gnu \
+  vax-netbsdelf visium-elf x86_64-apple-darwinOPT-with-gnu-as x86_64-gnu \
   x86_64-pc-linux-gnuOPT-with-fpmath=avx \
   x86_64-elfOPT-with-fpmath=sse x86_64-freebsd13 x86_64-netbsd \
   x86_64-w64-mingw32 \