list preferred autotools
[platform/upstream/gstreamer.git] / autogen.sh
1 #!/bin/bash
2 # Run this to generate all the initial makefiles, etc.
3
4 DIE=0
5 package=gst-plugins
6 srcfile=gst/law/alaw.c
7
8 # a quick cvs co if necessary to alleviate the pain - may remove this
9 # when developers get a clue ;)
10 if test ! -d common; 
11 then 
12   echo "+ getting common/ from cvs"
13   cvs co common 
14 fi
15
16 # source helper functions
17 if test ! -e common/gst-autogen.sh;
18 then
19   echo There is something wrong with your source tree.
20   echo You are missing common/gst-autogen.sh
21   exit 1
22 fi
23 . common/gst-autogen.sh
24
25 CONFIGURE_DEF_OPT='--enable-maintainer-mode --enable-plugin-builddir --enable-debug --enable-DEBUG'
26
27 autogen_options $@
28
29 echo -n "+ check for build tools"
30 if test ! -z $NOCHECK; then echo " skipped"; else  echo; fi
31 version_check "autoconf" "$AUTOCONF autoconf autoconf-2.53 autoconf-2.52" \
32               "ftp://ftp.gnu.org/pub/gnu/autoconf/" 2 52 || DIE=1
33 version_check "automake" "$AUTOMAKE automake automake-1.6 automake-1.5" \
34               "ftp://ftp.gnu.org/pub/gnu/automake/" 1 5 || DIE=1
35 version_check "libtool" "" \
36               "ftp://ftp.gnu.org/pub/gnu/libtool/" 1 4 0 || DIE=1
37 version_check "pkg-config" "" \
38               "http://www.freedesktop.org/software/pkgconfig" 0 8 0 || DIE=1
39
40 die_check $DIE
41
42 autoconf_2.52d_check || DIE=1
43 aclocal_check || DIE=1
44 autoheader_check || DIE=1
45
46 die_check $DIE
47
48 # if no arguments specified then this will be printed
49 if test -z "$*"; then
50   echo "+ checking for autogen.sh options"
51   echo "  This autogen script will automatically run ./configure as:"
52   echo "  ./configure $CONFIGURE_DEF_OPT"
53   echo "  To pass any additional options, please specify them on the $0"
54   echo "  command line."
55 fi
56
57 toplevel_check $srcfile
58
59 tool_run "$aclocal" "-I m4 -I common/m4 $ACLOCAL_FLAGS"
60
61 # FIXME : why does libtoolize keep complaining about aclocal ?
62
63 echo "+ not running libtoolize until libtool fix has flown downstream"
64 # tool_run "libtoolize" "--copy --force"
65 tool_run "$autoheader"
66
67 # touch the stamp-h.in build stamp so we don't re-run autoheader in maintainer mode -- wingo
68 echo timestamp > stamp-h.in 2> /dev/null
69
70 tool_run "$autoconf"
71 tool_run "$automake" "-a -c"
72
73 # if enable exists, add an -enable option for each of the lines in that file
74 if test -f enable; then
75   for a in `cat enable`; do
76     CONFIGURE_OPT="$CONFIGURE_OPT --enable-$a"
77   done
78 fi
79
80 # if disable exists, add an -disable option for each of the lines in that file
81 if test -f disable; then
82   for a in `cat disable`; do
83     CONFIGURE_OPT="$CONFIGURE_OPT --disable-$a"
84   done
85 fi
86
87 test -n "$NOCONFIGURE" && {
88   echo "+ skipping configure stage for package $package, as requested."
89   echo "+ autogen.sh done."
90   exit 0
91 }
92
93 echo "+ running configure ... "
94 test ! -z "$CONFIGURE_DEF_OPT" && echo "  ./configure default flags: $CONFIGURE_DEF_OPT"
95 test ! -z "$CONFIGURE_EXT_OPT" && echo "  ./configure external flags: $CONFIGURE_EXT_OPT"
96 echo
97
98 ./configure $CONFIGURE_DEF_OPT $CONFIGURE_EXT_OPT || {
99         echo "  configure failed"
100         exit 1
101 }
102
103 echo "Now type 'make' to compile $package."