[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [MiNT] -lgcc16 kludge



Alan Hourihane wrote:
I've done this but it'd be nice to be able to test (within the build)
that we are using the correct libgcc.a so that people don't end up
linking the wrong one.

Sure, you're right.

Is there a test that could be written and incorporated into the build to
catch this type of problem ?

Yes.

Here is the correct behaviour, from Cygwin:
$ m68k-atari-mint-gcc -m68020-60 -mshort --print-multi-dir
m68020-60/mshort
--> PASS

Unfortunately, you have built your Gentoo GCC with an older patch when I had removed the m68020-60/mshort multilib because I didn't know the consequences for FreeMiNT:
$ gcc -m68020-60 -mshort --print-multi-dir
.
--> FAIL

We can easily exploit the result of this command to check the compiler has support for the m68020-60/mshort multilib (or any required multilib, such as ColdFire).


A further check can be done on the path of libgcc.a itself using the --print-file-name option:

$ m68k-atari-mint-gcc -m68020-60 -mshort --print-file-name=libgcc.a
/opt/cross-mint/lib/gcc/m68k-atari-mint/4.4.3/m68020-60/mshort/libgcc.a
--> PASS

$ gcc -m68020-60 -mshort --print-file-name=libgcc.a
/d/usr/m68k-atari-mint/gcc-bin/4.4.2/../../../lib/gcc/m68k-atari-mint/4.4.2/libgcc.a
--> FAIL (should end with m68020-60/mshort/libgcc.a)

--
Vincent Rivière