CMAKE_MINIMUM_REQUIRED(VERSION 3.4.1)
SET(CMAKE_SKIP_BUILD_RPATH true)
-PROJECT(aitt VERSION 0.0.1 LANGUAGES CXX)
+PROJECT(aitt VERSION 0.0.1 LANGUAGES CXX C)
SET_PROPERTY(GLOBAL PROPERTY GLOBAL_DEPENDS_DEBUG_MODE 0)
SET(CMAKE_POSITION_INDEPENDENT_CODE TRUE)
-SET(CMAKE_CXX_STANDARD 17)
+SET(CMAKE_CXX_STANDARD 11)
SET(CMAKE_CXX_STANDARD_REQUIRED ON)
SET(CMAKE_CXX_EXTENSIONS OFF)
IF(PLATFORM STREQUAL "android")
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -fdiagnostics-color")
ADD_DEFINITIONS(-DANDROID)
+ ADD_DEFINITIONS(-DPLATFORM=${PLATFORM})
INCLUDE(${PROJECT_ROOT_DIR}/cmake/aitt_android_flatbuffers.cmake)
INCLUDE(${PROJECT_ROOT_DIR}/cmake/aitt_android_glib.cmake)
INCLUDE(${PROJECT_ROOT_DIR}/cmake/aitt_android_mosquitto.cmake)
- SET(AITT_NEEDS_LIBRARIES ${GLIB_LIBRARIES} ${MOSQUITTO_LIBRARY} ${FLATBUFFERS_LIBRARY})
+ SET(AITT_NEEDS_LIBRARIES ${GLIB_LIBRARIES} ${MOSQUITTO_LIBRARY} ${FLATBUFFERS_LIBRARY} ${LOG_LIBRARIES})
ELSE(PLATFORM STREQUAL "android")
IF(PLATFORM STREQUAL "tizen")
ADD_DEFINITIONS(-DTIZEN)
ADD_DEFINITIONS(-DPLATFORM=${PLATFORM})
SET(ADDITIONAL_OPT "-DTIZEN")
- SET(PKGS dlog)
+ SET(TIZEN_LOG_PKG dlog)
ENDIF(PLATFORM STREQUAL "tizen")
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Werror -Wno-psabi -fdiagnostics-color -fvisibility=hidden")
- PKG_CHECK_MODULES(AITT_NEEDS REQUIRED ${PKGS} libmosquitto flatbuffers glib-2.0)
+ SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -pie")
+ PKG_CHECK_MODULES(AITT_NEEDS REQUIRED ${TIZEN_LOG_PKG} libmosquitto flatbuffers glib-2.0)
INCLUDE_DIRECTORIES(${AITT_NEEDS_INCLUDE_DIRS})
LINK_DIRECTORIES(${AITT_NEEDS_LIBRARY_DIRS})
ENDIF(PLATFORM STREQUAL "android")
AUX_SOURCE_DIRECTORY(src AITT_SRC)
-ADD_LIBRARY(M_LOADER_OBJ OBJECT src/ModuleLoader.cc src/NullTransport.cc)
-LIST(REMOVE_ITEM AITT_SRC src/ModuleLoader.cc src/NullTransport.cc)
+SET(MODULE_MAN_SRC src/ModuleManager.cc src/NullTransport.cc)
+ADD_LIBRARY(MODULE_MANAGER OBJECT ${MODULE_MAN_SRC})
+list(REMOVE_ITEM AITT_SRC ${MODULE_MAN_SRC})
-ADD_LIBRARY(${PROJECT_NAME} SHARED ${AITT_SRC} $<TARGET_OBJECTS:M_LOADER_OBJ>)
+ADD_LIBRARY(${PROJECT_NAME} SHARED ${AITT_SRC} $<TARGET_OBJECTS:MODULE_MANAGER>)
TARGET_LINK_LIBRARIES(${PROJECT_NAME} Threads::Threads ${CMAKE_DL_LIBS} ${AITT_COMMON})
TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${AITT_NEEDS_LIBRARIES})