1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66
| CMAKE_MINIMUM_REQUIRED(VERSION 3.15)
SET(CMAKE_CXX_FLAGS "-std=c++14 -O2")
PROJECT("MMP") SET(PROJECT_NAME MMP) SET(LIBRARY_NAME MmpShared)
SET(PROJECT_BINARY_DIR ${CMAKE_CURRENT_SOURCE_DIR}/build) SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/bin) SET(LIBRARY_OUTPUT_PATH ${PROJECT_BINARY_DIR}/lib)
FIND_PACKAGE(PCL REQUIRED) INCLUDE_DIRECTORIES(${PCL_INCLUDE_DIRS}) LIST(REMOVE_ITEM PCL_LIBRARIES "vtkproj4")
FIND_PACKAGE(libLAS REQUIRED) INCLUDE_DIRECTORIES(${LIBLAS_INCLUDE_DIRS})
FIND_PACKAGE(VTK REQUIRED) INCLUDE_DIRECTORIES(${VTK_INCLUDE_DIRS})
FIND_PACKAGE(OpenCV REQUIRED) INCLUDE_DIRECTORIES(${OpenCV_INCLUDE_DIRS})
SET(THIRD_PARTY_LIBS ${PCL_LIBRARIES} ${libLAS_LIBRARIES} ${VTK_LIBRARIES} ${OpenCV_LIBS} )
IF(NOT WIN32) SET(SPECIAL_OS_LIBS "pthread" "X11") ADD_DEFINITIONS(-Wno-write-strings -fpermissive) ENDIF() set(CMAKE_EXE_LINKER_FLAGS "-fopenmp ${CMAKE_EXE_LINKER_FLAGS}")
INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/include)
FILE(GLOB_RECURSE SRC_FILES src/*.cpp) LIST(REMOVE_ITEM SRC_FILES ${CMAKE_CURRENT_SOURCE_DIR}/src/main.cpp) FILE(GLOB_RECURSE HEAD_FILES include/*.h) LIST(REMOVE_ITEM HEAD_FILES ${CMAKE_CURRENT_SOURCE_DIR}/src/main.h) FILE(GLOB_RECURSE SAMPLE_FILES sample/*.*)
ADD_LIBRARY(MmpShared SHARED ${SRC_FILES} ${SAMPLE_FILES}) TARGET_LINK_LIBRARIES(MmpShared ${THIRD_PARTY_LIBS})
ADD_EXECUTABLE(${PROJECT_NAME} src/main.cpp)
TARGET_LINK_LIBRARIES(${PROJECT_NAME} MmpShared)
|