# For more information about using CMake with Android Studio, read the # documentation: https://d.android.com/studio/projects/add-native-code.html # Sets the minimum version of CMake required to build the native library. cmake_minimum_required(VERSION 3.4.1) get_filename_component(MYNTETE_ROOT "${PROJECT_SOURCE_DIR}/../../../.." ABSOLUTE) message(STATUS "MYNTETE_ROOT: ${MYNTETE_ROOT}") get_filename_component(PRO_ROOT "${PROJECT_SOURCE_DIR}/.." ABSOLUTE) message(STATUS "PRO_ROOT: ${PRO_ROOT}") set(LIB_ROOT "${PROJECT_SOURCE_DIR}") message(STATUS "LIB_ROOT: ${LIB_ROOT}") if(NOT DJINNI_DIR) if(DEFINED ENV{DJINNI_DIR}) set(DJINNI_DIR $ENV{DJINNI_DIR}) else() set(DJINNI_DIR "${PRO_ROOT}/third_party/djinni") endif() endif() # libs ## log find_library(log-lib log) ## djinni_jni include_directories( ${DJINNI_DIR}/support-lib/jni ) add_library(djinni_jni STATIC ${DJINNI_DIR}/support-lib/jni/djinni_support.cpp ) # targets ## libmynteye add_definitions(-DMYNTEYE_EXPORTS) set(MYNTEYE_NAMESPACE "mynteye") #message(STATUS "Namespace: ${MYNTEYE_NAMESPACE}") configure_file( ${MYNTETE_ROOT}/include/mynteye/mynteye.h.in include/mynteye/mynteye.h @ONLY ) set(MYNTEYE_SRCS ${MYNTETE_ROOT}/src/mynteye/uvc/linux/uvc-v4l2.cc ${MYNTETE_ROOT}/src/mynteye/types.cc ${MYNTETE_ROOT}/src/mynteye/util/files.cc ${MYNTETE_ROOT}/src/mynteye/util/strings.cc ${MYNTETE_ROOT}/src/mynteye/device/channel/bytes.cc ${MYNTETE_ROOT}/src/mynteye/device/channel/channels.cc ${MYNTETE_ROOT}/src/mynteye/device/channel/file_channel.cc ${MYNTETE_ROOT}/src/mynteye/device/config.cc ${MYNTETE_ROOT}/src/mynteye/device/context.cc ${MYNTETE_ROOT}/src/mynteye/device/device.cc ${MYNTETE_ROOT}/src/mynteye/device/motions.cc ${MYNTETE_ROOT}/src/mynteye/device/standard/channels_adapter_s.cc ${MYNTETE_ROOT}/src/mynteye/device/standard/device_s.cc ${MYNTETE_ROOT}/src/mynteye/device/standard/streams_adapter_s.cc ${MYNTETE_ROOT}/src/mynteye/device/standard2/channels_adapter_s2.cc ${MYNTETE_ROOT}/src/mynteye/device/standard2/device_s2.cc ${MYNTETE_ROOT}/src/mynteye/device/standard2/streams_adapter_s2.cc ${MYNTETE_ROOT}/src/mynteye/device/standard2/channels_adapter_s210a.cc ${MYNTETE_ROOT}/src/mynteye/device/standard2/device_s210a.cc ${MYNTETE_ROOT}/src/mynteye/device/standard2/streams_adapter_s210a.cc ${MYNTETE_ROOT}/src/mynteye/device/streams.cc ${MYNTETE_ROOT}/src/mynteye/device/types.cc ${MYNTETE_ROOT}/src/mynteye/device/utils.cc ) list(APPEND MYNTEYE_SRCS ${MYNTETE_ROOT}/src/mynteye/miniglog.cc) add_library(mynteye STATIC ${MYNTEYE_SRCS}) target_link_libraries(mynteye ${log-lib}) target_include_directories(mynteye PUBLIC "$" "$" "$" "$" ) ## libmynteye_jni set(CPP_DIR "${PROJECT_SOURCE_DIR}/src/main/cpp") include_directories( ${CPP_DIR}/mynteye/cpp ${CPP_DIR}/mynteye/impl ${CPP_DIR}/mynteye/jni ) set(MYNTEYE_JNI_SRCS "") foreach(__dir cpp impl jni) file(GLOB __srcs "${CPP_DIR}/mynteye/${__dir}/*.cpp") list(APPEND MYNTEYE_JNI_SRCS ${__srcs}) endforeach() #message(STATUS "MYNTEYE_JNI_SRCS: ${MYNTEYE_JNI_SRCS}") add_library(mynteye_jni SHARED ${DJINNI_DIR}/support-lib/jni/djinni_main.cpp ${MYNTEYE_JNI_SRCS} ) target_link_libraries(mynteye_jni ${log-lib} djinni_jni mynteye)