#!/bin/sh # --- SDE-COPYRIGHT-NOTE-BEGIN --- # This copyright note is auto-generated by ./scripts/Create-CopyPatch. # # Filename: lib/version.sh # Copyright (C) 2010 The OpenSDE Project # # More information can be found in the files COPYING and README. # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; version 2 of the License. A copy of the # GNU General Public License can be found in the file COPYING. # --- SDE-COPYRIGHT-NOTE-END --- # NAME # version.sh - determine OpenSDE version information # # SYNOPSIS # version.sh [-fp] # # DESCRIPTION # The version.sh script determines OpenSDE version informations # by first checking if dedicated VERSION files for the OpenSDE # framework and the package tree do exist, for extracting the # version strings out of the files. In the case a VERSION file # does not exist or if it extracts an empty version string from # the an existing VERSION file it will assign a default version. # # If the version strings of the framework and the package tree # are not the same the returned version string will be composed # out of framework and the package tree version strings delimited # by an '-'. Otherwise it will only return the framework version # string. # # OPTIONS # -f # only return the version of the OpenSDE framework # -p # only return the version of the OpenSDE package tree # version_sh_usage() { echo "Usage: $0 [-fp]" >&2 } while [ $# -gt 0 ] ; do case "$1" in -f) mode=fm ;; -p) mode=pkg ;; -*) version_sh_usage exit 1 ;; *) break ;; esac shift done [ -n "$SDEROOT" ] || SDEROOT='.' for x in fmver:etc/VERSION pkgver:package/VERSION; do k="${x%%:*}" f="${x#*:}" v=$(head -n1 "$SDEROOT/$f" 2> /dev/null) [ -n "$v" ] || v=master eval "$k='$v'" done case "$mode" in fm) echo "$fmver" ;; pkg) echo "$pkgver" ;; *) if [ "$fmver" = "$pkgver" ]; then echo "$fmver" else echo "$fmver-$pkgver" fi ;; esac