Skip to content

Commit

Permalink
AndroidKernel.mk: Pass -mno-android to gcc if supported
Browse files Browse the repository at this point in the history
When using a cross compiler that supports both Android
and non-Android configurations, pass the -mno-android flag
to use non-Android spec to compile the kernel.

Change-Id: Ibd952f3aea06f9f4f8c957c8e2a7666dd5dcdbba
Signed-off-by: David Ng <dave@codeaurora.org>
  • Loading branch information
David Ng committed Jun 19, 2014
1 parent 9ee7585 commit f5092b4
Showing 1 changed file with 7 additions and 2 deletions.
9 changes: 7 additions & 2 deletions AndroidKernel.mk
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,11 @@ endif

ifeq ($(TARGET_PREBUILT_KERNEL),)

KERNEL_GCC_NOANDROID_CHK := $(shell (echo "int main() {return 0;}" | $(KERNEL_CROSS_COMPILE)gcc -E -mno-android - > /dev/null 2>&1 ; echo $$?))
ifeq ($(strip $(KERNEL_GCC_NOANDROID_CHK)),0)
KERNEL_CFLAGS := KCFLAGS=-mno-android
endif

KERNEL_OUT := $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ
KERNEL_CONFIG := $(KERNEL_OUT)/.config

Expand Down Expand Up @@ -96,8 +101,8 @@ $(KERNEL_CONFIG): $(KERNEL_OUT)
$(TARGET_PREBUILT_INT_KERNEL): $(KERNEL_OUT) $(KERNEL_HEADERS_INSTALL)
$(hide) echo "Building kernel..."
$(hide) rm -rf $(KERNEL_OUT)/arch/$(KERNEL_ARCH)/boot/dts
$(MAKE) -C kernel O=../$(KERNEL_OUT) ARCH=$(KERNEL_ARCH) CROSS_COMPILE=$(KERNEL_CROSS_COMPILE)
$(MAKE) -C kernel O=../$(KERNEL_OUT) ARCH=$(KERNEL_ARCH) CROSS_COMPILE=$(KERNEL_CROSS_COMPILE) modules
$(MAKE) -C kernel O=../$(KERNEL_OUT) ARCH=$(KERNEL_ARCH) CROSS_COMPILE=$(KERNEL_CROSS_COMPILE) $(KERNEL_CFLAGS)
$(MAKE) -C kernel O=../$(KERNEL_OUT) ARCH=$(KERNEL_ARCH) CROSS_COMPILE=$(KERNEL_CROSS_COMPILE) $(KERNEL_CFLAGS) modules
$(MAKE) -C kernel O=../$(KERNEL_OUT) INSTALL_MOD_PATH=../../$(KERNEL_MODULES_INSTALL) INSTALL_MOD_STRIP=1 ARCH=$(KERNEL_ARCH) CROSS_COMPILE=$(KERNEL_CROSS_COMPILE) modules_install
$(mv-modules)
$(clean-module-folder)
Expand Down

0 comments on commit f5092b4

Please sign in to comment.