Subject: Re: Alternative PLIST expansion of libtool archives
To: Johnny C. Lam <jlam@NetBSD.org>
From: Julio M. Merino Vidal <jmmv@menta.net>
List: tech-pkg
Date: 09/09/2004 00:43:01
Excellent!  I'll try it tomorrow.

Without having looked at your patch yet, I had a problem with Todd's
implementation.  For example, I tried to convert pango to the new framework,
which installs loadable modules.  These have duplicate names in
library_names, so the PLIST ended up with multiple entries for the same file,
which caused problems.  Does your patch handle this?

Thanks.



On Wed, 8 Sep 2004 22:26:58 +0000
"Johnny C. Lam" <jlam@NetBSD.org> wrote:

> I've attached a patch that contains an alternative implementation of
> the highly excellent idea that Todd Vierling put forth about having
> bsd.pkg.mk automatically expand libtool archive entries in PLIST into
> the shared and static libraries that they represent.  The differences
> between this implementation and the one that was committed are:
> 
>    (1) It uses the existing _PLIST_AWK_SCRIPT framework.
> 
> This is either good or bad depending on how one feels about the
> _PLIST_AWK_SCRIPT framework :)
> 
>    (2) It's not required that the libtool archives be explicitly
>        listed in LIBTOOL_LA_FILES in the package Makefiles.
> 
> The awk script fragment looks for files that end in ".la" and checks
> that they're libtool archives before trying to extract the library
> names from inside them.  I think that not needing to list files in
> LIBTOOL_LA_FILES is a very good thing since we would only need to
> record the files in the usual place (in the PLIST) instead of duplicating
> the information in two separate places.
> 
> The patch adds a toggle, LIBTOOLIZE_PLIST, that defaults to "no".
> After the 2004Q3 branch, we can fix up all the PLISTs and default
> LIBTOOLIZE_PLIST to "yes" in a single commit.
> 
> Please review and comment.
> 
> 	Thanks!
> 
> 	-- Johnny Lam <jlam@NetBSD.org>
> 


-- 
Julio M. Merino Vidal <jmmv@menta.net>
http://www.livejournal.com/users/jmmv/
The NetBSD Project - http://www.NetBSD.org/