diff options
author | Andrei Karas <akaras@inbox.ru> | 2016-07-12 15:32:18 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2016-07-12 17:12:22 +0300 |
commit | cccd6d9d04e755aa8194ef86d27405021d5a8f4e (patch) | |
tree | 2404c4df86177abf68ff43e301e147f7135242b4 /configure.ac | |
parent | 302aefbd150bd5c26bfd4a0c51f74bbec9c843a3 (diff) | |
download | hercules-cccd6d9d04e755aa8194ef86d27405021d5a8f4e.tar.gz hercules-cccd6d9d04e755aa8194ef86d27405021d5a8f4e.tar.bz2 hercules-cccd6d9d04e755aa8194ef86d27405021d5a8f4e.tar.xz hercules-cccd6d9d04e755aa8194ef86d27405021d5a8f4e.zip |
Add omit frame pointer flag if debug flag enabled.
Diffstat (limited to 'configure.ac')
-rw-r--r-- | configure.ac | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/configure.ac b/configure.ac index 0a86ffb58..e88834722 100644 --- a/configure.ac +++ b/configure.ac @@ -789,6 +789,32 @@ AC_DEFUN([AC_CHECK_SANITIZER_FLAG], ] ) +AC_DEFUN([AC_CHECK_FLAG], + [ + AC_MSG_CHECKING([whether $CC supports $1]) + OLD_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS $1" + OLD_LDFLAGS="$LDFLAGS" + LDFLAGS="$LDFLAGS $1" + AC_COMPILE_IFELSE( + [AC_LANG_SOURCE([int foo;])], + [ + AC_MSG_RESULT([yes]) + ], + [ + AC_MSG_RESULT([no]) + CFLAGS="$OLD_CFLAGS" + LDFLAGS="$OLD_LDFLAGS" + ], + [ + AC_MSG_RESULT([guessing no]) + CFLAGS="$OLD_CFLAGS" + LDFLAGS="$OLD_LDFLAGS" + ] + ) + ] +) + # # sanitize Support test # @@ -1198,10 +1224,12 @@ case $enable_debug in "yes") CFLAGS="$CFLAGS -g" CPPFLAGS="$CPPFLAGS -DDEBUG" + AC_CHECK_FLAG(-fno-omit-frame-pointer) ;; "gdb") CFLAGS="$CFLAGS -ggdb" CPPFLAGS="$CPPFLAGS -DDEBUG" + AC_CHECK_FLAG(-fno-omit-frame-pointer) ;; esac |