1#!/usr/bin/env sh 2# 3# SpanDSP - a series of DSP components for telephony 4# 5# autogen script 6# 7# This program is free software; you can redistribute it and/or modify 8# it under the terms of the GNU Lesser General Public License version 2.1, 9# as published by the Free Software Foundation. 10# 11# This program is distributed in the hope that it will be useful, 12# but WITHOUT ANY WARRANTY; without even the implied warranty of 13# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14# GNU General Public License for more details. 15# 16# You should have received a copy of the GNU Lesser General Public 17# License along with this program; if not, write to the Free Software 18# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. 19 20UNAME=`uname` 21 22if [ "x$UNAME" = "xFreeBSD" ]; then 23 echo "" 24 echo "" 25 echo "******************************************" 26 echo "*** NOTICE ***" 27 echo "******************************************" 28 echo " " 29 echo "FreeBSD is buggy. Please use this " 30 echo "workaround if you want to bootstrap " 31 echo "on FreeBSD. " 32 echo " " 33 echo "cd /usr/local/share/aclocal19 " 34 echo "ln -s ../aclocal/libtool15.m4 . " 35 echo "ln -s ../aclocal/ltdl15.m4 . " 36 echo " " 37 echo "******************************************" 38 echo "" 39fi 40 41debug () 42{ 43 # Outputs debug statments if DEBUG var is set 44 if [ ! -z "$DEBUG" ]; then 45 echo "DEBUG: $1" 46 fi 47} 48 49version_compare() 50{ 51 # Checks a command is found and the version is high enough 52 PROGRAM=$1 53 MAJOR=$2 54 MINOR=$3 55 MICRO=$4 56 test -z "$MAJOR" && MAJOR=0 57 test -z "$MINOR" && MINOR=0 58 test -z "$MICRO" && MICRO=0 59 60 debug "Checking $PROGRAM >= $MAJOR.$MINOR.$MICRO" 61 62 WHICH_PATH=`whereis which | cut -f2 -d' '` 63 COMMAND=`$WHICH_PATH $PROGRAM` 64 if [ -z $COMMAND ]; then 65 echo "$PROGRAM-$MAJOR.$MINOR.$MICRO is required and was not found." 66 return 1 67 else 68 debug "Found $COMMAND" 69 fi 70 71 INS_VER=`$COMMAND --version | head -1 | sed 's/[^0-9]*//' | cut -d' ' -f1` 72 INS_MAJOR=`echo $INS_VER | cut -d. -f1 | sed s/[a-zA-Z\-].*//g` 73 INS_MINOR=`echo $INS_VER | cut -d. -f2 | sed s/[a-zA-Z\-].*//g` 74 INS_MICRO=`echo $INS_VER | cut -d. -f3 | sed s/[a-zA-Z\-].*//g` 75 test -z "$INS_MAJOR" && INS_MAJOR=0 76 test -z "$INS_MINOR" && INS_MINOR=0 77 test -z "$INS_MICRO" && INS_MICRO=0 78 debug "Installed version: $INS_VER" 79 80 if [ "$INS_MAJOR" -gt "$MAJOR" ]; then 81 debug "MAJOR: $INS_MAJOR > $MAJOR" 82 return 0 83 elif [ "$INS_MAJOR" -eq "$MAJOR" ]; then 84 debug "MAJOR: $INS_MAJOR = $MAJOR" 85 if [ "$INS_MINOR" -gt "$MINOR" ]; then 86 debug "MINOR: $INS_MINOR > $MINOR" 87 return 0 88 elif [ "$INS_MINOR" -eq "$MINOR" ]; then 89 if [ "$INS_MICRO" -ge "$MICRO" ]; then 90 debug "MICRO: $INS_MICRO >= $MICRO" 91 return 0 92 else 93 debug "MICRO: $INS_MICRO < $MICRO" 94 fi 95 else 96 debug "MINOR: $INS_MINOR < $MINOR" 97 fi 98 else 99 debug "MAJOR: $INS_MAJOR < $MAJOR" 100 fi 101 102 echo "You have the wrong version of $PROGRAM. The minimum required version is $MAJOR.$MINOR.$MICRO" 103 echo " and the version installed is $INS_MAJOR.$INS_MINOR.$INS_MICRO ($COMMAND)." 104 return 1 105} 106 107# Check for required version and die if unhappy 108 109mkdir config 110 111 112if [ "x$UNAME" = "xDarwin" ]; then 113version_compare glibtoolize 1 5 16 || exit 1 114version_compare automake 1 9 5 || exit 1 115version_compare autoconf 2 59 || exit 1 116elif [ "x$UNAME" = "xFreeBSD" ]; then 117version_compare libtoolize 1 5 16 || exit 1 118version_compare automake19 1 9 5 || exit 1 119version_compare autoconf259 2 59 || exit 1 120else 121version_compare libtoolize 1 5 16 || exit 1 122version_compare automake 1 9 5 || exit 1 123version_compare autoconf 2 59 || exit 1 124fi 125 126autoreconf -fi 127 128#chmod ug+x debian/rules 129 130if [ "x$UNAME" = "xNetBSD" ]; then 131echo "" 132echo "Please remember to run gmake instead of make on NetBSD" 133echo "" 134fi 135