[patch] remove libtool use from darwin

Eric Christopher echristo@apple.com
Wed Nov 29 23:40:00 GMT 2006


So, ld is quite capable of doing the work that /usr/bin/libtool was  
doing (not gnu libtool, yes, this is confusing), and all libtool was  
doing was translating or adding some options and adding a .o file to  
the link. Not real useful for the overhead :)

So, we use ld instead.

This could cause some projects which used either a) options to the  
linker that didn't exist relying on libtool to translate them, or b)  
used incorrectly options like -nostdlib. To help ameliorate problem a)  
I hacked cctools a bit, but that version isn't out yet. I still think  
the patch is legitimately a good idea because it will only break  
behavior that was bad in the first place. I've been told from some of  
the fink project people that they'd fixed some of the problems that  
was being shown by b) already.

Tested on x86_64-darwin, i386-darwin, and ppc-darwin on 10.4 and 10.5.

OK?

-eric

2006-11-29  Eric Christopher  <echristo@apple.com>

	* config/t-slibgcc-darwin: Pass -install_name.
	* config/darwin.h (LINK_COMMAND_SPEC): Remove use of
	libtool. Only pass through options that the linker recognizes.
	(LINK_SPEC): Update comment. Translate options.
	(STARTFILE_SPEC): Add dylib1.o for shared libraries.
	* config/darwin9.h (LINK_COMMAND_SPEC): Ditto above.


-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: no-libtool.diff.txt
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20061129/bdcb4b38/attachment.txt>


More information about the Gcc-patches mailing list