From: Jon Medhurst Date: Tue, 22 May 2012 15:54:12 +0000 (+0100) Subject: gator: Get Makefile to work with DKMS X-Git-Tag: firefly_0821_release~3680^2~202^2^2 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=4e5eee16c9f3454f74572b7812eb80255d2e31d3;p=firefly-linux-kernel-4.4.55.git gator: Get Makefile to work with DKMS DKMS uses an absolute paths for $(src) and $(obj) whereas these are relative paths for other kernel building scenarios. So we need to do some jiggery-pokery to get the rule for gator_events.h to work in all situations. Signed-off-by: Jon Medhurst --- diff --git a/drivers/gator/Makefile b/drivers/gator/Makefile index 2689967a419d..942e415677bd 100644 --- a/drivers/gator/Makefile +++ b/drivers/gator/Makefile @@ -3,6 +3,7 @@ ifneq ($(KERNELRELEASE),) # Uncomment the following line to enable kernel stack unwinding within gator, or update gator_backtrace.c # EXTRA_CFLAGS += -DGATOR_KERNEL_STACK_UNWINDING +CONFIG_GATOR ?= m obj-$(CONFIG_GATOR) := gator.o gator-y := gator_main.o \ @@ -43,16 +44,21 @@ gator-$(CONFIG_ARM) += gator_events_armv6.o \ gator-$(CONFIG_ARM64) += gator_events_ccn-504.o -$(obj)/gator_main.o: gator_events.h +$(obj)/gator_main.o: $(obj)/gator_events.h clean-files := gator_events.h +# Note, in the recipe below we use "cd $(srctree) && cd $(src)" rather than +# "cd $(srctree)/$(src)" because under DKMS $(src) is an absolute path, and we +# can't just use $(src) because for normal kernel builds this is relative to +# $(srctree) + chk_events.h = : quiet_chk_events.h = echo ' CHK $@' silent_chk_events.h = : -gator_events.h: FORCE +$(obj)/gator_events.h: FORCE @$($(quiet)chk_events.h) - $(Q)cd $(srctree)/$(src) ; $(CONFIG_SHELL) gator_events.sh $(objtree)/$(obj)/$@ + $(Q)cd $(srctree) && cd $(src) ; $(CONFIG_SHELL) gator_events.sh $(abspath $@) else