index : pacman | |
Archlinux32 fork of pacman | gitolite user |
summaryrefslogtreecommitdiff |
-rw-r--r-- | PKGBUILD-split.proto | 2 | ||||
-rw-r--r-- | PKGBUILD.proto | 1 | ||||
-rw-r--r-- | contrib/PKGBUILD.vim | 9 | ||||
-rw-r--r-- | doc/PKGBUILD.5.txt | 8 | ||||
-rw-r--r-- | scripts/makepkg.sh.in | 25 |
diff --git a/PKGBUILD-split.proto b/PKGBUILD-split.proto index 08f98d62..11ceff2b 100644 --- a/PKGBUILD-split.proto +++ b/PKGBUILD-split.proto @@ -21,6 +21,7 @@ replaces=() backup=() options=() install= +changelog= source=($pkgbase-$pkgver.tar.gz) noextract=() md5sums=() #generate with 'makepkg -g' @@ -44,6 +45,7 @@ package_pkg1() { backup=() options=() install= + changelog= cd "$srcdir/$pkgbase-$pkgver" make DESTDIR="$pkgdir/" install-pkg1 diff --git a/PKGBUILD.proto b/PKGBUILD.proto index eddcf759..93da0fc5 100644 --- a/PKGBUILD.proto +++ b/PKGBUILD.proto @@ -21,6 +21,7 @@ replaces=() backup=() options=() install= +changelog= source=($pkgname-$pkgver.tar.gz) noextract=() md5sums=() #generate with 'makepkg -g' diff --git a/contrib/PKGBUILD.vim b/contrib/PKGBUILD.vim index 994eaccb..af0f9817 100644 --- a/contrib/PKGBUILD.vim +++ b/contrib/PKGBUILD.vim @@ -115,6 +115,12 @@ syn match pbValidInstall /\([[:alnum:]]\|\$\|+\|-\|_\)*\.install/ contained syn match pbIllegalInstall /[^=]/ contained contains=pbValidInstall syn match pbInstallGroup /^install=.*/ contains=pb_k_install,pbValidInstall,pbIllegalInstall,shDeref,shDoubleQuote,shSingleQuote +" changelog +syn keyword pb_k_changelog changelog contained +syn match pbValidChangelog /\([[:alnum:]]\|\$\|+\|-\|_\)*/ contained +syn match pbIllegalChangelog /[^=]/ contained contains=pbValidChangelog +syn match pbChangelogGroup /^changelog=.*/ contains=pb_k_changelog,pbValidChangelog,pbIllegalChangelog,shDeref,shDoubleQuote,shSingleQuote + " source: " XXX remove source from shStatement, fix strange bug syn clear shStatement @@ -212,6 +218,9 @@ hi def link pb_k_provides pbKeywords hi def link pbIllegalInstall Error hi def link pb_k_install pbKeywords +hi def link pbIllegalChangelog Error +hi def link pb_k_changelog pbKeywords + hi def link pb_k_source pbKeywords hi def link pbIllegalSource Error diff --git a/doc/PKGBUILD.5.txt b/doc/PKGBUILD.5.txt index e6f6edf5..8d5537e9 100644 --- a/doc/PKGBUILD.5.txt +++ b/doc/PKGBUILD.5.txt @@ -79,6 +79,12 @@ similar to `$_basekernver`. be copied into the package by makepkg. It does not need to be included in the source array (e.g. `install=pkgname.install`). +*changelog*:: + Specifies a changelog file that is to be included in the package. + This file should reside in the same directory as the PKGBUILD, and will + be copied into the package by makepkg. It does not need to be included + in the source array (e.g. `changelog=$pkgname.changelog`). + *source (array)*:: An array of source files required to build the package. Source files must either reside in the same directory as the PKGBUILD file, or be a @@ -271,7 +277,7 @@ All options and directives for the split packages default to the global values g 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` and `install`. +`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 2941a5d3..24fddf69 100644 --- a/scripts/makepkg.sh.in +++ b/scripts/makepkg.sh.in @@ -47,7 +47,7 @@ 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') + 'conflicts' 'replaces' 'backup' 'options' 'install' 'changelog') readonly -a packaging_options other_options splitpkg_overrides # Options @@ -991,9 +991,9 @@ create_package() { fi # do we have a changelog? - if [ -f "$startdir/ChangeLog" ]; then + if [ -n "$changelog" ]; then msg2 "$(gettext "Adding package changelog...")" - cp "$startdir/ChangeLog" .CHANGELOG + cp "$startdir/$changelog" .CHANGELOG comp_files="$comp_files .CHANGELOG" fi @@ -1055,13 +1055,17 @@ create_srcpackage() { msg2 "$(gettext "Adding install script...")" ln -s "${startdir}/$install" "${srclinks}/${pkgbase}/" else - error "$(gettext "Install script %s not found.")" "$install" + error "$(gettext "Install scriptlet (%s) does not exist.")" "$install" fi fi - if [ -f ChangeLog ]; then - msg2 "$(gettext "Adding %s...")" "ChangeLog" - ln -s "${startdir}/ChangeLog" "${srclinks}/${pkgbase}" + if [ -n "$changelog" ]; then + if [ -f "$changelog" ]; then + msg2 "$(gettext "Adding package changelog...")" + ln -s "${startdir}/$changelog" "${srclinks}/${pkgbase}/" + else + error "$(gettext "Changelog file (%s) does not exist.")" "$changelog" + fi fi local netfile @@ -1193,6 +1197,11 @@ check_sanity() { return 1 fi + if [ -n "$changelog" -a ! -f "$changelog" ]; then + error "$(gettext "Changelog file (%s) does not exist.")" "$changelog" + return 1 + fi + local valid_options=1 local opt known kopt for opt in ${options[@]}; do @@ -1646,7 +1655,7 @@ if [ "$ASROOT" -eq 0 \ fi unset pkgname pkgbase pkgver pkgrel pkgdesc url license groups provides -unset md5sums replaces depends conflicts backup source install build +unset md5sums replaces depends conflicts backup source install changelog build unset makedepends optdepends options noextract BUILDFILE=${BUILDFILE:-$BUILDSCRIPT} |