mirror of https://github.com/opencv/opencv.git
Open Source Computer Vision Library
https://opencv.org/
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
107 lines
3.3 KiB
107 lines
3.3 KiB
# In order to compile your application under cygwin |
|
# you might need to define NDK_USE_CYGPATH=1 before calling the ndk-build |
|
|
|
USER_LOCAL_PATH:=$(LOCAL_PATH) |
|
LOCAL_PATH:=$(subst ?,,$(firstword ?$(subst \, ,$(subst /, ,$(call my-dir))))) |
|
|
|
OPENCV_THIS_DIR:=$(patsubst $(LOCAL_PATH)\\%,%,$(patsubst $(LOCAL_PATH)/%,%,$(call my-dir))) |
|
OPENCV_MK_DIR:=$(dir $(lastword $(MAKEFILE_LIST))) |
|
OPENCV_LIBS_DIR:=@OPENCV_LIBS_DIR_CONFIGCMAKE@ |
|
OPENCV_BASEDIR:=@OPENCV_BASE_INCLUDE_DIR_CONFIGCMAKE@ |
|
OPENCV_LOCAL_C_INCLUDES:=@OPENCV_INCLUDE_DIRS_CONFIGCMAKE@ |
|
OPENCV_MODULES:=@OPENCV_MODULES_CONFIGMAKE@ |
|
|
|
ifeq ($(OPENCV_LIB_TYPE),) |
|
OPENCV_LIB_TYPE:=@OPENCV_LIBTYPE_CONFIGMAKE@ |
|
endif |
|
|
|
ifeq ($(OPENCV_LIB_TYPE),SHARED) |
|
OPENCV_LIBS:=@OPENCV_LIBS_CONFIGMAKE@ |
|
OPENCV_LIB_TYPE:=@OPENCV_LIBTYPE_CONFIGMAKE@ |
|
else |
|
OPENCV_LIBS:=$(OPENCV_MODULES) |
|
OPENCV_LIB_TYPE:=@OPENCV_STATIC_LIBTYPE_CONFIGMAKE@ |
|
endif |
|
|
|
ifeq ($(OPENCV_LIB_TYPE),SHARED) |
|
OPENCV_3RDPARTY_COMPONENTS:= |
|
OPENCV_EXTRA_COMPONENTS:= |
|
else |
|
OPENCV_3RDPARTY_COMPONENTS:=@OPENCV_3RDPARTY_COMPONENTS_CONFIGMAKE@ |
|
OPENCV_EXTRA_COMPONENTS:=@OPENCV_EXTRA_COMPONENTS_CONFIGMAKE@ |
|
endif |
|
|
|
ifeq (${OPENCV_CAMERA_MODULES},off) |
|
OPENCV_CAMERA_MODULES:= |
|
else |
|
ifeq ($(TARGET_ARCH_ABI),armeabi) |
|
OPENCV_CAMERA_MODULES:=@OPENCV_CAMERA_LIBS_ARMEABI_CONFIGCMAKE@ |
|
endif |
|
ifeq ($(TARGET_ARCH_ABI),armeabi-v7a) |
|
OPENCV_CAMERA_MODULES:=@OPENCV_CAMERA_LIBS_ARMEABI_V7A_CONFIGCMAKE@ |
|
endif |
|
ifeq ($(TARGET_ARCH_ABI),x86) |
|
OPENCV_CAMERA_MODULES:=@OPENCV_CAMERA_LIBS_X86_CONFIGCMAKE@ |
|
endif |
|
endif |
|
|
|
ifeq ($(OPENCV_LIB_TYPE),SHARED) |
|
OPENCV_LIB_SUFFIX:=so |
|
else |
|
OPENCV_LIB_SUFFIX:=a |
|
OPENCV_INSTALL_MODULES:=on |
|
endif |
|
|
|
define add_opencv_module |
|
include $(CLEAR_VARS) |
|
LOCAL_MODULE:=opencv_$1 |
|
LOCAL_SRC_FILES:=$(OPENCV_LIBS_DIR)/libs/$(TARGET_ARCH_ABI)/libopencv_$1.$(OPENCV_LIB_SUFFIX) |
|
include $(PREBUILT_$(OPENCV_LIB_TYPE)_LIBRARY) |
|
endef |
|
|
|
define add_opencv_3rdparty_component |
|
include $(CLEAR_VARS) |
|
LOCAL_MODULE:=$1 |
|
LOCAL_SRC_FILES:=$(OPENCV_THIS_DIR)/3rdparty/libs/$(TARGET_ARCH_ABI)/lib$1.a |
|
include $(PREBUILT_STATIC_LIBRARY) |
|
endef |
|
|
|
define add_opencv_camera_module |
|
include $(CLEAR_VARS) |
|
LOCAL_MODULE:=$1 |
|
LOCAL_SRC_FILES:=$(OPENCV_LIBS_DIR)/libs/$(TARGET_ARCH_ABI)/lib$1.so |
|
include $(PREBUILT_SHARED_LIBRARY) |
|
endef |
|
|
|
ifeq ($(OPENCV_INSTALL_MODULES),on) |
|
$(foreach module,$(OPENCV_LIBS),$(eval $(call add_opencv_module,$(module)))) |
|
endif |
|
$(foreach module,$(OPENCV_3RDPARTY_COMPONENTS),$(eval $(call add_opencv_3rdparty_component,$(module)))) |
|
$(foreach module,$(OPENCV_CAMERA_MODULES),$(eval $(call add_opencv_camera_module,$(module)))) |
|
|
|
ifneq ($(OPENCV_BASEDIR),) |
|
OPENCV_LOCAL_C_INCLUDES += $(foreach mod, $(OPENCV_MODULES), $(OPENCV_BASEDIR)/modules/$(mod)/include) |
|
endif |
|
|
|
ifeq ($(OPENCV_LOCAL_CFLAGS),) |
|
OPENCV_LOCAL_CFLAGS := -fPIC -DANDROID -fsigned-char |
|
endif |
|
|
|
include $(CLEAR_VARS) |
|
LOCAL_C_INCLUDES += $(OPENCV_LOCAL_C_INCLUDES) |
|
LOCAL_CFLAGS += $(OPENCV_LOCAL_CFLAGS) |
|
|
|
ifeq ($(OPENCV_INSTALL_MODULES),on) |
|
LOCAL_$(OPENCV_LIB_TYPE)_LIBRARIES += $(foreach mod, $(OPENCV_LIBS), opencv_$(mod)) |
|
else |
|
LOCAL_LDLIBS += -L$(call host-path,$(LOCAL_PATH)/$(OPENCV_LIBS_DIR)/libs/$(TARGET_ARCH_ABI)) $(foreach lib, $(OPENCV_LIBS), -lopencv_$(lib)) |
|
endif |
|
|
|
ifeq ($(OPENCV_LIB_TYPE),STATIC) |
|
LOCAL_STATIC_LIBRARIES += $(OPENCV_3RDPARTY_COMPONENTS) |
|
endif |
|
|
|
LOCAL_LDLIBS += $(foreach lib,$(OPENCV_EXTRA_COMPONENTS), -l$(lib)) |
|
|
|
#restore the LOCAL_PATH |
|
LOCAL_PATH:=$(USER_LOCAL_PATH)
|
|
|