|
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159 |
- #!/bin/bash
- VERSION=0.1
- PACKAGE=pimp
- prefix=/usr/local
- config=RELEASE
- configurations=" RELEASE DEBUG"
- common_packages=" glade-sharp-2.0;2.12.1 glib-sharp-2.0;2.12.1 gtk-sharp-2.0;2.12.1"
-
-
- usage ()
- {
- echo "Usage : configure [OPTION]... [--config=CONFIG]"
- echo
- echo "Options:"
- echo " --prefix=PREFIX install architecture-independent files in PREFIX"
- echo " [/usr/local]"
- echo " --bindir=DIR user executables [PREFIX/bin]"
- echo " --datadir=DIR read-only architecture-independent data [PREFIX/share]"
- echo " --libdir=DIR object code libraries [PREFIX/lib]"
- echo
- echo "Configurations available :"
- for c in $configurations; do
- if [ "$c" = "$config" ]; then
- echo " $c (Default)"
- else
- echo " $c"
- fi
- done
- }
-
- validate_config ()
- {
- test -z "$1" && return 0
- for c in $configurations; do
- if [ "$c" = "$1" ]; then
- return 1
- fi
- done
- return 0
- }
-
- check_package ()
- {
- name=`echo $1 | cut -d\; -f1`
- version=`echo $1 | cut -d\; -f2`
-
- echo -n "Checking for package '$name'.." | tee -a config.log
- pkg-config --atleast-version=$version $name
- if [ $? -ne 0 ]; then
- echo " ERROR: Package named '$name' >= $version not found." | tee -a config.log
- echo "Try adjusting your PKG_CONFIG_PATH environment variable." | tee -a config.log
- return 1
- fi
- echo " found." | tee -a config.log
- }
-
- check_required_packages ()
- {
- echo "Looking for required packages" | tee config.log
- var=required_packages_$config
- for pkg in $common_packages ${!var}; do
- check_package $pkg
- retval=$?
- [ $retval -ne 0 ] && return $retval
- done
- return 0
- }
-
- while test x$1 != x; do
- case $1 in
- --prefix=*)
- prefix=`echo $1 | sed 's/--prefix=//'`
- ;;
- --prefix)
- shift
- prefix=$1
- ;;
- --libdir=*)
- libdir=`echo $1 | sed 's/--libdir=//'`
- ;;
- --libdir)
- shift
- libdir=$1
- ;;
- --bindir=*)
- bindir=`echo $1 | sed 's/--bindir=//'`
- ;;
- --bindir)
- shift
- bindir=$1
- ;;
- --datadir=*)
- datadir=`echo $1 | sed 's/--datadir=//'`
- ;;
- --datadir)
- shift
- datadir=$1
- ;;
- --config=*)
- conf=`echo $1 | sed 's/--config=//'`
- validate_config "$conf"
- if [ $? -eq 1 ]; then
- config=$conf
- else
- echo "Invalid config name - $conf"
- usage
- exit 1
- fi
- ;;
- --help)
- usage
- exit
- ;;
- *)
- echo Unknown argument $1 >&2
- usage
- exit 1
- ;;
- esac
- shift
- done
-
- check_required_packages
- [ $? -eq 1 ] && exit 1
-
- if [ -z "$libdir" ]; then
- libdir=$prefix/lib
- fi
- if [ -z "$bindir" ]; then
- bindir=$prefix/bin
- fi
- if [ -z "$datadir" ]; then
- datadir=$prefix/share
- fi
-
- echo "prefix=$prefix" > config.make
- echo "libdir=$libdir" >> config.make
- echo "bindir=$bindir" >> config.make
- echo "datadir=$datadir" >> config.make
- echo "RUNTIME=mono" >> config.make
- echo "ASSEMBLY_VERSION=$VERSION.0.0" >> config.make
- echo "VERSION=$VERSION" >> config.make
- echo "PACKAGE=$PACKAGE" >> config.make
- echo "CONFIG=$config" >> config.make
-
- echo
- echo "$PACKAGE has been configured with "
- echo " prefix = $prefix"
- if [ "$libdir" != "$prefix/lib" ]; then
- echo " libdir = $libdir"
- fi
- if [ "$bindir" != "$prefix/bin" ]; then
- echo " bindir = $bindir"
- fi
- if [ "$datadir" != "$prefix/share" ]; then
- echo " datadir = $datadir"
- fi
- echo " config = $config"
- echo
|