Building current mainline on Solaris 11/SPARC with GNU ld 2.19 and Sun as fails
when building libgomp:

libtool: compile:  /vol/gccsrc/obj/gcc-4.4.0-20081110/11-gcc-gld/./gcc/xgcc
-B/vol/gccsrc/obj/gcc-4.4.0-20081110/11-gcc-gld/./gcc/
-B/vol/gcc/sparc-sun-solaris2.11/bin/ -B/vol/gcc/sparc-sun-solaris2.11/lib/
-isystem /vol/gcc/sparc-sun-solaris2.11/include -isystem
/vol/gcc/sparc-sun-solaris2.11/sys-include -DHAVE_CONFIG_H -I.
-I/vol/gcc/src/gcc-dist/libgomp -I.
-I/vol/gcc/src/gcc-dist/libgomp/config/posix -I/vol/gcc/src/gcc-dist/libgomp
-Wall -pthread -Werror -g -O2 -MT lock.lo -MD -MP -MF .deps/lock.Tpo -c
/vol/gcc/src/gcc-dist/libgomp/config/posix/lock.c  -fPIC -DPIC -o .libs/lock.o
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 10: error: unknown opcode ".symver"
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 10: error: invalid character (0x40)
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 10: error: invalid character (0x40)
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 10: error: statement syntax
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 11: error: unknown opcode ".symver"
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 11: error: invalid character (0x40)
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 11: error: statement syntax
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 12: error: unknown opcode ".symver"
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 12: error: invalid character (0x40)
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 12: error: invalid character (0x40)
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 12: error: statement syntax
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 13: error: unknown opcode ".symver"
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 13: error: invalid character (0x40)
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 13: error: statement syntax
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 14: error: unknown opcode ".symver"
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 14: error: invalid character (0x40)
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 14: error: invalid character (0x40)
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 14: error: statement syntax
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 15: error: unknown opcode ".symver"
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 15: error: invalid character (0x40)
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 15: error: statement syntax
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 16: error: unknown opcode ".symver"
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 16: error: invalid character (0x40)
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 16: error: invalid character (0x40)
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 16: error: statement syntax
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 17: error: unknown opcode ".symver"
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 17: error: invalid character (0x40)
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 17: error: statement syntax
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 18: error: unknown opcode ".symver"
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 18: error: invalid character (0x40)
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 18: error: invalid character (0x40)
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 18: error: statement syntax
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 19: error: unknown opcode ".symver"
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 19: error: invalid character (0x40)
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 19: error: statement syntax
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 20: error: unknown opcode ".symver"
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 20: error: invalid character (0x40)
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 20: error: invalid character (0x40)
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 20: error: statement syntax
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 21: error: unknown opcode ".symver"
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 21: error: invalid character (0x40)
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 21: error: statement syntax
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 22: error: unknown opcode ".symver"
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 22: error: invalid character (0x40)
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 22: error: invalid character (0x40)
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 22: error: statement syntax
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 23: error: unknown opcode ".symver"
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 23: error: invalid character (0x40)
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 23: error: statement syntax
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 24: error: unknown opcode ".symver"
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 24: error: invalid character (0x40)
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 24: error: invalid character (0x40)
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 24: error: statement syntax
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 25: error: unknown opcode ".symver"
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 25: error: invalid character (0x40)
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 25: error: statement syntax
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 26: error: unknown opcode ".symver"
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 26: error: invalid character (0x40)
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 26: error: invalid character (0x40)
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 26: error: statement syntax
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 27: error: unknown opcode ".symver"
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 27: error: invalid character (0x40)
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 27: error: statement syntax
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 28: error: unknown opcode ".symver"
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 28: error: invalid character (0x40)
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 28: error: invalid character (0x40)
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 28: error: statement syntax
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 29: error: unknown opcode ".symver"
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 29: error: invalid character (0x40)
/usr/bin/as: "/var/tmp//ccPRa4Qu.s", line 29: error: statement syntax
make[4]: *** [lock.lo] Error 1

Obviously, the system assembler doesn't support .symver, thus
config/posix/lock.c (at least) must not use omp_lock_symver.

I'm unsure how best to fix this: one could either augment
LIBGOMP_ENABLE_SYMVERS
to check for assembler support (which may be too much) or introduce an
additional conditional for the use of .symver.


-- 
           Summary: libgomp fails to build if assembler doesn't support
                    .symver
           Product: gcc
           Version: 4.4.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: libgomp
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: ro at gcc dot gnu dot org
 GCC build triplet: sparc-sun-solaris2.11
  GCC host triplet: sparc-sun-solaris2.11
GCC target triplet: sparc-sun-solaris2.11


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

Reply via email to