Blob Blame Raw
From 242ce139276b9de1e5f960070e433111a3ab5194 Mon Sep 17 00:00:00 2001
From: Vladimir 'phcoder' Serbinenko <phcoder@gmail.com>
Date: Thu, 3 Jan 2013 21:34:34 +0100
Subject: [PATCH 081/364] 	* configure.ac: Extend -Wno-trampolines to
 host.

---
 ChangeLog    |  4 ++++
 configure.ac | 17 +++++++++++++++++
 2 files changed, 21 insertions(+)

diff --git a/ChangeLog b/ChangeLog
index 2717f8a..087b5c3 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,9 @@
 2013-01-03  Vladimir Serbinenko  <phcoder@gmail.com>
 
+	* configure.ac: Extend -Wno-trampolines to host.
+
+2013-01-03  Vladimir Serbinenko  <phcoder@gmail.com>
+
 	* grub-core/fs/iso9660.c (grub_iso9660_susp_iterate): Avoid hang if
 	entry->len = 0.
 
diff --git a/configure.ac b/configure.ac
index a41f117..dde954e 100644
--- a/configure.ac
+++ b/configure.ac
@@ -358,6 +358,23 @@ AC_CHECK_HEADER([util.h], [
 ])
 AC_SUBST([LIBUTIL])
 
+AC_CACHE_CHECK([whether -Wno-trampolines work], [grub_cv_host_cc_wnotrampolines], [
+  SAVED_CFLAGS="$CFLAGS"
+  # Test for -Wtrampolines rather than -Wno-trampolines to reduce confusion
+  # in the event of later failures (since -Wno-* is always accepted, but
+  # produces a diagnostic if something else is wrong).
+  CFLAGS="$HOST_CFLAGS -Wtrampolines"
+  AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <stdarg.h>
+int va_arg_func (int fixed, va_list args);]], [[]])],
+      [grub_cv_host_cc_wnotrampolines=yes],
+      [grub_cv_host_cc_wnotrampolines=no])
+  CFLAGS="$SAVED_CFLAGS"
+])
+
+if test x"$grub_host_cv_cc_wnotrampolines" = xyes ; then
+  HOST_CFLAGS="$HOST_CFLAGS -Wno-trampolines"
+fi
+
 #
 # Check for host and build compilers.
 #
-- 
1.8.1.4