1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
|
#!/bin/sh
## $Id: _autosetup,v 1.2.2.3 2007/08/07 21:42:31 mattl Exp $
## ---------- some portability checks/adjustments [stolen from configure] ----------
## 'echo -n' is not portable..
case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in
*c*,-n*) ECHO_N= ECHO_C='
' ECHO_T=' ' ;;
*c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;;
*) ECHO_N= ECHO_C='\c' ECHO_T= ;;
esac
##----------
## ----------------------------------------------------------------------
## Check that given command $1 has version >= $2.$3
## return 0 if ok, 1 too old or not found (-> shell conventions).
## ----------------------------------------------------------------------
check_version()
{
dir=`pwd`
cd /tmp
foundit=
## get current version of $1
desired=$2
echo $ECHO_N "Checking version of '$1' >= $desired... $ECHO_C"
name=$1
fullpath=`type $name | awk '{ print $(NF) }'`;
if [ -x "$fullpath" ]; then
foundit=yes;
fi
if [ "$foundit" != yes ]; then
echo "Didn't find application";
version=0
success=no
else
cmdline="$fullpath --version";
if version=`($cmdline 2>/dev/null)` 2>/dev/null; then
echo >/dev/null
else
version="0";
fi
if [ -n "${version}" ]; then
version=`echo $version | awk '{ for (i=1;i<=NF;i++) { split($i,j,"."); m=j[1]"."j[2] ; if (m ~ /[0-9]+\.[0-9]+/) { print m ; break; } } }'`
if [ -z "$version" ]; then version=0; fi
success=`echo "$version" "$desired" | awk '{ if ($1 >= $2) { print "yes";} else {print "no";}} '`
else
version=0
success=no
fi
fi
cd $dir
if [ $success = "yes" ] ; then
echo "succeeded. ($version)"
return 0;
else
echo "failed. ($version)"
return 1;
fi
} ## check_version()
## --------------------------------------------------------------------------------
## 'MAIN' starts here
## --------------------------------------------------------------------------------
echo "Bootstrapping configure script and makefiles:"
## ---------- first check santity of the installed versions of the build-system
## in case there's GNU drop-in tools available, set these
## some sorry systems don't have proper GNU-make...
if check_version make 3.79; then
echo >/dev/null
else
if check_version gmake 3.79; then
have_gmake=yes;
else
echo "Couldn't find a new-enough version of GNU 'make', please install one!";
exit 1;
fi
fi
## FreeBSD's m4 seems to be broken? Download a fresh one
if check_version m4 1.4; then
echo >/dev/null
else
## solaris m4 works fine
if test -f /usr/ccs/bin/m4 -o "`uname -s`" = "FreeBSD"
then
echo >/dev/null
else
echo "Couldn't find a new-enough version of 'm4', please install one!";
exit 1;
fi
# build_lsc_aux "m4-1.4.1"
fi
# if check_version pkg-config 0.15; then
# echo >/dev/null
# else
# echo "Couldn't find a new-enough version of 'pkg-config', please install one!";
# exit 1;
# # build_lsc_aux "pkgconfig-0.15.0"
# fi
if check_version autoconf 2.58; then
echo >/dev/null
else
echo "Couldn't find a new-enough version of 'autoconf', please install one!";
echo "If you have a newer version, set the environment-variable 'AUTOCONF' to its path";
exit 1;
# build_lsc_aux "autoconf-2.59"
fi
if check_version automake 1.08; then
echo >/dev/null
else
echo "Couldn't find a new-enough version of 'automake', please install one!";
echo "If you have a newer version, set the environment-variable 'AUTOMAKE' to its path";
exit 1;
# build_lsc_aux "automake-1.8.5"
fi
## ---------- ok, now run autoreconf
cmdline="autoreconf -i";
echo "$cmdline"
if eval $cmdline; then
echo "Done, now run ./configure"
echo " ./configure -C to enable caching"
echo " ./configure --enable-maintainer-mode to enable maintainer depedencies"
exit 0
else
echo "Something failed .... please check error-message and re-run when fixed."
echo "exiting..."
exit 1
fi
|