This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: i370 port - constructing compile script
- From: "Ulrich Weigand" <uweigand at de dot ibm dot com>
- To: mutazilah at gmail dot com (Paul Edwards)
- Cc: gcc at gcc dot gnu dot org
- Date: Tue, 20 Oct 2009 15:55:22 +0200 (CEST)
- Subject: Re: i370 port - constructing compile script
Paul Edwards wrote:
> > Maybe a more generic way to work around the missing assembler and linker
> > would be to provide dummy scripts i370-mvspdp-as
>
> I created one of them, but as far as I can tell it didn't pick it up.
Ah, you'll probably have to re-run configure and rebuild the cross compiler.
The configure/build process checks for the presence of the cross-assembler
and decides which one to use.
> > The compiler error output found in the config.log file should hopefully
> > point to the problem ...
>
> Well, below are some of the changes I made today to get it to go
> past the various errors. Probably the most interesting was this
> one:
>
> ! #define BIG_ENDIAN 1
> ! #define LITTLE_ENDIAN 2
> ! #define BYTE_ORDER 1
>
> I don't have a sys/param.h and so I just stuck those in somewhere
> that it seemed to be looking for, so that it didn't come up and say
> that it couldn't determine the endian order.
Hmm, it seems configure does use a couple of fallbacks to determine
byte order if sys/param.h doesn't exist, but those require a working
cross-assembler ...
> It seemed to try very hard to stick in sys/types.h and sys/time.h
> and I'm not sure how well I got around that.
Generally speaking, the configure process should work on non-POSIX
systems that don't provide those headers. But it may well be that
something is broken in this case; this will be rarely tested ...
> It also seemed to execute /bin/as at one point instead of my
> dummy cross-assembler. I'll try to figure out what the logic
> is tomorrow.
See above; you should try to rebuild the cross-compiler first.
> Index: configure
> ===================================================================
> RCS file: /cvsroot/gccnew/gcc/configure,v
For now, just patching configure to see how far you get is of course fine.
Longer term, however, note that configure is a generated file. You'd have
to make those changes either in configure.ac or possible within the
autoconf machinery that generates the file.
Bye,
Ulrich
--
Dr. Ulrich Weigand
GNU Toolchain for Linux on System z and Cell BE
Ulrich.Weigand@de.ibm.com