43 lines
1.4 KiB
CMake
43 lines
1.4 KiB
CMake
cmake_minimum_required(VERSION 2.8)
|
|
|
|
project(mqtt-client)
|
|
|
|
set(TARGETS "mqtt-client")
|
|
set(SUBDIRS "mqtt" "test" "platform" "network" "common" "mqttclient")
|
|
set(INCDIRS "mqtt" "platform/linux" "common" "common/log" "network" "network/mbedtls/include" "mqttclient" "test")
|
|
set(OUTDIRS "build")
|
|
set(LIBNAMES "mqtt" "platform" "network" "common" "salof" "mbedtls" "mqttclient")
|
|
set(PROJECT_ROOT_PATH "${PROJECT_SOURCE_DIR}")
|
|
set(LIBRARY_OUTPUT_PATH "${PROJECT_ROOT_PATH}/${OUTDIRS}/lib/")
|
|
set(EXECUTABLE_OUTPUT_PATH "${PROJECT_ROOT_PATH}/${OUTDIRS}/bin/")
|
|
|
|
set(CMAKE_BUILD_TYPE "Release") # Debug Release
|
|
set(CMAKE_LIB_TYPE "STATIC") # SHARED STATIC
|
|
|
|
# set(CMAKE_C_COMPILER "gcc")
|
|
# set(CMAKE_CXX_COMPILER "g++" )
|
|
|
|
set(CMAKE_C_FLAGS "-Wall")
|
|
set(CMAKE_C_FLAGS "-lpthread")
|
|
set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS} -O0 -g -ggdb")
|
|
set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS} -O3 -DNDEBUG")
|
|
|
|
if(CMAKE_COMPILER_IS_GNUCXX)
|
|
set(CMAKE_CXX_FLAGS "-std=c++11")
|
|
set(CMAKE_CXX_FLAGS "-lpthread")
|
|
set(CMAKE_CXX_FLAGS "-Wall")
|
|
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS} -O0 -g -ggdb")
|
|
set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS} -O3")
|
|
endif(CMAKE_COMPILER_IS_GNUCXX)
|
|
|
|
foreach(incdir ${INCDIRS})
|
|
include_directories(${incdir})
|
|
endforeach()
|
|
|
|
foreach(subdir ${SUBDIRS})
|
|
add_subdirectory(${PROJECT_ROOT_PATH}/${subdir})
|
|
endforeach()
|
|
|
|
link_directories(${LIBRARY_OUTPUT_PATH})
|
|
|