-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathCMakeLists.txt
43 lines (35 loc) · 1.12 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
38
39
40
41
42
43
# Standard Setup
cmake_minimum_required (VERSION 2.8)
project (rfoutlet CXX C)
# Includes
include_directories (source)
# Source files
set (SRC
source/RFOutlet.cpp
)
# Headers
set (HDR
source/RFOutlet.h
)
# Build application
set (EXE_NAME ${CMAKE_PROJECT_NAME})
add_executable (${EXE_NAME} ${SRC})
set_target_properties (${EXE_NAME} PROPERTIES COMPILE_DEFINITIONS "RFOUTLET_MAIN")
install (TARGETS ${EXE_NAME} DESTINATION bin)
# Build library
set (LIB_NAME lib${CMAKE_PROJECT_NAME})
add_library (${LIB_NAME} SHARED ${SRC})
set_target_properties (${LIB_NAME} PROPERTIES OUTPUT_NAME "rfoutlet")
install (TARGETS ${LIB_NAME} DESTINATION lib)
install (FILES ${HDR} DESTINATION include)
# Find the mongoose library
find_path (MONGOOSE_INCLUDE_DIR mongoose.h)
if(MONGOOSE_INCLUDE_DIR)
include_directories (${MONGOOSE_INCLUDE_DIR})
set (REST_SRC ${SRC} source/rest.cpp ${MONGOOSE_INCLUDE_DIR}/mongoose.c)
set (RESTEXE_NAME rest${CMAKE_PROJECT_NAME})
add_executable (${RESTEXE_NAME} ${REST_SRC})
install (TARGETS ${RESTEXE_NAME} DESTINATION bin)
else()
message("mongoose not found, not building rest api")
endif()