autogen.sh: replace test -e with test -x for mkinstalldirs to be more portable.
[platform/upstream/gstreamer.git] / autogen.sh
1 #!/bin/sh
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 ! -f 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 6 || DIE=1
38 version_check "autopoint" "autopoint" \
39               "ftp://ftp.gnu.org/pub/gnu/gettext/" 0 11 5 || DIE=1
40 version_check "libtoolize" "$LIBTOOLIZE libtoolize libtoolize14" \
41               "ftp://ftp.gnu.org/pub/gnu/libtool/" 1 4 0 || DIE=1
42 version_check "pkg-config" "" \
43               "http://www.freedesktop.org/software/pkgconfig" 0 8 0 || DIE=1
44
45 die_check $DIE
46
47 autoconf_2_52d_check || DIE=1
48 aclocal_check || DIE=1
49 autoheader_check || DIE=1
50
51 die_check $DIE
52
53 # if no arguments specified then this will be printed
54 if test -z "$*"; then
55   echo "+ checking for autogen.sh options"
56   echo "  This autogen script will automatically run ./configure as:"
57   echo "  ./configure $CONFIGURE_DEF_OPT"
58   echo "  To pass any additional options, please specify them on the $0"
59   echo "  command line."
60 fi
61
62 toplevel_check $srcfile
63
64 # autopoint
65 #    older autopoint (< 0.12) has a tendency to complain about mkinstalldirs
66 if test -x mkinstalldirs; then rm mkinstalldirs; fi
67 #    first remove patch if necessary, then run autopoint, then reapply
68 if test -f po/Makefile.in.in;
69 then
70   patch -p0 -R < common/gettext.patch
71 fi
72 tool_run "$autopoint --force"
73 patch -p0 < common/gettext.patch
74
75 tool_run "$aclocal" "-I m4 -I common/m4 $ACLOCAL_FLAGS"
76 tool_run "$libtoolize" "--copy --force"
77 tool_run "$autoheader"
78
79 # touch the stamp-h.in build stamp so we don't re-run autoheader in maintainer mode -- wingo
80 echo timestamp > stamp-h.in 2> /dev/null
81
82 tool_run "$autoconf"
83 tool_run "$automake" "-a -c"
84
85 # if enable exists, add an -enable option for each of the lines in that file
86 if test -f enable; then
87   for a in `cat enable`; do
88     CONFIGURE_FILE_OPT="--enable-$a"
89   done
90 fi
91
92 # if disable exists, add an -disable option for each of the lines in that file
93 if test -f disable; then
94   for a in `cat disable`; do
95     CONFIGURE_FILE_OPT="$CONFIGURE_FILE_OPT --disable-$a"
96   done
97 fi
98
99 test -n "$NOCONFIGURE" && {
100   echo "+ skipping configure stage for package $package, as requested."
101   echo "+ autogen.sh done."
102   exit 0
103 }
104
105 echo "+ running configure ... "
106 test ! -z "$CONFIGURE_DEF_OPT" && echo "  ./configure default flags: $CONFIGURE_DEF_OPT"
107 test ! -z "$CONFIGURE_EXT_OPT" && echo "  ./configure external flags: $CONFIGURE_EXT_OPT"
108 test ! -z "$CONFIGURE_FILE_OPT" && echo "  ./configure enable/disable flags: $CONFIGURE_FILE_OPT"
109 echo
110
111 ./configure $CONFIGURE_DEF_OPT $CONFIGURE_EXT_OPT $CONFIGURE_FILE_OPT || {
112         echo "  configure failed"
113         exit 1
114 }
115
116 echo "Now type 'make' to compile $package."