Make --enable-debug fail when given bogus args
Currently, bogus options to --enable-debug become --disable-debug. That means that passing --enable-debug=true is analogous to --disable-debug, but the result is counterintuitive. We switch to AS_CASE to allow us to fail when given a bogus option. Also, we modify the text printed to clarify that --enable-debug enables assertions. Reviewed-by: Chunwei Chen <tuxoko@gmail.com> Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Signed-off-by: Richard Yao <richard.yao@clusterhq.com> Closes #2734
This commit is contained in:
parent
e3b28e16ce
commit
0f1ff38476
|
@ -6,30 +6,37 @@ AC_DEFUN([ZFS_AC_LICENSE], [
|
||||||
AC_MSG_RESULT([$ZFS_META_LICENSE])
|
AC_MSG_RESULT([$ZFS_META_LICENSE])
|
||||||
])
|
])
|
||||||
|
|
||||||
|
AC_DEFUN([ZFS_AC_DEBUG_ENABLE], [
|
||||||
|
KERNELCPPFLAGS="${KERNELCPPFLAGS} -DDEBUG -Werror"
|
||||||
|
HOSTCFLAGS="${HOSTCFLAGS} -DDEBUG -Werror"
|
||||||
|
DEBUG_CFLAGS="-DDEBUG -Werror"
|
||||||
|
DEBUG_STACKFLAGS="-fstack-check"
|
||||||
|
DEBUG_ZFS="_with_debug"
|
||||||
|
AC_DEFINE(ZFS_DEBUG, 1, [zfs debugging enabled])
|
||||||
|
])
|
||||||
|
|
||||||
|
AC_DEFUN([ZFS_AC_DEBUG_DISABLE], [
|
||||||
|
KERNELCPPFLAGS="${KERNELCPPFLAGS} -DNDEBUG "
|
||||||
|
HOSTCFLAGS="${HOSTCFLAGS} -DNDEBUG "
|
||||||
|
DEBUG_CFLAGS="-DNDEBUG"
|
||||||
|
DEBUG_STACKFLAGS=""
|
||||||
|
DEBUG_ZFS="_without_debug"
|
||||||
|
])
|
||||||
|
|
||||||
AC_DEFUN([ZFS_AC_DEBUG], [
|
AC_DEFUN([ZFS_AC_DEBUG], [
|
||||||
AC_MSG_CHECKING([whether debugging is enabled])
|
AC_MSG_CHECKING([whether assertion support will be enabled])
|
||||||
AC_ARG_ENABLE([debug],
|
AC_ARG_ENABLE([debug],
|
||||||
[AS_HELP_STRING([--enable-debug],
|
[AS_HELP_STRING([--enable-debug],
|
||||||
[Enable generic debug support @<:@default=no@:>@])],
|
[Enable assertion support @<:@default=no@:>@])],
|
||||||
[],
|
[],
|
||||||
[enable_debug=no])
|
[enable_debug=no])
|
||||||
|
|
||||||
AS_IF([test "x$enable_debug" = xyes],
|
AS_CASE(["x$enable_debug"],
|
||||||
[
|
["xyes"],
|
||||||
KERNELCPPFLAGS="${KERNELCPPFLAGS} -DDEBUG -Werror"
|
[ZFS_AC_DEBUG_ENABLE],
|
||||||
HOSTCFLAGS="${HOSTCFLAGS} -DDEBUG -Werror"
|
["xno"],
|
||||||
DEBUG_CFLAGS="-DDEBUG -Werror"
|
[ZFS_AC_DEBUG_DISABLE],
|
||||||
DEBUG_STACKFLAGS="-fstack-check"
|
[AC_MSG_ERROR([Unknown option $enable_debug])])
|
||||||
DEBUG_ZFS="_with_debug"
|
|
||||||
AC_DEFINE(ZFS_DEBUG, 1, [zfs debugging enabled])
|
|
||||||
],
|
|
||||||
[
|
|
||||||
KERNELCPPFLAGS="${KERNELCPPFLAGS} -DNDEBUG "
|
|
||||||
HOSTCFLAGS="${HOSTCFLAGS} -DNDEBUG "
|
|
||||||
DEBUG_CFLAGS="-DNDEBUG"
|
|
||||||
DEBUG_STACKFLAGS=""
|
|
||||||
DEBUG_ZFS="_without_debug"
|
|
||||||
])
|
|
||||||
|
|
||||||
AC_SUBST(DEBUG_CFLAGS)
|
AC_SUBST(DEBUG_CFLAGS)
|
||||||
AC_SUBST(DEBUG_STACKFLAGS)
|
AC_SUBST(DEBUG_STACKFLAGS)
|
||||||
|
|
Loading…
Reference in New Issue