autogen.sh 1.47 KB
Newer Older
1 2
#!/bin/sh
# Run this to generate all the initial makefiles, etc.
3 4
#
# NOTE: compare_versions() is stolen from gnome-autogen.sh
5

6
REQUIRED_VALA_VERSION=0.13.4
7

8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
# Usage:
#     compare_versions MIN_VERSION ACTUAL_VERSION
# returns true if ACTUAL_VERSION >= MIN_VERSION
compare_versions() {
    ch_min_version=$1
    ch_actual_version=$2
    ch_status=0
    IFS="${IFS=         }"; ch_save_IFS="$IFS"; IFS="."
    set $ch_actual_version
    for ch_min in $ch_min_version; do
        ch_cur=`echo $1 | sed 's/[^0-9].*$//'`; shift # remove letter suffixes
        if [ -z "$ch_min" ]; then break; fi
        if [ -z "$ch_cur" ]; then ch_status=1; break; fi
        if [ $ch_cur -gt $ch_min ]; then break; fi
        if [ $ch_cur -lt $ch_min ]; then ch_status=1; break; fi
    done
    IFS="$ch_save_IFS"
    return $ch_status
}

# Vala version check
29
test -z "$VALAC" && VALAC=valac
30
VALA_VERSION=`$VALAC --version | cut -d" " -f2`
31
echo "Found Vala $VALA_VERSION"
32

33
if ! compare_versions $REQUIRED_VALA_VERSION $VALA_VERSION; then
34
    echo "**Error**: You must have valac >= $REQUIRED_VALA_VERSION installed to build, you have $VALA_VERSION"
35 36 37
    exit 1
fi

38 39 40 41 42 43 44 45 46 47 48
# Generate required files
test -n "$srcdir" || srcdir=`dirname "$0"`
test -n "$srcdir" || srcdir=.
(
  cd "$srcdir" &&
  touch ChangeLog && # Automake requires that ChangeLog exist
  gtkdocize &&
  autopoint --force &&
  AUTOPOINT='intltoolize --automake --copy' autoreconf --verbose --force --install
) || exit
test -n "$NOCONFIGURE" || "$srcdir/configure" "$@"