diff options
author | Lucas De Marchi <lucas.demarchi@intel.com> | 2015-05-31 15:38:47 -0300 |
---|---|---|
committer | Lucas De Marchi <lucas.demarchi@intel.com> | 2015-05-31 15:38:47 -0300 |
commit | 23603f1f837caeff45c6960722c2cad690db801d (patch) | |
tree | 313f1b145e53cad2555fffb00139477ded99783d | |
parent | 7266ec43371fff8304e730b24729b2c6a95d75c4 (diff) | |
download | kmod-23603f1f837caeff45c6960722c2cad690db801d.tar.gz |
build: cache modules from playground
Now that we are able to build our own test modules, also allow to use
cached modules so a) kernel headers are not required and b) distro
maintainers are happy. It's still need a "--disable-test-modules" in
the configure since the default is enabled.
There's no license problems anymore since all modules come from our own
repository, we ship the sources and the modules can be easily rebuilt.
17 files changed, 21 insertions, 0 deletions
diff --git a/Makefile.am b/Makefile.am index 9457655..b991936 100644 --- a/Makefile.am +++ b/Makefile.am @@ -230,7 +230,12 @@ build-module-playground: 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) diff --git a/configure.ac b/configure.ac index be597b4..6e67584 100644 --- a/configure.ac +++ b/configure.ac @@ -127,6 +127,11 @@ AC_ARG_ENABLE([manpages], [], 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) @@ -282,4 +287,5 @@ AC_MSG_RESULT([ coverage: ${enable_coverage} doc: ${enable_gtk_doc} man: ${enable_manpages} + test-modules: ${enable_test_modules} ]) diff --git a/testsuite/module-playground/.gitignore b/testsuite/module-playground/.gitignore index 5cd3034..6767e0e 100644 --- a/testsuite/module-playground/.gitignore +++ b/testsuite/module-playground/.gitignore @@ -1,6 +1,7 @@ *o.cmd *.ko !mod-simple-*.ko +!cache/*.ko *.mod.c .tmp_versions modules.order diff --git a/testsuite/module-playground/Makefile b/testsuite/module-playground/Makefile index 5ba9ed2..a5f142f 100644 --- a/testsuite/module-playground/Makefile +++ b/testsuite/module-playground/Makefile @@ -38,6 +38,9 @@ else # 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 @@ mod-simple-%.ko: mod-simple-%.c Makefile.arch $(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) diff --git a/testsuite/module-playground/cache/mod-fake-cciss.ko b/testsuite/module-playground/cache/mod-fake-cciss.ko Binary files differnew file mode 100644 index 0000000..f61409a --- /dev/null +++ b/testsuite/module-playground/cache/mod-fake-cciss.ko diff --git a/testsuite/module-playground/cache/mod-fake-hpsa.ko b/testsuite/module-playground/cache/mod-fake-hpsa.ko Binary files differnew file mode 100644 index 0000000..3d33ba7 --- /dev/null +++ b/testsuite/module-playground/cache/mod-fake-hpsa.ko diff --git a/testsuite/module-playground/cache/mod-fake-scsi-mod.ko b/testsuite/module-playground/cache/mod-fake-scsi-mod.ko Binary files differnew file mode 100644 index 0000000..c0eb974 --- /dev/null +++ b/testsuite/module-playground/cache/mod-fake-scsi-mod.ko diff --git a/testsuite/module-playground/cache/mod-foo-a.ko b/testsuite/module-playground/cache/mod-foo-a.ko Binary files differnew file mode 100644 index 0000000..f2d406e --- /dev/null +++ b/testsuite/module-playground/cache/mod-foo-a.ko diff --git a/testsuite/module-playground/cache/mod-foo-b.ko b/testsuite/module-playground/cache/mod-foo-b.ko Binary files differnew file mode 100644 index 0000000..53bf3a9 --- /dev/null +++ b/testsuite/module-playground/cache/mod-foo-b.ko diff --git a/testsuite/module-playground/cache/mod-foo-c.ko b/testsuite/module-playground/cache/mod-foo-c.ko Binary files differnew file mode 100644 index 0000000..083e801 --- /dev/null +++ b/testsuite/module-playground/cache/mod-foo-c.ko diff --git a/testsuite/module-playground/cache/mod-foo.ko b/testsuite/module-playground/cache/mod-foo.ko Binary files differnew file mode 100644 index 0000000..0961478 --- /dev/null +++ b/testsuite/module-playground/cache/mod-foo.ko diff --git a/testsuite/module-playground/cache/mod-loop-a.ko b/testsuite/module-playground/cache/mod-loop-a.ko Binary files differnew file mode 100644 index 0000000..51533d8 --- /dev/null +++ b/testsuite/module-playground/cache/mod-loop-a.ko diff --git a/testsuite/module-playground/cache/mod-loop-b.ko b/testsuite/module-playground/cache/mod-loop-b.ko Binary files differnew file mode 100644 index 0000000..5e20348 --- /dev/null +++ b/testsuite/module-playground/cache/mod-loop-b.ko diff --git a/testsuite/module-playground/cache/mod-loop-c.ko b/testsuite/module-playground/cache/mod-loop-c.ko Binary files differnew file mode 100644 index 0000000..6a02b04 --- /dev/null +++ b/testsuite/module-playground/cache/mod-loop-c.ko diff --git a/testsuite/module-playground/cache/mod-loop-d.ko b/testsuite/module-playground/cache/mod-loop-d.ko Binary files differnew file mode 100644 index 0000000..3ab3348 --- /dev/null +++ b/testsuite/module-playground/cache/mod-loop-d.ko diff --git a/testsuite/module-playground/cache/mod-loop-e.ko b/testsuite/module-playground/cache/mod-loop-e.ko Binary files differnew file mode 100644 index 0000000..efe93ff --- /dev/null +++ b/testsuite/module-playground/cache/mod-loop-e.ko diff --git a/testsuite/module-playground/cache/mod-simple.ko b/testsuite/module-playground/cache/mod-simple.ko Binary files differnew file mode 100644 index 0000000..2c5ffcf --- /dev/null +++ b/testsuite/module-playground/cache/mod-simple.ko |