Hello,

This is a followup on Thomas' proposal at

  http://gcc.gnu.org/ml/gcc-patches/2013-05/msg01617.html

re the use of $target_alias vs $target derivatives in the GNAT Makefiles to
select target specific pairs for runtime and tools.

As part of this dicsussion, we:

- agreed that moving back to a scheme based on canonical
  $target parts was better than relying on $target_alias,

- mentioned that we had cases where we needed target_alias
  and that we were going to reconsider these,

- agreed that Thomas' suggestion was a real improvement, and indicated
  that we were willing to experiment in-house before committing.

Assuming we could indeed go back to a scheme where we rely essentially on
canonical $target based values, the suggestion was to use standard variables
computed by configure (target_cpu etc) instead of our ad-hoc computations
(arch, osys etc).

We experimented with this suggestion together with a change in the way we
handle vxworksmils internally, which was the main motivation for the use of
the non-canonical $target_alias in pair selections. It turned out that vxwmils
has enough specificities of its own to better be handled as a canonical os
name anyway.

We're very happy with the change so I'm about to commit it, after bootstrap
and regtest on x86_64-suse-linux, plus checks that the new version produces
the same pairs as the original code for a panel of targets.

Thanks a lot to Thomas and other participants for the input
on this topic.

With Kind Regards,

Olivier

2013-10-11  Thomas Schwinge  <tho...@codesourcery.com>
            Olivier Hainque  <hain...@adacore.com>

        * gcc-interface/Makefile.in: Import target_cpu, target_vendor,
        target_os and their host_ counterparts. Remove host_canonical and
        target_cpu_default, unused. Remove local ad-hoc computations of
        "host", "targ", "arch", "osys" and "manu". Replace uses of these by
        uses of the now imported family, hence back to filters against
        canonical values. Remove filters on e500 for target_cpu, expected to
        be canonicalized into powerpc. Invert the logic filtering on 64bit
        sparc for VxWorks. Simplify the filtering logic for bareboard tools
        target pairs, now using straight elf/eabi filters on the target_os
        part only.

Attachment: ada-target_alias.diff
Description: Binary data

Reply via email to