import PULS_20160108
[GitHub/mt8127/android_kernel_alcatel_ttab.git] / Android.mk
1 #
2 # Copyright (C) 2009-2011 The Android-x86 Open Source Project
3 #
4 # Licensed under the Apache License, Version 2.0 (the "License");
5 # you may not use this file except in compliance with the License.
6 # You may obtain a copy of the License at
7 #
8 # http://www.apache.org/licenses/LICENSE-2.0
9 #
10 ifeq ($(LINUX_KERNEL_VERSION),kernel-3.10)
11 ifneq ($(strip $(MTK_EMULATOR_SUPPORT)),yes)
12 ifneq ($(strip $(MTK_PROJECT_NAME)),)
13
14 ifneq ($(wildcard $(call my-dir)/arch/$(TARGET_ARCH)/configs/$(KERNEL_DEFCONFIG)),)
15
16 KERNEL_DIR := $(call my-dir)
17 ROOTDIR := $(abspath $(TOP))
18
19 ifneq ($(filter /% ~%,$(OUT_DIR)),)
20 KERNEL_OUT := $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ
21 else
22 KERNEL_OUT := $(ROOTDIR)/$(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ
23 endif
24
25 ifeq ($(TARGET_ARCH), arm64)
26 ifeq ($(MTK_APPENDED_DTB_SUPPORT), yes)
27 TARGET_PREBUILT_KERNEL := $(KERNEL_OUT)/arch/$(TARGET_ARCH)/boot/Image.gz-dtb
28 else
29 TARGET_PREBUILT_KERNEL := $(KERNEL_OUT)/arch/$(TARGET_ARCH)/boot/Image.gz
30 endif
31 else
32 ifeq ($(MTK_APPENDED_DTB_SUPPORT), yes)
33 TARGET_PREBUILT_KERNEL := $(KERNEL_OUT)/arch/$(TARGET_ARCH)/boot/zImage-dtb
34 else
35 TARGET_PREBUILT_KERNEL := $(KERNEL_OUT)/arch/$(TARGET_ARCH)/boot/zImage
36 endif
37 endif
38 TARGET_PREBUILT_KERNEL_BIN := $(KERNEL_OUT)/arch/$(TARGET_ARCH)/boot/zImage.bin
39
40 TARGET_KERNEL_CONFIG := $(KERNEL_OUT)/.config
41 KERNEL_HEADERS_INSTALL := $(KERNEL_OUT)/usr
42
43 ifneq ($(strip $(TARGET_NO_KERNEL)),true)
44 INSTALLED_KERNEL_TARGET := $(PRODUCT_OUT)/kernel
45 else
46 INSTALLED_KERNEL_TARGET :=
47 endif
48
49 ifeq ($(KERNEL_CROSS_COMPILE),)
50 ifeq ($(TARGET_ARCH), arm64)
51 KERNEL_CROSS_COMPILE := aarch64-linux-android-
52 else
53 KERNEL_CROSS_COMPILE := arm-eabi-
54 endif
55 endif
56
57 $(KERNEL_OUT):
58 mkdir -p $@
59
60 .PHONY: kernel kernel-defconfig kernel-menuconfig clean-kernel
61 kernel-menuconfig: | $(KERNEL_OUT)
62 $(MAKE) -C $(KERNEL_DIR) O=$(KERNEL_OUT) ARCH=$(TARGET_ARCH) MTK_TARGET_PROJECT=${MTK_TARGET_PROJECT} CROSS_COMPILE=$(KERNEL_CROSS_COMPILE) ROOTDIR=$(ROOTDIR) menuconfig
63
64 kernel-savedefconfig: | $(KERNEL_OUT)
65 cp $(TARGET_KERNEL_CONFIG) $(KERNEL_DIR)/arch/$(TARGET_ARCH)/configs/$(KERNEL_DEFCONFIG)
66
67 $(TARGET_PREBUILT_KERNEL): kernel
68 @echo Done kernel
69
70 $(TARGET_KERNEL_CONFIG) kernel-defconfig: $(KERNEL_DIR)/arch/$(TARGET_ARCH)/configs/$(KERNEL_DEFCONFIG) | $(KERNEL_OUT)
71 $(MAKE) -C $(KERNEL_DIR) O=$(KERNEL_OUT) ARCH=$(TARGET_ARCH) MTK_TARGET_PROJECT=${MTK_TARGET_PROJECT} CROSS_COMPILE=$(KERNEL_CROSS_COMPILE) ROOTDIR=$(ROOTDIR) $(KERNEL_DEFCONFIG)
72 $(MAKE) -C $(KERNEL_DIR) O=$(KERNEL_OUT) ARCH=$(TARGET_ARCH) MTK_TARGET_PROJECT=${MTK_TARGET_PROJECT} CROSS_COMPILE=$(KERNEL_CROSS_COMPILE) ROOTDIR=$(ROOTDIR) oldconfig
73
74 $(KERNEL_HEADERS_INSTALL): $(TARGET_KERNEL_CONFIG) | $(KERNEL_OUT)
75 $(MAKE) -C $(KERNEL_DIR) O=$(KERNEL_OUT) ARCH=$(TARGET_ARCH) MTK_TARGET_PROJECT=${MTK_TARGET_PROJECT} CROSS_COMPILE=$(KERNEL_CROSS_COMPILE) ROOTDIR=$(ROOTDIR) headers_install
76
77 kernel: $(TARGET_KERNEL_CONFIG) $(KERNEL_HEADERS_INSTALL) | $(KERNEL_OUT)
78 $(MAKE) -C $(KERNEL_DIR) O=$(KERNEL_OUT) ARCH=$(TARGET_ARCH) MTK_TARGET_PROJECT=${MTK_TARGET_PROJECT} CROSS_COMPILE=$(KERNEL_CROSS_COMPILE) ROOTDIR=$(ROOTDIR)
79
80 $(INSTALLED_KERNEL_TARGET): kernel
81
82 ifeq ($(strip $(MTK_HEADER_SUPPORT)),yes)
83 $(TARGET_PREBUILT_KERNEL_BIN): $(TARGET_PREBUILT_KERNEL) | $(HOST_OUT_EXECUTABLES)/mkimage
84 $(HOST_OUT_EXECUTABLES)/mkimage $< KERNEL 0xffffffff > $@
85
86 $(INSTALLED_KERNEL_TARGET): $(TARGET_PREBUILT_KERNEL_BIN) | $(ACP)
87 $(copy-file-to-target)
88 else
89 $(INSTALLED_KERNEL_TARGET): $(TARGET_PREBUILT_KERNEL) | $(ACP)
90 $(copy-file-to-target)
91 endif
92
93 clean-kernel:
94 @rm -rf $(KERNEL_OUT)
95
96 endif
97 endif
98 endif
99 endif # Ifeq ($(LINUX_KERNEL_VERSION),kernel-3.10)
100