configure: enable -Wstrict-prototypes unconditionally
[babeltrace.git] / configure.ac
index 70c0a93698a3ac7393f6d34008c2df0dc4c134bf..63eef1bcf611f16ff7103c8f0cb891f30882fdfc 100644 (file)
@@ -330,6 +330,7 @@ AC_ARG_VAR([BABELTRACE_DEV_MODE], [Set to 1 to enable the Babeltrace developer m
 AS_IF([test "x$BABELTRACE_DEV_MODE" = x1], [
        AC_DEFINE([BT_DEV_MODE], 1, [Babeltrace developer mode])
 ], [BABELTRACE_DEV_MODE=0])
+AM_CONDITIONAL([DEV_MODE], [test "x$BABELTRACE_DEV_MODE" = x1])
 
 # BABELTRACE_DEBUG_MODE:
 AC_ARG_VAR([BABELTRACE_DEBUG_MODE], [Set to 1 to enable the Babeltrace debug mode (enables internal assertions for Babeltrace maintainers)])
@@ -350,6 +351,14 @@ AC_ARG_ENABLE([python-bindings],
   [enable_python_bindings=unspecified]
 )
 
+# Python bindings documentation
+# Disabled by default
+AC_ARG_ENABLE([python-bindings-doc],
+  [AC_HELP_STRING([--enable-python-bindings-doc], [build the Python bindings documentation])],
+  [], dnl AC_ARG_ENABLE will fill enable_python_bindings_doc with the user choice
+  [enable_python_bindings_doc=no]
+)
+
 # Python plugins
 # Disabled by default
 AC_ARG_ENABLE([python-plugins],
@@ -397,6 +406,7 @@ AC_ARG_ENABLE([man-pages],
 
 # Set automake variables for optionnal feature conditionnals in Makefile.am
 AM_CONDITIONAL([ENABLE_PYTHON_BINDINGS], [test "x$enable_python_bindings" = xyes])
+AM_CONDITIONAL([ENABLE_PYTHON_BINDINGS_DOC], [test "x$enable_python_bindings_doc" = xyes])
 AM_CONDITIONAL([ENABLE_PYTHON_PLUGINS], [test "x$enable_python_plugins" = xyes])
 AM_CONDITIONAL([ENABLE_DEBUG_INFO], [test "x$enable_debug_info" = xyes])
 AM_CONDITIONAL([ENABLE_API_DOC], [test "x$enable_api_doc" = xyes])
@@ -407,15 +417,6 @@ AM_CONDITIONAL([ENABLE_PYTHON_COMMON_DEPS], [test "x$enable_python_bindings" = x
 
 # Set defines for optionnal features conditionnals in the source code
 
-## jgalar: still used?
-AS_IF([test "x$enable_python_plugins" = xyes],
-  [AC_DEFINE([PYTHON_PLUGINS], [1], [Python plugin support.])]
-)
-
-AS_IF([test "x$enable_debug_info" = xyes],
-  [AC_DEFINE([ENABLE_DEBUG_INFO], [1], [Define to 1 if you enable the 'debug info' feature])]
-)
-
 AS_IF([test "x$enable_built_in_plugins" = xyes],
   [AC_DEFINE([BT_BUILT_IN_PLUGINS], [1], [Define to 1 to register plug-in attributes in static executable sections])]
 )
@@ -527,6 +528,19 @@ AS_IF([test "x$enable_python_bindings" = xyes || test "x$enable_python_plugins"
   ])
 ])
 
+AS_IF([test "x$enable_python_bindings_doc" = xyes],
+  [
+    AM_CHECK_PYTHON_SPHINX([PYTHON])
+    AS_IF([test "x$PYTHON_SPHINX_EXISTS" = xno], [
+      AC_MSG_ERROR([The Sphinx package for Python 3 is required to build the Python bindings documentation])
+    ])
+
+    AS_IF([test "x$enable_python_bindings" != xyes], [
+      AC_MSG_ERROR([The Python bindings are required to build their documentation])
+    ])
+  ]
+)
+
 AS_IF([test "x$enable_debug_info" = xyes],
   [
     # Check if libelf and libdw are present
@@ -652,7 +666,6 @@ CFLAGS=${save_CFLAGS}
 AX_APPEND_COMPILE_FLAGS([ dnl
                -Wall dnl
                -Wextra dnl
-               -Wstrict-prototypes dnl
                -Wmissing-prototypes dnl
                -Wmissing-declarations dnl
                -Wnull-dereference dnl
@@ -665,7 +678,6 @@ AX_APPEND_COMPILE_FLAGS([ dnl
                -Wnested-externs dnl
                -Wwrite-strings dnl
                -Wformat=2 dnl
-               -Wno-format-nonliteral dnl
                -Wstrict-aliasing dnl
                -Wmissing-noreturn dnl
                -Winit-self dnl
@@ -701,15 +713,13 @@ AS_IF([test "x$enable_Werror" = "xyes"],
 )
 
 # The test used in AX_APPEND_COMPILE_FLAGS, generated using AC_LANG_PROGRAM, is
-# written in such a way that it triggers a -Wold-style-definition warning.  So
-# this warning always ends up disabled if we put it there, because the test
-# program does not build.
+# written in such a way that it triggers warnings with the following warning
+# flags.  So they would always end up disabled if we put them there, because
+# the test program would not build.
 #
-# Enable it here unconditionally.  It is supported by GCC >= 4.8 and by Clang
-# (it is accepted for compatibility although it has no effect), and there is
-# not reason to not want it.
-
-WARN_CFLAGS="${WARN_CFLAGS} -Wold-style-definition"
+# Enable them here unconditionally.  They are supported by GCC >= 4.8 and by
+# Clang >= 4.0.
+WARN_CFLAGS="${WARN_CFLAGS} -Wold-style-definition -Wstrict-prototypes"
 
 # CFLAGS from AX_APPEND_COMPILE_FLAGS.
 AM_CFLAGS="${AM_CFLAGS} ${WARN_CFLAGS}"
@@ -733,6 +743,8 @@ AC_CONFIG_FILES([
        doc/api/Makefile
        doc/api/libbabeltrace2/Doxyfile
        doc/api/libbabeltrace2/Makefile
+       doc/bindings/Makefile
+       doc/bindings/python/Makefile
        doc/contributing-images/Makefile
        doc/Makefile
        doc/man/asciidoc-attrs.conf
@@ -793,6 +805,7 @@ AC_CONFIG_FILES([
        tests/ctf-writer/Makefile
        tests/lib/Makefile
        tests/lib/test-plugin-plugins/Makefile
+       tests/lib/conds/Makefile
        tests/Makefile
        tests/param-validation/Makefile
        tests/plugins/Makefile
@@ -918,6 +931,8 @@ m4_popdef([build_man_pages_msg])
 
 test "x$enable_api_doc" = "xyes" && value=1 || value=0
 PPRINT_PROP_BOOL_CUSTOM([HTML API documentation], $value, [To build documentation, use --enable-api-doc])
+test "x$enable_python_bindings_doc" = "xyes" && value=1 || value=0
+PPRINT_PROP_BOOL_CUSTOM([Python bindings documentation], $value, [To build the Python bindings documentation, use --enable-python-bindings-doc])
 
 AS_ECHO
 PPRINT_SUBTITLE([Logging])
This page took 0.023864 seconds and 4 git commands to generate.