Originally from Jason St. John's patch, This is a much simplified
version explaining some basic functions the four vcs's makepkg supports
can use to get package version information.

Signed-off-by: William Giokas <[email protected]>
---

I know that Allan didn't like this patch last time it was sent in, and
neither did I, but I think that this should be documented. I took out the
two terrible package versions for the git section, and cut it down to just
the commands used to actually print out the pkgver, not the whole 

    pkgver() {
        cd ...
        foo bar baz
    }

which makes a lot more sense and keeps things to a minimum.

 doc/PKGBUILD.5.txt | 35 +++++++++++++++++++++++++++++++++++
 1 file changed, 35 insertions(+)

diff --git a/doc/PKGBUILD.5.txt b/doc/PKGBUILD.5.txt
index ea280a0..bb185ea 100644
--- a/doc/PKGBUILD.5.txt
+++ b/doc/PKGBUILD.5.txt
@@ -450,6 +450,41 @@ The source URL is divided into three components:
 
        *svn*;;
                revision
+*pkgver() Function*::
+       This function allows 'makepkg' to automatically update the package 
version of
+       a package using a script. This is meant to be used with VCS packages.
+       *Git*::
+               *Using git tags*;;
+                       Example output: 1.5.1.g123defa
+
+                       git describe --long | sed 's/-/./'
+
+               *Using the total number of commits (used when there are no 
tags)*;;
+                       Example output: 0.r6283.g123defa
+
+                       echo "0.r$(git rev-list --count HEAD).$(git log -1 
--format="%h")"
+
+       *Subversion*::
+               Example output: 8546
+
+               svnversion | tr -d [A-z]
+
+       *Mercurial*::
+               Example output: 2813.75881cc5391e
+
+               hg identify -ni | awk 'BEGIN{OFS=".";} {print $2 $1}'
+
+       *Bazaar*::
+               Example output: 830
+
+               bzr revno
+
+       *Fallback*::
+               If no acceptable version information can be extracted from the
+               repository, use the current date.
+               Example output: 20130408
+
+               date +%Y%m%d
 
 Example
 -------
-- 
1.8.2.1.573.g118f60e


Reply via email to