libbcc
Change-Id: Ieaa3ebd5a38f370752495549f8870b534eeedfc5
diff --git a/Android.mk b/Android.mk
new file mode 100644
index 0000000..b306ea7
--- /dev/null
+++ b/Android.mk
@@ -0,0 +1,112 @@
+LOCAL_PATH := $(call my-dir)
+LLVM_ROOT_PATH := external/llvm/llvm
+
+# Shared library for target
+# ========================================================
+include $(CLEAR_VARS)
+LOCAL_PRELINK_MODULE := false
+LOCAL_MODULE := libbcc
+LOCAL_SRC_FILES := \
+ bcc.cpp \
+ bcc_runtime.c \
+ runtime/lib/arm/adddf3vfp.S \
+ runtime/lib/arm/addsf3vfp.S \
+ runtime/lib/arm/divdf3vfp.S \
+ runtime/lib/arm/divsf3vfp.S \
+ runtime/lib/arm/eqdf2vfp.S \
+ runtime/lib/arm/eqsf2vfp.S \
+ runtime/lib/arm/extendsfdf2vfp.S \
+ runtime/lib/arm/fixdfsivfp.S \
+ runtime/lib/arm/fixsfsivfp.S \
+ runtime/lib/arm/fixunsdfsivfp.S \
+ runtime/lib/arm/fixunssfsivfp.S \
+ runtime/lib/arm/floatsidfvfp.S \
+ runtime/lib/arm/floatsisfvfp.S \
+ runtime/lib/arm/floatunssidfvfp.S \
+ runtime/lib/arm/floatunssisfvfp.S \
+ runtime/lib/arm/gedf2vfp.S \
+ runtime/lib/arm/gesf2vfp.S \
+ runtime/lib/arm/gtdf2vfp.S \
+ runtime/lib/arm/gtsf2vfp.S \
+ runtime/lib/arm/ledf2vfp.S \
+ runtime/lib/arm/lesf2vfp.S \
+ runtime/lib/arm/ltdf2vfp.S \
+ runtime/lib/arm/ltsf2vfp.S \
+ runtime/lib/arm/muldf3vfp.S \
+ runtime/lib/arm/mulsf3vfp.S \
+ runtime/lib/arm/nedf2vfp.S \
+ runtime/lib/arm/negdf2vfp.S \
+ runtime/lib/arm/negsf2vfp.S \
+ runtime/lib/arm/nesf2vfp.S \
+ runtime/lib/arm/subdf3vfp.S \
+ runtime/lib/arm/subsf3vfp.S \
+ runtime/lib/arm/truncdfsf2vfp.S \
+ runtime/lib/arm/unorddf2vfp.S \
+ runtime/lib/arm/unordsf2vfp.S #\
+# disassembler/arm-dis.c \
+# disassembler/dis-asm.c
+
+LOCAL_STATIC_LIBRARIES := \
+ libLLVMARMCodeGen \
+ libLLVMARMInfo \
+ libLLVMBitReader \
+ libLLVMSelectionDAG \
+ libLLVMAsmPrinter \
+ libLLVMCodeGen \
+ libLLVMJIT \
+ libLLVMTarget \
+ libLLVMMC \
+ libLLVMScalarOpts \
+ libLLVMTransformUtils \
+ libLLVMCore \
+ libLLVMSupport \
+ libLLVMSystem \
+ libLLVMAnalysis
+
+LOCAL_SHARED_LIBRARIES := libdl libcutils libstlport
+
+LOCAL_C_INCLUDES := \
+ $(LOCAL_PATH)/include $(LOCAL_PATH)/disassembler
+
+#LOCAL_CFLAGS := -DUSE_DISASSEMBLER
+
+include $(LLVM_ROOT_PATH)/llvm-device-build.mk
+include $(BUILD_SHARED_LIBRARY)
+
+# Shared library for host
+# ========================================================
+include $(CLEAR_VARS)
+
+LOCAL_MODULE := libbcc
+LOCAL_SRC_FILES := bcc.cpp bcc_runtime.c
+
+LOCAL_STATIC_LIBRARIES := \
+ libcutils \
+ libLLVMX86CodeGen \
+ libLLVMX86Info \
+ libLLVMBitReader \
+ libLLVMSelectionDAG \
+ libLLVMAsmPrinter \
+ libLLVMCodeGen \
+ libLLVMJIT \
+ libLLVMTarget \
+ libLLVMMC \
+ libLLVMScalarOpts \
+ libLLVMTransformUtils \
+ libLLVMCore \
+ libLLVMSupport \
+ libLLVMSystem \
+ libLLVMAnalysis
+
+LOCAL_LDLIBS := -ldl -lpthread
+
+LOCAL_C_INCLUDES := \
+ $(LOCAL_PATH)/include
+
+include $(LLVM_ROOT_PATH)/llvm-host-build.mk
+include $(BUILD_HOST_SHARED_LIBRARY)
+
+# Build children
+# ========================================================
+
+include $(call all-makefiles-under,$(LOCAL_PATH))