libgcj/5789: boehm-gc won't build on irix - irix assembler chokes on #indent

Billinghurst, David (CRTS) David.Billinghurst@riotinto.com
Fri Mar 1 22:41:00 GMT 2002


Version:  3.1 and 3.2
System: mips-sgi-irix6.5

The problem

Error compiling boehm-gc/mips_sgi_mach_dep.S

as: Error: /usr/include/sys/regdef.h, line 17: Expected cpp-generated line number
as INTERNAL ERROR:  /usr/lib32/cmplrs/asm returned non-zero status 1


Cause

The Irix header files
  /usr/include/sys/regdef.h
  /usr/include/sgidefs.h
  /usr/include/sys/asm.h
contain #ident "$Revision: 3.52 $" lines.

The gcc cpp passess these through to the .s file, and the irix
assembler chokes on them.  If the lines are removed from the .s
file it can be assembled.

The irix cpp removes #ident lines.


Work around

Renaming the file to .s works in this case, as irix assembler 
runs the irix cpp on the file by default.  This was the case for 
gcc-3.0.


Proper fix

Don't know.  Perhaps:
  - get gcc cpp to remove #ident lines
  - fix headers



More information about the Java mailing list