[sheepdog] [PATCH] configure: enabling assert() in default
Hitoshi Mitake
mitake.hitoshi at lab.ntt.co.jp
Fri Aug 15 04:01:41 CEST 2014
Enabling assert in default is better for development. This patch adds
options for configure script: --enable-assert and --disable-assert. If
a user want to disable assert, passing --disable-assert is required.
Signed-off-by: Hitoshi Mitake <mitake.hitoshi at lab.ntt.co.jp>
---
configure.ac | 11 +++++++++++
include/util.h | 4 ++--
2 files changed, 13 insertions(+), 2 deletions(-)
diff --git a/configure.ac b/configure.ac
index 6a9e552..f78aa3b 100644
--- a/configure.ac
+++ b/configure.ac
@@ -206,6 +206,10 @@ AC_ARG_ENABLE([debug],
[ --enable-debug : enable debug build. ],
[ default="no" ])
+AC_ARG_ENABLE([assert],
+ [ --enable-assert : enable assert. ],,
+ [ enable_assert="yes" ],)
+
AC_ARG_ENABLE([unittest],
[ --enable-unittest : enable unittest. ],
[ default="no" ])
@@ -295,6 +299,13 @@ else
OPT_CFLAGS="-DNDEBUG"
fi
+if test "x${enable_assert}" = xyes; then
+ AC_DEFINE_UNQUOTED([ASSERT], [1], [Enabling assert])
+ PACKAGE_FEATURES="$PACKAGE_FEATURES assert"
+else
+ OPT_CFLAGS="-DNASSERT"
+fi
+
# gdb flags
if test "x${GCC}" = xyes; then
GDB_FLAGS="-ggdb3"
diff --git a/include/util.h b/include/util.h
index d230f7f..9da872d 100644
--- a/include/util.h
+++ b/include/util.h
@@ -215,7 +215,7 @@ double get_time_interval(const struct timespec *start,
#error "Don't include assert.h, use util.h for assert()"
#endif
-#ifndef NDEBUG
+#ifndef NASSERT
#define assert(expr) \
({ \
if (!(expr)) { \
@@ -225,7 +225,7 @@ double get_time_interval(const struct timespec *start,
})
#else
#define assert(expr) ((void)0)
-#endif /* NDEBUG */
+#endif /* NASSERT */
#define SWAP(a, b) { typeof(a) tmp; tmp = a; a = b; b = tmp; }
--
1.8.3.2
More information about the sheepdog
mailing list