[pacman-dev] [PATCH] makepkg: allow overriding pkgver and pkgrel in split packages

Allan McRae allan at archlinux.org
Sun Oct 11 08:54:53 EDT 2009


Laszlo Papp wrote:
> On Sun, Oct 11, 2009 at 2:35 PM, Allan McRae <allan at archlinux.org> wrote:
>
>   
>> Fixing a single package within a split package requires the overriding
>> or pkgrel.  In very rare (but existing) cases, it is useful to
>> override pkgver.  Partial fix for FS#15955.
>>
>> Signed-off-by: Allan McRae <allan at archlinux.org>
>> ---
>>  PKGBUILD-split.proto  |    2 ++
>>  doc/PKGBUILD.5.txt    |    6 +++---
>>  scripts/makepkg.sh.in |    5 +++--
>>  3 files changed, 8 insertions(+), 5 deletions(-)
>>
>> diff --git a/PKGBUILD-split.proto b/PKGBUILD-split.proto
>> index 11ceff2..2d772d5 100644
>> --- a/PKGBUILD-split.proto
>> +++ b/PKGBUILD-split.proto
>> @@ -34,6 +34,8 @@ build() {
>>
>>  package_pkg1() {
>>   # options and directives that can be overridden
>> +  pkgver=
>> +  pkgrel=
>>   pkgdesc=""
>>   license=()
>>   groups=()
>> diff --git a/doc/PKGBUILD.5.txt b/doc/PKGBUILD.5.txt
>> index 435a148..611a314 100644
>> --- a/doc/PKGBUILD.5.txt
>> +++ b/doc/PKGBUILD.5.txt
>> @@ -275,9 +275,9 @@ name of the split package.
>>
>>  All options and directives for the split packages default to the global
>> values given
>>  within the PKGBUILD. However, some of these can be overridden within each
>> split
>> -package's packaging function. The following variables can be overridden:
>> `pkgdesc`,
>> -`license`, `groups`, `depends`, `optdepends`, `provides`, `conflicts`,
>> `replaces`,
>> -`backup`, `options`, `install` and `changelog`.
>> +package's packaging function. The following variables can be overridden:
>> `pkgver`,
>> +`pkgrel`, `pkgdesc`, `license`, `groups`, `depends`, `optdepends`,
>> +`provides`, `conflicts`, `replaces`, `backup`, `options`, `install` and
>> `changelog`.
>>
>>  An optional global directive is available when building a split package:
>>
>> diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in
>> index d80e115..2500638 100644
>> --- a/scripts/makepkg.sh.in
>> +++ b/scripts/makepkg.sh.in
>> @@ -46,8 +46,9 @@ pkgdir="$startdir/pkg"
>>
>>  packaging_options=('strip' 'docs' 'libtool' 'emptydirs' 'zipman' 'purge')
>>  other_options=('ccache' 'distcc' 'makeflags' 'force')
>> -splitpkg_overrides=('pkgdesc' 'license' 'groups' 'depends' 'optdepends'
>> 'provides' \
>> -                    'conflicts' 'replaces' 'backup' 'options' 'install'
>> 'changelog')
>> +splitpkg_overrides=('pkgver' 'pkgrel' 'pkgdesc' 'license' 'groups' \
>> +                    'depends' 'optdepends' 'provides' 'conflicts'
>> 'replaces' \
>> +                    'backup' 'options' 'install' 'changelog')
>>  readonly -a packaging_options other_options splitpkg_overrides
>>
>>  # Options
>> --
>> 1.6.4.4
>>
>>
>>
>>     
> Hello Allan!
>
> I don't know whether it works fully, because I didn't test it in hard way,
> but thanks this feature, it seems fine.
>
> What about arch overriding ? Do you work on it, or can a patch be sent to
> you ?
>   

It is a lot harder to override arch.  I have a partially working patch 
that I am finishing.

Allan



More information about the pacman-dev mailing list