Well, makepkg is script that I've studied, so it's capable of doing more than what it should. Here is an "bash" illustration of what PKGBUILD should look like according to my opinion: pkgname=('mesa', 'libgl', 'foopkg') pkgver=('7.5.1', '7.5.1', '1.2') pkgrel=2 pkgdesc=("Mesa 3-D graphics libraries and include files", "Mesa 3-D graphics library and DRI software rasterizer", "foo description of some foo package") arch=(i686 x86_64) depends=(('libgl' 'libx11>=1.2.2' 'libxt' 'gcc-libs>=4.4.1' 'dri2proto=2.1' 'libdrm>=2.4.13'), ('libdrm>=2.4.13' 'libxxf86vm>=1.0.99.1' 'libxdamage>=1.1.1' 'expat>=2.0.1'), '') makedepends=('glproto>=1.4.10' 'pkgconfig' 'libdrm>=2.4.13' 'libxxf86vm>=1.0.99.1' 'libxdamage>=1.1.1' 'expat>=2.0.1' 'libx11>=1.2.2' 'libxt>=1.0.6' 'gcc-libs>=4.4.1' 'dri2proto=2.1') url="http://mesa3d.sourceforge.net" license=('custom') options=(!makeflags) source=( ftp://ftp.freedesktop.org/pub/mesa/${pkgver}/MesaLib-${pkgver}.tar.bz2 ftp://ftp.freedesktop.org/pub/mesa/${pkgver}/MesaDemos-${pkgver}.tar.bz2 ftp://ftp.archlinux.org/other/mesa/gl-manpages-1.0.1.tar.bz2 ... #build() { pkgsetup() { basepkg = mesa } subsetup(libgl) { build commands } subsetup(foopkg) { build commands } On Sat, Sep 5, 2009 at 4:03 PM, Henning Garus <henning.garus@googlemail.com>wrote:
On Sat, Sep 05, 2009 at 02:46:49PM +0200, Ali H. Caliskan wrote:
Well I was referring to two packages with one PGKBUILD. Jan de Groot has come closer to that idea, see [1]. Although I think it shoule be a single pkgname field with pkg1, pkg1 names, and single pkgver, with pkgver1, pkgver2 etc. while the build section should have pkg1 pkg2, pkg3 etc.
I don't really understand what you are referring to, are you proposing a different format for PKGBUILDS for splitpkgs? If so, an example and a list of advantages compared to the momentary format would go a long way.
Observe that pkg1 is the head section, while pkg2, pkg3 is subsection of the build.
Not really, first the pkgname array and common variables are defined, then follows the build function and a package_$pkgname function for each package.
I've implemented this concept with python, and it works.
Please elaborate. What exactly have you implemented? And what does this implementation do, that makepkg 3.3 does not?
1:
http://repos.archlinux.org/viewvc.cgi/mesa/repos/extra-x86_64/PKGBUILD?revision=51142&view=markup
PS: Please do not top-post.