out-of-tree configuration

John Bougs bogusemail98230 at yahoo.com
Wed Jun 18 09:03:04 EDT 2014


I am working with a kernel module that has a few kconfig options associated
with it. The makefile for the module as it is does not support out-of-tree
builds. I am trying to change the the makefile to do out-of-tree builds.
Most of this is pretty straight forward, however I can't seem to find any
recomendations on to do local configurations for just the out of tree build.

right now I use the code below, but I don't realy think it is a good
solution because of the possible confilict between the local .config file
and the kernel .config file. Any suggestions on how I should handle this? 



ifneq ($(KERNELRELEASE),)
# kbuild part of makefile

# Optionally, include config file to allow out of tree kernel modules build
-include $(src)/.config

# Core module
obj-$(CONFIG_XXX)             += xxx.o
xxx-y                         += xxx-core.o xxx-sysfs.o 

# drivers
obj-$(CONFIG_XXX_1)    += xxx1.o
obj-$(CONFIG_XXX_2)    += xxx2.o


else
# normal makefile
KDIR ?= /lib/modules/`uname -r`/build

default: .config
	$(MAKE) -C $(KDIR) M=$$PWD modules

.config:
	@echo need local .config
	exit 1

modules_install: 
	$(MAKE) -C $(KDIR) M=$$PWD modules_install
	

clean:
	rm -rf *.o *~ core .depend .*.cmd *.ko *.mod.c .tmp_versions \
	       modules.order Module.symvers

endif




More information about the Kernelnewbies mailing list