-AC_CACHE_CHECK([what compiler optimizations to apply], [optflags], [optflags="-g"])
-CDEBUGFLAGS="$optflags -Wall -pedantic -Wpointer-arith \
- -Wstrict-prototypes -Wmissing-declarations -Wnested-externs"
+AC_CACHE_CHECK([what compiler optimizations to apply], [COPTFLAGS], [COPTFLAGS=""])
+AC_SUBST(COPTFLAGS)
+
+AC_ARG_WITH(debug,
+AC_HELP_STRING([--with-debug], [compile with debugging (default)])
+AC_HELP_STRING([--with-debug=FLAGS], [compile with specified debugging FLAGS])
+AC_HELP_STRING([--without-debug], [compile without debugging]),
+[
+ case "$withval" in
+ yes)
+ CDEBUGFLAGS="-g"
+ ;;
+ no)
+ CDEBUGFLAGS=""
+ ;;
+ *)
+ CDEBUGFLAGS="$withval"
+ ;;
+ esac
+])
+AC_CACHE_CHECK([what debugging options to apply], [CDEBUGFLAGS], [CDEBUGFLAGS="-g"])