-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathCMakeLists.txt
More file actions
82 lines (66 loc) · 3.48 KB
/
CMakeLists.txt
File metadata and controls
82 lines (66 loc) · 3.48 KB
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
67
68
69
70
71
72
73
74
75
76
77
78
79
80
cmake_minimum_required(VERSION 3.4...3.18)
project(intelligentCar)
set (CMAKE_CXX_STANDARD 17)
#---------------------------------------------------------------------
# [ Include、Lib : Define ] ==> []
#---------------------------------------------------------------------
set(COMMON_LIB_DIR "${PROJECT_SOURCE_DIR}/lib/")
set(COMMON_INCLUDE_DIR "${PROJECT_SOURCE_DIR}/include"
"${PROJECT_SOURCE_DIR}/config"
"${PROJECT_SOURCE_DIR}/demo"
"${PROJECT_SOURCE_DIR}/driver"
"${PROJECT_SOURCE_DIR}/lib"
"${PROJECT_SOURCE_DIR}/src"
"${PROJECT_SOURCE_DIR}/tool" )
link_directories(${COMMON_LIB_DIR})
include_directories( ${COMMON_INCLUDE_DIR} )
#---------------------------------------------------------------------
# [ Include、Lib : Path ] ==> [ glib opencv ]
#---------------------------------------------------------------------
#find_package(PkgConfig)
#pkg_search_module(GLIB REQUIRED glib-2.0)
#include_directories(${GLIB_INCLUDE_DIRS})
set(OpenCV_DIR D:/0tools/opencv/build)
find_package( OpenCV REQUIRED )
include_directories( ${OpenCV_INCLUDE_DIRS} )
find_package(PaddleLite)
include_directories(${PADDLELITE_INCLUDE_DIR})
LINK_DIRECTORIES("${PROJECT_SOURCE_DIR}/lib/cxx/")
#message(${PADDLELITE_LIBRARY})
message("Install Prefix : [${CMAKE_INSTALL_PREFIX}]")
#---------------------------------------------------------------------
# [ bin ] ==> [ tool ]
#---------------------------------------------------------------------
# Image2video
set(IMAGE2VIDEO_PROJECT_NAME "image2video")
set(IMAGE2VIDEO_PROJECT_SOURCES ${PROJECT_SOURCE_DIR}/tool/image2video.cpp)
add_executable(${IMAGE2VIDEO_PROJECT_NAME} ${IMAGE2VIDEO_PROJECT_SOURCES})
target_link_libraries(${IMAGE2VIDEO_PROJECT_NAME} PRIVATE pthread )
target_link_libraries(${IMAGE2VIDEO_PROJECT_NAME} PRIVATE ${OpenCV_LIBS})
# CameraDisplay
set(CAMERA_DISPLAY_PROJECT_NAME "camera_display")
set(CAMERA_DISPLAY_PROJECT_SOURCES ${PROJECT_SOURCE_DIR}/tool/camera_display.cpp)
add_executable(${CAMERA_DISPLAY_PROJECT_NAME} ${CAMERA_DISPLAY_PROJECT_SOURCES})
target_link_libraries(${CAMERA_DISPLAY_PROJECT_NAME} PRIVATE pthread )
target_link_libraries(${CAMERA_DISPLAY_PROJECT_NAME} PRIVATE ${OpenCV_LIBS})
# ImageCollection
set(COLLECTION_PROJECT_NAME "image_collection")
set(COLLECTION_PROJECT_SOURCES ${PROJECT_SOURCE_DIR}/tool/image_collection.cpp)
add_executable(${COLLECTION_PROJECT_NAME} ${COLLECTION_PROJECT_SOURCES})
target_link_libraries(${COLLECTION_PROJECT_NAME} PRIVATE pthread )
target_link_libraries(${COLLECTION_PROJECT_NAME} PRIVATE ${OpenCV_LIBS})
target_link_libraries(${COLLECTION_PROJECT_NAME} PRIVATE serial)
#---------------------------------------------------------------------
# [ bin ] ==> [ main ]
#---------------------------------------------------------------------
set(PROJECT_NAME "icar")
set(INTELLIGENTCAR_CAR_PROJECT_SOURCES ${PROJECT_SOURCE_DIR}/src/icar.cpp)
add_executable(${PROJECT_NAME} ${INTELLIGENTCAR_CAR_PROJECT_SOURCES})
target_link_libraries(${PROJECT_NAME} PRIVATE pthread )
target_link_libraries(${PROJECT_NAME} PRIVATE ${OpenCV_LIBS})
target_link_libraries(${PROJECT_NAME} PRIVATE paddle_full_api_shared)
target_link_libraries(${PROJECT_NAME} PRIVATE serial)
install(TARGETS ${PROJECT_NAME}
RUNTIME DESTINATION ${CMAKE_INSTALL_PREFIX}
LIBRARY DESTINATION ${CMAKE_INSTALL_PREFIX}
ARCHIVE DESTINATION ${CMAKE_INSTALL_PREFIX})