CMakeLists.txt
#configure variables
cmake_minimum_required(VERSION 3.0 FATAL_ERROR)
#project(server)
set (MTCNN_LIB_NAME "mtcnn")
#configure directories
set (MTCNN_LIB_PATH "${PROJECT_SOURCE_DIR}")
set (MTCNN_LIB_SRC_PATH "${MTCNN_LIB_PATH}/src" )
set (MTCNN_LIB_INCLUDE_PATH "${MTCNN_LIB_PATH}/include")
#add_compile_options(-std=c++11)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
#set includes
set(thirdparty_root ${PROJECT_SOURCE_DIR})
include_directories (
${MTCNN_LIB_INCLUDE_PATH}
${thirdparty_root}/cv_root/include
)
set(LIBS ${thirdparty_root}/cv_root/lib/libopencv_imgcodecs.a ${thirdparty_root}/cv_root/lib/libopencv_dnn.a
${thirdparty_root}/cv_root/lib/libopencv_imgproc.a ${thirdparty_root}/cv_root/lib/libopencv_core.a
${thirdparty_root}/cv_root/share/OpenCV/3rdparty/lib/liblibjpeg.a ${thirdparty_root}/cv_root/share/OpenCV/3rdparty/lib/liblibpng.a
${thirdparty_root}/cv_root/share/OpenCV/3rdparty/lib/libippicv.a ${thirdparty_root}/cv_root/share/OpenCV/3rdparty/lib/libIlmImf.a
${thirdparty_root}/cv_root/share/OpenCV/3rdparty/lib/liblibjasper.a ${thirdparty_root}/cv_root/share/OpenCV/3rdparty/lib/liblibtiff.a
${thirdparty_root}/cv_root/share/OpenCV/3rdparty/lib/liblibwebp.a ${thirdparty_root}/cv_root/share/OpenCV/3rdparty/lib/libzlib.a
${thirdparty_root}/cv_root/lib/libprotobuf.a)
link_libraries(${LIBS})
# 指定库路径,运行时候可以找到
#link_directories(${PROJECT_SOURCE_DIR}/cv_root4.1.2/lib/ ${PROJECT_SOURCE_DIR}/lib)
link_libraries(dl pthread)
# 查找当前目录下的所有源文件
# 并将名称保存到 DIR_SRCS 变量
aux_source_directory(. DIR_SRCS)
aux_source_directory(./src DIR_SRCS)
#指定搜索规则
#file (GLOB MTCNN_LIB_HEADER_FILES "${MTCNN_LIB_INCLUDE_PATH}/**/*.h" "${MTCNN_LIB_INCLUDE_PATH}/**/**/*.h")
#file (GLOB MTCNN_LIB_SOURCE_FILES "${MTCNN_LIB_SRC_PATH}/*.cc" "${MTCNN_LIB_SRC_PATH}/**/*.cc" "${MTCNN_LIB_SRC_PATH}/*.cpp")
#add_library (${MTCNN_LIB_NAME} SHARED ${MTCNN_LIB_SOURCE_FILES} ${MTCNN_LIB_HEADER_FILES})
#生成动态库, 若是静态库用STATIC
add_library (${MTCNN_LIB_NAME} SHARED ${DIR_SRCS})
#生成可执行文件
#add_executable(server ${DIR_SRCS})