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

[Bug java/20654] New: exception.o is not included in libgcj.a due to case-insensitivity


binutils ar was recently changed to exclude path when comparing object 
filenames, to agree with POSIX.  This combines with Windows' case-insensitive 
filesystem to cause java/lang/Exception.o to replace exception.o in the 
following command while creating libgcj.a.

ar rc .libs/libgcj0_convenience.a prims.o jni.o exception.o ... 
java/lang/Exception.o ...

This causes bootstrap to fail when linking jv-convert.

make[4]: Entering directory `/aaronwl/cs/env/mingw-
head/20050325/build/gcc/i686-pc-mingw32/libjava'
/bin/sh ./libtool --tag=GCJ --mode=link /aaronwl/cs/env/mingw-
head/20050325/build/gcc/./gcc/gcj -B/aaronwl/cs/env/mingw-
head/20050325/build/gcc/./gcc/ -B/aaronwl/cs/env/mingw-head/20050325/i686-pc-
mingw32/bin/ -B/aaronwl/cs/env/mingw-head/20050325/i686-pc-mingw32/lib/ -
isystem /aaronwl/cs/env/mingw-head/20050325/i686-pc-mingw32/include -
isystem /aaronwl/cs/env/mingw-head/20050325/i686-pc-mingw32/sys-include -
L/aaronwl/cs/env/mingw-head/20050325/build/gcc/i686-pc-mingw32/libjava -ffloat-
store -fno-omit-frame-pointer -g -O2  -o jv-convert.exe --
main=gnu.gcj.convert.Convert -rpath /aaronwl/cs/env/mingw-head/20050325/lib -
shared-libgcc   -L/aaronwl/cs/env/mingw-head/20050325/build/gcc/i686-pc-
mingw32/libjava/.libs libgcj.la 
/aaronwl/cs/env/mingw-head/20050325/build/gcc/./gcc/gcj -
B/aaronwl/cs/env/mingw-head/20050325/build/gcc/./gcc/ -B/aaronwl/cs/env/mingw-
head/20050325/i686-pc-mingw32/bin/ -B/aaronwl/cs/env/mingw-head/20050325/i686-
pc-mingw32/lib/ -isystem /aaronwl/cs/env/mingw-head/20050325/i686-pc-
mingw32/include -isystem /aaronwl/cs/env/mingw-head/20050325/i686-pc-
mingw32/sys-include -ffloat-store -fno-omit-frame-pointer -g -O2 -o jv-
convert.exe --main=gnu.gcj.convert.Convert -shared-libgcc  -
L/aaronwl/cs/env/mingw-head/20050325/build/gcc/i686-pc-mingw32/libjava -
L/aaronwl/cs/env/mingw-head/20050325/build/gcc/i686-pc-
mingw32/libjava/.libs ./.libs/libgcj.a -L/aaronwl/cs/env/mingw-
head/20050325/build/gcc/i686-pc-mingw32/libstdc++-v3/src -
L/aaronwl/cs/env/mingw-head/20050325/build/gcc/i686-pc-mingw32/libstdc++-
v3/src/.libs -L/aaronwl/cs/env/mingw-head/20050325/build/gcc/./gcc -
L/aaronwl/cs/env/mingw-head/20050325/i686-pc-mingw32/bin -
L/aaronwl/cs/env/mingw-head/20050325/i686-pc-mingw32/lib -
L/aaronwl/cs/env/mingw-head/20050325/lib/../i686-pc-mingw32/lib -
L/aaronwl/cs/env/mingw-head/20050325/lib -L/mingw/lib -lmingw32 -lgcc -
lmoldname -lmingwex -lmsvcrt -luser32 -lkernel32 -ladvapi32 -lshell32 -
lmingw32 -lgcc -lmoldname -lmingwex -lmsvcrt -Wl,--rpath -
Wl,/aaronwl/cs/env/mingw-head/20050325/lib
./.libs/libgcj.a(prims.o): In function `Z17_Jv_ThrowNoMemoryv':
/aaronwl/cs/compilers/gcc/src/cvs/head/gcc/libjava/prims.cc:369: undefined 
reference to `_Jv_Throw'
./.libs/libgcj.a(prims.o): In function `Jv_Malloc':
/aaronwl/cs/compilers/gcc/src/cvs/head/gcc/libjava/prims.cc:1276: undefined 
reference to `_Jv_Throw'
...

Since, depending on how you look at it, 'ar' is doing the right thing, I think 
the easiest way to fix this to rename exception.cc to exceptions.cc.

-- 
           Summary: exception.o is not included in libgcj.a due to case-
                    insensitivity
           Product: gcc
           Version: 4.1.0
            Status: UNCONFIRMED
          Keywords: build
          Severity: normal
          Priority: P2
         Component: java
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: aaronavay62 at aaronwl dot com
                CC: gcc-bugs at gcc dot gnu dot org,java-prs at gcc dot gnu
                    dot org
GCC target triplet: i?86-pc-mingw32


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


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