From 1a8cc6517c0b5d6ac2a78d4a961efc3c1da4e330 Mon Sep 17 00:00:00 2001 From: midipix Date: Tue, 25 Dec 2018 09:53:32 -0500 Subject: build system: configure: handle fatal errors more gracefully. --- configure | 26 +++++++++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) 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 -- cgit v1.2.3