]>
Commit | Line | Data |
---|---|---|
a888bea6 VB |
1 | #!/bin/sh |
2 | # | |
3 | # get-version | |
4 | # | |
5 | # Copyright © 2009 Guillem Jover <guillem@hadrons.org> | |
6 | # | |
7 | # Redistribution and use in source and binary forms, with or without | |
8 | # modification, are permitted provided that the following conditions | |
9 | # are met: | |
10 | # 1. Redistributions of source code must retain the above copyright | |
11 | # notice, this list of conditions and the following disclaimer. | |
12 | # 2. Redistributions in binary form must reproduce the above copyright | |
13 | # notice, this list of conditions and the following disclaimer in the | |
14 | # documentation and/or other materials provided with the distribution. | |
15 | # 3. The name of the author may not be used to endorse or promote products | |
16 | # derived from this software without specific prior written permission. | |
17 | # | |
18 | # THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, | |
19 | # INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY | |
20 | # AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL | |
21 | # THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, | |
22 | # EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, | |
23 | # PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; | |
24 | # OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, | |
25 | # WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR | |
26 | # OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF | |
27 | # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | |
28 | ||
29 | if [ -f .dist-version ]; then | |
30 | # Get the version from the file distributed in the tarball. | |
31 | version=$(cat .dist-version) | |
8b58789d | 32 | elif [ -e .git ]; then |
a888bea6 VB |
33 | # Ger the version from the git repository. |
34 | version=$(git describe --tags --always --match [0-9]* 2> /dev/null) | |
35 | ||
36 | # Check if we are on a dirty checkout. | |
37 | git update-index --refresh -q >/dev/null | |
094f37c5 | 38 | dirty=$(git diff-index --name-only --ignore-submodules=untracked HEAD 2>/dev/null) |
a888bea6 VB |
39 | if [ -n "$dirty" ]; then |
40 | version="$version-dirty" | |
41 | fi | |
42 | else | |
43 | date +%F | |
44 | fi | |
45 | ||
46 | # Use printf to avoid the trailing new line that m4_esyscmd would not handle. | |
47 | printf "$version" |