Skip to content
Snippets Groups Projects
Select Git revision
  • pu
  • passt default
  • master
  • todo
  • next
  • maint
  • v2.8.0-rc1
  • v2.8.0-rc0
  • v2.7.2
  • v2.7.1
  • v2.7.0
  • v2.6.5
  • v2.7.0-rc3
  • v2.7.0-rc2
  • v2.7.0-rc1
  • v2.7.0-rc0
  • v2.6.4
  • v2.6.3
  • v2.6.2
  • v2.6.1
  • v2.3.10
  • v2.5.4
  • v2.4.10
  • v2.6.0
  • v2.6.0-rc3
  • v2.5.3
26 results

advice.c

Blame
  • AndroidKernel.mk 2.37 KiB
    #Android makefile to build kernel as a part of Android Build
    PERL		= perl
    
    ifeq ($(TARGET_PREBUILT_KERNEL),)
    
    KERNEL_OUT := $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ
    KERNEL_CONFIG := $(KERNEL_OUT)/.config
    TARGET_PREBUILT_INT_KERNEL := $(KERNEL_OUT)/arch/arm/boot/zImage
    KERNEL_HEADERS_INSTALL := $(KERNEL_OUT)/usr
    KERNEL_MODULES_INSTALL := system
    KERNEL_MODULES_OUT := $(TARGET_OUT)/lib/modules
    KERNEL_IMG=$(KERNEL_OUT)/arch/arm/boot/Image
    
    ifeq ($(TARGET_USES_UNCOMPRESSED_KERNEL),true)
    $(info Using uncompressed kernel)
    TARGET_PREBUILT_KERNEL := $(KERNEL_OUT)/piggy
    else
    TARGET_PREBUILT_KERNEL := $(TARGET_PREBUILT_INT_KERNEL)
    endif
    
    define mv-modules
    mdpath=`find $(KERNEL_MODULES_OUT) -type f -name modules.dep`;\
    if [ "$$mdpath" != "" ];then\
    mpath=`dirname $$mdpath`;\
    ko=`find $$mpath/kernel -type f -name *.ko`;\
    for i in $$ko; do mv $$i $(KERNEL_MODULES_OUT)/; done;\
    fi
    endef
    
    define clean-module-folder
    mdpath=`find $(KERNEL_MODULES_OUT) -type f -name modules.dep`;\
    if [ "$$mdpath" != "" ];then\
    mpath=`dirname $$mdpath`; rm -rf $$mpath;\
    fi
    endef
    
    $(KERNEL_OUT):
    	mkdir -p $(KERNEL_OUT)
    
    $(KERNEL_CONFIG): $(KERNEL_OUT)
    	$(MAKE) -C kernel O=../$(KERNEL_OUT) ARCH=arm CROSS_COMPILE=arm-eabi- $(KERNEL_DEFCONFIG)
    
    $(KERNEL_OUT)/piggy : $(TARGET_PREBUILT_INT_KERNEL)
    	$(hide) gunzip -c $(KERNEL_OUT)/arch/arm/boot/compressed/piggy.gzip > $(KERNEL_OUT)/piggy
    
    $(TARGET_PREBUILT_INT_KERNEL): $(KERNEL_OUT) $(KERNEL_CONFIG) $(KERNEL_HEADERS_INSTALL)
    	$(MAKE) -C kernel O=../$(KERNEL_OUT) ARCH=arm CROSS_COMPILE=arm-eabi-
    	$(MAKE) -C kernel O=../$(KERNEL_OUT) ARCH=arm CROSS_COMPILE=arm-eabi- modules
    	$(MAKE) -C kernel O=../$(KERNEL_OUT) INSTALL_MOD_PATH=../../$(KERNEL_MODULES_INSTALL) INSTALL_MOD_STRIP=1 ARCH=arm CROSS_COMPILE=arm-eabi- modules_install
    	$(mv-modules)
    	$(clean-module-folder)
    
    $(KERNEL_HEADERS_INSTALL): $(KERNEL_OUT) $(KERNEL_CONFIG)
    	$(MAKE) -C kernel O=../$(KERNEL_OUT) ARCH=arm CROSS_COMPILE=arm-eabi- headers_install
    
    kerneltags: $(KERNEL_OUT) $(KERNEL_CONFIG)
    	$(MAKE) -C kernel O=../$(KERNEL_OUT) ARCH=arm CROSS_COMPILE=arm-eabi- tags
    
    kernelconfig: $(KERNEL_OUT) $(KERNEL_CONFIG)
    	env KCONFIG_NOTIMESTAMP=true \
    	     $(MAKE) -C kernel O=../$(KERNEL_OUT) ARCH=arm CROSS_COMPILE=arm-eabi- menuconfig
    	env KCONFIG_NOTIMESTAMP=true \
    	     $(MAKE) -C kernel O=../$(KERNEL_OUT) ARCH=arm CROSS_COMPILE=arm-eabi- savedefconfig
    	cp $(KERNEL_OUT)/defconfig kernel/arch/arm/configs/$(KERNEL_DEFCONFIG)
    
    endif