Hi!

On Wed, 09 May 2012 02:38:11 +0200, Matthias Klose <d...@ubuntu.com> wrote:
> ok, the attached patch includes just the support for the x86 targets, 
> including
> the kfreebsd and the hurd systems. The x32 multiarch tuple isn't yet defined, 
> so
> I'd like to keep it out of the first version.

I will test this on/for GNU/Hurd next week (hopefully), but here are
already two comments.

> Index: gcc/Makefile.in
> ===================================================================
> --- gcc/Makefile.in   (revision 187271)
> +++ gcc/Makefile.in   (working copy)
> @@ -350,6 +350,17 @@
>  
>  enable_plugin = @enable_plugin@
>  
> +# Multiarch support
> +enable_multiarch = @enable_multiarch@
> +with_float = @with_float@
> +ifeq ($(enable_multiarch),yes)
> +  if_multiarch = $(1)
> +else ifeq ($(enable_multiarch),auto-detect)
> +  if_multiarch = $(if $(wildcard $(shell echo 
> $(SYSTEM_HEADER_DIR))/../../usr/lib/*/crti.o),$(1))
> +else
> +  if_multiarch =
> +endif

The auto-detection won't work for cases where native_system_header_dir
(as per config.gcc; or command-line argument) is not /usr/include.

> Index: gcc/config.gcc
> ===================================================================
> --- gcc/config.gcc    (revision 187271)
> +++ gcc/config.gcc    (working copy)
> @@ -3472,10 +3476,14 @@
>  
>       i[34567]86-*-darwin* | x86_64-*-darwin*)
>               ;;
> -     i[34567]86-*-linux* | x86_64-*-linux* | \
> -       i[34567]86-*-kfreebsd*-gnu | x86_64-*-kfreebsd*-gnu | \
> -       i[34567]86-*-gnu*)
> +     i[34567]86-*-linux* | x86_64-*-linux*)
>               ;;
> +     i[34567]86-*-kfreebsd*-gnu | x86_64-*-kfreebsd*-gnu)
> +             tmake_file="${tmake_file} i386/t-linux i386/t-kfreebsd"
> +             ;;
> +     i[34567]86-*-gnu*)
> +             tmake_file="${tmake_file} i386/t-linux i386/t-gnu"
> +             ;;

> Index: gcc/config/i386/t-linux
> ===================================================================
> --- gcc/config/i386/t-linux   (revision 0)
> +++ gcc/config/i386/t-linux   (revision 0)
> @@ -0,0 +1 @@
> +MULTIARCH_DIRNAME = $(call if_multiarch,i386-linux-gnu)
> Index: gcc/config/i386/t-gnu
> ===================================================================
> --- gcc/config/i386/t-gnu     (revision 0)
> +++ gcc/config/i386/t-gnu     (revision 0)
> @@ -0,0 +1 @@
> +MULTIARCH_DIRNAME = $(call if_multiarch,i386-gnu)

> Index: gcc/config/i386/t-kfreebsd
> ===================================================================
> --- gcc/config/i386/t-kfreebsd        (revision 0)
> +++ gcc/config/i386/t-kfreebsd        (revision 0)
> @@ -0,0 +1,5 @@
> +MULTIARCH_DIRNAME = $(call if_multiarch,i386-kfreebsd-gnu)
> +
> +# MULTILIB_OSDIRNAMES are set in t-linux64.
> +KFREEBSD_OS = $(filter kfreebsd%, $(word 3, $(subst -, ,$(target))))
> +MULTILIB_OSDIRNAMES := $(subst linux,$(KFREEBSD_OS),$(MULTILIB_OSDIRNAMES))

As of 2011-11-02 (a997b0d8a7b720578f40c0f9f7767bac02022e0b, r180767)
there was no i386/t-linux anymore, and you're now re-introducing it, so
you'll need to re-add it for the *-linux* cases cited above, but also
remove it from the other *-gnu* cases.


Grüße,
 Thomas

Attachment: pgpvaJUXakrU4.pgp
Description: PGP signature

Reply via email to