diff options
author | tobigun <tobigun@b956fd51-792f-4845-bead-9b4dfca2ff2c> | 2010-10-19 16:39:31 +0000 |
---|---|---|
committer | tobigun <tobigun@b956fd51-792f-4845-bead-9b4dfca2ff2c> | 2010-10-19 16:39:31 +0000 |
commit | 0b60f71cb853b35e53d0b407493dbcfc098ed40e (patch) | |
tree | 03221c792a89f8c885288a73d1041ea5dc7aee4f /mediaplugin/dists/autogen/m4/ax_extract_version.m4 | |
parent | a52499fa9f5e7f37c70bfb7a4145554168ec30f0 (diff) | |
download | usdx-0b60f71cb853b35e53d0b407493dbcfc098ed40e.tar.gz usdx-0b60f71cb853b35e53d0b407493dbcfc098ed40e.tar.xz usdx-0b60f71cb853b35e53d0b407493dbcfc098ed40e.zip |
initial commit
git-svn-id: svn://svn.code.sf.net/p/ultrastardx/svn/branches/experimental@2684 b956fd51-792f-4845-bead-9b4dfca2ff2c
Diffstat (limited to 'mediaplugin/dists/autogen/m4/ax_extract_version.m4')
-rw-r--r-- | mediaplugin/dists/autogen/m4/ax_extract_version.m4 | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/mediaplugin/dists/autogen/m4/ax_extract_version.m4 b/mediaplugin/dists/autogen/m4/ax_extract_version.m4 new file mode 100644 index 00000000..c514e3c3 --- /dev/null +++ b/mediaplugin/dists/autogen/m4/ax_extract_version.m4 @@ -0,0 +1,58 @@ +# This file is part of UltraStar Deluxe +# Created by the UltraStar Deluxe Team + +# SYNOPSIS +# +# AX_EXTRACT_VERSION(VARIABLE_PREFIX, VERSION) +# +# DESCRIPTION +# +# Splits a version number ("major.minor.release") into its components. +# The resulting components of the version are guaranteed to be +# numeric. All non-numeric chars are removed. +# +# Sets +# [$VARIABLE_PREFIX]_VERSION_MAJOR +# [$VARIABLE_PREFIX]_VERSION_MINOR +# [$VARIABLE_PREFIX]_VERSION_RELEASE +# +# This function calls +# AC_SUBST([$VARIABLE_PREFIX]_VERSION_type] for each type + +AC_DEFUN([AX_EXTRACT_VERSION], +[ + version=[$2] + + # strip leading non-numeric tokens + # (necessary for some ffmpeg-packages in ubuntu) + # example: 0d.51.1.0 -> 51.1.0 + version=`echo $version | sed 's/^[[^.]]*[[^0-9.]][[^.]]*\.//'` + + # replace "." and "-" with " " and ignore trailing tokens. + # 1.23.4-r2 will be splitted to [maj=1, min=23, rel=4]. + # In addition we delete everything after the first character + # which is not 0-9. + # 1.3a4-r32 will be [maj=1, min=3, rel=0]. + read major minor release ignore <<eof + `echo $version | tr '.-' ' ' | sed 's/[[^0-9\ ]].*//'` +eof + # Note: Do NOT indent the eof-delimiter + # We use a here-document (<<< here-strings not POSIX compatible) + + test -z $major && major=0 + test -z $minor && minor=0 + test -z $release && release=0 + + # strip preceding 0s and set unset version-parts to 0 + [$1][_VERSION_MAJOR]=$(($major)) + [$1][_VERSION_MINOR]=$(($minor)) + [$1][_VERSION_RELEASE]=$(($release)) + # integer representation: MMMmmmrrr (M:major,m:minor,r:release) + # can be used if pkg-config's comparison fails + [$1][_VERSION_INT]=$(($[$1][_VERSION_MAJOR]*1000000+$[$1][_VERSION_MINOR]*1000+$[$1][_VERSION_RELEASE])) + + AC_SUBST([$1][_VERSION_MAJOR]) + AC_SUBST([$1][_VERSION_MINOR]) + AC_SUBST([$1][_VERSION_RELEASE]) + AC_SUBST([$1][_VERSION_INT]) +]) |