Hello community,
here is the log from the commit of package kmod for openSUSE:Factory checked in at 2015-11-18 22:31:30
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kmod (Old)
and /work/SRC/openSUSE:Factory/.kmod.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kmod"
Changes:
--------
--- /work/SRC/openSUSE:Factory/kmod/kmod-testsuite.changes 2015-04-27 22:07:48.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.kmod.new/kmod-testsuite.changes 2015-11-18 22:31:31.000000000 +0100
@@ -1,0 +2,13 @@
+Sat Nov 7 10:40:29 UTC 2015 - jengelh@inai.de
+
+- Update to new upstream release 21
+* Cache built modules so it is easier to run "make check" on
+ build servers by distro maintainers. If kmod is configured with
+ --disable-test-modules, the modules from cache will be used by
+ "make check". No changes to the tests are needed and all of
+ them can run fine.
+- Specify KDIR explicitly to resolve build failure with `osc build`
+ (because kmod uses `uname -r` and the kernel versions need not
+ match between build env and local host)
+
+-------------------------------------------------------------------
--- /work/SRC/openSUSE:Factory/kmod/kmod.changes 2015-04-27 22:07:48.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.kmod.new/kmod.changes 2015-11-18 22:31:32.000000000 +0100
@@ -1,0 +2,7 @@
+Sat Nov 7 10:29:54 UTC 2015 - jengelh@inai.de
+
+- Update to new upstream release 21
+* The kmod tool now prints the relevant configuration options it was built
+ with when the "--version" argument is passed.
+
+-------------------------------------------------------------------
Old:
----
kmod-20.tar.sign
kmod-20.tar.xz
New:
----
kmod-21.tar.sign
kmod-21.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kmod-testsuite.spec ++++++
--- /var/tmp/diff_new_pack.Rnpego/_old 2015-11-18 22:31:33.000000000 +0100
+++ /var/tmp/diff_new_pack.Rnpego/_new 2015-11-18 22:31:33.000000000 +0100
@@ -18,7 +18,7 @@
Name: kmod-testsuite
%define lname libkmod2
-Version: 20
+Version: 21
Release: 0
Summary: Testsuite of the kmod package
License: LGPL-2.1+ and GPL-2.0+
@@ -52,6 +52,7 @@
BuildRequires: pkgconfig(zlib)
%endif
Requires: suse-module-tools
+%define kdir /usr/src/linux-obj/%_target_cpu/default
%description
This spec file does not produce any binary RPMs. It just builds kmod and
@@ -76,12 +77,12 @@
--includedir="%_includedir/kmod" \
--with-rootlibdir="%_libdir" \
--bindir="%_bindir"
-make %{?_smp_mflags} V=1
+make %{?_smp_mflags} V=1 KDIR="%kdir"
%install
# empty
%check
-make check V=1
+make check V=1 KDIR="%kdir"
%changelog
++++++ kmod.spec ++++++
--- /var/tmp/diff_new_pack.Rnpego/_old 2015-11-18 22:31:33.000000000 +0100
+++ /var/tmp/diff_new_pack.Rnpego/_new 2015-11-18 22:31:33.000000000 +0100
@@ -18,7 +18,7 @@
Name: kmod
%define lname libkmod2
-Version: 20
+Version: 21
Release: 0
Summary: Utilities to load modules into the kernel
License: LGPL-2.1+ and GPL-2.0+
@@ -152,7 +152,7 @@
ln -s "%_bindir/kmod" "$b/bin/";
%if "%_libdir" != "/%_lib"
ln -s "%_libdir/libkmod.so.2" "$b/%_lib/";
-ln -s "%_libdir/libkmod.so.2.2.10" "$b/%_lib/";
+ln -s "%_libdir/libkmod.so.2.2.11" "$b/%_lib/";
%endif
%post
++++++ kmod-20.tar.xz -> kmod-21.tar.xz ++++++
++++ 2739 lines of diff (skipped)
++++ retrying with extended exclude list
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/kmod-20/Makefile.am new/kmod-21/Makefile.am
--- old/kmod-20/Makefile.am 2015-03-01 17:54:51.000000000 +0100
+++ new/kmod-21/Makefile.am 2015-06-09 07:35:37.000000000 +0200
@@ -7,6 +7,7 @@
DISTCLEAN_LOCAL_HOOKS =
EXTRA_DIST =
CLEANFILES = $(BUILT_FILES)
+DISTCLEANFILES =
BUILT_FILES =
ACLOCAL_AMFLAGS = -I m4 ${ACLOCAL_FLAGS}
AM_MAKEFLAGS = --no-print-directory
@@ -40,7 +41,7 @@
$(SED_PROCESS)
LIBKMOD_CURRENT=4
-LIBKMOD_REVISION=10
+LIBKMOD_REVISION=11
LIBKMOD_AGE=2
noinst_LTLIBRARIES = shared/libshared.la
@@ -127,6 +128,13 @@
tools/modinfo.c tools/modprobe.c \
tools/depmod.c tools/log.h tools/log.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
@@ -216,6 +224,7 @@
CREATE_ROOTFS = $(AM_V_GEN) ( $(RM) -rf $(ROOTFS) && mkdir -p $(dir $(ROOTFS)) && \
cp -r $(ROOTFS_PRISTINE) $(ROOTFS) && \
find $(ROOTFS) -type d -exec chmod +w {} \; && \
+ find $(ROOTFS) -type f -name .gitignore -exec rm -f {} \; && \
$(top_srcdir)/testsuite/populate-modules.sh \
$(MODULE_PLAYGROUND) $(ROOTFS) ) && \
touch testsuite/stamp-rootfs
@@ -226,7 +235,12 @@
cp -r $(top_srcdir)/$(MODULE_PLAYGROUND) $(top_builddir)/$(MODULE_PLAYGROUND) && \
find $(top_builddir)/$(MODULE_PLAYGROUND) -type d -exec chmod +w {} \; ; \
fi
+if BUILD_MODULES
$(MAKE) -C $(MODULE_PLAYGROUND)
+else
+ $(MAKE) -C $(MODULE_PLAYGROUND) FAKE_BUILD=1
+endif
+
rootfs: build-module-playground
$(CREATE_ROOTFS)
@@ -253,6 +267,7 @@
EXTRA_DIST += \
+ testsuite/module-playground/cache \
testsuite/module-playground/dummy.sha1 \
testsuite/module-playground/dummy.sha256 \
testsuite/module-playground/Makefile \
@@ -316,6 +331,11 @@
testsuite/test-dependencies testsuite/test-depmod \
testsuite/test-list
+if BUILD_EXPERIMENTAL
+TESTSUITE += \
+ testsuite/test-tools
+endif
+
check_PROGRAMS = $(TESTSUITE)
TESTS = $(TESTSUITE)
@@ -355,6 +375,11 @@
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)
$(RM) testsuite/stamp-rootfs
@@ -375,6 +400,8 @@
buildtest-TESTS:
$(MAKE) $(AM_MAKEFLAGS) $(check_LTLIBRARIES) $(check_PROGRAMS)
+DISTCLEANFILES += $(DOLT_CLEANFILES)
+
# ------------------------------------------------------------------------------
# coverage
# ------------------------------------------------------------------------------
@@ -425,9 +452,9 @@
cov-build --dir cov-int make -j 4
tar caf $@ cov-int
-coverity-tar: kmod-coverity-$(shell git describe).tar.xz
+coverity-tar: kmod-coverity-$(shell git describe 2>/dev/null).tar.xz
-coverity-sync: kmod-coverity-$(shell git describe).tar.xz
+coverity-sync: kmod-coverity-$(shell git describe 2>/dev/null).tar.xz
@echo "uploading coverity tarball"
@curl --form token=$(COVERITY_KMOD_TOKEN) \
--form email=lucas.de.marchi@gmail.com \
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/kmod-20/NEWS new/kmod-21/NEWS
--- old/kmod-20/NEWS 2015-03-01 18:39:37.000000000 +0100
+++ new/kmod-21/NEWS 2015-06-09 07:06:36.000000000 +0200
@@ -1,3 +1,24 @@
+kmod 21
+=======
+
+- New features:
+ - kmod tool started to learn the "insert" and "remove" commands that
+ are the simplified versions of the older modprobe tool. These
+ commands are still work in progress so they are hidden behind a
+ --enable-experimental flag during build. It should not be enabled
+ unless you know what you're doing.
+ - kmod tool now prints the relevant configuration options it was built
+ with when the "--version" argument is passed. This helps to mitigate
+ problems for example when the user is trying to load a compressed
+ module but kmod was built without support for the compression method.
+
+- Improvements to testsuite:
+ - Cache built modules so it is easier to run "make check" on build
+ servers by distro maintainers. If kmod is configured with
+ --disable-test-modules the modules from cache will be used by
+ "make check". No changes to the tests are needed and all of them
+ can run fine.
+
kmod 20
=======
- Bug fixes:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/kmod-20/config.h.in new/kmod-21/config.h.in
--- old/kmod-20/config.h.in 2015-03-01 19:04:14.000000000 +0100
+++ new/kmod-21/config.h.in 2015-06-09 07:36:06.000000000 +0200
@@ -3,6 +3,9 @@
/* Debug messages. */
#undef ENABLE_DEBUG
+/* Experimental features. */
+#undef ENABLE_EXPERIMENTAL
+
/* System logging. */
#undef ENABLE_LOGGING
@@ -87,6 +90,9 @@
/* Define to 1 if you have the `__xstat' function. */
#undef HAVE___XSTAT
+/* Features in this build */
+#undef KMOD_FEATURES
+
/* Define to the sub-directory where libtool stores uninstalled libraries. */
#undef LT_OBJDIR
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/kmod-20/configure.ac new/kmod-21/configure.ac
--- old/kmod-20/configure.ac 2015-03-01 17:55:07.000000000 +0100
+++ new/kmod-21/configure.ac 2015-06-09 06:24:19.000000000 +0200
@@ -1,6 +1,6 @@
AC_PREREQ(2.64)
AC_INIT([kmod],
- [20],
+ [21],
[linux-modules@vger.kernel.org],
[kmod],
[http://git.kernel.org/?p=utils/kernel/kmod/kmod.git])
@@ -17,6 +17,7 @@
AM_INIT_AUTOMAKE([check-news foreign 1.11 silent-rules tar-pax no-dist-gzip dist-xz subdir-objects color-tests parallel-tests])
AM_SILENT_RULES([yes])
LT_INIT([disable-static pic-only])
+DOLT
AS_IF([test "x$enable_static" = "xyes"], [AC_MSG_ERROR([--enable-static is not supported by kmod])])
AS_IF([test "x$enable_largefile" = "xno"], [AC_MSG_ERROR([--disable-largefile is not supported by kmod])])
@@ -91,6 +92,7 @@
], [
AC_MSG_NOTICE([Xz support not requested])
])
+CC_FEATURE_APPEND([with_features], [with_xz], [XZ])
AC_ARG_WITH([zlib],
AS_HELP_STRING([--with-zlib], [handle gzipped modules @<:@default=disabled@:>@]),
@@ -101,6 +103,7 @@
], [
AC_MSG_NOTICE([zlib support not requested])
])
+CC_FEATURE_APPEND([with_features], [with_zlib], [ZLIB])
AC_ARG_WITH([bashcompletiondir],
AS_HELP_STRING([--with-bashcompletiondir=DIR], [Bash completions directory]),
@@ -116,6 +119,15 @@
# --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.])
+])
+CC_FEATURE_APPEND([with_features], [enable_experimental], [EXPERIMENTAL])
+
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)
@@ -126,6 +138,11 @@
[], enable_manpages=yes)
AM_CONDITIONAL([BUILD_MANPAGES], [test "x$enable_manpages" = "xyes"])
+AC_ARG_ENABLE([test-modules],
+ AS_HELP_STRING([--disable-test-modules], [disable building test modules during make check: cached modules will be used @<:@default=enabled@:>@]),
+ [], enable_test_modules=yes)
+AM_CONDITIONAL([BUILD_MODULES], [test "x$enable_test_modules" = "xyes"])
+
AC_ARG_ENABLE([logging],
AS_HELP_STRING([--disable-logging], [disable system logging @<:@default=enabled@:>@]),
[], enable_logging=yes)
@@ -242,6 +259,8 @@
-Wl,--gc-sections])
AC_SUBST([OUR_LDFLAGS], $with_ldflags)
+AC_DEFINE_UNQUOTED(KMOD_FEATURES, ["$with_features"], [Features in this build])
+
#####################################################################
# Generate files from *.in
#####################################################################
@@ -273,6 +292,7 @@
cflags: ${with_cflags} ${CFLAGS}
ldflags: ${with_ldflags} ${LDFLAGS}
+ experimental features: ${enable_experimental}
tools: ${enable_tools}
python bindings: ${enable_python}
logging: ${enable_logging}
@@ -281,4 +301,7 @@
coverage: ${enable_coverage}
doc: ${enable_gtk_doc}
man: ${enable_manpages}
+ test-modules: ${enable_test_modules}
+
+ features: ${with_features}
])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/kmod-20/libkmod/docs/gtk-doc.make new/kmod-21/libkmod/docs/gtk-doc.make
--- old/kmod-20/libkmod/docs/gtk-doc.make 2014-09-08 11:49:01.000000000 +0200
+++ new/kmod-21/libkmod/docs/gtk-doc.make 2015-05-29 22:00:12.000000000 +0200
@@ -25,6 +25,7 @@
SETUP_FILES = \
$(content_files) \
+ $(expand_content_files) \
$(DOC_MAIN_SGML_FILE) \
$(DOC_MODULE)-sections.txt \
$(DOC_MODULE)-overrides.txt
@@ -86,7 +87,7 @@
setup-build.stamp:
-$(GTK_DOC_V_SETUP)if test "$(abs_srcdir)" != "$(abs_builddir)" ; then \
- files=`echo $(SETUP_FILES) $(expand_content_files) $(DOC_MODULE).types`; \
+ files=`echo $(SETUP_FILES) $(DOC_MODULE).types`; \
if test "x$$files" != "x" ; then \
for file in $$files ; do \
destdir=`dirname $(abs_builddir)/$$file`; \
@@ -118,7 +119,7 @@
$(GTK_DOC_V_INTROSPECT)if grep -l '^..*$$' $(DOC_MODULE).types > /dev/null 2>&1 ; then \
scanobj_options=""; \
gtkdoc-scangobj 2>&1 --help | grep >/dev/null "\-\-verbose"; \
- if test "$(?)" = "0"; then \
+ if test "$$?" = "0"; then \
if test "x$(V)" = "x1"; then \
scanobj_options="--verbose"; \
fi; \
@@ -162,17 +163,17 @@
GTK_DOC_V_XREF_=$(GTK_DOC_V_XREF_$(AM_DEFAULT_VERBOSITY))
GTK_DOC_V_XREF_0=@echo " DOC Fixing cross-references";
-html-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files)
+html-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files) $(expand_content_files)
$(GTK_DOC_V_HTML)rm -rf html && mkdir html && \
mkhtml_options=""; \
gtkdoc-mkhtml 2>&1 --help | grep >/dev/null "\-\-verbose"; \
- if test "$(?)" = "0"; then \
+ if test "$$?" = "0"; then \
if test "x$(V)" = "x1"; then \
mkhtml_options="$$mkhtml_options --verbose"; \
fi; \
fi; \
gtkdoc-mkhtml 2>&1 --help | grep >/dev/null "\-\-path"; \
- if test "$(?)" = "0"; then \
+ if test "$$?" = "0"; then \
mkhtml_options="$$mkhtml_options --path=\"$(abs_srcdir)\""; \
fi; \
cd html && gtkdoc-mkhtml $$mkhtml_options $(MKHTML_OPTIONS) $(DOC_MODULE) ../$(DOC_MAIN_SGML_FILE)
@@ -194,11 +195,11 @@
GTK_DOC_V_PDF_=$(GTK_DOC_V_PDF_$(AM_DEFAULT_VERBOSITY))
GTK_DOC_V_PDF_0=@echo " DOC Building PDF";
-pdf-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files)
+pdf-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files) $(expand_content_files)
$(GTK_DOC_V_PDF)rm -f $(DOC_MODULE).pdf && \
mkpdf_options=""; \
gtkdoc-mkpdf 2>&1 --help | grep >/dev/null "\-\-verbose"; \
- if test "$(?)" = "0"; then \
+ if test "$$?" = "0"; then \
if test "x$(V)" = "x1"; then \
mkpdf_options="$$mkpdf_options --verbose"; \
fi; \
@@ -223,12 +224,15 @@
@if echo $(SCAN_OPTIONS) | grep -q "\-\-rebuild-types" ; then \
rm -f $(DOC_MODULE).types; \
fi
+ @if echo $(SCAN_OPTIONS) | grep -q "\-\-rebuild-sections" ; then \
+ rm -f $(DOC_MODULE)-sections.txt; \
+ fi
distclean-local:
@rm -rf xml html $(REPORT_FILES) $(DOC_MODULE).pdf \
$(DOC_MODULE)-decl-list.txt $(DOC_MODULE)-decl.txt
@if test "$(abs_srcdir)" != "$(abs_builddir)" ; then \
- rm -f $(SETUP_FILES) $(expand_content_files) $(DOC_MODULE).types; \
+ rm -f $(SETUP_FILES) $(DOC_MODULE).types; \
fi
maintainer-clean-local:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/kmod-20/libkmod/python/kmod/version.py new/kmod-21/libkmod/python/kmod/version.py
--- old/kmod-20/libkmod/python/kmod/version.py 2015-03-01 19:04:37.000000000 +0100
+++ new/kmod-21/libkmod/python/kmod/version.py 2015-06-09 07:36:22.000000000 +0200
@@ -14,4 +14,4 @@
# You should have received a copy of the GNU Lesser General Public License
# along with python-kmod. If not, see http://www.gnu.org/licenses/.
-__version__ = '20'
+__version__ = '21'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/kmod-20/m4/dolt.m4 new/kmod-21/m4/dolt.m4
--- old/kmod-20/m4/dolt.m4 1970-01-01 01:00:00.000000000 +0100
+++ new/kmod-21/m4/dolt.m4 2015-03-10 19:05:39.000000000 +0100
@@ -0,0 +1,181 @@
+dnl dolt, a replacement for libtool
+dnl Copyright © 2007-2010 Josh Triplett
+dnl Copying and distribution of this file, with or without modification,
+dnl are permitted in any medium without royalty provided the copyright
+dnl notice and this notice are preserved.
+dnl
+dnl To use dolt, invoke the DOLT macro immediately after the libtool macros.
+dnl Optionally, copy this file into acinclude.m4, to avoid the need to have it
+dnl installed when running autoconf on your project.
+
+AC_DEFUN([DOLT], [
+AC_REQUIRE([AC_CANONICAL_HOST])
+# dolt, a replacement for libtool
+# Josh Triplett
+AC_PATH_PROG([DOLT_BASH], [bash])
+AC_MSG_CHECKING([if dolt supports this host])
+dolt_supported=yes
+AS_IF([test x$DOLT_BASH = x], [dolt_supported=no])
+AS_IF([test x$GCC != xyes], [dolt_supported=no])
+
+AS_CASE([$host],
+ [*-*-linux*|*-*-freebsd*], [pic_options='-fPIC'],
+ [*-apple-darwin*], [pic_options='-fno-common'],
+ [*mingw*|*nacl*], [pic_options='']
+ [*], [dolt_supported=no]
+)
+AS_IF([test x$dolt_supported = xno], [
+ AC_MSG_RESULT([no, falling back to libtool])
+ LTCOMPILE='$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(COMPILE)'
+ LTCXXCOMPILE='$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXXCOMPILE)'
+ m4_pattern_allow([AM_V_lt])
+], [
+ AC_MSG_RESULT([yes, replacing libtool])
+
+dnl Start writing out doltcompile.
+ cat <<__DOLTCOMPILE__EOF__ >doltcompile
+#!$DOLT_BASH
+__DOLTCOMPILE__EOF__
+ cat <<'__DOLTCOMPILE__EOF__' >>doltcompile
+args=("$[]@")
+for ((arg=0; arg<${#args@<:@@@:>@}; arg++)) ; do
+ if test x"${args@<:@$arg@:>@}" = x-o ; then
+ objarg=$((arg+1))
+ break
+ fi
+done
+if test x$objarg = x ; then
+ echo 'Error: no -o on compiler command line' 1>&2
+ exit 1
+fi
+lo="${args@<:@$objarg@:>@}"
+obj="${lo%.lo}"
+if test x"$lo" = x"$obj" ; then
+ echo "Error: libtool object file name \"$lo\" does not end in .lo" 1>&2
+ exit 1
+fi
+objbase="${obj##*/}"
+__DOLTCOMPILE__EOF__
+
+dnl Write out shared compilation code.
+ if test x$enable_shared = xyes; then
+ cat <<'__DOLTCOMPILE__EOF__' >>doltcompile
+libobjdir="${obj%$objbase}.libs"
+if test ! -d "$libobjdir" ; then
+ mkdir_out="$(mkdir "$libobjdir" 2>&1)"
+ mkdir_ret=$?
+ if test "$mkdir_ret" -ne 0 && test ! -d "$libobjdir" ; then
+ echo "$mkdir_out" 1>&2
+ exit $mkdir_ret
+ fi
+fi
+pic_object="$libobjdir/$objbase.o"
+args@<:@$objarg@:>@="$pic_object"
+__DOLTCOMPILE__EOF__
+ cat <<__DOLTCOMPILE__EOF__ >>doltcompile
+ pic_options="$pic_options"
+ if test x\$passthrough = xtrue; then
+ pic_options=""
+ fi
+__DOLTCOMPILE__EOF__
+ cat <<'__DOLTCOMPILE__EOF__' >>doltcompile
+"${args@<:@@@:>@}" $pic_options -DPIC || exit $?
+__DOLTCOMPILE__EOF__
+ fi
+
+dnl Write out static compilation code.
+dnl Avoid duplicate compiler output if also building shared objects.
+ if test x$enable_static = xyes; then
+ cat <<'__DOLTCOMPILE__EOF__' >>doltcompile
+non_pic_object="$obj.o"
+args@<:@$objarg@:>@="$non_pic_object"
+__DOLTCOMPILE__EOF__
+ if test x$enable_shared = xyes; then
+ cat <<'__DOLTCOMPILE__EOF__' >>doltcompile
+"${args@<:@@@:>@}" >/dev/null 2>&1 || exit $?
+__DOLTCOMPILE__EOF__
+ else
+ cat <<'__DOLTCOMPILE__EOF__' >>doltcompile
+"${args@<:@@@:>@}" || exit $?
+__DOLTCOMPILE__EOF__
+ fi
+ fi
+
+dnl Write out the code to write the .lo file.
+dnl The second line of the .lo file must match "^# Generated by .*libtool"
+ cat <<'__DOLTCOMPILE__EOF__' >>doltcompile
+{
+echo "# $lo - a libtool object file"
+echo "# Generated by doltcompile, not libtool"
+__DOLTCOMPILE__EOF__
+
+ if test x$enable_shared = xyes; then
+ cat <<'__DOLTCOMPILE__EOF__' >>doltcompile
+echo "pic_object='.libs/${objbase}.o'"
+__DOLTCOMPILE__EOF__
+ else
+ cat <<'__DOLTCOMPILE__EOF__' >>doltcompile
+echo pic_object=none
+__DOLTCOMPILE__EOF__
+ fi
+
+ if test x$enable_static = xyes; then
+ cat <<'__DOLTCOMPILE__EOF__' >>doltcompile
+echo "non_pic_object='${objbase}.o'"
+__DOLTCOMPILE__EOF__
+ else
+ cat <<'__DOLTCOMPILE__EOF__' >>doltcompile
+echo non_pic_object=none
+__DOLTCOMPILE__EOF__
+ fi
+
+ cat <<'__DOLTCOMPILE__EOF__' >>doltcompile
+} > "$lo"
+__DOLTCOMPILE__EOF__
+
+dnl Done writing out doltcompile; substitute it for libtool compilation.
+ chmod +x doltcompile
+ LTCOMPILE='$(top_builddir)/doltcompile $(COMPILE)'
+ LTCXXCOMPILE='$(top_builddir)/doltcompile $(CXXCOMPILE)'
+
+dnl automake ignores LTCOMPILE and LTCXXCOMPILE when it has separate CFLAGS for
+dnl a target, so write out a libtool wrapper to handle that case.
+dnl Note that doltlibtool does not handle inferred tags or option arguments
+dnl without '=', because automake does not use them.
+ cat <<__DOLTLIBTOOL__EOF__ > doltlibtool
+#!$DOLT_BASH
+__DOLTLIBTOOL__EOF__
+ cat <<'__DOLTLIBTOOL__EOF__' >>doltlibtool
+top_builddir_slash="${0%%doltlibtool}"
+: ${top_builddir_slash:=./}
+args=()
+modeok=false
+tagok=false
+for arg in "$[]@"; do
+ case "$arg" in
+ --mode=compile) modeok=true ;;
+ --tag=CC|--tag=CXX) tagok=true ;;
+ --tag=disable-static) tagok=true ;;
+ --tag=ASM|--tag=YASM) tagok=true; passthrough=true;;
+ --silent|--quiet) ;;
+ *) args@<:@${#args[@]}@:>@="$arg" ;;
+ esac
+done
+if $modeok && $tagok ; then
+ . ${top_builddir_slash}doltcompile "${args@<:@@@:>@}"
+else
+ exec ${top_builddir_slash}libtool "$[]@"
+fi
+__DOLTLIBTOOL__EOF__
+
+dnl Done writing out doltlibtool; substitute it for libtool.
+ chmod +x doltlibtool
+ LIBTOOL='$(top_builddir)/doltlibtool'
+
+DOLT_CLEANFILES="doltlibtool doltcompile"
+AC_SUBST(DOLT_CLEANFILES)
+])
+AC_SUBST(LTCOMPILE)
+AC_SUBST(LTCXXCOMPILE)
+# end dolt
+])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/kmod-20/m4/features.m4 new/kmod-21/m4/features.m4
--- old/kmod-20/m4/features.m4 1970-01-01 01:00:00.000000000 +0100
+++ new/kmod-21/m4/features.m4 2015-06-09 03:37:10.000000000 +0200
@@ -0,0 +1,48 @@
+# Copyright (c) 2015 Lucas De Marchi
+#
+# This program is free software: you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by the
+# Free Software Foundation, either version 2 of the License, or (at your
+# option) any later version.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
+# Public License for more details.
+#
+# You should have received a copy of the GNU General Public License along
+# with this program. If not, see http://www.gnu.org/licenses/.
+#
+# As a special exception, the respective Autoconf Macro's copyright owner
+# gives unlimited permission to copy, distribute and modify the configure
+# scripts that are the output of Autoconf when processing the Macro. You
+# need not follow the terms of the GNU General Public License when using
+# or distributing such scripts, even though portions of the text of the
+# Macro appear in them. The GNU General Public License (GPL) does govern
+# all other use of the material that constitutes the Autoconf Macro.
+#
+# This special exception to the GPL applies to versions of the Autoconf
+# Macro released by the Autoconf Archive. When you make and distribute a
+# modified version of the Autoconf Macro, you may extend this special
+# exception to the GPL to apply to your modified version as well.
+#
+# CC_FEATURE_APPEND([FLAGS], [ENV-TO-CHECK], [FLAG-NAME])
+AC_DEFUN([CC_FEATURE_APPEND], [
+ AS_VAR_PUSHDEF([FLAGS], [$1])dnl
+ AS_VAR_PUSHDEF([ENV_CHECK], [$2])dnl
+ AS_VAR_PUSHDEF([FLAG_NAME], [$3])dnl
+
+ AS_CASE([" AS_VAR_GET(FLAGS) " ],
+ [*" FLAG_NAME "*], [AC_RUN_LOG([: FLAGS already contains FLAG_NAME])],
+ [
+ AS_IF([test "x$FLAGS" != "x"], [AS_VAR_APPEND(FLAGS, " ")])
+ AS_IF([test "x$ENV_CHECK" = "xyes"],
+ [AS_VAR_APPEND(FLAGS, "+FLAG_NAME")],
+ [AS_VAR_APPEND(FLAGS, "-FLAG_NAME")])
+ ]
+ )
+
+ AS_VAR_POPDEF([FLAG_NAME])dnl
+ AS_VAR_POPDEF([ENV_CHECK])dnl
+ AS_VAR_POPDEF([FLAGS])dnl
+])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/kmod-20/m4/libtool.m4 new/kmod-21/m4/libtool.m4
--- old/kmod-20/m4/libtool.m4 2015-01-24 04:44:49.000000000 +0100
+++ new/kmod-21/m4/libtool.m4 2015-04-24 00:45:43.000000000 +0200
@@ -738,7 +738,7 @@
_LT_LIBTOOL_TAGS
# Configured defaults for sys_lib_dlsearch_path munging.
-: \${LT_SYS_LIBRARY_PATH="$LT_SYS_LIBRARY_PATH"}
+: \${LT_SYS_LIBRARY_PATH="$configure_time_lt_sys_library_path"}
# ### BEGIN LIBTOOL CONFIG
_LT_LIBTOOL_CONFIG_VARS
@@ -748,13 +748,14 @@
_LT_EOF
cat <<'_LT_EOF' >> "$cfgfile"
-## -------------------------------------- ##
-## Shell functions shared with configure. ##
-## -------------------------------------- ##
+
+# ### BEGIN FUNCTIONS SHARED WITH CONFIGURE
_LT_PREPARE_MUNGE_PATH_LIST
_LT_PREPARE_CC_BASENAME
+# ### END FUNCTIONS SHARED WITH CONFIGURE
+
_LT_EOF
case $host_os in
@@ -2256,7 +2257,7 @@
x)
;;
*:)
- eval @S|@1=\"`$ECHO @S|@2 | $SED 's/:/ /g'` \$@S|@1\"
+ eval @S|@1=\"`$ECHO @S|@2 | $SED 's/:/ /g'` \@S|@@S|@1\"
;;
x:*)
eval @S|@1=\"\@S|@@S|@1 `$ECHO @S|@2 | $SED 's/:/ /g'`\"
@@ -3100,13 +3101,15 @@
sys_lib_dlsearch_path_spec=$lt_cv_sys_lib_dlsearch_path_spec
fi
-# lt_cv_sys_lib... is unaugmented for libtool script decls...
-lt_cv_sys_lib_dlsearch_path_spec=$sys_lib_dlsearch_path_spec
+# remember unaugmented sys_lib_dlsearch_path content for libtool script decls...
+configure_time_dlsearch_path=$sys_lib_dlsearch_path_spec
-# ..but sys_lib_... needs LT_SYS_LIBRARY_PATH munging for
-# LT_SYS_DLSEARCH_PATH macro in ltdl.m4 to work with the correct paths:
+# ... but it needs LT_SYS_LIBRARY_PATH munging for other configure-time code
func_munge_path_list sys_lib_dlsearch_path_spec "$LT_SYS_LIBRARY_PATH"
+# to be used as default LT_SYS_LIBRARY_PATH value in generated libtool
+configure_time_lt_sys_library_path=$LT_SYS_LIBRARY_PATH
+
_LT_DECL([], [variables_saved_for_relink], [1],
[Variables whose values should be saved in libtool wrapper scripts and
restored at link time])
@@ -3139,8 +3142,10 @@
[Whether we should hardcode library paths into libraries])
_LT_DECL([], [sys_lib_search_path_spec], [2],
[Compile-time system search path for libraries])
-_LT_DECL([sys_lib_dlsearch_path_spec], [lt_cv_sys_lib_dlsearch_path_spec], [2],
- [Run-time system search path for libraries])
+_LT_DECL([sys_lib_dlsearch_path_spec], [configure_time_dlsearch_path], [2],
+ [Detected run-time system search path for libraries])
+_LT_DECL([], [configure_time_lt_sys_library_path], [2],
+ [Explicit LT_SYS_LIBRARY_PATH set during ./configure time])
])# _LT_SYS_DYNAMIC_LINKER
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/kmod-20/m4/ltversion.m4 new/kmod-21/m4/ltversion.m4
--- old/kmod-20/m4/ltversion.m4 2015-01-24 04:44:49.000000000 +0100
+++ new/kmod-21/m4/ltversion.m4 2015-04-24 00:45:44.000000000 +0200
@@ -9,15 +9,15 @@
# @configure_input@
-# serial 4171 ltversion.m4
+# serial 4179 ltversion.m4
# This file is part of GNU Libtool
-m4_define([LT_PACKAGE_VERSION], [2.4.5])
-m4_define([LT_PACKAGE_REVISION], [2.4.5])
+m4_define([LT_PACKAGE_VERSION], [2.4.6])
+m4_define([LT_PACKAGE_REVISION], [2.4.6])
AC_DEFUN([LTVERSION_VERSION],
-[macro_version='2.4.5'
-macro_revision='2.4.5'
+[macro_version='2.4.6'
+macro_revision='2.4.6'
_LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?])
_LT_DECL(, macro_revision, 0)
])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/kmod-20/man/depmod.8 new/kmod-21/man/depmod.8
--- old/kmod-20/man/depmod.8 2015-03-01 19:04:33.000000000 +0100
+++ new/kmod-21/man/depmod.8 2015-06-09 07:36:24.000000000 +0200
@@ -2,12 +2,12 @@
.\" Title: depmod
.\" Author: Jon Masters
.\" Generator: DocBook XSL Stylesheets v1.78.1 http://docbook.sf.net/
-.\" Date: 03/01/2015
+.\" Date: 06/09/2015
.\" Manual: depmod
.\" Source: kmod
.\" Language: English
.\"
-.TH "DEPMOD" "8" "03/01/2015" "kmod" "depmod"
+.TH "DEPMOD" "8" "06/09/2015" "kmod" "depmod"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/kmod-20/man/depmod.d.5 new/kmod-21/man/depmod.d.5
--- old/kmod-20/man/depmod.d.5 2015-03-01 19:04:33.000000000 +0100
+++ new/kmod-21/man/depmod.d.5 2015-06-09 07:36:23.000000000 +0200
@@ -2,12 +2,12 @@
.\" Title: depmod.d
.\" Author: Jon Masters
.\" Generator: DocBook XSL Stylesheets v1.78.1 http://docbook.sf.net/
-.\" Date: 03/01/2015
+.\" Date: 06/09/2015
.\" Manual: depmod.d
.\" Source: kmod
.\" Language: English
.\"
-.TH "DEPMOD\&.D" "5" "03/01/2015" "kmod" "depmod.d"
+.TH "DEPMOD\&.D" "5" "06/09/2015" "kmod" "depmod.d"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/kmod-20/man/insmod.8 new/kmod-21/man/insmod.8
--- old/kmod-20/man/insmod.8 2015-03-01 19:04:33.000000000 +0100
+++ new/kmod-21/man/insmod.8 2015-06-09 07:36:24.000000000 +0200
@@ -2,12 +2,12 @@
.\" Title: insmod
.\" Author: Jon Masters
.\" Generator: DocBook XSL Stylesheets v1.78.1 http://docbook.sf.net/
-.\" Date: 03/01/2015
+.\" Date: 06/09/2015
.\" Manual: insmod
.\" Source: kmod
.\" Language: English
.\"
-.TH "INSMOD" "8" "03/01/2015" "kmod" "insmod"
+.TH "INSMOD" "8" "06/09/2015" "kmod" "insmod"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/kmod-20/man/kmod.8 new/kmod-21/man/kmod.8
--- old/kmod-20/man/kmod.8 2015-03-01 19:04:33.000000000 +0100
+++ new/kmod-21/man/kmod.8 2015-06-09 07:36:24.000000000 +0200
@@ -2,12 +2,12 @@
.\" Title: kmod
.\" Author: Lucas De Marchi
.\" Generator: DocBook XSL Stylesheets v1.78.1 http://docbook.sf.net/
-.\" Date: 03/01/2015
+.\" Date: 06/09/2015
.\" Manual: kmod
.\" Source: kmod
.\" Language: English
.\"
-.TH "KMOD" "8" "03/01/2015" "kmod" "kmod"
+.TH "KMOD" "8" "06/09/2015" "kmod" "kmod"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/kmod-20/man/lsmod.8 new/kmod-21/man/lsmod.8
--- old/kmod-20/man/lsmod.8 2015-03-01 19:04:33.000000000 +0100
+++ new/kmod-21/man/lsmod.8 2015-06-09 07:36:25.000000000 +0200
@@ -2,12 +2,12 @@
.\" Title: lsmod
.\" Author: Jon Masters
.\" Generator: DocBook XSL Stylesheets v1.78.1 http://docbook.sf.net/
-.\" Date: 03/01/2015
+.\" Date: 06/09/2015
.\" Manual: lsmod
.\" Source: kmod
.\" Language: English
.\"
-.TH "LSMOD" "8" "03/01/2015" "kmod" "lsmod"
+.TH "LSMOD" "8" "06/09/2015" "kmod" "lsmod"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/kmod-20/man/modinfo.8 new/kmod-21/man/modinfo.8
--- old/kmod-20/man/modinfo.8 2015-03-01 19:04:33.000000000 +0100
+++ new/kmod-21/man/modinfo.8 2015-06-09 07:36:25.000000000 +0200
@@ -2,12 +2,12 @@
.\" Title: modinfo
.\" Author: Jon Masters
.\" Generator: DocBook XSL Stylesheets v1.78.1 http://docbook.sf.net/
-.\" Date: 03/01/2015
+.\" Date: 06/09/2015
.\" Manual: modinfo
.\" Source: kmod
.\" Language: English
.\"
-.TH "MODINFO" "8" "03/01/2015" "kmod" "modinfo"
+.TH "MODINFO" "8" "06/09/2015" "kmod" "modinfo"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/kmod-20/man/modprobe.8 new/kmod-21/man/modprobe.8
--- old/kmod-20/man/modprobe.8 2015-03-01 19:04:33.000000000 +0100
+++ new/kmod-21/man/modprobe.8 2015-06-09 07:36:25.000000000 +0200
@@ -2,12 +2,12 @@
.\" Title: modprobe
.\" Author: Jon Masters
.\" Generator: DocBook XSL Stylesheets v1.78.1 http://docbook.sf.net/
-.\" Date: 03/01/2015
+.\" Date: 06/09/2015
.\" Manual: modprobe
.\" Source: kmod
.\" Language: English
.\"
-.TH "MODPROBE" "8" "03/01/2015" "kmod" "modprobe"
+.TH "MODPROBE" "8" "06/09/2015" "kmod" "modprobe"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/kmod-20/man/modprobe.d.5 new/kmod-21/man/modprobe.d.5
--- old/kmod-20/man/modprobe.d.5 2015-03-01 19:04:33.000000000 +0100
+++ new/kmod-21/man/modprobe.d.5 2015-06-09 07:36:24.000000000 +0200
@@ -2,12 +2,12 @@
.\" Title: modprobe.d
.\" Author: Jon Masters
.\" Generator: DocBook XSL Stylesheets v1.78.1 http://docbook.sf.net/
-.\" Date: 03/01/2015
+.\" Date: 06/09/2015
.\" Manual: modprobe.d
.\" Source: kmod
.\" Language: English
.\"
-.TH "MODPROBE\&.D" "5" "03/01/2015" "kmod" "modprobe.d"
+.TH "MODPROBE\&.D" "5" "06/09/2015" "kmod" "modprobe.d"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/kmod-20/man/modules.dep.5 new/kmod-21/man/modules.dep.5
--- old/kmod-20/man/modules.dep.5 2015-03-01 19:04:33.000000000 +0100
+++ new/kmod-21/man/modules.dep.5 2015-06-09 07:36:24.000000000 +0200
@@ -2,12 +2,12 @@
.\" Title: modules.dep
.\" Author: Jon Masters
.\" Generator: DocBook XSL Stylesheets v1.78.1 http://docbook.sf.net/
-.\" Date: 03/01/2015
+.\" Date: 06/09/2015
.\" Manual: modules.dep
.\" Source: kmod
.\" Language: English
.\"
-.TH "MODULES\&.DEP" "5" "03/01/2015" "kmod" "modules.dep"
+.TH "MODULES\&.DEP" "5" "06/09/2015" "kmod" "modules.dep"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/kmod-20/man/rmmod.8 new/kmod-21/man/rmmod.8
--- old/kmod-20/man/rmmod.8 2015-03-01 19:04:33.000000000 +0100
+++ new/kmod-21/man/rmmod.8 2015-06-09 07:36:25.000000000 +0200
@@ -2,12 +2,12 @@
.\" Title: rmmod
.\" Author: Jon Masters
.\" Generator: DocBook XSL Stylesheets v1.78.1 http://docbook.sf.net/
-.\" Date: 03/01/2015
+.\" Date: 06/09/2015
.\" Manual: rmmod
.\" Source: kmod
.\" Language: English
.\"
-.TH "RMMOD" "8" "03/01/2015" "kmod" "rmmod"
+.TH "RMMOD" "8" "06/09/2015" "kmod" "rmmod"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
@@ -71,7 +71,8 @@
.PP
\fBmodprobe\fR(8),
\fBinsmod\fR(8),
-\fBlsmod\fR(8)\fBmodinfo\fR(8)
+\fBlsmod\fR(8),
+\fBmodinfo\fR(8)
.SH "AUTHORS"
.PP
\fBJon Masters\fR <\&jcm@jonmasters\&.org\&>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/kmod-20/man/rmmod.xml new/kmod-21/man/rmmod.xml
--- old/kmod-20/man/rmmod.xml 2014-03-19 11:54:39.000000000 +0100
+++ new/kmod-21/man/rmmod.xml 2015-06-09 03:46:06.000000000 +0200
@@ -135,7 +135,7 @@
</citerefentry>,
<citerefentry>
<refentrytitle>lsmod</refentrytitle><manvolnum>8</manvolnum>
- </citerefentry>
+ </citerefentry>,
<citerefentry>
<refentrytitle>modinfo</refentrytitle><manvolnum>8</manvolnum>
</citerefentry>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/kmod-20/shared/util.h new/kmod-21/shared/util.h
--- old/kmod-20/shared/util.h 2015-02-10 13:24:54.000000000 +0100
+++ new/kmod-21/shared/util.h 2015-03-24 03:46:53.000000000 +0100
@@ -86,5 +86,5 @@
#endif
#endif
*res = a + b;
- return ULLONG_MAX - a < b;
+ return UINT64_MAX - a < b;
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/kmod-20/testsuite/module-playground/Makefile new/kmod-21/testsuite/module-playground/Makefile
--- old/kmod-20/testsuite/module-playground/Makefile 2015-02-26 18:49:31.000000000 +0100
+++ new/kmod-21/testsuite/module-playground/Makefile 2015-06-07 04:06:23.000000000 +0200
@@ -38,6 +38,9 @@
# normal makefile
KDIR ?= /lib/modules/`uname -r`/build
KVER ?= `uname -r`
+ifeq ($(FAKE_BUILD),)
+ FAKE_BUILD=0
+endif
ARCH_SPECIFIC_MODULES := mod-simple-x86_64.ko mod-simple-i386.ko mod-simple-sparc64.ko
MY_MODULES := $(filter-out $(ARCH_SPECIFIC_MODULES),$(wildcard *.ko))
@@ -48,8 +51,14 @@
$(eval arch=$(patsubst mod-simple-%.ko,%,$@))
$(MAKE) KDIR=$(KDIR_$(arch)) ARCH=$(arch) CROSS_COMPILE=$(CROSS_COMPILE_$(arch)) -f Makefile.arch
+ifeq ($(FAKE_BUILD),0)
modules:
$(MAKE) -C $(KDIR) M=$$PWD
+else
+modules:
+ @echo " CP cache/*.ko"
+ @cp cache/*.ko .
+endif
arch-modules: $(ARCH_SPECIFIC_MODULES)
Files old/kmod-20/testsuite/module-playground/cache/mod-fake-cciss.ko and new/kmod-21/testsuite/module-playground/cache/mod-fake-cciss.ko differ
Files old/kmod-20/testsuite/module-playground/cache/mod-fake-hpsa.ko and new/kmod-21/testsuite/module-playground/cache/mod-fake-hpsa.ko differ
Files old/kmod-20/testsuite/module-playground/cache/mod-fake-scsi-mod.ko and new/kmod-21/testsuite/module-playground/cache/mod-fake-scsi-mod.ko differ
Files old/kmod-20/testsuite/module-playground/cache/mod-foo-a.ko and new/kmod-21/testsuite/module-playground/cache/mod-foo-a.ko differ
Files old/kmod-20/testsuite/module-playground/cache/mod-foo-b.ko and new/kmod-21/testsuite/module-playground/cache/mod-foo-b.ko differ
Files old/kmod-20/testsuite/module-playground/cache/mod-foo-c.ko and new/kmod-21/testsuite/module-playground/cache/mod-foo-c.ko differ
Files old/kmod-20/testsuite/module-playground/cache/mod-foo.ko and new/kmod-21/testsuite/module-playground/cache/mod-foo.ko differ
Files old/kmod-20/testsuite/module-playground/cache/mod-loop-a.ko and new/kmod-21/testsuite/module-playground/cache/mod-loop-a.ko differ
Files old/kmod-20/testsuite/module-playground/cache/mod-loop-b.ko and new/kmod-21/testsuite/module-playground/cache/mod-loop-b.ko differ
Files old/kmod-20/testsuite/module-playground/cache/mod-loop-c.ko and new/kmod-21/testsuite/module-playground/cache/mod-loop-c.ko differ
Files old/kmod-20/testsuite/module-playground/cache/mod-loop-d.ko and new/kmod-21/testsuite/module-playground/cache/mod-loop-d.ko differ
Files old/kmod-20/testsuite/module-playground/cache/mod-loop-e.ko and new/kmod-21/testsuite/module-playground/cache/mod-loop-e.ko differ
Files old/kmod-20/testsuite/module-playground/cache/mod-simple.ko and new/kmod-21/testsuite/module-playground/cache/mod-simple.ko differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/kmod-20/testsuite/populate-modules.sh new/kmod-21/testsuite/populate-modules.sh
--- old/kmod-20/testsuite/populate-modules.sh 2015-02-21 18:36:20.000000000 +0100
+++ new/kmod-21/testsuite/populate-modules.sh 2015-03-07 16:09:51.000000000 +0100
@@ -42,6 +42,8 @@
["test-modinfo/mod-simple-sparc64.ko"]="mod-simple-sparc64.ko"
["test-modinfo/mod-simple-sha1.ko"]="mod-simple.ko"
["test-modinfo/mod-simple-sha256.ko"]="mod-simple.ko"
+ ["test-tools/insert/lib/modules/4.4.4/kernel/"]="mod-simple.ko"
+ ["test-tools/remove/lib/modules/4.4.4/kernel/"]="mod-simple.ko"
)
gzip_array=(
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/kmod-20/testsuite/rootfs-pristine/test-tools/insert/lib/modules/4.4.4/modules.alias new/kmod-21/testsuite/rootfs-pristine/test-tools/insert/lib/modules/4.4.4/modules.alias
--- old/kmod-20/testsuite/rootfs-pristine/test-tools/insert/lib/modules/4.4.4/modules.alias 1970-01-01 01:00:00.000000000 +0100
+++ new/kmod-21/testsuite/rootfs-pristine/test-tools/insert/lib/modules/4.4.4/modules.alias 2015-03-07 16:09:51.000000000 +0100
@@ -0,0 +1 @@
+# Aliases extracted from modules themselves.
Files old/kmod-20/testsuite/rootfs-pristine/test-tools/insert/lib/modules/4.4.4/modules.alias.bin and new/kmod-21/testsuite/rootfs-pristine/test-tools/insert/lib/modules/4.4.4/modules.alias.bin differ
Files old/kmod-20/testsuite/rootfs-pristine/test-tools/insert/lib/modules/4.4.4/modules.builtin.bin and new/kmod-21/testsuite/rootfs-pristine/test-tools/insert/lib/modules/4.4.4/modules.builtin.bin differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/kmod-20/testsuite/rootfs-pristine/test-tools/insert/lib/modules/4.4.4/modules.dep new/kmod-21/testsuite/rootfs-pristine/test-tools/insert/lib/modules/4.4.4/modules.dep
--- old/kmod-20/testsuite/rootfs-pristine/test-tools/insert/lib/modules/4.4.4/modules.dep 1970-01-01 01:00:00.000000000 +0100
+++ new/kmod-21/testsuite/rootfs-pristine/test-tools/insert/lib/modules/4.4.4/modules.dep 2015-03-07 16:09:51.000000000 +0100
@@ -0,0 +1 @@
+kernel/mod-simple.ko:
Files old/kmod-20/testsuite/rootfs-pristine/test-tools/insert/lib/modules/4.4.4/modules.dep.bin and new/kmod-21/testsuite/rootfs-pristine/test-tools/insert/lib/modules/4.4.4/modules.dep.bin differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/kmod-20/testsuite/rootfs-pristine/test-tools/insert/lib/modules/4.4.4/modules.devname new/kmod-21/testsuite/rootfs-pristine/test-tools/insert/lib/modules/4.4.4/modules.devname
--- old/kmod-20/testsuite/rootfs-pristine/test-tools/insert/lib/modules/4.4.4/modules.devname 1970-01-01 01:00:00.000000000 +0100
+++ new/kmod-21/testsuite/rootfs-pristine/test-tools/insert/lib/modules/4.4.4/modules.devname 2015-03-07 16:09:51.000000000 +0100
@@ -0,0 +1 @@
+# Device nodes to trigger on-demand module loading.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/kmod-20/testsuite/rootfs-pristine/test-tools/insert/lib/modules/4.4.4/modules.softdep new/kmod-21/testsuite/rootfs-pristine/test-tools/insert/lib/modules/4.4.4/modules.softdep
--- old/kmod-20/testsuite/rootfs-pristine/test-tools/insert/lib/modules/4.4.4/modules.softdep 1970-01-01 01:00:00.000000000 +0100
+++ new/kmod-21/testsuite/rootfs-pristine/test-tools/insert/lib/modules/4.4.4/modules.softdep 2015-03-07 16:09:51.000000000 +0100
@@ -0,0 +1 @@
+# Soft dependencies extracted from modules themselves.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/kmod-20/testsuite/rootfs-pristine/test-tools/insert/lib/modules/4.4.4/modules.symbols new/kmod-21/testsuite/rootfs-pristine/test-tools/insert/lib/modules/4.4.4/modules.symbols
--- old/kmod-20/testsuite/rootfs-pristine/test-tools/insert/lib/modules/4.4.4/modules.symbols 1970-01-01 01:00:00.000000000 +0100
+++ new/kmod-21/testsuite/rootfs-pristine/test-tools/insert/lib/modules/4.4.4/modules.symbols 2015-03-07 16:09:51.000000000 +0100
@@ -0,0 +1 @@
+# Aliases for symbols, used by symbol_request().
Files old/kmod-20/testsuite/rootfs-pristine/test-tools/insert/lib/modules/4.4.4/modules.symbols.bin and new/kmod-21/testsuite/rootfs-pristine/test-tools/insert/lib/modules/4.4.4/modules.symbols.bin differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/kmod-20/testsuite/rootfs-pristine/test-tools/remove/lib/modules/4.4.4/modules.alias new/kmod-21/testsuite/rootfs-pristine/test-tools/remove/lib/modules/4.4.4/modules.alias
--- old/kmod-20/testsuite/rootfs-pristine/test-tools/remove/lib/modules/4.4.4/modules.alias 1970-01-01 01:00:00.000000000 +0100
+++ new/kmod-21/testsuite/rootfs-pristine/test-tools/remove/lib/modules/4.4.4/modules.alias 2015-03-07 16:09:51.000000000 +0100
@@ -0,0 +1 @@
+# Aliases extracted from modules themselves.
Files old/kmod-20/testsuite/rootfs-pristine/test-tools/remove/lib/modules/4.4.4/modules.alias.bin and new/kmod-21/testsuite/rootfs-pristine/test-tools/remove/lib/modules/4.4.4/modules.alias.bin differ
Files old/kmod-20/testsuite/rootfs-pristine/test-tools/remove/lib/modules/4.4.4/modules.builtin.bin and new/kmod-21/testsuite/rootfs-pristine/test-tools/remove/lib/modules/4.4.4/modules.builtin.bin differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/kmod-20/testsuite/rootfs-pristine/test-tools/remove/lib/modules/4.4.4/modules.dep new/kmod-21/testsuite/rootfs-pristine/test-tools/remove/lib/modules/4.4.4/modules.dep
--- old/kmod-20/testsuite/rootfs-pristine/test-tools/remove/lib/modules/4.4.4/modules.dep 1970-01-01 01:00:00.000000000 +0100
+++ new/kmod-21/testsuite/rootfs-pristine/test-tools/remove/lib/modules/4.4.4/modules.dep 2015-03-07 16:09:51.000000000 +0100
@@ -0,0 +1 @@
+kernel/mod-simple.ko:
Files old/kmod-20/testsuite/rootfs-pristine/test-tools/remove/lib/modules/4.4.4/modules.dep.bin and new/kmod-21/testsuite/rootfs-pristine/test-tools/remove/lib/modules/4.4.4/modules.dep.bin differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/kmod-20/testsuite/rootfs-pristine/test-tools/remove/lib/modules/4.4.4/modules.devname new/kmod-21/testsuite/rootfs-pristine/test-tools/remove/lib/modules/4.4.4/modules.devname
--- old/kmod-20/testsuite/rootfs-pristine/test-tools/remove/lib/modules/4.4.4/modules.devname 1970-01-01 01:00:00.000000000 +0100
+++ new/kmod-21/testsuite/rootfs-pristine/test-tools/remove/lib/modules/4.4.4/modules.devname 2015-03-07 16:09:51.000000000 +0100
@@ -0,0 +1 @@
+# Device nodes to trigger on-demand module loading.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/kmod-20/testsuite/rootfs-pristine/test-tools/remove/lib/modules/4.4.4/modules.softdep new/kmod-21/testsuite/rootfs-pristine/test-tools/remove/lib/modules/4.4.4/modules.softdep
--- old/kmod-20/testsuite/rootfs-pristine/test-tools/remove/lib/modules/4.4.4/modules.softdep 1970-01-01 01:00:00.000000000 +0100
+++ new/kmod-21/testsuite/rootfs-pristine/test-tools/remove/lib/modules/4.4.4/modules.softdep 2015-03-07 16:09:51.000000000 +0100
@@ -0,0 +1 @@
+# Soft dependencies extracted from modules themselves.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/kmod-20/testsuite/rootfs-pristine/test-tools/remove/lib/modules/4.4.4/modules.symbols new/kmod-21/testsuite/rootfs-pristine/test-tools/remove/lib/modules/4.4.4/modules.symbols
--- old/kmod-20/testsuite/rootfs-pristine/test-tools/remove/lib/modules/4.4.4/modules.symbols 1970-01-01 01:00:00.000000000 +0100
+++ new/kmod-21/testsuite/rootfs-pristine/test-tools/remove/lib/modules/4.4.4/modules.symbols 2015-03-07 16:09:51.000000000 +0100
@@ -0,0 +1 @@
+# Aliases for symbols, used by symbol_request().
Files old/kmod-20/testsuite/rootfs-pristine/test-tools/remove/lib/modules/4.4.4/modules.symbols.bin and new/kmod-21/testsuite/rootfs-pristine/test-tools/remove/lib/modules/4.4.4/modules.symbols.bin differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/kmod-20/testsuite/rootfs-pristine/test-tools/remove/sys/module/mod_simple/initstate new/kmod-21/testsuite/rootfs-pristine/test-tools/remove/sys/module/mod_simple/initstate
--- old/kmod-20/testsuite/rootfs-pristine/test-tools/remove/sys/module/mod_simple/initstate 1970-01-01 01:00:00.000000000 +0100
+++ new/kmod-21/testsuite/rootfs-pristine/test-tools/remove/sys/module/mod_simple/initstate 2015-03-07 16:09:51.000000000 +0100
@@ -0,0 +1 @@
+live
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/kmod-20/testsuite/rootfs-pristine/test-tools/remove/sys/module/mod_simple/refcnt new/kmod-21/testsuite/rootfs-pristine/test-tools/remove/sys/module/mod_simple/refcnt
--- old/kmod-20/testsuite/rootfs-pristine/test-tools/remove/sys/module/mod_simple/refcnt 1970-01-01 01:00:00.000000000 +0100
+++ new/kmod-21/testsuite/rootfs-pristine/test-tools/remove/sys/module/mod_simple/refcnt 2015-03-07 16:09:51.000000000 +0100
@@ -0,0 +1 @@
+0
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/kmod-20/testsuite/test-tools.c new/kmod-21/testsuite/test-tools.c
--- old/kmod-20/testsuite/test-tools.c 1970-01-01 01:00:00.000000000 +0100
+++ new/kmod-21/testsuite/test-tools.c 2015-03-07 16:09:51.000000000 +0100
@@ -0,0 +1,71 @@
+/*
+ * Copyright (C) 2015 Intel Corporation. All rights reserved.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, see http://www.gnu.org/licenses/.
+ */
+
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+
+#include "testsuite.h"
+
+static noreturn int kmod_tool_insert(const struct test *t)
+{
+ const char *progname = ABS_TOP_BUILDDIR "/tools/kmod";
+ const char *const args[] = {
+ progname,
+ "insert", "mod-simple",
+ NULL,
+ };
+
+ test_spawn_prog(progname, args);
+ exit(EXIT_FAILURE);
+}
+DEFINE_TEST(kmod_tool_insert,
+ .description = "check kmod insert",
+ .config = {
+ [TC_UNAME_R] = "4.4.4",
+ [TC_ROOTFS] = TESTSUITE_ROOTFS "test-tools/insert",
+ [TC_INIT_MODULE_RETCODES] = "",
+ },
+ .modules_loaded = "mod-simple",
+ );
+
+static noreturn int kmod_tool_remove(const struct test *t)
+{
+ const char *progname = ABS_TOP_BUILDDIR "/tools/kmod";
+ const char *const args[] = {
+ progname,
+ "remove", "mod-simple",
+ NULL,
+ };
+
+ test_spawn_prog(progname, args);
+ exit(EXIT_FAILURE);
+}
+DEFINE_TEST(kmod_tool_remove,
+ .description = "check kmod remove",
+ .config = {
+ [TC_UNAME_R] = "4.4.4",
+ [TC_ROOTFS] = TESTSUITE_ROOTFS "test-tools/remove",
+ [TC_DELETE_MODULE_RETCODES] = "",
+ },
+ );
+
+TESTSUITE_MAIN();
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/kmod-20/tools/depmod.c new/kmod-21/tools/depmod.c
--- old/kmod-20/tools/depmod.c 2015-02-28 18:56:13.000000000 +0100
+++ new/kmod-21/tools/depmod.c 2015-06-09 03:38:02.000000000 +0200
@@ -2466,6 +2466,7 @@
return EXIT_SUCCESS;
case 'V':
puts(PACKAGE " version " VERSION);
+ puts(KMOD_FEATURES);
return EXIT_SUCCESS;
case '?':
goto cmdline_failed;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/kmod-20/tools/insert.c new/kmod-21/tools/insert.c
--- old/kmod-20/tools/insert.c 1970-01-01 01:00:00.000000000 +0100
+++ new/kmod-21/tools/insert.c 2015-03-07 16:09:51.000000000 +0100
@@ -0,0 +1,128 @@
+/*
+ * kmod-insert - insert a module into the kernel.
+ *
+ * Copyright (C) 2015 Intel Corporation. All rights reserved.
+ * Copyright (C) 2011-2013 ProFUSION embedded systems
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see http://www.gnu.org/licenses/.
+ */
+
+#include
+#include
+#include
+#include
+
+#include
+
+#include "kmod.h"
+
+static const char cmdopts_s[] = "h";
+static const struct option cmdopts[] = {
+ {"help", no_argument, 0, 'h'},
+ { }
+};
+
+static void help(void)
+{
+ printf("Usage:\n"
+ "\t%s insert [options] module\n"
+ "Options:\n"
+ "\t-h, --help show this help\n",
+ program_invocation_short_name);
+}
+
+static const char *mod_strerror(int err)
+{
+ switch (err) {
+ case KMOD_PROBE_APPLY_BLACKLIST:
+ return "Module is blacklisted";
+ case -EEXIST:
+ return "Module already in kernel";
+ case -ENOENT:
+ return "Unknown symbol in module or unknown parameter (see dmesg)";
+ default:
+ return strerror(-err);
+ }
+}
+
+static int do_insert(int argc, char *argv[])
+{
+ struct kmod_ctx *ctx;
+ struct kmod_list *list = NULL, *l;
+ const char *name;
+ int err, r = EXIT_SUCCESS;
+
+ for (;;) {
+ int c, idx = 0;
+ c = getopt_long(argc, argv, cmdopts_s, cmdopts, &idx);
+ if (c == -1)
+ break;
+ switch (c) {
+ case 'h':
+ help();
+ return EXIT_SUCCESS;
+ default:
+ ERR("Unexpected getopt_long() value '%c'.\n", c);
+ return EXIT_FAILURE;
+ }
+ }
+
+ if (optind >= argc) {
+ ERR("Missing module name\n");
+ return EXIT_FAILURE;
+ }
+
+ ctx = kmod_new(NULL, NULL);
+ if (!ctx) {
+ ERR("kmod_new() failed!\n");
+ return EXIT_FAILURE;
+ }
+
+ name = argv[optind];
+ err = kmod_module_new_from_lookup(ctx, name, &list);
+ if (err < 0) {
+ ERR("Could not lookup module matching '%s': %s\n", name, strerror(-err));
+ r = EXIT_FAILURE;
+ goto end;
+ }
+
+ if (list == NULL) {
+ ERR("No module matches '%s'\n", name);
+ r = EXIT_FAILURE;
+ goto end;
+ }
+
+ kmod_list_foreach(l, list) {
+ struct kmod_module *mod = kmod_module_get_module(l);
+
+ err = kmod_module_probe_insert_module(mod, KMOD_PROBE_APPLY_BLACKLIST, NULL, NULL, NULL, NULL);
+ if (err != 0) {
+ r = EXIT_FAILURE;
+ ERR("Could not insert '%s': %s\n", kmod_module_get_name(mod), mod_strerror(err));
+ }
+
+ kmod_module_unref(mod);
+ }
+
+ kmod_module_unref_list(list);
+end:
+ kmod_unref(ctx);
+ return r;
+}
+
+const struct kmod_cmd kmod_cmd_insert = {
+ .name = "insert",
+ .cmd = do_insert,
+ .help = "insert a module into the kernel",
+};
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/kmod-20/tools/insmod.c new/kmod-21/tools/insmod.c
--- old/kmod-20/tools/insmod.c 2015-01-14 17:32:09.000000000 +0100
+++ new/kmod-21/tools/insmod.c 2015-06-09 03:38:02.000000000 +0200
@@ -88,6 +88,7 @@
return EXIT_SUCCESS;
case 'V':
puts(PACKAGE " version " VERSION);
+ puts(KMOD_FEATURES);
return EXIT_SUCCESS;
case '?':
return EXIT_FAILURE;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/kmod-20/tools/kmod.c new/kmod-21/tools/kmod.c
--- old/kmod-20/tools/kmod.c 2015-01-14 15:35:04.000000000 +0100
+++ new/kmod-21/tools/kmod.c 2015-06-09 03:38:02.000000000 +0200
@@ -42,6 +42,11 @@
&kmod_cmd_help,
&kmod_cmd_list,
&kmod_cmd_static_nodes,
+
+#ifdef ENABLE_EXPERIMENTAL
+ &kmod_cmd_insert,
+ &kmod_cmd_remove,
+#endif
};
static const struct kmod_cmd *kmod_compat_cmds[] = {
@@ -108,7 +113,8 @@
kmod_help(argc, argv);
return EXIT_SUCCESS;
case 'V':
- puts("kmod version " VERSION);
+ puts(PACKAGE " version " VERSION);
+ puts(KMOD_FEATURES);
return EXIT_SUCCESS;
case '?':
return EXIT_FAILURE;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/kmod-20/tools/kmod.h new/kmod-21/tools/kmod.h
--- old/kmod-20/tools/kmod.h 2014-12-26 02:28:51.000000000 +0100
+++ new/kmod-21/tools/kmod.h 2015-03-07 16:09:51.000000000 +0100
@@ -34,7 +34,9 @@
extern const struct kmod_cmd kmod_cmd_compat_modprobe;
extern const struct kmod_cmd kmod_cmd_compat_depmod;
+extern const struct kmod_cmd kmod_cmd_insert;
extern const struct kmod_cmd kmod_cmd_list;
extern const struct kmod_cmd kmod_cmd_static_nodes;
+extern const struct kmod_cmd kmod_cmd_remove;
#include "log.h"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/kmod-20/tools/lsmod.c new/kmod-21/tools/lsmod.c
--- old/kmod-20/tools/lsmod.c 2015-01-02 15:37:39.000000000 +0100
+++ new/kmod-21/tools/lsmod.c 2015-04-16 13:46:11.000000000 +0200
@@ -64,15 +64,17 @@
struct kmod_list *holders, *hitr;
int first = 1;
- printf("%-19s %8ld %d ", name, size, use_count);
+ printf("%-19s %8ld %d", name, size, use_count);
holders = kmod_module_get_holders(mod);
kmod_list_foreach(hitr, holders) {
struct kmod_module *hm = kmod_module_get_module(hitr);
- if (!first)
+ if (!first) {
putchar(',');
- else
+ } else {
+ putchar(' ');
first = 0;
+ }
fputs(kmod_module_get_name(hm), stdout);
kmod_module_unref(hm);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/kmod-20/tools/modinfo.c new/kmod-21/tools/modinfo.c
--- old/kmod-20/tools/modinfo.c 2015-01-14 17:32:09.000000000 +0100
+++ new/kmod-21/tools/modinfo.c 2015-06-09 03:38:02.000000000 +0200
@@ -405,6 +405,7 @@
return EXIT_SUCCESS;
case 'V':
puts(PACKAGE " version " VERSION);
+ puts(KMOD_FEATURES);
return EXIT_SUCCESS;
case '?':
return EXIT_FAILURE;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/kmod-20/tools/modprobe.c new/kmod-21/tools/modprobe.c
--- old/kmod-20/tools/modprobe.c 2015-02-28 18:18:54.000000000 +0100
+++ new/kmod-21/tools/modprobe.c 2015-06-09 03:38:02.000000000 +0200
@@ -824,6 +824,7 @@
break;
case 'V':
puts(PACKAGE " version " VERSION);
+ puts(KMOD_FEATURES);
err = 0;
goto done;
case 'h':
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/kmod-20/tools/remove.c new/kmod-21/tools/remove.c
--- old/kmod-20/tools/remove.c 1970-01-01 01:00:00.000000000 +0100
+++ new/kmod-21/tools/remove.c 2015-03-07 16:09:51.000000000 +0100
@@ -0,0 +1,150 @@
+/*
+ * kmod-remove - remove modules from the kernel.
+ *
+ * Copyright (C) 2015 Intel Corporation. All rights reserved.
+ * Copyright (C) 2011-2013 ProFUSION embedded systems
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see http://www.gnu.org/licenses/.
+ */
+
+#include
+#include
+#include
+#include
+
+#include
+
+#include "kmod.h"
+
+static const char cmdopts_s[] = "h";
+static const struct option cmdopts[] = {
+ {"help", no_argument, 0, 'h'},
+ { }
+};
+
+static void help(void)
+{
+ printf("Usage:\n"
+ "\t%s remove [options] module\n"
+ "Options:\n"
+ "\t-h, --help show this help\n",
+ program_invocation_short_name);
+}
+
+static int check_module_inuse(struct kmod_module *mod) {
+ struct kmod_list *holders;
+ int state;
+
+ state = kmod_module_get_initstate(mod);
+
+ if (state == KMOD_MODULE_BUILTIN) {
+ ERR("Module %s is builtin.\n", kmod_module_get_name(mod));
+ return -ENOENT;
+ } else if (state < 0) {
+ ERR("Module %s is not currently loaded\n",
+ kmod_module_get_name(mod));
+ return -ENOENT;
+ }
+
+ holders = kmod_module_get_holders(mod);
+ if (holders != NULL) {
+ struct kmod_list *itr;
+
+ ERR("Module %s is in use by:", kmod_module_get_name(mod));
+
+ kmod_list_foreach(itr, holders) {
+ struct kmod_module *hm = kmod_module_get_module(itr);
+ fprintf(stderr, " %s", kmod_module_get_name(hm));
+ kmod_module_unref(hm);
+ }
+ fputc('\n', stderr);
+
+ kmod_module_unref_list(holders);
+ return -EBUSY;
+ }
+
+ if (kmod_module_get_refcnt(mod) != 0) {
+ ERR("Module %s is in use\n", kmod_module_get_name(mod));
+ return -EBUSY;
+ }
+
+ return 0;
+}
+
+static int do_remove(int argc, char *argv[])
+{
+ struct kmod_ctx *ctx;
+ struct kmod_module *mod;
+ const char *name;
+ int err, r = EXIT_SUCCESS;
+
+ for (;;) {
+ int c, idx =0;
+ c = getopt_long(argc, argv, cmdopts_s, cmdopts, &idx);
+ if (c == -1)
+ break;
+ switch (c) {
+ case 'h':
+ help();
+ return EXIT_SUCCESS;
+
+ default:
+ ERR("Unexpected getopt_long() value '%c'.\n", c);
+ return EXIT_FAILURE;
+ }
+ }
+
+ if (optind >= argc) {
+ ERR("Missing module name\n");
+ return EXIT_FAILURE;
+ }
+
+ ctx = kmod_new(NULL, NULL);
+ if (!ctx) {
+ ERR("kmod_new() failed!\n");
+ return EXIT_FAILURE;
+ }
+
+ name = argv[optind];
+ err = kmod_module_new_from_name(ctx, name, &mod);
+ if (err < 0) {
+ ERR("Could not remove module %s: %s\n", name, strerror(-err));
+ goto end;
+ }
+
+ err = check_module_inuse(mod);
+ if (err < 0)
+ goto unref;
+
+ err = kmod_module_remove_module(mod, 0);
+ if (err < 0)
+ goto unref;
+
+unref:
+ kmod_module_unref(mod);
+
+end:
+ kmod_unref(ctx);
+ if (err < 0) {
+ r = EXIT_FAILURE;
+ ERR("Could not remove module %s: %s\n", name, strerror(-err));
+ }
+ return r;
+}
+
+const struct kmod_cmd kmod_cmd_remove = {
+ .name = "remove",
+ .cmd = do_remove,
+ .help = "remove module from kernel",
+};
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/kmod-20/tools/rmmod.c new/kmod-21/tools/rmmod.c
--- old/kmod-20/tools/rmmod.c 2015-01-02 15:37:39.000000000 +0100
+++ new/kmod-21/tools/rmmod.c 2015-06-09 03:38:02.000000000 +0200
@@ -128,6 +128,7 @@
return EXIT_SUCCESS;
case 'V':
puts(PACKAGE " version " VERSION);
+ puts(KMOD_FEATURES);
return EXIT_SUCCESS;
case '?':
return EXIT_FAILURE;