1 cmake_minimum_required (VERSION 2.8)
5 #set(CMAKE_SKIP_BUILD_RPATH TRUE)
7 include(CheckCXXCompilerFlag)
9 CHECK_CXX_COMPILER_FLAG("-std=c++11" COMPILER_SUPPORTS_CXX11)
10 CHECK_CXX_COMPILER_FLAG("-std=c++0x" COMPILER_SUPPORTS_CXX0X)
11 IF(COMPILER_SUPPORTS_CXX11)
12 SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
13 ELSEIF(COMPILER_SUPPORTS_CXX0X)
14 SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++0x")
16 MESSAGE(STATUS "The compiler ${CMAKE_CXX_COMPILER} has no C++ support. Please use a different C++ compiler.")
19 install(FILES ${CMAKE_SOURCE_DIR}/res/device_info.ini DESTINATION /opt/usr/data/ua_client/)
20 install(FILES ${CMAKE_SOURCE_DIR}/res/.firmware_controlee.dat DESTINATION /opt/usr/data/ua_client/)
23 set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS} ${EXTRA_CFLAGS} -O2 -g -Wall")
25 add_definitions(-D__TIZEN__ -D_GNU_SOURCE -DTIZEN_DEBUG_ENABLE -DTB_LOG -DWITH_CLOUD -DRD_SERVER)
28 ${CMAKE_SOURCE_DIR}/inc/
29 ${CMAKE_SOURCE_DIR}/inc/iotivity/
33 ${CMAKE_SOURCE_DIR}/src/ua_client.cpp
34 ${CMAKE_SOURCE_DIR}/src/ua_http.cpp
35 ${CMAKE_SOURCE_DIR}/src/ua_json_parser.cpp
38 #set(dependents "boost dlog glib-2.0 iotivity libcurl uuid json-glib-1.0 capi-network-connection")
39 set(dependents "boost dlog glib-2.0 libcurl uuid json-glib-1.0 capi-network-connection capi-network-wifi")
40 include(FindPkgConfig)
41 pkg_check_modules(${PROJECT_NAME} REQUIRED ${dependents})
43 foreach(flag ${${PROJECT_NAME}_CFLAGS})
44 set(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag} -std=c++11")
47 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${EXTRA_CFLAGS}")
49 #find_library(IOTIVITY_LIBRARY
50 # NAMES oc oc_logger octbstack ocsrm routingmanager connectivity_abstraction c_common coap logger
51 # PATHS ${CMAKE_SOURCE_DIR}/lib/
60 connectivity_abstraction
71 set(CMAKE_EXE_LINKER_FLAGS "-Wl,--as-needed")
73 link_directories(${CMAKE_SOURCE_DIR}/lib/)
74 add_executable(${PROJECT_NAME} ${SOURCES})
75 target_link_libraries(${PROJECT_NAME} ${${PROJECT_NAME}_LDFLAGS} ${LINK_STATIC_LIBS})
76 install(TARGETS ${PROJECT_NAME} DESTINATION bin)