[PATCH] Fix multilib libgloss selection.
Corinna Vinschen
vinschen@redhat.com
Thu Nov 12 12:57:00 GMT 2015
On Nov 6 14:41, Marcus Shawcroft wrote:
> Hi,
>
> Regression testing newlib in conjunction with libgloss and
> --enable-multilib can result in incompatible multilib versions of
> newlib and libgloss being used during link.
>
> This manifests on ARM target when newlib regression is run using a
> GCC configured using --with-multilib-list=aprofile
>
> With this configuration many of the multilib variants built are
> mutually incompatible.
>
> The issue is that the newlib dejagnu foo iterates each multilib
> variant and correctly chooses the appropriate newlib variant but
> always chooses the root/base libgloss variant.
>
> The implementation of newlib/testsuite/lib/flags.exp contains the
> following fragment:
>
> set target_build_path "$objdir/$multibuildtop.."
>
> The effect of this fragment is to explicitly select the root version
> of libgloss, irrespective of the current multilib.
>
> Digging around in VC it appears that the original implementation of
> multlib magic came into the tree back in 2002 with:
>
> 6e9d950a (Thomas Fitzsimmons 2002-05-01 17:06:25 +0000 39)
>
> In this initial version of multilib support, newlib was multilib
> capable, but libgloss was not multilib capable, hence the necessity to
> explicitly select the root libgloss version.
>
> Subsequently flags.exp was modified to support out of tree testing:
>
> cec1d3b4 (Jeff Johnston 2005-07-05 00:11:50 +0000 25)
>
> This change is orthogonal to this issue, its effect is to exit early
> in none multilib configurations.
>
> Subsequently libgloss gained --enable-multilib support, the relevant change
> is:
>
> https://sourceware.org/ml/newlib/2006/msg00440.html
> commit 00a4b31ad08aef361c5d74125ece410b4c285975
> Author: Jeff Johnston <jjohnstn@redhat.com>
> Date: Wed May 10 20:51:41 2006 +0000
>
> This change enabled multilib support throughout libgloss, but ommitted
> to adjust the flag.exp behaviour which anchors the libgloss multilib
> selection to the base version.
>
> The attached patch adjusts flags.exp to select the current multilib
> variant of libgloss.
>
> OK ?
>
>
> 2015-11-06 Marcus Shawcroft <marcus.shawcroft@arm.com>
>
> * testsuite/lib/flags.exp (libgloss_link_flags): Drop multilibtop
> from target_build_path.
Applied.
Thanks,
Corinna
--
Corinna Vinschen
Cygwin Maintainer
Red Hat
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 819 bytes
Desc: not available
URL: <http://sourceware.org/pipermail/newlib/attachments/20151112/fd5714ee/attachment.sig>
More information about the Newlib
mailing list