blob: 2686dd5dce8c8a2ff4249a9094a40bf8316ae65f [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001# ==========================================================================
2# Installing modules
3# ==========================================================================
4
Paul Smith4f193362006-03-05 17:14:10 -05005PHONY := __modinst
Linus Torvalds1da177e2005-04-16 15:20:36 -07006__modinst:
7
Sam Ravnborg8ec4b4f2005-07-25 20:10:36 +00008include scripts/Kbuild.include
Linus Torvalds1da177e2005-04-16 15:20:36 -07009
10#
11
12__modules := $(sort $(shell grep -h '\.ko' /dev/null $(wildcard $(MODVERDIR)/*.mod)))
13modules := $(patsubst %.o,%.ko,$(wildcard $(__modules:.ko=.o)))
14
Paul Smith4f193362006-03-05 17:14:10 -050015PHONY += $(modules)
Linus Torvalds1da177e2005-04-16 15:20:36 -070016__modinst: $(modules)
17 @:
18
19quiet_cmd_modules_install = INSTALL $@
20 cmd_modules_install = mkdir -p $(2); cp $@ $(2)
21
22# Modules built outside the kernel source tree go into extra by default
23INSTALL_MOD_DIR ?= extra
24ext-mod-dir = $(INSTALL_MOD_DIR)$(subst $(KBUILD_EXTMOD),,$(@D))
25
26modinst_dir = $(if $(KBUILD_EXTMOD),$(ext-mod-dir),kernel/$(@D))
27
28$(modules):
29 $(call cmd,modules_install,$(MODLIB)/$(modinst_dir))
Paul Smith4f193362006-03-05 17:14:10 -050030
31
32# Declare the contents of the .PHONY variable as phony. We keep that
33# information in a variable se we can use it in if_changed and friends.
34
35.PHONY: $(PHONY)