- Cleanups
[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 # ensure that we have the dirs we put ext libs in to appease automake
17 mkdir -p gst-libs/ext/ffmpeg/ffmpeg
18
19 # source helper functions
20 if test ! -e common/gst-autogen.sh;
21 then
22   echo There is something wrong with your source tree.
23   echo You are missing common/gst-autogen.sh
24   exit 1
25 fi
26 . common/gst-autogen.sh
27
28 CONFIGURE_DEF_OPT='--enable-maintainer-mode --enable-plugin-builddir --enable-debug --enable-DEBUG'
29
30 autogen_options $@
31
32 echo -n "+ check for build tools"
33 if test ! -z $NOCHECK; then echo " skipped"; else  echo; fi
34 version_check "autoconf" "$AUTOCONF autoconf autoconf-2.54 autoconf-2.53 autoconf-2.52" \
35               "ftp://ftp.gnu.org/pub/gnu/autoconf/" 2 52 || DIE=1
36 version_check "automake" "$AUTOMAKE automake automake-1.7 automake-1.6 automake-1.5" \
37               "ftp://ftp.gnu.org/pub/gnu/automake/" 1 5 || DIE=1
38 version_check "libtool" "" \
39               "ftp://ftp.gnu.org/pub/gnu/libtool/" 1 4 0 || DIE=1
40 version_check "pkg-config" "" \
41               "http://www.freedesktop.org/software/pkgconfig" 0 8 0 || DIE=1
42
43 die_check $DIE
44
45 autoconf_2.52d_check || DIE=1
46 aclocal_check || DIE=1
47 autoheader_check || DIE=1
48
49 die_check $DIE
50
51 # if no arguments specified then this will be printed
52 if test -z "$*"; then
53   echo "+ checking for autogen.sh options"
54   echo "  This autogen script will automatically run ./configure as:"
55   echo "  ./configure $CONFIGURE_DEF_OPT"
56   echo "  To pass any additional options, please specify them on the $0"
57   echo "  command line."
58 fi
59
60 toplevel_check $srcfile
61
62 tool_run "$aclocal" "-I m4 -I common/m4 $ACLOCAL_FLAGS"
63 tool_run "libtoolize" "--copy --force"
64 tool_run "$autoheader"
65
66 # touch the stamp-h.in build stamp so we don't re-run autoheader in maintainer mode -- wingo
67 echo timestamp > stamp-h.in 2> /dev/null
68
69 tool_run "$autoconf"
70 tool_run "$automake" "-a -c"
71
72 # if enable exists, add an -enable option for each of the lines in that file
73 if test -f enable; then
74   for a in `cat enable`; do
75     CONFIGURE_OPT="$CONFIGURE_OPT --enable-$a"
76   done
77 fi
78
79 # if disable exists, add an -disable option for each of the lines in that file
80 if test -f disable; then
81   for a in `cat disable`; do
82     CONFIGURE_OPT="$CONFIGURE_OPT --disable-$a"
83   done
84 fi
85
86 test -n "$NOCONFIGURE" && {
87   echo "+ skipping configure stage for package $package, as requested."
88   echo "+ autogen.sh done."
89   exit 0
90 }
91
92 echo "+ running configure ... "
93 test ! -z "$CONFIGURE_DEF_OPT" && echo "  ./configure default flags: $CONFIGURE_DEF_OPT"
94 test ! -z "$CONFIGURE_EXT_OPT" && echo "  ./configure external flags: $CONFIGURE_EXT_OPT"
95 echo
96
97 ./configure $CONFIGURE_DEF_OPT $CONFIGURE_EXT_OPT || {
98         echo "  configure failed"
99         exit 1
100 }
101
102 echo "Now type 'make' to compile $package."