This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Testing m68k changes on AmigaOS and Linux/m68k


Gunther Nikl wrote:

On Tue, Oct 14, 2003 at 10:07:44AM +0200, Bernardo Innocenti wrote:

You're probably one of the few people who exercise canadian cross
builds :-)

Quite possible. I started doing such builds this year when I discovered how to do that and was surprised to see how "easy" it is :-)

I've played with the "combined tree" build instead. It's also much easier than it may seem from the instructions.

Basically, I've checked out both the gcc and src repositories and
combine them with a simple script:

VERS=HEAD
DIR=combined-$VERS
rm -rf $DIR
mkdir $DIR
cd src-$VERS && find . -print | cpio -pdlm ../$DIR && cd ..
cd gcc-$VERS && find . -print | cpio -pdlmu ../$DIR && cd ..


Then I can build cross-compilers for several architectures with scripts like this:

ROOTDIR=`pwd`
ARCH=arm-elf
VERS=HEAD
BUILDDIR=${ARCH}-${VERS}-build
INSTALLDIR=${ARCH}-${VERS}-install

export CFLAGS=
export CXXFLAGS=

rm -rf $BUILDDIR $INSTALLDIR
mkdir -p $BUILDDIR $INSTALLDIR
cd $BUILDDIR

../combined-${VERS}/configure
    --target=$ARCH
    --prefix=${ROOTDIR}/${INSTALLDIR}
    --with-newlib
    --disable-gdbtk
    --enable-languages='c,c++'

make



I see you're using the MIT syntax on the Amiga. Some guy told me the
GeekGadgets port of GCC used it.

You have a really bad memory ;-) I told you that.

Yes I do... Argh :-)



Have you ever tried defining MOTOROLA? If you're luckly, it should work
out of the box.

I never tried and I won't try it because the assembler I am using doesn't support it.

I seem to recall you told me that too, but I can't remember why. Can't you use gas?


I'm asking because I still have a (not so hidden) agenda for obsoleting
the MIT syntax some day...

I know and I am still against it. Such bugs could be caught easily by converting from #if[n]def MOTOROLA to if (MOTOROLA) with MOTOROLA defined to 0 or 1. Then the compiler would eliminate the dead code.

It's not just a testing issue. Keeping both paths in sync is tedious work and makes reading the code much harder.

Anyway, since the MIT syntax is going to stay in 3.4 and probably
even in 3.5, I favour your proposal.

We could get rid of several lines of code, those that confuse patch
and my eye the most :-)

Richard, would you approve such a patch at this time? I'll try
to submit it by tomorrow if you like it...


I going to test the coss-built native compiler tonight.

Unfortunately the cross-built compiler doesn't work :-( It seems to be miscompiled since I get this error message:

./cc1 -E foo.c <internal>:0: internal compiler error: tree check: expected class 'd',
have 'd' (function_decl) in make_decl_rtl, at varasm.c:882


  The compiler was built by a cross-compiler built from the same source as
  this one. A native 3.4 built at the beginning of September 2003 works. I
  am going to test whether 3.3 and an older 3.4 as build compiler will do
  better. Currently I don't know when it broke :-/

The compiler used to work fine with m68k-elf and m68k-uclinux last week (last tested from CVS sources on 20031011).

--
 // Bernardo Innocenti - Develer S.r.l., R&D dept.
\X/  http://www.develer.com/

Please don't send Word attachments - http://www.gnu.org/philosophy/no-word-attachments.html




Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]