diff mbox

[v4] greybus: Changes required for integrating into the Android build

Message ID 1412977353-30665-1-git-send-email-john.stultz@linaro.org
State New
Headers show

Commit Message

John Stultz Oct. 10, 2014, 9:42 p.m. UTC
In order to easily integrate into the Android build, include
an Android.mk.

Signed-off-by: John Stultz <john.stultz@linaro.org>
---

v4:
Reworked from Greg's feedback to avoid changes to
the Makefile. Simplified some of the ARCH argument
management.

 Android.mk | 29 +++++++++++++++++++++++++++++
 1 file changed, 29 insertions(+)
 create mode 100644 Android.mk
diff mbox

Patch

diff --git a/Android.mk b/Android.mk
new file mode 100644
index 0000000..773129b
--- /dev/null
+++ b/Android.mk
@@ -0,0 +1,29 @@ 
+.PHONY: build-greybus
+
+$(PRODUCT_OUT)/ramdisk.img: build-greybus
+
+include $(CLEAR_VARS)
+GREYBUS_SRC_PATH := $(ANDROID_BUILD_TOP)/external/greybus/
+LOCAL_PATH := $(GREYBUS_SRC_PATH)
+LOCAL_SRC_FILES := greybus.ko
+LOCAL_MODULE := $(LOCAL_SRC_FILES)
+LOCAL_MODULE_CLASS := EXECUTABLES
+LOCAL_MODULE_PATH := $(PRODUCT_OUT)/root/lib/modules
+$(LOCAL_PATH)/$(LOCAL_SRC_FILES): build-greybus
+include $(BUILD_PREBUILT)
+
+KDIRARG := KERNELDIR="${ANDROID_PRODUCT_OUT}/obj/kernel"
+ifneq ($(ANDROID_64),)
+  ARCHARG := ARCH=arm64
+  FLAGARG := EXTRA_CFLAGS+=-fno-pic
+else
+  ARCHARG := ARCH=arm
+endif
+ARGS := $(KDIRARG) $(ARCHARG) $(FLAGARG)
+
+build-greybus: android_kernel
+	make clean -C $(GREYBUS_SRC_PATH)
+	cd $(GREYBUS_SRC_PATH) &&\
+	$(MAKE) -j$(MAKE_JOBS) CROSS_COMPILE=$(KERNEL_TOOLS_PREFIX) $(ARGS)
+	mkdir -p $(PRODUCT_OUT)/root/lib/modules
+	cp $(GREYBUS_SRC_PATH)/greybus.ko $(PRODUCT_OUT)/root/lib/modules