4 # This script will download and install the dependencies needed for compiling
8 # Check for required packages
10 commands
="wget unzip automake autoconf libtool make bison"
13 for i
in $commands; do
14 if ! which $i > /dev
/null
2>&1; then
15 echo "You must have the '$i' package installed."
20 if [ $failed = 1 ]; then
27 echo -n "Downloading deps... "
28 if [ ! -f $dir/glib-2.6
.6.
zip ]; then
29 wget
-P $dir ftp://ftp.gtk.org
/pub
/gtk
/v2.6
/win32
/glib-2.6
.6.
zip ||
exit 1
31 if [ ! -f $dir/glib-dev-2.6
.6.
zip ]; then
32 wget
-P $dir ftp://ftp.gtk.org
/pub
/gtk
/v2.6
/win32
/glib-dev-2.6
.6.
zip ||
exit 1
34 if [ ! -f $dir/gettext-runtime-0.17
-1.
zip ]; then
35 wget
-P $dir http
://ftp.gnome.org
/pub
/gnome
/binaries
/win32
/dependencies
/gettext-runtime-0.17
-1.
zip
37 if [ ! -f $dir/libiconv-1.13
-mingw32-dev.
tar.gz
]; then
38 wget
-P $dir http
://sourceforge.net
/projects
/mingw
/files
/MinGW
/libiconv
/release
%201.13/libiconv-1.13
-mingw32-dev.
tar.gz
/download
42 echo -n "Extracting to cygwin-deps/ ..."
43 (cd $dir && for i
in *.
zip; do unzip -oq $i ||
exit 1; done) ||
exit 1
44 # This is needed because windows can't use dll's without an x flag.
45 chmod a
+x
$dir/bin
/*.dll
48 echo -n "Patching PC files... "
50 find $dir -name "*.pc" > $dir/pc-files
51 for i
in `cat $dir/pc-files`; do
52 (sed -e "s,^prefix=.*,prefix=$prefix,g" < $i > $i.tmp
&& mv $i.tmp
$i) ||
exit 1
57 # Create an environment shell file
59 echo "export PKG_CONFIG_PATH=\"$PWD/$dir/lib/pkgconfig:\$PKG_CONFIG\"" >> $dir/env.sh
60 echo "export PATH=\"$PWD/$dir/bin:\$PATH\"" >> $dir/env.sh
62 echo "Source $dir/env.sh into your environment using:"
64 echo "Then run mono's configure."