Subject: Re: emacs22
To: Dieter Baron <dillo@danbala.tuwien.ac.at>
From: Julio M. Merino Vidal <jmerino@ac.upc.edu>
List: tech-pkg
Date: 06/08/2007 13:17:40
On 08/06/2007, at 12:45, Dieter Baron wrote:
>
>> What I'm wondering about also, and related to this, is if we could
>> build different binary packages for subsets of built files. This
>> could simplify, e.g., the gstreamer packages (and many other packages
>> that are currently split), as the package could build *everything*
>> and then we could easily generate tiny packages for each plugin.
>
> While this is good for building (official) binary packages, we would
> still need to be able to build only a subset for users building from
> source.
Indeed. Until we have decent binary packages so that users don't
have to mess with rebuilds ;-) But that day seems to be veeeery far
away.
> Also, how do we maintain what files go into which package? Manually
> updating some kind of PLIST annotation on each update sounds bad.
I can't think of any other way except for "automated" subpackaging
(which could be applied to libraries, for example) where you can
predict which files belong to each package.
>> This could also be useful to easily split packages providing
>> libraries into run-time only files (the .so's) and the headers, as
>> almost any Linux distribution does.
>
> I don't see the big benefit in that (and it's something that has
> annoyed me no end on linux hosts). Header files don't take up much
> space.
But they are "ugly" in a production box where you don't want any
compiler-related stuff to be available, for example. Anyway, this is
just a specific use case of this functionality.
I'm sure many, many, many other packages could use it. For example,
some libraries (glib2, to take a popular one) also come with programs
(either sample ones or build-related utilities) that get installed
along them. This is bad in many cases because these programs
introduce additional dependencies that aren't really needed for the
library itself nor at run-time for any program that uses them. These
end up polluting the dependency tree and make further updates a lot
more complex than they'd be otherwise. Taking glib2 again, this
pulls in perl (required at run time too!) but perl is not required
for most programs that use glib2.
--
Julio M. Merino Vidal <jmerino@ac.upc.edu>