#!/bin/bash set -e function echo_usage { echo "usage: mconfigure [options] " echo " -c : copy configure/Makefile" echo " -d : compile" echo " -p : pack default: do all" ./configure -I } ############################################################################## # Main program ############################################################################## if [ ! -d debian ] then echo "run mconfigure in the project base directory with a debian directory in it!" exit 2 fi configure=0 compile=0 pack=0 confirure_args="-b ../build" while [ $OPTIND -le "$#" ] do if getopts "cdp" opt then case $opt in c) configure=1 ;; d) compile=1 ;; p) pack=1 ;; \?) $confirure_args="$configure_ars -$OPTARG" if [ $OPTARG="a" -o $OPTARG="C" -o $OPTARG="i" -o $OPTARG="v" ] then eval OPTIND=OPTIND+1 $confirure_args="$configure_ars ${!OPTIND}" fi ;; :) echo "Option -$OPTARG requires an argument." echo_usage exit 1 ;; esac else paket="${!OPTIND}" eval OPTIND=OPTIND+1 fi done if [ -z "$paket" ] then echo_usage exit 1 fi if [ $configure -eq 1 ] then # installation of configure file cp /usr/share/mbuild/configure . else if [ ! -e configure ] then ln -s /usr/share/mbuild/configure . fi fi configure_args="$configure_args $paket" if [ -x debian/$paket.preconfigure ] then # if necessary $configure_args can be added to setenv.sh debian/$paket.preconfigure fi #-> configure # .build or .cmake if [ -x debian/$paket.build -o -e debian/$paket.cmake ] then echo "BUILD_DIR=../build" >> debian/setenv.sh if [ -e ../build ] then rm -rf ../build mkdir ../build fi if grep -- "-prepare" debian/$paket.build >/dev/null then echo "prepare in .build no longer supported. Use .prebuild" exit 2 fi # sync build dir . debian/setenv.sh debian/rules sync fi # perform configure . debian/setenv.sh ./configure $configure_args # if nothing is selected, select all if [ $compile -eq 0 -a $pack -eq 0 ] then compile=1 pack=1 fi if [ $compile -eq 1 ] then # build make fi if [ $pack -eq 1 ] then # build package debian/rules pack fi