OSDN Git Service

darwin: fix make prepare, force prebuilt host compiler
authorTanguy Pruvot <tanguy.pruvot@gmail.com>
Wed, 23 Jul 2014 16:33:23 +0000 (18:33 +0200)
committerTanguy Pruvot <tanguy.pruvot@gmail.com>
Wed, 23 Jul 2014 17:09:37 +0000 (19:09 +0200)
also fix relative TARGET_OUT_INTERMEDIATES path on aosp/master

Change-Id: Ie26850726898dcd101eac88d29691a06a94648c5

Android.mk
scripts/Makefile.host

index 752f541..c64553a 100644 (file)
@@ -42,9 +42,18 @@ ifeq ($(TARGET_ARCH),mips)
     BUSYBOX_CROSS_COMPILER_PREFIX := mipsel-linux-android-
 endif
 
+BB_PREPARE_FLAGS:=
+ifeq ($(HOST_OS),darwin)
+    BB_HOSTCC := $(ANDROID_BUILD_TOP)/prebuilts/gcc/darwin-x86/host/i686-apple-darwin-4.2.1/bin/i686-apple-darwin11-gcc
+    BB_PREPARE_FLAGS := HOSTCC=$(BB_HOSTCC)
+endif
+
 KERNEL_MODULES_DIR ?= /system/lib/modules
 
 bb_gen := $(TARGET_OUT_INTERMEDIATES)/busybox
+ifeq (,$(findstring $(ANDROID_BUILD_TOP),$(TARGET_OUT_INTERMEDIATES)))
+    bb_gen := $(ANDROID_BUILD_TOP)/$(TARGET_OUT_INTERMEDIATES)/busybox
+endif
 
 LOCAL_MODULE := busybox_prepare_full
 LOCAL_MODULE_TAGS := eng debug
@@ -53,14 +62,12 @@ LOCAL_MODULE_PATH := $(bb_gen)/full
 LOCAL_SRC_FILES := .config-full
 $(LOCAL_MODULE):
        @echo -e ${CL_GRN}"Prepare config for busybox binary"${CL_RST}
+       @cd $(ANDROID_BUILD_TOP)
        @rm -rf $(bb_gen)/full
        @mkdir -p $(bb_gen)/full/include
        cat $(BB_PATH)/.config-full > $(bb_gen)/full/.config
        @echo "CONFIG_CROSS_COMPILER_PREFIX=\"$(BUSYBOX_CROSS_COMPILER_PREFIX)\"" >> $(bb_gen)/full/.config
-       cd $(BB_PATH) && make prepare O=$(bb_gen)/full
-       cd $(ANDROID_BUILD_TOP)
-
-# note: aosp may require O=$(ANDROID_BUILD_TOP)/$(bb_gen)/...
+       make -C $(BB_PATH) prepare O=$(bb_gen)/full $(BB_PREPARE_FLAGS)
 
 include $(BUILD_PREBUILT)
 
@@ -74,12 +81,12 @@ LOCAL_MODULE_PATH := $(bb_gen)/minimal
 LOCAL_SRC_FILES := .config-minimal
 $(LOCAL_MODULE):
        @echo -e ${CL_GRN}"Prepare config for libbusybox"${CL_RST}
+       @cd $(ANDROID_BUILD_TOP)
        @rm -rf $(bb_gen)/minimal
        @mkdir -p $(bb_gen)/minimal/include
        cat $(BB_PATH)/.config-minimal > $(bb_gen)/minimal/.config
        @echo "CONFIG_CROSS_COMPILER_PREFIX=\"$(BUSYBOX_CROSS_COMPILER_PREFIX)\"" >> $(bb_gen)/minimal/.config
-       cd $(BB_PATH) && make prepare O=$(bb_gen)/minimal
-       cd $(ANDROID_BUILD_TOP)
+       make -C $(BB_PATH) prepare O=$(bb_gen)/minimal $(BB_PREPARE_FLAGS)
 
 include $(BUILD_PREBUILT)
 
index 484d446..2e62850 100644 (file)
@@ -89,8 +89,8 @@ __hostc_flags = -I$(obj) $(call flags,_hostc_flags)
 __hostcxx_flags        = -I$(obj) $(call flags,_hostcxx_flags)
 endif
 
-hostc_flags    = -Wp,-Wno-unused-result,-MD,$(depfile) $(__hostc_flags)
-hostcxx_flags  = -Wp,-Wno-unused-result,-MD,$(depfile) $(__hostcxx_flags)
+hostc_flags    = -Wp,-MD,$(depfile) $(__hostc_flags)
+hostcxx_flags  = -Wp,-MD,$(depfile) $(__hostcxx_flags)
 
 #####
 # Compile programs on the host