Bug 788613 - Dump config.log when configure fails. r=ted
authorMike Hommey <mh+mozilla@glandium.org>
Mon, 08 Apr 2013 08:31:50 +0200
changeset 127961 c3361cd2e9678f98971d639a8459f8852d94293b
parent 127960 de4f34069146e681412af811d645f75d4b226968
child 127962 06e05aaebe7bd7f94e3b86052bcdaf7c5c893ae4
push id1481
push userryanvm@gmail.com
push dateTue, 09 Apr 2013 00:04:18 +0000
treeherderfx-team@2fdd3d16ed3b [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersted
bugs788613
milestone23.0a1
Bug 788613 - Dump config.log when configure fails. r=ted
aclocal.m4
build/autoconf/hooks.m4
js/src/aclocal.m4
js/src/build/autoconf/hooks.m4
--- a/aclocal.m4
+++ b/aclocal.m4
@@ -1,13 +1,14 @@
 dnl
 dnl Local autoconf macros used with mozilla
 dnl The contents of this file are under the Public Domain.
 dnl
 
+builtin(include, build/autoconf/hooks.m4)dnl
 builtin(include, build/autoconf/config.status.m4)dnl
 builtin(include, build/autoconf/toolchain.m4)dnl
 builtin(include, build/autoconf/ccache.m4)dnl
 builtin(include, build/autoconf/nspr.m4)dnl
 builtin(include, build/autoconf/nss.m4)dnl
 builtin(include, build/autoconf/pkg.m4)dnl
 builtin(include, build/autoconf/codeset.m4)dnl
 builtin(include, build/autoconf/altoptions.m4)dnl
new file mode 100644
--- /dev/null
+++ b/build/autoconf/hooks.m4
@@ -0,0 +1,26 @@
+dnl This Source Code Form is subject to the terms of the Mozilla Public
+dnl License, v. 2.0. If a copy of the MPL was not distributed with this
+dnl file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+dnl Output the contents of config.log when configure exists with an
+dnl error code.
+define([MOZ_CONFIG_LOG_TRAP],
+[changequote(<<<, >>>)dnl
+trap '[ "$?" != 0 ] && echo "------ config.log ------" && tail -n 25 config.log' EXIT
+changequote([, ])dnl
+])
+
+dnl Wrap AC_INIT_PREPARE to add the above trap.
+define([_MOZ_AC_INIT_PREPARE], defn([AC_INIT_PREPARE]))
+define([AC_INIT_PREPARE],
+[_MOZ_AC_INIT_PREPARE($1)
+MOZ_CONFIG_LOG_TRAP
+])
+
+dnl Disable the trap when running sub-configures.
+define([_MOZ_AC_OUTPUT_SUBDIRS], defn([AC_OUTPUT_SUBDIRS]))
+define([AC_OUTPUT_SUBDIRS],
+[trap '' EXIT
+_MOZ_AC_OUTPUT_SUBDIRS($1)
+MOZ_CONFIG_LOG_TRAP
+])
--- a/js/src/aclocal.m4
+++ b/js/src/aclocal.m4
@@ -1,13 +1,14 @@
 dnl
 dnl Local autoconf macros used with mozilla
 dnl The contents of this file are under the Public Domain.
 dnl
 
+builtin(include, build/autoconf/hooks.m4)dnl
 builtin(include, build/autoconf/config.status.m4)dnl
 builtin(include, build/autoconf/toolchain.m4)dnl
 builtin(include, build/autoconf/ccache.m4)dnl
 builtin(include, build/autoconf/pkg.m4)dnl
 builtin(include, build/autoconf/nspr.m4)dnl
 builtin(include, build/autoconf/altoptions.m4)dnl
 builtin(include, build/autoconf/moznbytetype.m4)dnl
 builtin(include, build/autoconf/mozprog.m4)dnl
new file mode 100644
--- /dev/null
+++ b/js/src/build/autoconf/hooks.m4
@@ -0,0 +1,26 @@
+dnl This Source Code Form is subject to the terms of the Mozilla Public
+dnl License, v. 2.0. If a copy of the MPL was not distributed with this
+dnl file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+dnl Output the contents of config.log when configure exists with an
+dnl error code.
+define([MOZ_CONFIG_LOG_TRAP],
+[changequote(<<<, >>>)dnl
+trap '[ "$?" != 0 ] && echo "------ config.log ------" && tail -n 25 config.log' EXIT
+changequote([, ])dnl
+])
+
+dnl Wrap AC_INIT_PREPARE to add the above trap.
+define([_MOZ_AC_INIT_PREPARE], defn([AC_INIT_PREPARE]))
+define([AC_INIT_PREPARE],
+[_MOZ_AC_INIT_PREPARE($1)
+MOZ_CONFIG_LOG_TRAP
+])
+
+dnl Disable the trap when running sub-configures.
+define([_MOZ_AC_OUTPUT_SUBDIRS], defn([AC_OUTPUT_SUBDIRS]))
+define([AC_OUTPUT_SUBDIRS],
+[trap '' EXIT
+_MOZ_AC_OUTPUT_SUBDIRS($1)
+MOZ_CONFIG_LOG_TRAP
+])