reapply makefile fix
authorLawrence Mok <lawrence.mok@amlogic.com>
Fri, 30 Nov 2012 02:26:52 +0000 (18:26 -0800)
committerLawrence Mok <lawrence.mok@amlogic.com>
Fri, 30 Nov 2012 02:26:52 +0000 (18:26 -0800)
same as
'fix makefiles when module source is outside of kernel source tree'
but with an additional fix for a .config include

mali/Kbuild
mali/Makefile
ump/Kbuild
ump/Makefile

index 20c876f835fc7f4090f903c2e7e362cdc4b614ff..e4e14e9919a7d7afec077f50a0f817d8a17a1896 100644 (file)
@@ -22,8 +22,11 @@ else
 endif
 
 ifneq ($(KBUILD_SRC),)
-TOP_KBUILD_SRC := $(KBUILD_SRC)/
+       ifneq ($(wildcard $(KBUILD_SRC)/$(src)),)
+               TOP_KBUILD_SRC := $(KBUILD_SRC)/
+       endif
 endif
+
 OS_MEMORY_KERNEL_BUFFER_SIZE_IN_MB ?= 16
 
 ifeq ($(CONFIG_MALI400_PROFILING),y)
index 8deb4efd0f1f2347196085b46fb2673386303c46..76fb524bac55e74953304254f1d8dd817d2295cf 100644 (file)
@@ -43,6 +43,13 @@ ifneq ($(CPU),)
 $(warning "You have specified the CPU variable which is no longer in used. Use TARGET_PLATFORM instead.")
 endif
 
+# KDIR not set when included by modpost
+ifneq ($(KBUILD_EXTMOD),)
+       ifeq ($(KDIR),)
+               KDIR := $(KBUILD_SRC)
+       endif
+endif
+
 # Include the mapping between TARGET_PLATFORM and KDIR + MALI_PLATFORM
 -include MALI_CONFIGURATION
 export KDIR ?= $(KDIR-$(TARGET_PLATFORM))
@@ -75,7 +82,11 @@ endif
 # Define host system directory
 KDIR-$(shell uname -m):=/lib/modules/$(shell uname -r)/build
 
-include $(KDIR)/.config
+# .config could be in an output directory, different than KDIR
+# and it's not needed during modpost
+ifeq ($(KBUILD_EXTMOD),)
+       include $(KDIR)/.config
+endif
 
 ifeq ($(ARCH), arm)
 # when compiling for ARM we're cross compiling
index 00471647395f6a4356eb2acbb404c51bb18e27c9..9ca27e1b4ae6b706dbf20d6d30a4ce9defe23f34 100644 (file)
@@ -14,7 +14,9 @@ CONFIG ?= aml-meson-m400-1
 TARGET_PLATFORM ?= aml-meson
 
 ifneq ($(KBUILD_SRC),)
-TOP_KBUILD_SRC := $(KBUILD_SRC)/
+       ifneq ($(wildcard $(KBUILD_SRC)/$(src)),)
+               TOP_KBUILD_SRC := $(KBUILD_SRC)/
+       endif
 endif
 
 # Validate selected config
index 83c516cf154380ba1635cef81189bba265d2e623..3b370a102604812c689653d01cd2c3250e703e2e 100644 (file)
@@ -8,6 +8,9 @@
 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
 #
 
+# Skip this Makefile when included from modpost
+ifeq ($(KBUILD_EXTMOD),)
+
 # For each arch check: CROSS_COMPILE , KDIR , CFLAGS += -DARCH
 
 export ARCH ?= arm
@@ -61,3 +64,5 @@ kernelrelease:
 clean:
        $(MAKE) -C $(KDIR) M=$(CURDIR) clean
        $(MAKE) -C $(KDIR) M=$(CURDIR)/../mali clean
+
+endif