From 1b2a0ca4c9efcc20bc0d65bb2f961d93bab36354 Mon Sep 17 00:00:00 2001 From: Yongqin Liu Date: Tue, 14 Jun 2016 23:50:52 +0800 Subject: tasks/kernel.mk: fix compiling problem with 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 --- tasks/kernel.mk | 85 ++++++++++++--------------------------------------------- 1 file 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/ -- cgit v1.2.3