mirror of
https://github.com/kmod-project/kmod.git
synced 2026-01-26 15:39:08 +00:00
testsuite: split-out Kbuild from Makefile
The former is used by the kernel build system, while the latter is our convenience wrapper. Split the two to indicate the distinction and make things easier to parse. Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Link: https://github.com/kmod-project/kmod/pull/86 Signed-off-by: Lucas De Marchi <lucas.de.marchi@gmail.com>
This commit is contained in:
parent
c613e311ed
commit
31dcadee26
@ -201,6 +201,7 @@ EXTRA_DIST += \
|
||||
testsuite/module-playground/dummy.pkcs7 \
|
||||
testsuite/module-playground/dummy.sha1 \
|
||||
testsuite/module-playground/dummy.sha256 \
|
||||
testsuite/module-playground/Kbuild \
|
||||
testsuite/module-playground/Makefile \
|
||||
testsuite/module-playground/Makefile.arch \
|
||||
testsuite/module-playground/mod-fake-cciss.c \
|
||||
@ -319,7 +320,7 @@ testsuite_test_weakdep_CPPFLAGS = $(TESTSUITE_CPPFLAGS)
|
||||
testsuite-distclean:
|
||||
$(RM) -r $(ROOTFS)
|
||||
$(RM) testsuite/stamp-rootfs
|
||||
$(MAKE) -C testsuite/module-playground/ clean
|
||||
$(MAKE) -C $(MODULE_PLAYGROUND) clean
|
||||
if test "$(top_srcdir)" != "$(top_builddir)"; then \
|
||||
$(RM) -rf testsuite/module-playground; \
|
||||
fi
|
||||
|
||||
45
testsuite/module-playground/Kbuild
Normal file
45
testsuite/module-playground/Kbuild
Normal file
@ -0,0 +1,45 @@
|
||||
ifneq ($(KMOD_TESTSUITE_ARCH_BUILD),1)
|
||||
obj-m := mod-simple.o
|
||||
|
||||
# mod-foo depends on foo-x, and foo-x modules don't depend
|
||||
# on anyone
|
||||
obj-m += mod-foo-a.o
|
||||
obj-m += mod-foo-b.o
|
||||
obj-m += mod-foo-c.o
|
||||
obj-m += mod-foo.o
|
||||
|
||||
# mod-loop: create loops in dependencies:
|
||||
# 1) mod-loop-a -> mod-loop-b -> mod-loop-c -> mod-loop-a
|
||||
# |-> mod-loop-f |-> mod-loop-f
|
||||
# \-> mod-loop-g \-> mod-loop-g
|
||||
# 2) mod-loop-d -> mod-loop-e -> mod-loop-d
|
||||
# 3.1) mod-loop-h -> mod-loop-i -> mod-loop-j -> mod-loop-h
|
||||
# 3.2) mod-loop-h -> mod-loop-i -> mod-loop-j -> mod-loop-k -> mod-loop-h
|
||||
|
||||
obj-m += mod-loop-a.o
|
||||
obj-m += mod-loop-b.o
|
||||
obj-m += mod-loop-c.o
|
||||
obj-m += mod-loop-d.o
|
||||
obj-m += mod-loop-e.o
|
||||
obj-m += mod-loop-f.o
|
||||
obj-m += mod-loop-g.o
|
||||
obj-m += mod-loop-h.o
|
||||
obj-m += mod-loop-i.o
|
||||
obj-m += mod-loop-j.o
|
||||
obj-m += mod-loop-k.o
|
||||
|
||||
# mod-fake-*: fake the respective modules in kernel with these aliases. Aliases
|
||||
# list was taken from 3.5.4
|
||||
obj-m += mod-fake-hpsa.o
|
||||
obj-m += mod-fake-scsi-mod.o
|
||||
obj-m += mod-fake-cciss.o
|
||||
|
||||
obj-m += mod-weakdep.o
|
||||
|
||||
else
|
||||
# only build ARCH-specific module
|
||||
ifeq ($(ARCH),)
|
||||
$(error ARCH must be set to a valid architecture)
|
||||
endif
|
||||
obj-m := mod-simple-$(ARCH).o
|
||||
endif
|
||||
@ -1,54 +1,3 @@
|
||||
ifneq ($(KERNELRELEASE),)
|
||||
# kbuild part of makefile
|
||||
|
||||
ifneq ($(KMOD_TESTSUITE_ARCH_BUILD),1)
|
||||
obj-m := mod-simple.o
|
||||
|
||||
# mod-foo depends on foo-x, and foo-x modules don't depend
|
||||
# on anyone
|
||||
obj-m += mod-foo-a.o
|
||||
obj-m += mod-foo-b.o
|
||||
obj-m += mod-foo-c.o
|
||||
obj-m += mod-foo.o
|
||||
|
||||
# mod-loop: create loops in dependencies:
|
||||
# 1) mod-loop-a -> mod-loop-b -> mod-loop-c -> mod-loop-a
|
||||
# |-> mod-loop-f |-> mod-loop-f
|
||||
# \-> mod-loop-g \-> mod-loop-g
|
||||
# 2) mod-loop-d -> mod-loop-e -> mod-loop-d
|
||||
# 3.1) mod-loop-h -> mod-loop-i -> mod-loop-j -> mod-loop-h
|
||||
# 3.2) mod-loop-h -> mod-loop-i -> mod-loop-j -> mod-loop-k -> mod-loop-h
|
||||
|
||||
obj-m += mod-loop-a.o
|
||||
obj-m += mod-loop-b.o
|
||||
obj-m += mod-loop-c.o
|
||||
obj-m += mod-loop-d.o
|
||||
obj-m += mod-loop-e.o
|
||||
obj-m += mod-loop-f.o
|
||||
obj-m += mod-loop-g.o
|
||||
obj-m += mod-loop-h.o
|
||||
obj-m += mod-loop-i.o
|
||||
obj-m += mod-loop-j.o
|
||||
obj-m += mod-loop-k.o
|
||||
|
||||
# mod-fake-*: fake the respective modules in kernel with these aliases. Aliases
|
||||
# list was taken from 3.5.4
|
||||
obj-m += mod-fake-hpsa.o
|
||||
obj-m += mod-fake-scsi-mod.o
|
||||
obj-m += mod-fake-cciss.o
|
||||
|
||||
obj-m += mod-weakdep.o
|
||||
|
||||
else
|
||||
# only build ARCH-specific module
|
||||
ifeq ($(ARCH),)
|
||||
$(error ARCH must be set to a valid architecture)
|
||||
endif
|
||||
obj-m := mod-simple-$(ARCH).o
|
||||
endif
|
||||
|
||||
else
|
||||
# normal makefile
|
||||
KDIR ?= $(module_prefix)/lib/modules/`uname -r`/build
|
||||
|
||||
ARCH_SPECIFIC_MODULES := mod-simple-x86_64.ko mod-simple-i386.ko mod-simple-sparc64.ko
|
||||
@ -66,5 +15,3 @@ arch-modules: $(ARCH_SPECIFIC_MODULES)
|
||||
|
||||
clean:
|
||||
$(MAKE) -C $(KDIR) M=$$PWD clean
|
||||
|
||||
endif
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user