tools/rmmod.c tools/insmod.c \
tools/modinfo.c tools/modprobe.c \
tools/depmod.c tools/log.h tools/log.c \
- tools/insert.c \
- tools/remove.c \
tools/static-nodes.c
+
+if BUILD_EXPERIMENTAL
+tools_kmod_SOURCES += \
+ tools/insert.c \
+ tools/remove.c
+endif
+
tools_kmod_LDADD = \
shared/libshared.la \
libkmod/libkmod-internal.la
testsuite/test-modinfo testsuite/test-util testsuite/test-new-module \
testsuite/test-modprobe testsuite/test-blacklist \
testsuite/test-dependencies testsuite/test-depmod \
- testsuite/test-list \
+ testsuite/test-list
+
+if BUILD_EXPERIMENTAL
+TESTSUITE += \
testsuite/test-tools
+endif
check_PROGRAMS = $(TESTSUITE)
TESTS = $(TESTSUITE)
testsuite_test_depmod_CPPFLAGS = $(TESTSUITE_CPPFLAGS)
testsuite_test_list_LDADD = $(TESTSUITE_LDADD)
testsuite_test_list_CPPFLAGS = $(TESTSUITE_CPPFLAGS)
+
+if BUILD_EXPERIMENTAL
testsuite_test_tools_LDADD = $(TESTSUITE_LDADD)
testsuite_test_tools_CPPFLAGS = $(TESTSUITE_CPPFLAGS)
+endif
testsuite-distclean:
$(RM) -r $(ROOTFS)
# --enable-
#####################################################################
+AC_ARG_ENABLE([experimental],
+ AS_HELP_STRING([--enable-experimental], [enable experimental tools and features. Do not enable it unless you know what you are doing. @<:@default=disabled@:>@]),
+ [], enable_experimental=no)
+AM_CONDITIONAL([BUILD_EXPERIMENTAL], [test "x$enable_experimental" = "xyes"])
+AS_IF([test "x$enable_experimental" = "xyes"], [
+ AC_DEFINE(ENABLE_EXPERIMENTAL, [1], [Experimental features.])
+])
+
AC_ARG_ENABLE([tools],
AS_HELP_STRING([--disable-tools], [disable building tools that provide same functionality as module-init-tools @<:@default=enabled@:>@]),
[], enable_tools=yes)
cflags: ${with_cflags} ${CFLAGS}
ldflags: ${with_ldflags} ${LDFLAGS}
+ experimental features: ${enable_experimental}
tools: ${enable_tools}
python bindings: ${enable_python}
logging: ${enable_logging}
static const struct kmod_cmd *kmod_cmds[] = {
&kmod_cmd_help,
- &kmod_cmd_insert,
&kmod_cmd_list,
- &kmod_cmd_remove,
&kmod_cmd_static_nodes,
+
+#ifdef ENABLE_EXPERIMENTAL
+ &kmod_cmd_insert,
+ &kmod_cmd_remove,
+#endif
};
static const struct kmod_cmd *kmod_compat_cmds[] = {