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.
62 lines
2.1 KiB
62 lines
2.1 KiB
######################################################### |
|
# Find opencv and android-opencv |
|
######################################################### |
|
|
|
set(OpenCV_DIR ${CMAKE_SOURCE_DIR}/../../build |
|
CACHE PATH "The path where you built opencv for android") |
|
set(AndroidOpenCV_DIR ${CMAKE_SOURCE_DIR}/../../android-opencv/build |
|
CACHE PATH "The path where you built android-opencv") |
|
|
|
find_package(OpenCV REQUIRED) |
|
FIND_PACKAGE(AndroidOpenCV REQUIRED ) |
|
|
|
######################################################### |
|
#c flags, included, and lib dependencies |
|
######################################################### |
|
|
|
#notice the "recycling" of CMAKE_C_FLAGS |
|
#this is necessary to pick up android flags |
|
set( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -pedantic -fPIC" ) |
|
|
|
INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}) |
|
|
|
set( LIBRARY_DEPS ${AndroidOpenCV_LIBS} ${OpenCV_LIBS} ) |
|
if(ANDROID) |
|
set( LIBRARY_DEPS ${LIBRARY_DEPS} log dl) |
|
endif(ANDROID) |
|
|
|
######################################################### |
|
#SWIG STUFF |
|
######################################################### |
|
#the java package to place swig generated java files in |
|
set(MY_PACKAGE com.theveganrobot.cvcamera.jni) |
|
|
|
if(NOT ANDROID) |
|
#non android swig and jni |
|
#jni is available by default on android |
|
find_package(JNI REQUIRED) |
|
include_directories(${JNI_INCLUDE_DIRS}) |
|
FIND_PACKAGE(SWIG) |
|
endif() |
|
|
|
INCLUDE(${SWIG_USE_FILE}) #on android this is found by the cmake toolchain |
|
|
|
if(ANDROID) |
|
#this will set the output path for the java package |
|
#and properly create the package declarations in generated java sources |
|
SET_SWIG_JAVA_PACKAGE( ${MY_PACKAGE} ) #defined in the android toolchain |
|
endif(ANDROID) |
|
|
|
#this add's the swig path for the opencv wrappers |
|
SET(CMAKE_SWIG_FLAGS ${CMAKE_SWIG_FLAGS} "-I${AndroidOpenCV_SWIG_DIR}" ) |
|
|
|
SET_SOURCE_FILES_PROPERTIES(cvcamera.i PROPERTIES CPLUSPLUS ON) |
|
|
|
#add the swig module, giving it the name, java, and then all of the source files |
|
SWIG_ADD_MODULE(cvcamera java |
|
cvcamera.i #swig file |
|
Processor.cpp #cpp files can be compiled to |
|
) |
|
|
|
#link the module like any other |
|
target_link_libraries(cvcamera ${LIBRARY_DEPS} )
|
|
|