summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYongqin Liu <yongqin.liu@linaro.org>2016-06-14 23:50:52 +0800
committerYongqin Liu <yongqin.liu@linaro.org>2016-06-14 23:52:55 +0800
commit1b2a0ca4c9efcc20bc0d65bb2f961d93bab36354 (patch)
treea6a0088bd10632393f46d5632fd25c960a29d1c1
parentbebfb13f9e5a85fcffb3ac1b9efd1f65e41e9d7b (diff)
downloadcommon-android-master.tar.gz
tasks/kernel.mk: fix compiling problem with masterandroid-master
for the use of ckati also remove the lines for kernel module and gator compilation since module installation is not allowed for android Change-Id: I44dfa665953232c533222c68e544c5b4391530ea Signed-off-by: Yongqin Liu <yongqin.liu@linaro.org>
-rw-r--r--tasks/kernel.mk85
1 files changed, 17 insertions, 68 deletions
diff --git a/tasks/kernel.mk b/tasks/kernel.mk
index 752a69c..07c5ee7 100644
--- a/tasks/kernel.mk
+++ b/tasks/kernel.mk
@@ -9,14 +9,19 @@ endif
# built with TARGET_TOOLS (not KERNEL_TOOLS because we may be building a
# 64/32 environment), but is not built from the regular top directory,
# so passing a relative TARGET_TOOLS_PREFIX won't work.
-ABS_TARGET_TOOLS_PREFIX = $(shell cd `dirname $(TARGET_TOOLS_PREFIX)` && pwd)/$(shell basename $(TARGET_TOOLS_PREFIX))
-UNRESOLVED_KERNEL_TOOLS_PREFIX ?= $(ABS_TARGET_TOOLS_PREFIX)
-KERNEL_TOOLS_PREFIX := $(UNRESOLVED_KERNEL_TOOLS_PREFIX)
+DIRNAME_TARGET_TOOLS_PREFIX := $(shell dirname $(TARGET_TOOLS_PREFIX))
+BASENAME_TARGET_TOOLS_PREFIX := $(shell basename $(TARGET_TOOLS_PREFIX))
+ABS_TARGET_TOOLS_PREFIX := $(realpath $(DIRNAME_TARGET_TOOLS_PREFIX))/$(BASENAME_TARGET_TOOLS_PREFIX)
-REALTOP=$(realpath $(TOP))
+KERNEL_TOOLS_PREFIX ?= $(ABS_TARGET_TOOLS_PREFIX)
+DIRNAME_KERNEL_TOOLS_PREFIX := $(shell dirname $(KERNEL_TOOLS_PREFIX))
+BASENAME_KERNEL_TOOLS_PREFIX := $(shell basename $(KERNEL_TOOLS_PREFIX))
+KERNEL_TOOLS_PREFIX := $(realpath $(DIRNAME_KERNEL_TOOLS_PREFIX))/$(BASENAME_KERNEL_TOOLS_PREFIX)
-KERNEL_OUT:=$(realpath $(PRODUCT_OUT))/obj/kernel
+REALTOP := $(realpath $(TOP))
+
+KERNEL_OUT :=$(realpath $(PRODUCT_OUT))/obj/kernel
# Certain devices load mmc driver as module and hence kernel module need to be in initrd
TARGET_MODULES_OUT ?= $(TARGET_OUT)
@@ -44,6 +49,7 @@ endif
endif
endif
+ifeq ($(strip $(KERNEL_TARGET)),)
ifeq ($(strip $(ANDROID_64)),true)
KERNEL_TARGET := Image
else
@@ -55,6 +61,7 @@ BOOTLOADER_DEP :=
KERNEL_TARGET := $(or $(KERNEL_TARGET),zImage)
endif
endif
+endif
ifeq ($(strip $(ANDROID_64)),true)
ARCH := arm64
@@ -76,7 +83,7 @@ android_kernel: $(BOOTLOADER_DEP) $(PERF_DEP)
echo building kernel $(KERNEL_TARGET) with config $(KERNEL_CONFIG) for bootloader $(TARGET_BOOTLOADER_TYPE)
mkdir -p $(KERNEL_OUT)
cd $(KERNEL_SRC) &&\
- if [ "`echo $(KERNEL_TOOLS_PREFIX) |cut -b1`" = "/" ]; then KTP="$(KERNEL_TOOLS_PREFIX)"; else KTP="$(REALTOP)/$(KERNEL_TOOLS_PREFIX)"; fi ; \
+ export KTP="$(KERNEL_TOOLS_PREFIX)" && \
export PATH=$(KERNEL_COMPILER_PATHS):$(PATH) && \
if [ -e "$${KTP}ld.bfd" ]; then LD="$${KTP}ld.bfd"; else LD="$${KTP}ld"; fi && \
if [ $(words $(KERNEL_CONFIG)) -gt 1 ]; \
@@ -95,66 +102,9 @@ ifeq ($(INCLUDE_PERF),1)
cp -f $(KERNEL_OUT)/tools/perf/perf $(REALTOP)/$(PRODUCT_OUT)/system/bin/
endif
-ifneq ($(BUILD_KERNEL_MODULES),false)
-android_kernel_modules: $(INSTALLED_KERNEL_TARGET) $(ACP)
- export PATH=$(KERNEL_COMPILER_PATHS):$(PATH) &&\
- cd $(KERNEL_SRC) &&\
- if [ "`echo $(KERNEL_TOOLS_PREFIX) |cut -b1`" = "/" ]; then KTP="$(KERNEL_TOOLS_PREFIX)"; else KTP="$(REALTOP)/$(KERNEL_TOOLS_PREFIX)"; fi ; \
- if [ -e $${KTP}ld.bfd ]; then LD=$${KTP}ld.bfd; else LD=$${KTP}ld; fi && \
- $(MAKE) $(KERNEL_VERBOSE) O=$(KERNEL_OUT) ARCH=$(ARCH) CROSS_COMPILE="$${KTP}" LD="$${LD}" EXTRA_CFLAGS="$(EXTRA_CFLAGS) -fno-pic" KCFLAGS="$(TARGET_EXTRA_CFLAGS) -fno-pic $(LOCAL_CFLAGS)" modules
- mkdir -p $(KERNEL_OUT)/modules_for_android
- cd $(KERNEL_SRC) &&\
- if [ `echo $(KERNEL_TOOLS_PREFIX) |cut -b1` = "/" ]; then KTP="$(KERNEL_TOOLS_PREFIX)"; else KTP="$(REALTOP)/$(KERNEL_TOOLS_PREFIX)"; fi ; \
- if [ -e $${KTP}ld.bfd ]; then LD=$${KTP}ld.bfd; else LD=$${KTP}ld; fi && \
- $(MAKE) O=$(KERNEL_OUT) ARCH=$(ARCH) CROSS_COMPILE="$${KTP}" KCFLAGS="$(TARGET_EXTRA_CFLAGS) -fno-pic $(LOCAL_CFLAGS)" LD="$${LD}" modules_install INSTALL_MOD_PATH=$(KERNEL_OUT)/modules_for_android
- mkdir -p $(TARGET_MODULES_OUT)/modules
- find $(KERNEL_OUT)/modules_for_android -name "*.ko" | xargs -I % $(ACP) -fpt % $(TARGET_MODULES_OUT)/modules/
-else
-android_kernel_modules:
-endif
-
-#NOTE: the gator driver's Makefile wasn't done properly and doesn't put build
-# artifacts in the O=$(KERNEL_OUT)
-ifeq ($(TARGET_USE_GATOR),true)
-
-KERNEL_PATH:=$(shell pwd)/$(KERNEL_SRC)
-
-ifneq ($(TARGET_GATOR_WITH_MALI_SUPPORT),)
-ifndef TARGET_MALI_DRIVER_DIR
-$(error TARGET_MALI_DRIVER_DIR must be defined if TARGET_GATOR_WITH_MALI_SUPPORT is.)
-endif
-GATOR_EXTRA_CFLAGS += -DMALI_SUPPORT=$(TARGET_GATOR_WITH_MALI_SUPPORT) -I$(KERNEL_PATH)/$(TARGET_MALI_DRIVER_DIR)
-GATOR_EXTRA_MAKE_ARGS += GATOR_WITH_MALI_SUPPORT=$(TARGET_GATOR_WITH_MALI_SUPPORT)
-endif
-
-ifneq ($(realpath $(TOP)/external/gator/driver),)
-gator_driver: android_kernel_modules $(INSTALLED_KERNEL_TARGET) $(ACP)
- export PATH=$(KERNEL_COMPILER_PATHS):$(PATH) &&\
- cd $(TOP)/external/gator/driver &&\
- if [ `echo $(KERNEL_TOOLS_PREFIX) |cut -b1` = "/" ]; then KTP="$(KERNEL_TOOLS_PREFIX)"; else KTP="$(REALTOP)/$(KERNEL_TOOLS_PREFIX)"; fi ; \
- if [ -e $${KTP}ld.bfd ]; then LD=$${KTP}ld.bfd; else LD=$${KTP}ld; fi && \
- $(MAKE) O=$(KERNEL_OUT) ARCH=$(ARCH) CROSS_COMPILE="$${KTP}" LD=$$LD EXTRA_CFLAGS="$(EXTRA_CFLAGS) -fno-pic $(GATOR_EXTRA_CFLAGS)" KCFLAGS="$(TARGET_EXTRA_CFLAGS) -fno-pic $(LOCAL_CFLAGS)" $(GATOR_EXTRA_MAKE_ARGS) -C $(KERNEL_PATH) M=`pwd` modules
- mkdir -p $(TARGET_MODULES_OUT)/modules
- find $(TOP)/external/gator/driver/. -name "*.ko" -exec $(ACP) -fpt {} $(TARGET_MODULES_OUT)/modules/ \;
-else
-gator_driver:
-endif
-
-else
-gator_driver:
-endif
-
-out_of_tree_modules: $(INSTALLED_KERNEL_TARGET) gator_driver
-
$(INSTALLED_KERNEL_TARGET): android_kernel
ln -sf $(KERNEL_OUT)/arch/$(ARCH)/boot/$(KERNEL_TARGET) $(INSTALLED_KERNEL_TARGET)
-$(INSTALLED_SYSTEMTARBALL_TARGET): android_kernel_modules out_of_tree_modules
-
-$(INSTALLED_RAMDISK_TARGET): android_kernel_modules out_of_tree_modules
-
-droidcore: android_kernel_modules out_of_tree_modules
-
#
# Generate a rule to build a device-tree.
#
@@ -188,17 +138,16 @@ $(foreach _ub,$(DEVICE_TREES), \
$(eval $(call MAKE_DEVICE_TREE,$(_target),$(_source))) \
)
-
ifneq ($(strip $(DTB_TARGETS)),)
.PHONY : all_dtbs
all_dtbs : $(INSTALLED_KERNEL_TARGET)
export PATH=$(KERNEL_COMPILER_PATHS):$(PATH) &&\
cd $(KERNEL_SRC) && \
- if [ `echo $(KERNEL_TOOLS_PREFIX) |cut -b1` = "/" ]; then KTP="$(KERNEL_TOOLS_PREFIX)"; else KTP="$(REALTOP)/$(KERNEL_TOOLS_PREFIX)"; fi ; \
+ export KTP="$(KERNEL_TOOLS_PREFIX)" && \
if [ -e $${KTP}ld.bfd ]; then LD=$${KTP}ld.bfd; else LD=$${KTP}ld; fi && \
- $(MAKE) O=$(KERNEL_OUT) ARCH=$(ARCH) CROSS_COMPILE="$${KTP}" $(DTB_TARGETS)
- -mv -f $(KERNEL_OUT)/arch/$(ARCH)/boot/dts/*.dtb $(KERNEL_OUT)/arch/$(ARCH)/boot/
+ $(MAKE) O=$(KERNEL_OUT) ARCH=$(ARCH) CROSS_COMPILE="$${KTP}" dtbs
+ find $(KERNEL_OUT)/arch/$(ARCH)/boot/dts/ -name '*.dtb' -exec mv -f {} $(KERNEL_OUT)/arch/$(ARCH)/boot/ \; && echo ""
ifeq ($(TARGET_PRODUCT), full_jacinto6evm)
cp $(KERNEL_OUT)/arch/$(ARCH)/boot/*.dtb $(PRODUCT_OUT)/dtb.img
@@ -218,7 +167,7 @@ ifeq ($(TARGET_PRODUCT), full_jacinto6evm)
droidcore: $(DTB_INSTALL_TARGETS)
endif
-kernel_files : $(INSTALLED_KERNEL_TARGET) $(DTB_INSTALL_TARGETS) android_kernel_modules
+kernel_files : $(INSTALLED_KERNEL_TARGET) $(DTB_INSTALL_TARGETS)
cp $(INSTALLED_KERNEL_TARGET) $(PRODUCT_OUT)/boot/
PREBUILT_IMAGES_DIR := $(PRODUCT_OUT)/prebuilt-images/