X-Git-Url: http://wagnertech.de/gitweb/gitweb.cgi/projects.git/blobdiff_plain/6c1a75b4924102f180a09bbb1fa243479c6849a7..0b8ae20fd3339cdb7b02aa37ec295cb0ceca6380:/tools/make/mconfigure diff --git a/tools/make/mconfigure b/tools/make/mconfigure index b102ad7..dda9b97 100755 --- a/tools/make/mconfigure +++ b/tools/make/mconfigure @@ -3,9 +3,6 @@ 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 } @@ -20,20 +17,12 @@ then fi configure=0 -compile=0 -pack=0 -confirure_args="-b ../build" +configure_args="-i debian/tmp" while [ $OPTIND -le "$#" ] do - if getopts "cdp" opt + if getopts "c" 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 @@ -43,7 +32,7 @@ do ;; :) echo "Option -$OPTARG requires an argument." echo_usage - exit 1 + exit 3 ;; esac else @@ -55,67 +44,118 @@ done if [ -z "$paket" ] then echo_usage - exit 1 + exit 4 fi -if [ $configure -eq 1 ] +if [ ! -f debian/$paket.conf ] then - # installation of configure file - cp /usr/share/mbuild/configure . -else - if [ ! -e configure ] - then - ln -s /usr/share/mbuild/configure . - fi + echo "$paket.conf missing. We create it ..." + echo "to be implemented ..." + exit 5 fi -configure_args="$configure_args $paket" -if [ -x debian/$paket.preconfigure ] +if [ ! -e configure ] then - # if necessary $configure_args can be added to setenv.sh - debian/$paket.preconfigure + ln -s /usr/share/mbuild/configure . fi -#-> configure -# .build or .cmake -if [ -x debian/$paket.build -o -e debian/$paket.cmake ] +# clean build directory +if [ "$compile_type" != "NONE" ] then - echo "BUILD_DIR=../build" >> debian/setenv.sh - if [ -e ../build ] + if [ -e ~/build ] then - rm -rf ../build - mkdir ../build + rm -rf ~/build + mkdir ~/build fi +fi + +# perform configure +. debian/$paket.conf +if [ -n "$compile_dir" ] +then + configure_args="$configure_args -b $compile_dir" +fi +if [ -z "$compile_type" ] +then + echo "compile_type required in $paket.conf" + exit 51 +fi +if [ "$target_type" == "FILE" ] +then + # no version needed + configure_args="$configure_args -V" +fi +configure_args="$configure_args $paket" +echo "Executing ./configure $configure_args ..." +./configure $configure_args + +if [ "$compile_type" != "NONE" ] +then if grep -- "-prepare" debian/$paket.build >/dev/null then echo "prepare in .build no longer supported. Use .prebuild" - exit 2 + exit 6 fi # sync build dir . debian/setenv.sh debian/rules sync + make fi -# perform configure -. debian/setenv.sh -./configure $configure_args - -# if nothing is selected, select all -if [ $compile -eq 0 -a $pack -eq 0 ] +# pack prepare +if [ "$target_type" == "DEB" ] then - compile=1 - pack=1 -fi - -if [ $compile -eq 1 ] + if [ ! -f debian/$paket.cp ] + then + echo "debian/$paket.cp missing for target type DEB" + exit 9 + fi + if [ ! -f debian/$paket.control ] + then + echo "debian/$paket.control missing for target type DEB" + exit 10 + fi + + echo "PACK=binary" >> debian/rules.pre + if grep "^Architecture: *all" debian/$paket.control >/dev/null + then + echo "arch = all" >> debian/rules.pre + echo 'BINARY_INDEP = copy ../$(paket)_$(version)-$(build)_all.deb' >> debian/rules.pre + else + echo 'arch = ${DEB_HOST_ARCH}' >> debian/rules.pre + echo "BINARY_ARCH = copy ../${paket}_$version-${build}_"'$(arch).deb' >> debian/rules.pre + fi + if ! [ -f debian/$paket.changelog ] + then + echo "changelog_source = debian/default.changelog" >> debian/rules.pre + if [ -f debian/default.changelog ] + then + rm debian/default.changelog + fi + fi +elif [ "$target_type" == "ZIP" ] then - # build - make -fi - -if [ $pack -eq 1 ] + echo "PACK=zip" >> debian/rules.pre + if [ ! -f debian/$paket.cp ] + then + echo "debian/$paket.cp missing for target type ZIP" + exit 11 + fi +elif [ "$target_type" == "FILE" ] then - # build package - debian/rules pack + echo "PACK=version" >> debian/rules.pre + if [ -z "$compile_target" ] + then + echo "compile_target is needed for target_type FILE" + exit 12 + fi + echo "TARGET = $compile_target" >> debian/rules.pre + +else + echo "Unknown target type: $target_type" + exit 13 fi +# build package +debian/rules pack +