This is the mail archive of the gcc-bugs@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]

[Bug target/57578] New: SPE detection broken on Linux (bits/predefs.h: No such file or directory)


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57578

            Bug ID: 57578
           Summary: SPE detection broken on Linux (bits/predefs.h: No such
                    file or directory)
           Product: gcc
           Version: 4.9.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: stigge at antcom dot de

SPE detection broken on Linux (bits/predefs.h: No such file or directory)

The build of powerpc spe on Linux aborts like this:

[...]
/ÃÂPKGBUILDDIRÃÂ/build/./gcc/xgcc -B/ÃÂPKGBUILDDIRÃÂ/build/./gcc/
-B/usr/lib/gcc-snapshot/powerpc-linux-gnuspe/bin/
-B/usr/lib/gcc-snapshot/powerpc-linux-gnuspe/lib/ -isystem
/usr/lib/gcc-snapshot/powerpc-linux-gnuspe/include -isystem
/usr/lib/gcc-snapshot/powerpc-linux-gnuspe/sys-include    -g -O2 -O2  -g -O2
-DIN_GCC   -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes
-Wmissing-prototypes -Wold-style-definition  -isystem ./include   -fPIC
-mlong-double-128 -mno-minimal-toc -g -DIN_LIBGCC2 -fbuilding-libgcc
-fno-stack-protector   -fPIC -mlong-double-128 -mno-minimal-toc -I. -I.
-I../.././gcc -I../../../src/libgcc -I../../../src/libgcc/.
-I../../../src/libgcc/../gcc -I../../../src/libgcc/../include
-I../../../src/libgcc/../libdecnumber/dpd -I../../../src/libgcc/../libdecnumber
-DHAVE_CC_TLS  -o _gcov_merge_single.o -MT _gcov_merge_single.o -MD -MP -MF
_gcov_merge_single.dep -DL_gcov_merge_single -c ../../../src/libgcc/libgcov.c
In file included from /usr/include/stdio.h:28:0,
                 from ../../../src/libgcc/../gcc/tsystem.h:87,
                 from ../../../src/libgcc/libgcov.c:27:
/usr/include/features.h:323:26: fatal error: bits/predefs.h: No such file or
directory
 #include <bits/predefs.h>
                          ^
compilation terminated.
[...]

Turns out that the detection of the SPE case is done via
rs6000/e500-double.h in $(tm_file_list), but e500-double.h was removed
recently, and hence not added anymore to $(tm_file_list). However, in
the SPE (i.e. e500v2) case, with_cpu is set exactly to 8548 in
config.gcc.

I solved this in gcc/config/rs6000/t-linux by replacing the line

MULTIARCH_DIRNAME = powerpc-linux-gnuspe$(if $(findstring rs6000/e500-double.h,
$(tm_file_list)),,v1)

with

MULTIARCH_DIRNAME = powerpc-linux-gnuspe$(if $(findstring
8548,$(with_cpu)),,v1)

Thanks!

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