diff options
author | Maxime Gauduin <alucryd@gmail.com> | 2014-01-28 14:49:47 +0100 |
---|---|---|
committer | Allan McRae <allan@archlinux.org> | 2014-02-02 16:11:32 +1000 |
commit | edce7555a6b7410d1a4da6d27d22383989306ccc (patch) | |
tree | 42c0c646d0852a3507de6f512b2e58fbce929b2d | |
parent | aa4d3298fb6d46bec3d8996ff8c7ec8c9cc50db9 (diff) | |
download | pacman-edce7555a6b7410d1a4da6d27d22383989306ccc.tar.xz |
Add PKGBUILD-vcs.proto
This PKGBUILD proto covers the newly introduced VCS capabilities of
pacman. It serves as a replacement for the current bzr, git, hg and svn
protos found in ABS.
Signed-off-by: Maxime Gauduin <alucryd@gmail.com>
[Allan: add to Makefile.am]
Signed-off-by: Allan McRae <allan@archlinux.org>
-rw-r--r-- | Makefile.am | 1 | ||||
-rw-r--r-- | proto/PKGBUILD-vcs.proto | 78 |
2 files changed, 79 insertions, 0 deletions
diff --git a/Makefile.am b/Makefile.am index 1f79ba9f..9321d58b 100644 --- a/Makefile.am +++ b/Makefile.am @@ -20,6 +20,7 @@ pkgdatadir = ${datadir}/${PACKAGE} dist_pkgdata_DATA = \ proto/PKGBUILD.proto \ proto/PKGBUILD-split.proto \ + proto/PKGBUILD-vcs.proto \ proto/proto.install \ proto/ChangeLog.proto diff --git a/proto/PKGBUILD-vcs.proto b/proto/PKGBUILD-vcs.proto new file mode 100644 index 00000000..ae9956a9 --- /dev/null +++ b/proto/PKGBUILD-vcs.proto @@ -0,0 +1,78 @@ +# This is an example PKGBUILD file. Use this as a start to creating your own, +# and remove these comments. For more information, see 'man PKGBUILD'. +# NOTE: Please fill out the license field for your package! If it is unknown, +# then please put 'unknown'. + +# The following guidelines are specific to BZR, GIT, HG and SVN packages. +# Other VCS sources are not natively supported by makepkg yet. + +# Maintainer: Your Name <youremail@domain.com> +pkgname=NAME-VCS # '-bzr', '-git', '-hg' or '-svn' +pkgver=VERSION +pkgrel=1 +pkgdesc="" +arch=() +url="" +license=('GPL') +groups=() +depends=() +makedepends=('VCS_PACKAGE') # 'bzr', 'git', 'mercurial' or 'subversion' +provides=("${pkgname%-VCS}") +conflicts=("${pkgname%-VCS}") +replaces=() +backup=() +options=() +install= +source=('FOLDER::VCS+URL#FRAGMENT') +noextract=() +md5sums=('SKIP') + +# Please refer to the 'USING VCS SOURCES' section of the PKGBUILD man page for +# a description of each element in the source array. + +pkgver() { + cd "$srcdir/${pkgname%-VCS}" + +# The examples below are not absolute and need to be adapted to each repo. The +# primary goal is to generate version numbers that will increase according to +# pacman's version comparisons with later commits to the repo. The format +# VERSION='VER_NUM.rREV_NUM.HASH', or a relevant subset in case VER_NUM or HASH +# are not available, is recommended. + +# Bazaar + printf "r%s" "$(bzr revno)" + +# Git, tags available + printf "%s" "$(git describe --long | sed 's/\([^-]*-\)g/r\1/;s/-/./g')" + +# Git, no tags available + printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)" + +# Mercurial + printf "r%s.%s" "$(hg identify -n)" "$(hg identify -i)" + +# Subversion + printf "r%s" "$(svnversion | tr -d 'A-z')" +} + +prepare() { + cd "$srcdir/${pkgname%-VCS}" + patch -p1 -i "$srcdir/${pkgname%-VCS}.patch" +} + +build() { + cd "$srcdir/${pkgname%-VCS}" + ./autogen.sh + ./configure --prefix=/usr + make +} + +check() { + cd "$srcdir/${pkgname%-VCS}" + make -k check +} + +package() { + cd "$srcdir/${pkgname%-VCS}" + make DESTDIR="$pkgdir/" install +} |