This is the mail archive of the java@gcc.gnu.org mailing list for the Java 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]

Re: GCJ problem on RS/6000


	For AIX, the top-level configure.in defines:

noconfigdirs="... ${libgcj}"

# libgcj represents the runtime libraries only used by gcj.
libgcj="target-libffi \
        target-boehm-gc \
        target-zlib \
        target-qthreads \
        target-libjava"

Therefore, libgcj is not built by default when GCC is configured for AIX.
Configuring and building things manually, everything works except libjava.
libjava is able to build the class files and libgcj.jar on AIX.  libjava
fails to build some of the C++ files because of -fdollars-in-identifiers:

AM_CXXFLAGS = -fno-rtti -fnon-call-exceptions \
        -fdollars-in-identifiers \
           $(WARNINGS) -D_GNU_SOURCE \
        -DPREFIX="\"$(prefix)\""

This creates names like _ZN4java4lang9Throwable6class$E which cause
assembler errors because that symbol contains an illegal character on
AIX. 

	I do not know where this translation / mangling should occur.  Is
the use of "$" required by the Java specification?

	Other than the issue with dollar-signs, I do not know of any
fundamental issue remaining, but I do not know that everything will "just
work" if that is worked-around.

David


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