1 ifneq ($(KERNELRELEASE
),)
2 # kbuild part of makefile
4 ifneq ($(KMOD_TESTSUITE_ARCH_BUILD
),1)
7 # mod-foo depends on foo-x, and foo-x modules don't depend
14 # mod-loop: create loops in dependencies:
15 # 1) mod-loop-a -> mod-loop-b -> mod-loop-c -> mod-loop-a
16 # |-> mod-loop-f |-> mod-loop-f
17 # \-> mod-loop-g \-> mod-loop-g
18 # 2) mod-loop-d -> mod-loop-e -> mod-loop-d
19 # 3.1) mod-loop-h -> mod-loop-i -> mod-loop-j -> mod-loop-h
20 # 3.2) mod-loop-h -> mod-loop-i -> mod-loop-j -> mod-loop-k -> mod-loop-h
34 # mod-fake-*: fake the respective modules in kernel with these aliases. Aliases
35 # list was taken from 3.5.4
36 obj-m
+= mod-fake-hpsa.o
37 obj-m
+= mod-fake-scsi-mod.o
38 obj-m
+= mod-fake-cciss.o
41 # only build ARCH-specific module
43 $(error ARCH must be set to a valid architecture
)
45 obj-m
:= mod-simple-
$(ARCH
).o
50 KDIR ?
= $(module_prefix
)/lib
/modules
/`uname -r`/build
56 ARCH_SPECIFIC_MODULES
:= mod-simple-x86_64.ko mod-simple-i386.ko mod-simple-sparc64.ko
57 MY_MODULES
:= $(filter-out $(ARCH_SPECIFIC_MODULES
),$(wildcard *.ko
))
59 default
: modules arch-modules
61 mod-simple-
%.ko
: mod-simple-
%.c Makefile.arch
62 $(eval arch
=$(patsubst mod-simple-
%.ko
,%,$@
))
63 $(MAKE
) KDIR
=$(KDIR_
$(arch
)) ARCH
=$(arch
) CROSS_COMPILE
=$(CROSS_COMPILE_
$(arch
)) -f Makefile.arch
65 ifeq ($(FAKE_BUILD
),0)
67 $(MAKE
) -C
$(KDIR
) M
=$$PWD
70 @echo
" CP cache/*.ko"
74 arch-modules
: $(ARCH_SPECIFIC_MODULES
)
77 test -z
"$(MY_MODULES)" ||
rm -rf
$(MY_MODULES
) || true
78 rm -rf .tmp_versions || true
79 rm -rf .
*.cmd
*.mod.c || true
81 rm -rf Module.symvers modules.order