1
#!/bin/bash
2
3
PROJECT=banshee
4
5
function error () {
6
	echo "Error: $1" 1>&2
7
	exit 1
8
}
9
10
function check_autotool_version () {
11
	which $1 &>/dev/null || {
12
		error "$1 is not installed, and is required to configure $PACKAGE"
13
	}
14
15
	version=$($1 --version | head -n 1 | cut -f4 -d' ')
16
	major=$(echo $version | cut -f1 -d.)
17
	minor=$(echo $version | cut -f2 -d.)
18
	rev=$(echo $version | cut -f3 -d.)
19
	major_check=$(echo $2 | cut -f1 -d.)
20
	minor_check=$(echo $2 | cut -f2 -d.)
21
	rev_check=$(echo $2 | cut -f3 -d.)
22
23
	if [ $major -lt $major_check ]; then
24
		do_bail=yes
25
	elif [[ $minor -lt $minor_check && $major = $major_check ]]; then
26
		do_bail=yes
27
	elif [[ $rev -lt $rev_check && $minor = $minor_check && $major = $major_check ]]; then
28
		do_bail=yes
29
	fi
30
31
	if [ x"$do_bail" = x"yes" ]; then
32
		error "$1 version $2 or better is required to configure $PROJECT"
33
	fi
34
}
35
36
function run () {
37
	echo "Running $@ ..."
38
	$@ 2>.autogen.log || {
39
		cat .autogen.log 1>&2
40
		rm .autogen.log
41
		error "Could not run $1, which is required to configure $PROJECT"
42
	}
43
	rm .autogen.log
44
}
45
46
srcdir=$(dirname $0)
47
test -z "$srcdir" && srcdir=.
48
49
(test -f $srcdir/configure.ac) || {
50
	error "Directory \"$srcdir\" does not look like the top-level $PROJECT directory"
51
}
52
53
# MacPorts on OS X only seems to have glibtoolize
54
LIBTOOLIZE=$(basename $(which libtoolize || which glibtoolize))
55
56
check_autotool_version aclocal 1.9
57
check_autotool_version automake 1.9
58
check_autotool_version autoconf 2.53
59
check_autotool_version $LIBTOOLIZE 1.4.3
60
check_autotool_version intltoolize 0.35.0
61
check_autotool_version pkg-config 0.14.0
62
63
run intltoolize --force --copy
64
run $LIBTOOLIZE --force --copy --automake
65
run aclocal -I build/m4/banshee -I build/m4/shamrock $ACLOCAL_FLAGS
66
run autoconf
67
run autoheader
68
test -f config.h.in && touch config.h.in
69
run automake --gnu --add-missing --force --copy \
70
	-Wno-portability -Wno-portability
71
72
if [ $# = 0 ]; then
73
	echo "WARNING: I am going to run configure without any arguments."
74
fi
75
76
run ./configure --enable-maintainer-mode $@