forked from osmocom/wireshark
- Add an AC macro to test linker flags.
- Test whether the linker supports --as-needed and if so, adds it to LDFLAGS svn path=/trunk/; revision=29327
This commit is contained in:
parent
952cbd7902
commit
b6cffe4050
30
acinclude.m4
30
acinclude.m4
|
@ -1642,6 +1642,36 @@ AC_DEFUN([AC_WIRESHARK_GEOIP_CHECK],
|
|||
fi
|
||||
])
|
||||
|
||||
#AC_WIRESHARK_GCC_LDFLAGS_CHECK
|
||||
#
|
||||
# $1 : ldflag(s) to test
|
||||
#
|
||||
# The macro first determines if the compiler is GCC. Then compile with the
|
||||
# defined ldflags. The defined flags are added to LDFLAGS only if the
|
||||
# compilation succeeds.
|
||||
#
|
||||
AC_DEFUN([AC_WIRESHARK_GCC_LDFLAGS_CHECK],
|
||||
[GCC_OPTION="$1"
|
||||
AC_MSG_CHECKING(whether we can add $GCC_OPTION to LDFLAGS)
|
||||
if test "x$GCC" != "x"; then
|
||||
LDFLAGS_saved="$CFLAGS"
|
||||
LDFLAGS="$LDFLAGS $GCC_OPTION"
|
||||
AC_LINK_IFELSE([
|
||||
AC_LANG_SOURCE([[
|
||||
main() { return; }
|
||||
]])],
|
||||
[
|
||||
AC_MSG_RESULT(yes)
|
||||
],
|
||||
[
|
||||
AC_MSG_RESULT(no)
|
||||
LDFLAGS="$LDFLAGS_saved"
|
||||
])
|
||||
else
|
||||
AC_MSG_RESULT(no)
|
||||
fi
|
||||
])
|
||||
|
||||
#
|
||||
# AC_WIRESHARK_GCC_CFLAGS_CHECK
|
||||
#
|
||||
|
|
13
configure.in
13
configure.in
|
@ -230,9 +230,20 @@ AC_ARG_ENABLE(extra-gcc-checks,
|
|||
AC_WIRESHARK_GCC_CFLAGS_CHECK(-Wno-overlength-strings)
|
||||
# AC_WIRESHARK_GCC_CFLAGS_CHECK(-fstrict-overflow -Wstrict-overflow=4)
|
||||
# AC_WIRESHARK_GCC_CFLAGS_CHECK(-Wunreachable-code)
|
||||
# AC_WIRESHARK_GCC_CFLAGS_CHECK(-Wunsafe-loop-optimizations)
|
||||
AC_WIRESHARK_GCC_CFLAGS_CHECK(-Wno-long-long)
|
||||
AC_WIRESHARK_GCC_CFLAGS_CHECK(-Wbad-function-cast)
|
||||
AC_WIRESHARK_GCC_CFLAGS_CHECK(-Wcast-qual)
|
||||
AC_WIRESHARK_GCC_CFLAGS_CHECK(-Waddress)
|
||||
AC_WIRESHARK_GCC_CFLAGS_CHECK(-Warray-bounds)
|
||||
AC_WIRESHARK_GCC_CFLAGS_CHECK(-Wattributes)
|
||||
AC_WIRESHARK_GCC_CFLAGS_CHECK(-Wdeclaration-after-statement)
|
||||
AC_WIRESHARK_GCC_CFLAGS_CHECK(-Wdiv-by-zero)
|
||||
AC_WIRESHARK_GCC_CFLAGS_CHECK(-Wformat-security)
|
||||
AC_WIRESHARK_GCC_CFLAGS_CHECK(-Wignored-qualifiers)
|
||||
AC_WIRESHARK_GCC_CFLAGS_CHECK(-Wpragmas)
|
||||
AC_WIRESHARK_GCC_CFLAGS_CHECK(-Wredundant-decls)
|
||||
AC_WIRESHARK_GCC_CFLAGS_CHECK(-Wvla)
|
||||
#
|
||||
# epan/dissectors/packet-ncp2222.inc blocks this one
|
||||
# for now.
|
||||
|
@ -260,6 +271,8 @@ AC_WIRESHARK_GCC_CFLAGS_CHECK(-Warray-bounds)
|
|||
AC_WIRESHARK_GCC_CFLAGS_CHECK(-Wcast-align)
|
||||
AC_WIRESHARK_GCC_CFLAGS_CHECK(-Wformat-security)
|
||||
|
||||
AC_WIRESHARK_GCC_LDFLAGS_CHECK([-Wl,--as-needed])
|
||||
|
||||
#
|
||||
# If we're running gcc add '-D_U_="__attribute__((unused))"' to CFLAGS as well,
|
||||
# so we can use _U_ to flag unused function arguments and not get warnings
|
||||
|
|
Loading…
Reference in New Issue