Guest User

Untitled

a guest
Dec 21st, 2017
314
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.56 KB | None | 0 0
  1. # In order to compile your application under cygwin
  2. # you might need to define NDK_USE_CYGPATH=1 before calling the ndk-build
  3.  
  4. USER_LOCAL_PATH:=$(LOCAL_PATH)
  5.  
  6. USER_LOCAL_C_INCLUDES:=$(LOCAL_C_INCLUDES)
  7. USER_LOCAL_CFLAGS:=$(LOCAL_CFLAGS)
  8. USER_LOCAL_STATIC_LIBRARIES:=$(LOCAL_STATIC_LIBRARIES)
  9. USER_LOCAL_SHARED_LIBRARIES:=$(LOCAL_SHARED_LIBRARIES)
  10. USER_LOCAL_LDLIBS:=$(LOCAL_LDLIBS)
  11.  
  12. LOCAL_PATH:=$(subst ?,,$(firstword ?$(subst \, ,$(subst /, ,$(call my-dir)))))
  13.  
  14. OPENCV_TARGET_ARCH_ABI:=$(TARGET_ARCH_ABI)
  15. OPENCV_THIS_DIR:=$(patsubst $(LOCAL_PATH)\\%,%,$(patsubst $(LOCAL_PATH)/%,%,$(call my-dir)))
  16. OPENCV_MK_DIR:=$(dir $(lastword $(MAKEFILE_LIST)))
  17. OPENCV_LIBS_DIR:=$(OPENCV_THIS_DIR)/../libs/$(OPENCV_TARGET_ARCH_ABI)
  18. OPENCV_3RDPARTY_LIBS_DIR:=$(OPENCV_THIS_DIR)/../3rdparty/libs/$(OPENCV_TARGET_ARCH_ABI)
  19. OPENCV_BASEDIR:=
  20. OPENCV_LOCAL_C_INCLUDES:="$(LOCAL_PATH)/$(OPENCV_THIS_DIR)/include/opencv" "$(LOCAL_PATH)/$(OPENCV_THIS_DIR)/include"
  21. OPENCV_MODULES:=shape stitching objdetect superres videostab calib3d features2d highgui videoio imgcodecs video photo ml imgproc flann core
  22. OPENCV_SUB_MK:=$(call my-dir)/OpenCV-$(TARGET_ARCH_ABI).mk
  23.  
  24. ifeq ($(OPENCV_LIB_TYPE),)
  25. OPENCV_LIB_TYPE:=SHARED
  26. endif
  27.  
  28. ifeq ($(OPENCV_LIB_TYPE),SHARED)
  29. OPENCV_LIBS:=java3
  30. OPENCV_LIB_TYPE:=SHARED
  31. else
  32. OPENCV_LIBS:=$(OPENCV_MODULES)
  33. OPENCV_LIB_TYPE:=STATIC
  34. endif
  35.  
  36. ifeq ($(OPENCV_LIB_TYPE),SHARED)
  37. OPENCV_3RDPARTY_COMPONENTS:=
  38. OPENCV_EXTRA_COMPONENTS:=
  39. else
  40. include $(OPENCV_SUB_MK)
  41. endif
  42.  
  43. ifeq ($(OPENCV_LIB_TYPE),SHARED)
  44. OPENCV_LIB_SUFFIX:=so
  45. else
  46. OPENCV_LIB_SUFFIX:=a
  47. OPENCV_INSTALL_MODULES:=on
  48. endif
  49.  
  50. define add_opencv_module
  51. include $(CLEAR_VARS)
  52. LOCAL_MODULE:=opencv_$1
  53. LOCAL_SRC_FILES:=$(OPENCV_LIBS_DIR)/libopencv_$1.$(OPENCV_LIB_SUFFIX)
  54. include $(PREBUILT_$(OPENCV_LIB_TYPE)_LIBRARY)
  55. endef
  56.  
  57. define add_opencv_3rdparty_component
  58. include $(CLEAR_VARS)
  59. LOCAL_MODULE:=$1
  60. LOCAL_SRC_FILES:=$(OPENCV_3RDPARTY_LIBS_DIR)/lib$1.a
  61. include $(PREBUILT_STATIC_LIBRARY)
  62. endef
  63.  
  64. ifeq ($(OPENCV_MK_$(OPENCV_TARGET_ARCH_ABI)_ALREADY_INCLUDED),)
  65. ifeq ($(OPENCV_INSTALL_MODULES),on)
  66. $(foreach module,$(OPENCV_LIBS),$(eval $(call add_opencv_module,$(module))))
  67. endif
  68.  
  69. $(foreach module,$(OPENCV_3RDPARTY_COMPONENTS),$(eval $(call add_opencv_3rdparty_component,$(module))))
  70.  
  71. ifneq ($(OPENCV_BASEDIR),)
  72. OPENCV_LOCAL_C_INCLUDES += $(foreach mod, $(OPENCV_MODULES), $(OPENCV_BASEDIR)/modules/$(mod)/include)
  73. endif
  74.  
  75. #turn off module installation to prevent their redefinition
  76. OPENCV_MK_$(OPENCV_TARGET_ARCH_ABI)_ALREADY_INCLUDED:=on
  77. endif
  78.  
  79. ifeq ($(OPENCV_LOCAL_CFLAGS),)
  80. OPENCV_LOCAL_CFLAGS := -fPIC -DANDROID -fsigned-char
  81. endif
  82.  
  83. include $(CLEAR_VARS)
  84.  
  85. LOCAL_C_INCLUDES:=$(USER_LOCAL_C_INCLUDES)
  86. LOCAL_CFLAGS:=$(USER_LOCAL_CFLAGS)
  87. LOCAL_STATIC_LIBRARIES:=$(USER_LOCAL_STATIC_LIBRARIES)
  88. LOCAL_SHARED_LIBRARIES:=$(USER_LOCAL_SHARED_LIBRARIES)
  89. LOCAL_LDLIBS:=$(USER_LOCAL_LDLIBS)
  90.  
  91. LOCAL_C_INCLUDES += $(OPENCV_LOCAL_C_INCLUDES)
  92. LOCAL_CFLAGS += $(OPENCV_LOCAL_CFLAGS)
  93.  
  94. ifeq ($(OPENCV_INSTALL_MODULES),on)
  95. LOCAL_$(OPENCV_LIB_TYPE)_LIBRARIES += $(foreach mod, $(OPENCV_LIBS), opencv_$(mod))
  96. else
  97. LOCAL_LDLIBS += -L$(call host-path,$(LOCAL_PATH)/$(OPENCV_LIBS_DIR)) $(foreach lib, $(OPENCV_LIBS), -lopencv_$(lib))
  98. endif
  99.  
  100. ifeq ($(OPENCV_LIB_TYPE),STATIC)
  101. LOCAL_STATIC_LIBRARIES += $(OPENCV_3RDPARTY_COMPONENTS)
  102. endif
  103.  
  104. LOCAL_LDLIBS += $(foreach lib,$(OPENCV_EXTRA_COMPONENTS), -l$(lib))
  105.  
  106. #restore the LOCAL_PATH
  107. LOCAL_PATH:=$(USER_LOCAL_PATH)
Add Comment
Please, Sign In to add comment