+# Check libpopt
+PKG_CHECK_MODULES([POPT], [popt],
+ [
+ dnl PKG_CHECK_MODULES defines POPT_LIBS
+ ],
+ [
+ AC_MSG_WARN([pkg-config was unable to find a valid .pc for libpopt. Set PKG_CONFIG_PATH to specify the pkgconfig configuration file location])
+ AC_MSG_WARN([Finding libpopt without pkg-config.])
+ AC_CHECK_LIB([popt],
+ [poptGetContext],
+ [POPT_LIBS="-lpopt"],
+ [
+ AC_MSG_FAILURE([Cannot find libpopt. Either set PKG_CONFIG_PATH to the configuration file location or use LDFLAGS=-Ldir to specify the library location])
+ ]
+ )
+ ]
+)
+AC_SUBST(POPT_LIBS)
+
+
+## ##
+## User variables ##
+## ##
+
+AC_ARG_VAR([PYTHON_INCLUDE], [Include flags for Python, bypassing python-config])
+AC_ARG_VAR([PYTHON_LIBS], [Library flags for Python, bypassing python-config])
+AC_ARG_VAR([PYTHON_CONFIG], [Path to python-config])
+
+# PLUGINSDIR: Plugins directory
+AC_ARG_VAR([PLUGINSDIR], [built-in plugins install directory [LIBDIR/babeltrace2/plugins]])
+AS_IF([test "x$PLUGINSDIR" = x], [PLUGINSDIR='$(libdir)/babeltrace2/plugins'])
+
+# BABELTRACE_MINIMAL_LOG_LEVEL:
+AC_ARG_VAR([BABELTRACE_MINIMAL_LOG_LEVEL], [Minimal log level for Babeltrace program, library, and plugins (VERBOSE, DEBUG (default), INFO, WARN, ERROR, FATAL, or NONE)])
+AS_IF([test "x$BABELTRACE_MINIMAL_LOG_LEVEL" = x], [BABELTRACE_MINIMAL_LOG_LEVEL="DEBUG"])
+AS_IF([test "$BABELTRACE_MINIMAL_LOG_LEVEL" != "VERBOSE" && \
+ test "$BABELTRACE_MINIMAL_LOG_LEVEL" != "DEBUG" && \
+ test "$BABELTRACE_MINIMAL_LOG_LEVEL" != "INFO" && \
+ test "$BABELTRACE_MINIMAL_LOG_LEVEL" != "WARN" && \
+ test "$BABELTRACE_MINIMAL_LOG_LEVEL" != "ERROR" && \
+ test "$BABELTRACE_MINIMAL_LOG_LEVEL" != "FATAL" && \
+ test "$BABELTRACE_MINIMAL_LOG_LEVEL" != "NONE"],
+ [AC_MSG_ERROR([Invalid BABELTRACE_MINIMAL_LOG_LEVEL value ($BABELTRACE_MINIMAL_LOG_LEVEL): use VERBOSE, DEBUG, INFO, WARN, ERROR, FATAL, or NONE.])]
+)
+AC_DEFINE_UNQUOTED([BT_LOG_LEVEL], [BT_LOG_$BABELTRACE_MINIMAL_LOG_LEVEL], [Minimal log level])
+
+# BABELTRACE_DEV_MODE:
+AC_ARG_VAR([BABELTRACE_DEV_MODE], [Set to 1 to enable the Babeltrace developer mode (enables run-time checks for plugin developers)])
+AS_IF([test "x$BABELTRACE_DEV_MODE" = x1], [
+ AS_IF([test "x$BABELTRACE_MINIMAL_LOG_LEVEL" = "xNONE"], [
+ AC_MSG_ERROR([Babeltrace developer mode (\$BABELTRACE_DEV_MODE) needs \$BABELTRACE_MINIMAL_LOG_LEVEL to be at least FATAL.])
+ ])
+ AC_DEFINE([BT_DEV_MODE], 1, [Babeltrace developer mode])
+], [BABELTRACE_DEV_MODE=0])
+
+# BABELTRACE_DEBUG_MODE:
+AC_ARG_VAR([BABELTRACE_DEBUG_MODE], [Set to 1 to enable the Babeltrace debug mode (enables internal assertions for Babeltrace maintainers)])
+AS_IF([test "x$BABELTRACE_DEBUG_MODE" = x1], [
+ AC_DEFINE([BT_DEBUG_MODE], 1, [Babeltrace debug mode])
+], [BABELTRACE_DEBUG_MODE=0])
+
+
+## ##
+## Optionnal features selection ##
+## ##
+
+# Python bindings
+# Disabled by default
+AC_ARG_ENABLE([python-bindings],
+ [AC_HELP_STRING([--enable-python-bindings], [build the Python bindings])],
+ [], dnl AC_ARG_ENABLE will fill enable_python_bindings with the user choice
+ [enable_python_bindings=no]
+)
+
+# 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]