This is the mail archive of the binutils@sourceware.cygnus.com mailing list for the binutils project.


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

Re: [PATCH]: A new one for ld/Makefile.am


On Thu, Mar 09, 2000 at 09:57:28PM -0800, Ian Lance Taylor wrote:
> 
> If we decide that for some odd reason we can't live without a hack, we
> should put the hack in the place where we need it: when doing a
> one-tree build with both ld and gcc, ideally only when using
> --enable-shared.  Note that your patch would appear to cause libtool
> to relink the binary twice: once in the build directory and then again
> when installing; this is not desirable in the normal case of building
> and installing binutils.
> 
> That is, if you are using a Cygnus style top level Makefile, add a
> rule like this to all-gcc:

I like the idea. How about this? I know it is more appropriate for the
gcc mailing list. But given what happened to all my gcc patches, I
am not so sure it is a good idea. Any objections?

Thanks.

H.J.
----
2000-03-10  H.J. Lu  <hjl@gnu.org>

	* Makefile.in (all-gcc): Run ld/ld-new if necessary.

--- Makefile.in.orig	Wed Mar  8 16:18:17 2000
+++ Makefile.in	Fri Mar 10 08:56:04 2000
@@ -1457,6 +1457,15 @@ $(INSTALL_X11_MODULES): installdirs
 # gcc is the only module which uses GCC_FLAGS_TO_PASS.
 .PHONY: all-gcc
 all-gcc:
+	# When configured with --enable-shared, libtool 1.3.4 creates
+	# a script in the build directory which automatically relinks
+	# the program to search for shared libraries in the build
+	# directory.  Something about this process, as yet undetermined,
+	# causes an argument size overflow in some versions of GNU/Linux.
+	# This can be avoided by running the script, so we do that here.
+	# FIXME: This should be fixed in libtool.
+	-if test -f ld/ld-new -a -f ld/.libs/ld-new; then \
+	  ld/ld-new -v >/dev/null 2>&1; fi
 	@if [ -f ./gcc/Makefile ] ; then \
 	  r=`pwd`; export r; \
 	  s=`cd $(srcdir); pwd`; export s; \

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