On Mon, Jun 16, 2008 at 04:31:11PM -0500, Dan McGee <[EMAIL PROTECTED]> wrote: > > and this is where you make it impossible to name a subpkg 'kopete', > > right? > > > > how would that handle the case when for example openoffice.org-i18n-de > > is split from openoffice.org? > > > > (given that the implementation we have in pacman-g2 was already flamed > > off here, iirc - i don't want to hype it here, but that one deals with > > such a problem properly.) > > Can you possibly give us an overview of how it works? I think it would > be quite relevant to this discussion as it is actually a system that > is used, rather than a bunch of "well this might work" scenarios.
http://git.frugalware.org/gitweb/gitweb.cgi?p=pacman-g2.git;a=blob;f=doc/FrugalBuild.txt;hb=HEAD -> '=== Package splitting' basically we have a subpkgs() array which defines the subpackages, and we have subfoo variables for other foo variables, like: pkgname=libfoo groups=('foo' 'bar') pkgname=foo-doc groups=('baz' 'blah') becomes subpkgs=('libfoo' "$pkgname-doc") groups=('foo bar' 'baz blah') the main package's files are still under $startdir/pkg, but libfoo is under $startdir/pkg.libfoo, foo-doc is under $startdir/pkg.foo-doc, etc. there is also a macro called Fsplit that moves a files/directories from $startdir/pkg to a $startdir/pkg.foo dir, like: Fsplit subpkgname usr/share/ but of course it can be done manually using mkdir and mv. here is a more complex example when there are a lot of subpackages: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-stable.git;a=blob;f=source/locale-extra/kde-i18n/FrugalBuild;hb=HEAD probably the biggest problem with it (since every implementation has some problems) is that it can be a bit tricky to see for example what deps are set for a given subpackage if you have a lot of them. like this: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-stable.git;a=blob;f=source/devel/gcc/FrugalBuild;hb=HEAD if you ask me what deps 'gcc-objc++' has, then i can't say the answer right now, i have to search a bit. and the big benefit (what rpm does not have) is that if you don't split a given file then it's included in the main package and it is not just dropped, like rpm does.
pgpD5q0Xo3qGW.pgp
Description: PGP signature
_______________________________________________ pacman-dev mailing list [email protected] http://archlinux.org/mailman/listinfo/pacman-dev
