From 7962bb11f9ef2a71559a5e0c87eaad3017a75d71 Mon Sep 17 00:00:00 2001 From: midipix Date: Dec 25 2018 14:54:46 +0000 Subject: build system: configure: handle fatal errors more gracefully. --- diff --git a/configure b/configure index e88666c..abb0750 100755 --- a/configure +++ b/configure @@ -2,6 +2,8 @@ set -eu +trap config_failure 1 2 EXIT + usage() { cat "$mb_project_dir"/config.usage @@ -182,6 +184,8 @@ verify_build_directory() mb_project_dir='.' fi fi + + rm -f Makefile Makefile.host Makefile.tmp Makefile.failed } @@ -682,6 +686,26 @@ config_status() printf "\nconfiguration completed successfully.\n\n" } + +config_failure() +{ + if [ -f Makefile ]; then + mb_error='failed to use the generated Makefile.' + printf '\n%s: error: %s\n' "${0}" "$mb_error" >&2 + mv Makefile Makefile.failed + fi + + exit 2 +} + + +config_success() +{ + trap '' EXIT + exit 0 +} + + # one: init init_vars verify_build_directory @@ -942,4 +966,4 @@ config_status # all done -exit 0 +config_success