1219820Sjeff#!/bin/bash
2219820Sjeff
3219820Sjeff# We change dir since the later utilities assume to work in the project dir
4219820Sjeffcd ${0%*/*}
5219820Sjeff
6219820Sjeff# make sure autoconf is up-to-date
7219820Sjeffac_ver=`autoconf --version | head -n 1 | awk '{print $NF}'`
8219820Sjeffac_maj=`echo $ac_ver|sed 's/\..*//'`
9219820Sjeffac_min=`echo $ac_ver|sed 's/.*\.//'`
10219820Sjeffif [[ $ac_maj -lt 2 ]]; then
11219820Sjeff    echo Min autoconf version is 2.57
12219820Sjeff    exit 1
13219820Sjeffelif [[ $ac_maj -eq 2 && $ac_min -lt 57 ]]; then
14219820Sjeff    echo Min autoconf version is 2.57
15219820Sjeff    exit 1
16219820Sjefffi
17219820Sjeff
18219820Sjeff# make sure automake is up-to-date
19219820Sjeffam_ver=`automake --version | head -n 1 | awk '{print $NF}'`
20219820Sjeffam_maj=`echo $am_ver|sed 's/\..*//'`
21219820Sjeffam_min=`echo $am_ver|sed 's/[^\.]*\.\([^\.]*\)\.*.*/\1/'`
22219820Sjeffam_sub=`echo $am_ver|sed 's/[^\.]*\.[^\.]*\.*//'`
23219820Sjeffif [[ $am_maj -lt 1 ]]; then
24219820Sjeff    echo Min automake version is 1.6.3
25219820Sjeff    exit 1
26219820Sjeffelif [[ $am_maj -eq 1 && $am_min -lt 6 ]]; then
27219820Sjeff    echo "automake version is too old:$am_maj.$am_min.$am_sub < required 1.6.3"
28219820Sjeff    exit 1
29219820Sjeffelif [[ $am_maj -eq 1 && $am_min -eq 6 && $am_sub -lt 3 ]]; then
30219820Sjeff    echo "automake version is too old:$am_maj.$am_min.$am_sub < required 1.6.3"
31219820Sjeff    exit 1
32219820Sjefffi
33219820Sjeff
34219820Sjeff# make sure libtool is up-to-date
35219820Sjefflt_ver=`libtool --version | head -n 1 | awk '{print $4}'`
36219820Sjefflt_maj=`echo $lt_ver|sed 's/\..*//'`
37219820Sjefflt_min=`echo $lt_ver|sed 's/[^\.]*\.\([^\.]*\)\.*.*/\1/'`
38219820Sjefflt_sub=`echo $lt_ver|sed 's/[^\.]*\.[^\.]*\.*//'`
39219820Sjeffif [[ $lt_maj -lt 1 ]]; then
40219820Sjeff    echo Min libtool version is 1.4.2
41219820Sjeff    exit 1
42219820Sjeffelif [[ $lt_maj -eq 1 && $lt_min -lt 4 ]]; then
43219820Sjeff    echo "libtool version is too old:$lt_maj.$lt_min.$lt_sub < required 1.4.2"
44219820Sjeff    exit 1
45219820Sjeffelif [[ $lt_maj -eq 1 && $lt_min -eq 4 && $lt_sub -lt 2 ]]; then
46219820Sjeff    echo "libtool version is too old:$lt_maj.$lt_min.$lt_sub < required 1.4.2"
47219820Sjeff    exit 1
48219820Sjefffi
49219820Sjeff
50219820Sjeff# cleanup
51219820Sjefffind . \( -name Makefile.in -o -name aclocal.m4 -o -name autom4te.cache -o -name configure -o -name aclocal.m4 \) -exec \rm -rf {} \; -prune
52219820Sjeff
53219820Sjeffaclocal -I config && \
54219820Sjefflibtoolize --force --copy && \
55219820Sjeffautoheader && \
56219820Sjeffautomake --foreign --add-missing --copy && \
57219820Sjeffautoconf
58