]> git.ipfire.org Git - thirdparty/elfutils.git/commitdiff
configure: Add check for gcc -Wstack-usage.
authorMark Wielaard <mjw@redhat.com>
Mon, 8 Jun 2015 22:28:13 +0000 (00:28 +0200)
committerMark Wielaard <mjw@redhat.com>
Wed, 10 Jun 2015 12:14:57 +0000 (14:14 +0200)
Some older gcc versions don't support -Wstack-usage. Only use it when
accepted by the compiler.

Signed-off-by: Mark Wielaard <mjw@redhat.com>
ChangeLog
config/ChangeLog
config/eu.am
configure.ac

index 3444519132aaa128baf46af5016c34ba49a0880f..f632b82cae8ce072daf0a682aa8a60ae26b508cf 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2015-06-08  Mark Wielaard  <mjw@redhat.com>
+
+       * configure.ac (ADD_STACK_USAGE_WARNING): New conditional based on
+       gcc -Wstack-usage check.
+
 2015-05-31  Mark Wielaard  <mjw@redhat.com>
 
        * configure.ac (MODVERSION): Define using LIBEBL_SUBDIR, eu_version
index 74379d4f8bf0050abce1656d9d20bfcaa1820fe6..60b9094015376a131dd0a694afd3c8ae418eeeb5 100644 (file)
@@ -1,3 +1,9 @@
+2015-05-23  Mark Wielaard  <mjw@redhat.com>
+
+       * eu.am (STACK_USAGE_WARNING): New variable set based on
+       ADD_STACK_USAGE_WARNING conditional.
+       (AM_CFLAGS): Use STACK_USAGE_WARNING variable.
+
 2015-05-23  Mark Wielaard  <mjw@redhat.com>
 
        * eu.am (AM_CFLAGS): Add -Wstack-usage=262144.
index e935335a7100ea3b3a42db6af78f61e1bf98e72e..70d32deb4f83d29bce2996505c1896aa46c4c7cb 100644 (file)
@@ -33,10 +33,15 @@ DEFS = -D_GNU_SOURCE -DHAVE_CONFIG_H -DLOCALEDIR='"${localedir}"'
 AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_srcdir)/lib -I..
 
 # Warn about stack usage of more than 256K = 262144 bytes.
+if ADD_STACK_USAGE_WARNING
+STACK_USAGE_WARNING=-Wstack-usage=262144
+else
+STACK_USAGE_WARNING=
+endif
 AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 \
            $(if $($(*F)_no_Werror),,-Werror) \
            $(if $($(*F)_no_Wunused),,-Wunused -Wextra) \
-           $(if $($(*F)_no_Wstack_usage),,-Wstack-usage=262144) \
+           $(if $($(*F)_no_Wstack_usage),,$(STACK_USAGE_WARNING)) \
            $($(*F)_CFLAGS)
 
 COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage, $(COMPILE))
index f9fb5be759dedd02d0e797323a7bb3b3f0dc25cd..4a4b27e1b65a6f0be4dcbee89dd646c74dd9bb1a 100644 (file)
@@ -270,6 +270,14 @@ AS_IF([test "x$enable_symbol_versioning" = "xno"],
       [AC_MSG_WARN([Disabling symbol versioning breaks ABI compatibility.])
        enable_symbol_versioning=no],[enable_symbol_versioning=yes])
 
+AC_CACHE_CHECK([whether gcc accepts -Wstack-usage], ac_cv_stack_usage, [dnl
+old_CFLAGS="$CFLAGS"
+CFLAGS="$CFLAGS -Wstack-usage=262144"
+AC_COMPILE_IFELSE([AC_LANG_SOURCE([])],
+                 ac_cv_stack_usage=yes, ac_cv_stack_usage=no)
+CFLAGS="$old_CFLAGS"])
+AM_CONDITIONAL(ADD_STACK_USAGE_WARNING, [test "x$ac_cv_stack_usage" != "xno"])
+
 dnl Check if we have argp available from our libc
 AC_LINK_IFELSE(
        [AC_LANG_PROGRAM(