diff options
Diffstat (limited to 'parts/appwizard/common/scons/configure')
-rwxr-xr-x | parts/appwizard/common/scons/configure | 87 |
1 files changed, 87 insertions, 0 deletions
diff --git a/parts/appwizard/common/scons/configure b/parts/appwizard/common/scons/configure new file mode 100755 index 00000000..289a6843 --- /dev/null +++ b/parts/appwizard/common/scons/configure @@ -0,0 +1,87 @@ +#! /bin/sh +# Fancy colors used to beautify the output a bit. +# +NORMAL="\033[0m" +BOLD="\033[1m" +RED="\033[91m" +YELLOW="\033[93m" +GREEN="\033[92m" + +# Checks for Python interpreter. Honours $PYTHON if set. Stores path to +# interpreter in $PYTHON. +# +checkPython() +{ + if [ -z $PYTHON ]; then + PYTHON=`which python 2>/dev/null` + fi + echo -n "Checking for Python : " + if [ ! -x "$PYTHON" ]; then + echo -e $GREEN"not found!"$NORMAL + echo "Please make sure that the Python interpreter is available in your PATH" + echo "or invoke configure using the PYTHON flag, e.g." + echo "$ PYTHON=/usr/local/bin/python configure" + exit 1 + fi + echo -e $GREEN"$PYTHON"$NORMAL +} + +# Checks for SCons. Honours $SCONS if set. Stores path to 'scons' in $SCONS. +# Requires that $PYTHON is set. +# +checkSCons() +{ + echo -n "Checking for SCons : " + if [ -z $SCONS ]; then + SCONS=`which scons 2>/dev/null` + fi + if [ ! -x "$SCONS" ]; then + echo -e $BOLD"not found, will use mini distribution."$NORMAL + tar xjf admin/scons-mini.tar.bz2 + SCONS="./scons" + else + echo -e $GREEN"$SCONS"$NORMAL + fi + SCONS="$SCONS -Q" +} + +# Generates a Makefile. Requires that $SCONS is set. +# +generateMakefile() +{ + cat > Makefile << EOF +all: + @$SCONS + +# it is also possible to use +# @$SCONS -j4 + +install: + @$SCONS install + +clean: + @$SCONS -c + +uninstall: + @$SCONS -c install + +dist: + @$SCONS dist + +distclean: + @$SCONS -c + rm -rf cache/ +EOF +} + +checkPython +checkSCons + +if [[ "$1" == "--help" ]]; then + $SCONS --help + exit +fi + +generateMakefile +$SCONS configure $@ + |