Subject: Re: Libtool --preserve-dup-deps
To: Martin J. Laubach <mjl+usenet-2003-05@emsi.priv.at>
From: Ron Roskens <roskens@elfin.net>
List: tech-pkg
Date: 07/13/2003 13:50:23
From libtool-1.5:

`--preserve-dup-deps'
     Do not remove duplicate dependencies in libraries.  When building
     packages with static libraries, the libraries may depend
     circularly on each other (shared libs can too, but for those it
     doesn't matter), so there are situations, where -la -lb -la is
     required, and the second -la may not be stripped or the link will
     fail.  In cases where these duplications are required, this option
     will preserve them, only stripping the libraries that libtool
     knows it can safely.

For an update of devel/libtool to 1.5:

	http://www.elfin.net/netbsd/libtool.tar.gz

When I compile gnucash, I've been removing "--preserve-dup-deps" from the
Makefile.

On Sun, 13 Jul 2003, Martin J. Laubach wrote:

>   I'm wondering what the --preserve-dup-deps switch that we
> explicitely patch into libtool is for.
>
>   While compiling gnucash, this has produced a command line that
> was literally several screen pages, full of "-lm -lm -lm -lm -lm
> -lintl -lm -lm -lm -lm -lintl -lm -lm -lm -lm -lm -lm -lm...",
> which even fails to link, probably because of the length of the
> command line.
>
>   Removing the "--preserve-dup-deps" from libtool makes gnucash
> compile and even run correctly.
>
>   What does this switch accomplish then, for what packages is
> it really necessary, and wouldn't the world be a better place
> if it were turned on for those packages instead of wholesale?
>
> 	mjl
>