This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Bootstrap difficulties on powerpc-apple-darwin6.8 (Mac OS X 10.2.8)
Tom Tromey wrote:
"Peter" == Peter O'Gorman <peter@pogma.com> writes:
Peter> The really annoying thing about this one is that it was fixed in 2001
Peter> but was unfixed again here:
Peter> Part of the diff is here:
Peter> [ ... ]
Could you try putting that code back and seeing if it helps?
If so I'll check it in.
Sorry that it took me so long to reply, I tried just adding this back and it
did not work, however the attached patch built perfectly fine (on my Mac OS
X 10.3 system which already worked anyway). I retested having edited the
generated libtool's idea of max_cmd_len to 16 Kb and removing my libgcj.la
files and it built using ld -r and ar cq with a couple of warnings:
using piecewise archive linking...
libtool: link: warning: object name conflicts; overriding AR_FLAGS to 'cq'
libtool: link: warning: to ensure that POSIX-compatible ar will work
and
ld: warning multiple definitions of symbol _sqrt
./.libs/libgcj.dylib(libgcj.la-6.o) definition of _sqrt
/usr/lib/libpthread.dylib(sqrt970.o) definition of _sqrt
(the _sqrt warnings were there before too).
Hope this helps someone somewhere :)
Peter
--
Peter O'Gorman - http://www.pogma.com
Index: Makefile.am
===================================================================
RCS file: /cvsroot/gcc/gcc/libjava/Makefile.am,v
retrieving revision 1.414
diff -u -3 -p -u -r1.414 Makefile.am
--- Makefile.am 24 Sep 2004 06:41:55 -0000 1.414
+++ Makefile.am 27 Sep 2004 13:05:06 -0000
@@ -211,6 +211,17 @@ libgcj_la_DEPENDENCIES = libgcj-@gcc_ver
java/lang/fdlibm.h java/lang/ieeefp.h java/lang/mprec.h \
$(LIBLTDL) $(LIBFFI) $(ZLIBS) $(GCLIBS) $(propertyo_files)
+
+## Pass the list of object files to libtool in a temporary file to
+## avoid tripping platform command line length limits.
+libgcj.la: $(libgcj_la_OBJECTS) $(libgcj_la_DEPENDENCIES)
+ @echo Creating list of files to link...
+ @: $(call write_entries_to_file,$(libgcj_la_OBJECTS),libgcj.objectlist)
+ $(libgcj_la_LINK) -objectlist libgcj.objectlist \
+ $(libgcj_la_LIBADD) \
+ -rpath $(toolexeclibdir) $(libgcj_la_LDFLAGS) $(LIBS)
+
+
# Include THREADLIBS here to ensure that the correct version of
# certain linuxthread functions get linked:
## The mysterious backslash in the grep pattern is consumed by make.