-
Notifications
You must be signed in to change notification settings - Fork 61
/
Copy pathCMakeLists.txt
37 lines (31 loc) · 1.16 KB
/
CMakeLists.txt
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
cmake_minimum_required(VERSION 3.5)
project(ddserver LANGUAGES CXX)
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(THREADS_PREFER_PTHREAD_FLAG ON)
#set(LIBUSB_INCLUDE_DIR "/usr/local/include/libusb-1.0/libusb.h")
#set(LIBUSB_LIBRARY "/usr/lib/aarch64-linux-gnu/libusb-1.0.so")
include_directories(
${PROJECT_SOURCE_DIR}/src
)
file(GLOB all_SRCS
"${PROJECT_SOURCE_DIR}/src/*.cpp"
"${PROJECT_SOURCE_DIR}/src/*.h"
)
add_executable(ddserver ${all_SRCS})
find_path(LIBUSB_INCLUDE_DIR
NAMES libusb.h
PATH_SUFFIXES "include" "libusb" "libusb-1.0")
find_library(LIBUSB_LIBRARY
NAMES libusb-1.0.so
PATH_SUFFIXES "lib")
find_package(Threads REQUIRED)
target_include_directories(ddserver PUBLIC ${LIBUSB_INCLUDE_DIR})
target_link_libraries(ddserver Threads::Threads)
target_link_libraries(ddserver ${LIBUSB_LIBRARY})
install(TARGETS ddserver DESTINATION bin)
# Configure and install the systemd service unit file
configure_file(${CMAKE_SOURCE_DIR}/files/ddserver.service.in
${CMAKE_BINARY_DIR}/ddserver.service @ONLY)
install(FILES ${CMAKE_BINARY_DIR}/ddserver.service
DESTINATION /etc/systemd/system)