- added urls to the required libs, with a lot of added libs
[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=GStreamer
6 srcfile=gst/gstobject.h
7
8 (autoconf --version) < /dev/null > /dev/null 2>&1 || {
9         echo
10         echo "You must have autoconf installed to compile $package."
11         echo "Download the appropriate package for your distribution,"
12         echo "or get the source tarball at ftp://ftp.gnu.org/pub/gnu/autoconf/"
13         DIE=1
14 }
15
16 (automake --version) < /dev/null > /dev/null 2>&1 || {
17         echo
18         echo "You must have automake installed to compile $package."
19         echo "Download the appropriate package for your distribution,"
20         echo "or get the source tarball at ftp://ftp.gnu.org/pub/gnu/automake/"
21         DIE=1
22 }
23 automakevermin=`(automake --version|head -n 1|sed 's/^.* //;s/\./ /g;';echo "1 4")|sort -n|head -n 1`
24 automakevergood=`(automake --version|head -n 1|sed 's/^.* //;s/\./ /g;';echo "1 4f")|sort -n|head -n 1`
25 if test "x$automakevermin" != "x1 4"; then
26 # version is less than 1.4, the minimum suitable version
27         echo
28         echo "You must have automake version 1.4 or greater installed."
29         echo "Download the appropriate package for your distribution,"
30         echo "or get the source tarball at ftp://ftp.gnu.org/pub/gnu/automake/"
31         DIE=1
32 else
33 if test "x$automakevergood" != "x1 4f"; then
34 echo -n "Checking for patched automake..."
35 # version is less than 1.4f, the version with the patch applied
36 # check that patch is applied
37 cat > autogen.patch.tmp <<EOF
38 --- 1
39 +++ 2
40 @@ -2383,8 +2383,8 @@
41         # to all possible directories, and use it.  If DIST_SUBDIRS is
42         # defined, just use it.
43         local (\$dist_subdir_name);
44 -       if (&variable_defined ('DIST_SUBDIRS')
45 -           || &variable_conditions ('SUBDIRS'))
46 +       if (&variable_conditions ('SUBDIRS')
47 +           || &variable_defined ('DIST_SUBDIRS'))
48         {
49             \$dist_subdir_name = 'DIST_SUBDIRS';
50             if (! &variable_defined ('DIST_SUBDIRS'))
51 EOF
52   if patch -s -f --dry-run `which automake` <autogen.patch.tmp >/dev/null 2>&1;
53   then
54     # Patch succeeded: appropriately patched.
55     echo " found."
56   else
57     # Patch failed: either unpatched or incompatibly patched.
58     if patch -R -s -f --dry-run `which automake` <autogen.patch.tmp >/dev/null 2>&1;
59     then
60       # Reversed patch succeeded: not patched.
61       echo " not found."
62       echo
63       echo "Detected automake version 1.4 (or near) without patch."
64       echo "Your version of automake needs a patch applied in order to operate correctly."
65       echo
66       patchedfile="`pwd`/automake"
67       if test -e $patchedfile; then 
68         PATCHED=0
69       else
70         echo "patching..."
71         patch -R -s -f `which automake` <autogen.patch.tmp -o $patchedfile;
72         chmod +x $patchedfile;
73         PATCHED=1
74       fi
75       echo
76       echo "***************************************************************************"
77       if test -e $patchedfile; then 
78         if test "x$PATCHED" == "x1"; then
79           echo "A patched version of automake is available at:"
80           echo "$patchedfile"
81         fi
82       fi
83       echo "You should abort the build now and read the README file for an explanation."
84       echo "***************************************************************************"
85       echo
86       # Give user time to respond
87       sleep 5;
88       echo "continuing anyway: I recommend keeping a check on the amount of memory used"
89       echo "while running automake - it is likely to grow extremely large."
90       echo
91     else
92       # Reversed patch failed: incompatibly patched.
93       echo
94       echo
95       echo "Unable to check whether automake is appropriately patched."
96       echo "Your version of automake may need to have a patch applied."
97       echo "Read the README file for more explanation."
98       echo
99     fi
100   fi
101 rm autogen.patch.tmp
102 fi
103 fi
104
105
106
107 (libtool --version) < /dev/null > /dev/null 2>&1 || {
108         echo
109         echo "You must have libtool installed to compile $package."
110         echo "Get the latest version from ftp://alpha.gnu.org/gnu/libtool/"
111         DIE=1
112 }
113
114 libtool_version=`libtool --version | sed 's/^.* \([0-9\.]*\) .*$/\1/'`
115 libtool_major=`echo $libtool_version | cut -d. -f1`
116 libtool_minor=`echo $libtool_version | cut -d. -f2`
117 libtool_micro=`echo $libtool_version | cut -d. -f3`
118 if [ x$libtool_micro = x ]; then
119         libtool_micro=0
120 fi
121 if [ $libtool_major -le 1 ]; then
122         if [ $libtool_major -lt 1 ]; then
123                 echo
124                 echo "You must have libtool 1.3.5 or greater to compile $package."
125                 echo "Get the latest version from ftp://alpha.gnu.org/gnu/libtool/"
126                 DIE=1
127         elif [ $libtool_minor -le 3 ]; then
128                 if [ $libtool_minor -lt 3 ]; then
129                         echo
130                         echo "You must have libtool 1.3.5 or greater to compile $package."
131                         echo "Get the latest version from ftp://alpha.gnu.org/gnu/libtool/"
132                         DIE=1
133                 elif [ $libtool_micro -lt 5 ]; then
134                         echo
135                         echo "You must have libtool 1.3.5 or greater to compile $package."
136                         echo "Get the latest version from ftp://alpha.gnu.org/gnu/libtool/"
137                         DIE=1
138                 fi
139         fi
140 fi
141
142 if test "$DIE" -eq 1; then
143         exit 1
144 fi
145
146 test -f $srcfile || {
147         echo "You must run this script in the top-level $package directory"
148         exit 1
149 }
150
151 if test -z "$*"; then
152         echo "I am going to run ./configure with no arguments - if you wish "
153         echo "to pass any to it, please specify them on the $0 command line."
154 fi
155
156
157 # Generate configure.in and configure.ac
158 sed <configure.base >configure.in '/^SUBSTFOR configure.ac:.*/d;s/^SUBSTFOR configure.in://g'
159 sed <configure.base >configure.ac '/^SUBSTFOR configure.in:.*/d;s/^SUBSTFOR configure.ac://g'
160
161 libtoolize --copy --force
162 aclocal $ACLOCAL_FLAGS || {
163         echo
164         echo "aclocal failed - check that all needed development files are present on system"
165         exit 1
166 }
167 autoheader || {
168         echo
169         echo "autoheader failed"
170         exit 1
171 }
172 autoconf || {
173         echo
174         echo "autoconf failed"
175         #exit 1
176 }
177 automake --add-missing || {
178         echo
179         echo "automake failed"
180         #exit 1
181 }
182
183 # now remove the cache, because it can be considered dangerous in this case
184 rm -f config.cache
185
186 # The new configure options for busy application developers (Hadess)
187 #./configure --enable-maintainer-mode --enable-debug --enable-debug-verbose 
188
189 ./configure --enable-maintainer-mode --enable-plugin-srcdir --enable-debug --enable-debug-verbose "$@" || {
190         echo
191         echo "configure failed"
192         exit 1
193 }
194
195 echo 
196 echo "Now type 'make' to compile $package."