diff --git a/build-scripts/bootstrap-tarballs b/build-scripts/bootstrap-tarballs index 4a27d3009..620067aed 100755 --- a/build-scripts/bootstrap-tarballs +++ b/build-scripts/bootstrap-tarballs @@ -95,7 +95,7 @@ rm -f cfengine-3.*.tar.gz git rev-parse HEAD >"$BASEDIR"/output/core-commitID # Configure in order to run "make dist", deleted later. log_debug "Running configure on core repository..." -run_and_print_on_failure ./configure -C +configure_or_print_config_log -C # Normalize source timestamps to avoid errors like: # configure: error: newly created file is older than distributed files! find . -exec touch -t 202501010000.00 {} + @@ -111,7 +111,7 @@ rm -f cfengine-masterfiles*.tar.gz git rev-parse HEAD >"$BASEDIR"/output/masterfiles-commitID # Configure in order to run "make dist", deleted later. log_debug "Running configure on masterfiles repository..." -run_and_print_on_failure ./configure +configure_or_print_config_log # Normalize source timestamps to avoid errors like: # configure: error: newly created file is older than distributed files! find . -exec touch -t 202501010000.00 {} + diff --git a/build-scripts/configure b/build-scripts/configure index ba88698e3..f1769e777 100755 --- a/build-scripts/configure +++ b/build-scripts/configure @@ -127,19 +127,19 @@ fi log_debug running configure on core repo... # shellcheck disable=SC2086 -(cd "$BASEDIR"/core && run_and_print_on_failure env $OPTS CFLAGS="$CFLAGS" ./configure $ARGS) +(cd "$BASEDIR"/core && CFLAGS="$CFLAGS" configure_or_print_config_log $ARGS) if [ "$NOVA" = yes ]; then log_debug running configure on enterprise repo... # shellcheck disable=SC2086 - (cd "$BASEDIR"/enterprise && run_and_print_on_failure env $OPTS CFLAGS="$CFLAGS" ./configure $ARGS) + (cd "$BASEDIR"/enterprise && CFLAGS="$CFLAGS" configure_or_print_config_log $ARGS) if [ "$ROLE" = hub ]; then log_debug running configure on nova repo... # shellcheck disable=SC2086 - (cd "$BASEDIR"/nova && run_and_print_on_failure env $OPTS CFLAGS="$CFLAGS" ./configure $ARGS) + (cd "$BASEDIR"/nova && CFLAGS="$CFLAGS" configure_or_print_config_log $ARGS) fi fi log_debug running configure on masterfiles repo... # shellcheck disable=SC2086 -(cd "$BASEDIR"/masterfiles && run_and_print_on_failure env $OPTS CFLAGS="$CFLAGS" ./configure $ARGS) +(cd "$BASEDIR"/masterfiles && CFLAGS="$CFLAGS" configure_or_print_config_log $ARGS) diff --git a/build-scripts/functions b/build-scripts/functions index 1a83ee00c..e1807e4b7 100644 --- a/build-scripts/functions +++ b/build-scripts/functions @@ -810,6 +810,21 @@ run_and_print_on_failure() { return $exit_code } +# configure_or_print_config_log: run ./configure in the current directory, cat config.log in case of failure +# Args: +# $@ - all passed to ./configure +configure_or_print_config_log() { + run_and_print_on_failure ./configure $@ + rc=$? + if [ "$rc" != "0" ]; then + echo "Failed to run ./configure $@ in $(pwd)" + echo "--- Start of config.log ---" + cat config.log + echo "--- End of config.log ---" + exit $rc + fi +} + # log_debug: Print a debug message with script name prefix # Args: # $@ - Debug message