1#!/bin/sh 2# 3# libquvi 4# Copyright (C) 2012 Toni Gundogdu <legatvs@gmail.com> 5# 6# This file is part of libquvi <http://quvi.sourceforge.net/>. 7# 8# This program is free software: you can redistribute it and/or 9# modify it under the terms of the GNU Affero General Public 10# License as published by the Free Software Foundation, either 11# version 3 of the License, or (at your option) any later version. 12# 13# This program is distributed in the hope that it will be useful, 14# but WITHOUT ANY WARRANTY; without even the implied warranty of 15# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16# GNU Affero General Public License for more details. 17# 18# You should have received a copy of the GNU Affero General 19# Public License along with this program. If not, see 20# <http://www.gnu.org/licenses/>. 21# 22dir=`dirname $0` 23o= 24# flags: 25m= # dump major and minor only 26c= # strip off the 'v' prefix 27 28# VERSION file is part of the dist tarball. 29from_VERSION_file() 30{ 31 o=`cat "$dir/VERSION" 2>/dev/null` 32} 33 34from_git_describe() 35{ 36 [ -d "$dir/.git" -o -f "$dir/.git" ] && { 37 o=`git describe --match "v[0-9]*" --abbrev=4 HEAD 2>/dev/null` 38 } 39} 40 41make_vn_mm() 42{ 43 j=`expr "$o" : 'v\([0-9]\)'` 44 n=`expr "$o" : 'v[0-9]\.\([0-9]*[0-9]\)'` 45 o="v$j.$n" 46} 47 48dump_vn() 49{ 50 [ -n "$m" ] && make_vn_mm 51 [ -n "$c" ] && o=${o#v} # strip off the 'v' prefix. 52 echo $o 53 exit 0 54} 55 56help() 57{ 58 echo "$0 [OPTIONS] 59-h Show this help and exit 60-c Strip off the 'v' prefix from the output 61-m Output the major.minor -pair only" 62 exit 0 63} 64 65while [ $# -gt 0 ] 66do 67 case "$1" in 68 -m) m=1;; 69 -c) c=1;; 70 -h) help;; 71 *) break;; 72 esac 73 shift 74done 75 76from_VERSION_file 77[ -z "$o" ] && from_git_describe 78[ -n "$o" ] && dump_vn 79exit 1 80 81# vim: set ts=2 sw=2 tw=72 expandtab: 82