diff options
author | Yang Rong <rong.r.yang@intel.com> | 2015-11-06 13:47:05 +0800 |
---|---|---|
committer | Yang Rong <rong.r.yang@intel.com> | 2016-05-27 10:10:42 +0800 |
commit | bb4425d24ab9c7f9f934532a986ebfdeb53d335b (patch) | |
tree | 90473f146cd400e3b030c91092189fc2b68eef61 /src/Android.mk | |
parent | 2d69bacd38b3e4d0342eccf1b0441573ec6cc915 (diff) | |
download | beignet-bb4425d24ab9c7f9f934532a986ebfdeb53d335b.tar.gz |
Android: add android mk files.
Enable beignet's android make. Use libc++ as stl c++ library.
Signed-off-by: Yang Rong <rong.r.yang@intel.com>
Reviewed-by: Zhigang Gong <zhigang.gong@intel.com>
Diffstat (limited to 'src/Android.mk')
-rw-r--r-- | src/Android.mk | 124 |
1 files changed, 124 insertions, 0 deletions
diff --git a/src/Android.mk b/src/Android.mk new file mode 100644 index 00000000..0b15428a --- /dev/null +++ b/src/Android.mk @@ -0,0 +1,124 @@ +LOCAL_PATH:= $(call my-dir) + +include $(CLEAR_VARS) + +include $(LOCAL_PATH)/../Android.common.mk + +ocl_config_file = $(LOCAL_PATH)/OCLConfig.h +$(shell echo "// the configured options and settings for LIBCL" > $(ocl_config_file)) +$(shell echo "#define LIBCL_DRIVER_VERSION_MAJOR 1" >> $(ocl_config_file)) +$(shell echo "#define LIBCL_DRIVER_VERSION_MINOR 1" >> $(ocl_config_file)) +$(shell echo "#define LIBCL_C_VERSION_MAJOR 1" >> $(ocl_config_file)) +$(shell echo "#define LIBCL_C_VERSION_MINOR 2" >> $(ocl_config_file)) + +LOCAL_C_INCLUDES := $(TOP_C_INCLUDE) $(BEIGNET_ROOT_PATH)/backend/src/backend/ $(BEIGNET_ROOT_PATH) +LOCAL_C_INCLUDES += $(DRM_INCLUDE_PATH) +LOCAL_C_INCLUDES += $(LLVM_INCLUDE_DIRS) +LOCAL_C_INCLUDES += hardware/drm_gralloc +LOCAL_CPPFLAGS := $(TOP_CPPFLAGS) -std=c++11 +LOCAL_CFLAGS := $(TOP_CFLAGS) +OPTIONAL_EGL_LIBRARY := +LOCAL_LDFLAGS := -Wl,-Bsymbolic + +LOCAL_LDLIBS := -lm -ldl +LOCAL_SHARED_LIBRARIES += liblog libcutils +LOCAL_ADDITIONAL_DEPENDENCIES := $(GBE_BIN_GENERATER) +LOCAL_MODULE := libcl + +LOCAL_REQUIRED_MODULES := $(HOST_OUT_EXECUTABLES)/gbe_bin_generater +LOCAL_ADDITIONAL_DEPENDENCIES := $(BEIGNET_ROOT_PATH)/backend/src/Android.mk + +KERNEL_PATH := $(BEIGNET_ROOT_PATH)/src/kernels +KERNEL_NAMES := cl_internal_copy_buf_align4 \ + cl_internal_copy_buf_align16 \ + cl_internal_copy_buf_unalign_same_offset \ + cl_internal_copy_buf_unalign_dst_offset \ + cl_internal_copy_buf_unalign_src_offset \ + cl_internal_copy_buf_rect \ + cl_internal_copy_buf_rect_align4 \ + cl_internal_copy_image_1d_to_1d \ + cl_internal_copy_image_2d_to_2d \ + cl_internal_copy_image_3d_to_2d \ + cl_internal_copy_image_2d_to_3d \ + cl_internal_copy_image_3d_to_3d \ + cl_internal_copy_image_2d_to_2d_array \ + cl_internal_copy_image_1d_array_to_1d_array \ + cl_internal_copy_image_2d_array_to_2d_array \ + cl_internal_copy_image_2d_array_to_2d \ + cl_internal_copy_image_2d_array_to_3d \ + cl_internal_copy_image_3d_to_2d_array \ + cl_internal_copy_image_2d_to_buffer \ + cl_internal_copy_image_2d_to_buffer_align16 \ + cl_internal_copy_image_3d_to_buffer \ + cl_internal_copy_buffer_to_image_2d \ + cl_internal_copy_buffer_to_image_2d_align16 \ + cl_internal_copy_buffer_to_image_3d \ + cl_internal_fill_buf_align8 \ + cl_internal_fill_buf_align4 \ + cl_internal_fill_buf_align2 \ + cl_internal_fill_buf_unalign \ + cl_internal_fill_buf_align128 \ + cl_internal_fill_image_1d \ + cl_internal_fill_image_1d_array \ + cl_internal_fill_image_2d \ + cl_internal_fill_image_2d_array \ + cl_internal_fill_image_3d +BUILT_IN_NAME := cl_internal_built_in_kernel + +GBE_BIN_GENERATER := $(HOST_OUT_EXECUTABLES)/gbe_bin_generater + +$(shell rm $(KERNEL_PATH)/$(BUILT_IN_NAME).cl) +define GEN_INTERNAL_KER + # Use the python script to generate the header files. + $(shell $(GBE_BIN_GENERATER) -s $(KERNEL_PATH)/$(1).cl -o $(KERNEL_PATH)/$(1)_str.c) + $(shell cat $(KERNEL_PATH)/$(1).cl >> $(KERNEL_PATH)/$(BUILT_IN_NAME).cl) +endef +$(foreach KERNEL_NAME, ${KERNEL_NAMES}, $(eval $(call GEN_INTERNAL_KER,$(KERNEL_NAME)))) + +$(shell $(GBE_BIN_GENERATER) -s $(KERNEL_PATH)/$(BUILT_IN_NAME).cl -o $(KERNEL_PATH)/$(BUILT_IN_NAME)_str.c) + +GIT_SHA1 = git_sha1.h +$(shell chmod +x $(LOCAL_PATH)/git_sha1.sh) +$(shell $(LOCAL_PATH)/git_sha1.sh $(LOCAL_PATH) ${GIT_SHA1}) + +LOCAL_SRC_FILES:= \ + $(addprefix kernels/,$(addsuffix _str.c, $(KERNEL_NAMES))) \ + $(addprefix kernels/,$(addsuffix _str.c, $(BUILT_IN_NAME))) \ + cl_api.c \ + cl_alloc.c \ + cl_kernel.c \ + cl_program.c \ + cl_gbe_loader.cpp \ + cl_sampler.c \ + cl_event.c \ + cl_enqueue.c \ + cl_image.c \ + cl_mem.c \ + cl_platform_id.c \ + cl_extensions.c \ + cl_device_id.c \ + cl_context.c \ + cl_command_queue.c \ + cl_command_queue.h \ + cl_command_queue_gen7.c \ + cl_thread.c \ + cl_driver.h \ + cl_driver.cpp \ + cl_driver_defs.c \ + intel/intel_gpgpu.c \ + intel/intel_batchbuffer.c \ + intel/intel_driver.c \ + performance.c \ + cl_accelerator_intel.c + +LOCAL_SHARED_LIBRARIES := \ +libgbe \ +libdl \ +$(DRM_INTEL_LIBRARY) \ +$(DRM_LIBRARY) \ +$(OPTIONAL_EGL_LIBRARY) \ +libhardware + +#LOCAL_CLANG := true +include external/libcxx/libcxx.mk +include $(BUILD_SHARED_LIBRARY) |