1
1
openmpi/config/ompi_get_version.m4
Rainer Keller 4ded1651a3 - Don't we love Fortran: while everybody was of the opinion the
continuation mark in column 6 is enough to split the lines, we do
   the same continuation mark in column 73.
   Now, while that would fit any msg., this would produce warnings when
   including mpif-config.h  with -Wall in gfortran and -warn in ifort.

   Just get the SVN Version string short and forget it. Let's see
   make check choke on that.

   This additionally fixes the HG version string...

   (Will mention this in ticket #2259)

This commit was SVN r22620.
2010-02-16 02:25:00 +00:00

112 строки
4.0 KiB
Bash

dnl -*- shell-script -*-
dnl
dnl Copyright (c) 2004-2006 The Trustees of Indiana University and Indiana
dnl University Research and Technology
dnl Corporation. All rights reserved.
dnl Copyright (c) 2004-2005 The University of Tennessee and The University
dnl of Tennessee Research Foundation. All rights
dnl reserved.
dnl Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
dnl University of Stuttgart. All rights reserved.
dnl Copyright (c) 2004-2005 The Regents of the University of California.
dnl All rights reserved.
dnl Copyright (c) 2008 Cisco Systems, Inc. All rights reserved.
dnl $COPYRIGHT$
dnl
dnl Additional copyrights may follow
dnl
dnl $HEADER$
dnl
dnl
dnl This file is also used as input to ompi_get_version.sh.
dnl
# OMPI_GET_VERSION(version_file, variable_prefix)
# -----------------------------------------------
# parse version_file for version information, setting
# the following shell variables:
#
# prefix_VERSION
# prefix_BASE_VERSION
# prefix_MAJOR_VERSION
# prefix_MINOR_VERSION
# prefix_RELEASE_VERSION
# prefix_GREEK_VERSION
# prefix_WANT_SVN
# prefix_SVN_R
# prefix_RELEASE_DATE
m4_define([OMPI_GET_VERSION],[
: ${ompi_ver_need_svn=1}
: ${svnversion_result=-1}
dnl quote eval to suppress macro expansion with non-GNU m4
if test -f "$1"; then
srcdir=`dirname $1`
ompi_vers=`sed -n "
t clear
: clear
s/^major/$2_MAJOR_VERSION/
s/^minor/$2_MINOR_VERSION/
s/^release/$2_RELEASE_VERSION/
s/^greek/$2_GREEK_VERSION/
s/^want_svn/$2_WANT_SVN/
s/^svn_r/$2_SVN_R/
s/^date/$2_RELEASE_DATE/
t print
b
: print
p" < "$1"`
[eval] "$ompi_vers"
# Only print release version if it isn't 0
if test $$2_RELEASE_VERSION -ne 0 ; then
$2_VERSION="$$2_MAJOR_VERSION.$$2_MINOR_VERSION.$$2_RELEASE_VERSION"
else
$2_VERSION="$$2_MAJOR_VERSION.$$2_MINOR_VERSION"
fi
$2_VERSION="${$2_VERSION}${$2_GREEK_VERSION}"
$2_BASE_VERSION=$$2_VERSION
if test $$2_WANT_SVN -eq 1 && test $ompi_ver_need_svn -eq 1 ; then
if test "$svnversion_result" != "-1" ; then
$2_SVN_R=$svnversion_result
fi
if test "$$2_SVN_R" = "-1" ; then
m4_ifdef([AC_MSG_CHECKING],
[AC_MSG_CHECKING([for SVN version])])
d=`date '+%m-%d-%Y'`
if test -d "$srcdir/.svn" ; then
$2_SVN_R=r`svnversion "$srcdir"`
if test $? != 0; then
# The following is too long for Fortran
# $2_SVN_R="unknown svn version (svnversion not found); $d"
$2_SVN_R="? (no svnversion); $d"
fi
elif test -d "$srcdir/.hg" ; then
# Check to see if we can find the hg command
# remember that $? reflects the status of the
# *last* command in a pipe change, so if "hg ..
# cut ..." runs and "hg" is not found, $? will
# reflect the status of "cut", not hg not being
# found. So test for hg specifically first.
hg --version > /dev/null 2>&1
if test $? = 0; then
$2_SVN_R=hg`hg -v -R "$srcdir" tip | grep ^changeset: | head -n 1 | cut -d: -f3`
else
# The following is too long for Fortran
# $2_SVN_R="unknown hg version (hg not found); $d"
$2_SVN_R="? (no hg); $d"
fi
fi
if test "$2_SVN_R" = ""; then
$2_SVN_R="svn$d"
fi
m4_ifdef([AC_MSG_RESULT],
[AC_MSG_RESULT([done])])
fi
$2_VERSION="${$2_VERSION}${$2_SVN_R}"
fi
fi
])