[PATCH 21/25] GCN Back-end (part 2/2).

Joseph Myers joseph@codesourcery.com
Wed Sep 5 14:44:00 GMT 2018


On Wed, 5 Sep 2018, Andrew Stubbs wrote:

> I suppose someone might choose to compile things on an alternative system for
> running on a compatible system, in which case we'd want to simply skip this
> binary.
> 
> How does one normally do this?

I'd expect a configure test plus makefile conditionals in the makefile 
fragment.

> > A new port should add an appropriate entry to contrib/config-list.mk.
> > You should also verify that the port does build using that
> > contrib/config-list.mk entry, with the same version of GCC, built
> > natively, in the PATH, or equivalently that the port builds with the same
> > version of GCC, built natively, in the PATH, when you configure with
> > --enable-werror-always and the other options config-list.mk uses - this is
> > the cross-compiler equivalent of the native use of -Werror in the later
> > stages of bootstrap.  (Preferably verify this building for both 32-bit and
> > 64-bit hosts, since it's easy to have warnings that only show up for one
> > but not the other.)
> 
> I didn't know about that one.

See sourcebuild.texi, "Back End", for lists of places to update for a new 
port, which includes config-list.mk in the list of places to update for a 
port being contributed upstream.

> I see it uses "--enable-languages=all", but GCN is known to fail to build
> libstdc++ (exceptions and static constructors are not implemented), so I
> wouldn't expect the build to succeed.

It also uses "make all-gcc", so only the host-side tools need to build 
(without warnings when building with the same version of GCC, except for 
the files that specifically use -Wno-<something>), not any libraries.

-- 
Joseph S. Myers
joseph@codesourcery.com



More information about the Gcc-patches mailing list