[build] Move MD_UNWIND_SUPPORT to toplevel libgcc
Thomas Schwinge
thomas@schwinge.name
Tue Jun 21 09:53:00 GMT 2011
Hallo!
(Sorry for being late with this -- I'm listed as a GNU/Hurd OS Port
Maintainer, but I have not been CCed in the original patch email, and I'm
only able to read gcc-patches/the Git log at irregular times.)
On Fri, 03 Jun 2011 16:35:21 +0200, Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> wrote:
> gcc:
> [...]
> * config/i386/linux.h (MD_UNWIND_SUPPORT): Remove.
> [...]
> * config/i386/linux-unwind.h: Move to ../libgcc/config/i386.
> [...]
>
> libgcc:
> [...]
> * config/i386/linux-unwind.h: Move from ../gcc/config/i386.
> [...]
> * config/no-unwind.h: New file.
> * config.host (md_unwind_header): Document.
> Define. [...]
> (i[34567]86-*-linux*): Handle i[34567]86-*-kopensolaris*-gnu.
> Set md_unwind_header.
> [...]
> diff --git a/libgcc/config.host b/libgcc/config.host
> --- a/libgcc/config.host
> +++ b/libgcc/config.host
> @@ -50,6 +50,8 @@
> # If either is set, EXTRA_PARTS and
> # EXTRA_MULTILIB_PARTS inherited from the GCC
> # subdirectory will be ignored.
> +# md_unwind_header The name of a header file defining
> +# MD_FALLBACK_FRAME_STATE_FOR.
> # tmake_file A list of machine-description-specific
> # makefile-fragments, if different from
> # "$cpu_type/t-$cpu_type".
> @@ -57,6 +59,7 @@
> asm_hidden_op=.hidden
> extra_parts=
> tmake_file=
> +md_unwind_header=no-unwind.h
> [...]
> -i[34567]86-*-linux* | i[34567]86-*-kfreebsd*-gnu | i[34567]86-*-knetbsd*-gnu | i[34567]86-*-gnu*)
> +i[34567]86-*-linux* | i[34567]86-*-kfreebsd*-gnu | i[34567]86-*-knetbsd*-gnu | i[34567]86-*-gnu* | i[34567]86-*-kopensolaris*-gnu)
> extra_parts="$extra_parts crtprec32.o crtprec64.o crtprec80.o crtfastmath.o"
> tmake_file="${tmake_file} i386/t-crtpc i386/t-crtfm"
> + md_unwind_header=i386/linux-unwind.h
> ;;
This is wrong for the non-Linux x86 configurations. (Previously
MD_UNWIND_SUPPORT explicitly has only been set in config/i386/linux.h,
which the non-Linux configurations don't use anymore, thanks to Joseph's
recent effort.)
> x86_64-*-linux* | x86_64-*-kfreebsd*-gnu | x86_64-*-knetbsd*-gnu)
> extra_parts="$extra_parts crtprec32.o crtprec64.o crtprec80.o crtfastmath.o"
> tmake_file="${tmake_file} i386/t-crtpc i386/t-crtfm"
> + md_unwind_header=i386/linux-unwind.h
This also looks wrong for the non-Linux x86_64 configurations.
(I didn't examine any further configurations.)
How should this be fixed? Probably my moving the md_unwind_header
definitions outside of...
case ${host} in
# Support site-specific machine types.
... (where they currently reside), and create a new ``case $host'' as
done just above for enable_execute_stack, for example?
Grüße,
Thomas
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 489 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20110621/45a6fdf8/attachment.sig>
More information about the Gcc-patches
mailing list