BuildSystem: Enable autotools in NetBSD.
[asterisk/asterisk.git] / bootstrap.sh
1 #!/bin/sh
2
3 check_for_app() {
4         $1 --version 2>&1 >/dev/null
5         if [ $? != 0 ]
6         then
7                 echo "Please install $1 and run bootstrap.sh again!"
8                 exit 1
9         fi
10 }
11
12 # On FreeBSD and OpenBSD, multiple autoconf/automake versions have different names.
13 # On Linux, environment variables tell which one to use.
14
15 case `uname -sr` in
16         FreeBSD*)
17                 MY_AC_VER=
18                 MY_AM_VER=
19                 ;;
20         NetBSD*)
21                 MY_AC_VER=
22                 MY_AM_VER=
23                 ;;
24         OpenBSD*)
25                 # pkg_add autoconf%2.63 automake%1.9 metaauto
26                 [ -z "$AUTOCONF_VERSION" ] && export AUTOCONF_VERSION=2.63
27                 [ -z "$AUTOMAKE_VERSION" ] && export AUTOMAKE_VERSION=1.9
28                 ;;
29         *'BSD'*)
30                 MY_AC_VER=-2.62
31                 MY_AM_VER=-1.9
32                 ;;
33         *'SunOS '*)
34                 MY_AC_VER=
35                 MY_AM_VER=-1.9
36                 ;;
37         *)
38                 MY_AC_VER=
39                 MY_AM_VER=
40                 AUTOCONF_VERSION=2.60
41                 AUTOMAKE_VERSION=1.9
42                 export AUTOCONF_VERSION
43                 export AUTOMAKE_VERSION
44                 ;;
45 esac
46
47 check_for_app autoconf${MY_AC_VER}
48 check_for_app autoheader${MY_AC_VER}
49 check_for_app automake${MY_AM_VER}
50 check_for_app aclocal${MY_AM_VER}
51
52 gen_configure() {
53         echo "Generating the configure script for $1 ..."
54         shift
55
56         aclocal${MY_AM_VER} -I "$@"
57         autoconf${MY_AC_VER}
58         autoheader${MY_AC_VER}
59         automake${MY_AM_VER} --add-missing --copy 2>/dev/null
60 }
61
62 gen_configure "Asterisk" autoconf `find third-party -maxdepth 1 -type d | xargs -I {} echo -I {}`
63 cd menuselect
64 gen_configure "menuselect" ../autoconf
65
66 exit 0