tech-pkg archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Various size of (Project) ideas for NetBSD and pkgsrc

                        Hi all,

On 30/09/2013 04:26, Alistair Crooks wrote:
> On Sun, Sep 29, 2013 at 10:09:53AM +0900, Ryo ONODERA wrote:
>> (2) Create multiple packages from one pkgsrc package directory
>> For example, pkgsrc/fonts/harfbuzz has icu option and theoretically
>> non-icu part and icu part can be separate package, but splitting
>> only icu part from harfbuzz is difficult in configure/build stage.
>> In rpm (Red Hat package manager) case, "build once and multiple packages is
>> created" is realized with custom do-install target.
>> "build once" means reduce of build time.
> The way I see it, if I as a normal user wants to build a package, I
> know what options I want, and have them set already ahead of time.
> Having two separate binary packages with different options on the same
> machine is an unusual use case, and not something I'd recommend from
> a tearing hair out PoV. And if it's meant for the bulk builders, then
> this is usually done on larger machines, where any gain would be minimal.

I think there's are a number of interesting use cases for generating
multiple binary packages out of single source directories.

The most obvious one is like most distributions do, to
(semi-)automatically separate development from documentation from
essential files. In the case of glib2, this could be "glib2-lib",
"glib2-dev", "glib2-doc", and then "glib2" (for the remaining binaries).
I am not particularly fond of this separation, but it can make a lot of
sense for binary deployments, particularly so on embedded platforms.

Then, there is the case of packages providing optional files, such as
plug-ins. It is faster to build these packages only once, and then split
them in, say, "make package". Tracking dependencies per sub-package can
also be very helpful for binary distribution in this case.

With this said, this would certainly involve quite some work...


Home | Main Index | Thread Index | Old Index