config/arch/powerpc-powerpc64.in-common
author Oron Peled <oron@actcom.co.il>
Mon Aug 03 00:49:25 2009 +0200 (2009-08-03)
changeset 1449 8ad2773e7ae3
permissions -rw-r--r--
[complib:mpfr] Fix building MPFR in some weird cases

The tmul test uses a compiled-in input file in $(srcdir).
The problem is that the Makefile passes it unquoted. The C code
tries to stringify it using clever macros, which may *usually* work.

In my case the source directory was named:
.../toolchain-powerpc-e500v2-linux-gnuspe-1.0-2.fc10/.../tests
And guess what? During testing I found out the program fails because
it tries to open:
.../toolchain-powerpc-e500v2-1-gnuspe-1.0-2.fc10/.../tests

Yes, CPP tokenized the macro before stringifying it and not surprisingly
the 'linux' part was converted to 1.
[on Fedora-10: cpp (GCC) 4.3.2 20081105 (Red Hat 4.3.2-7)]

So the attached patch simplify the macros and pass the path as string
from the Makefile.
     1 # powerpc and powerpc64 common options
     2 
     3 if ARCH_powerpc || ARCH_powerpc64
     4 
     5 config ARCH_POWERPC_SPE
     6     bool
     7     prompt "Enable SPE support"
     8     default n
     9     help
    10       Add support for the Signal Processing Engine.  This will set up
    11       the toolchain so that it supports the SPE ABI extensions. This
    12       mainly targets Freescale e500 processors.
    13 
    14       Setting this option will append "spe" to the end of your target
    15       tuple name (e.g., powerpc-e500v2-linux-gnuspe) so that the gcc
    16       configure/build system will know to include SPE ABI support.
    17       It will also automatically add "-mabi=spe -mspe" to your
    18       TARGET_CFLAGS, and "--enable-e500_double" to your CC_EXTRA_CONFIG,
    19       so you do not need to explicitly add them.
    20 
    21 endif # ARCH_powerpc || ARCH_powerpc64