CMAKE_MINIMUM_REQUIRED(VERSION 2.8) PROJECT (TX_PROJECT) SET(CMAKE_SYSTEM_NAME Linux) #SET(CMAKE_C_COMPILER arm-linux-gcc) #SET(CMAKE_CXX_COMPILER arm-linux-g++) SET(CMAKE_C_FLAGS "-std=gnu99") #add_definitions(-D _GNU_SOURCE) #SET(CMAKE_C_FLAGS "-g") AUX_SOURCE_DIRECTORY(uart_utils DIR_SRC_UART_UTILS) AUX_SOURCE_DIRECTORY(uart_can DIR_SRC_UART_CAN) AUX_SOURCE_DIRECTORY(queue DIR_SRC_QUEUE) AUX_SOURCE_DIRECTORY(cmd DIR_SRC_COMMAND) AUX_SOURCE_DIRECTORY(sqlite_utils DIR_SRC_SQLITE_UTILS) AUX_SOURCE_DIRECTORY(mqtt_utils DIR_SRC_MQTT_UTILS) AUX_SOURCE_DIRECTORY(md5sum DIR_SRC_MD5SUM) AUX_SOURCE_DIRECTORY(json-c DIR_SRC_JSONC) AUX_SOURCE_DIRECTORY(json_utils DIR_SRC_JSON_UTILS) AUX_SOURCE_DIRECTORY(escape_unescape DIR_SRC_ESCAPE_UNESCAPE) AUX_SOURCE_DIRECTORY(net_utils DIR_SRC_NET_UTILS) AUX_SOURCE_DIRECTORY(debug_print DIR_SRC_DEBUG_PRINT) SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/bin) SET(MQTT_SRC_PATH ${CMAKE_CURRENT_LIST_DIR}/mqtt) INCLUDE_DIRECTORIES( ${CMAKE_CURRENT_LIST_DIR}/ ${CMAKE_BINARY_DIR}/ ${MQTT_SRC_PATH}/ ${CMAKE_CURRENT_LIST_DIR}/uart_utils ${CMAKE_CURRENT_LIST_DIR}/uart_can ${CMAKE_CURRENT_LIST_DIR}/queue ${CMAKE_CURRENT_LIST_DIR}/cmd ${CMAKE_CURRENT_LIST_DIR}/mqtt_utils ${CMAKE_CURRENT_LIST_DIR}/md5sum ${CMAKE_CURRENT_LIST_DIR}/json-c ${CMAKE_CURRENT_LIST_DIR}/json_utils ${CMAKE_CURRENT_LIST_DIR}/escape_unescape ${CMAKE_CURRENT_LIST_DIR}/net_utils ${CMAKE_CURRENT_LIST_DIR}/debug_print ) SET(MQTT_COMMON_SRC ${MQTT_SRC_PATH}/MQTTProtocolClient.c ${MQTT_SRC_PATH}/Clients.c ${MQTT_SRC_PATH}/utf-8.c ${MQTT_SRC_PATH}/StackTrace.c ${MQTT_SRC_PATH}/MQTTPacket.c ${MQTT_SRC_PATH}/MQTTPacketOut.c ${MQTT_SRC_PATH}/Messages.c ${MQTT_SRC_PATH}/Tree.c ${MQTT_SRC_PATH}/Socket.c ${MQTT_SRC_PATH}/Log.c ${MQTT_SRC_PATH}/MQTTPersistence.c ${MQTT_SRC_PATH}/Thread.c ${MQTT_SRC_PATH}/MQTTProtocolOut.c ${MQTT_SRC_PATH}/MQTTPersistenceDefault.c ${MQTT_SRC_PATH}/SocketBuffer.c ${MQTT_SRC_PATH}/Heap.c ${MQTT_SRC_PATH}/LinkedList.c ${MQTT_SRC_PATH}/MQTTProperties.c ${MQTT_SRC_PATH}/MQTTReasonCodes.c ${MQTT_SRC_PATH}/Base64.c ${MQTT_SRC_PATH}/Hmacsha1.c ${MQTT_SRC_PATH}/SHA1.c ${MQTT_SRC_PATH}/WebSocket.c ) SET(MQTT_MQTTAsync_SRC ${MQTT_SRC_PATH}/MQTTAsync.c ${MQTT_SRC_PATH}/SSLSocket.c ) SET(SRC_TX_SERVER ${DIR_SRC_UART_UTILS} ${DIR_SRC_COMMAND} ${DIR_SRC_QUEUE} ${DIR_SRC_UART_CAN} ${DIR_SRC_SQLITE_UTILS} ${MQTT_COMMON_SRC} ${MQTT_MQTTAsync_SRC} ${DIR_SRC_MQTT_UTILS} ${DIR_SRC_MD5SUM} ${DIR_SRC_JSONC} ${DIR_SRC_JSON_UTILS} ${DIR_SRC_ESCAPE_UNESCAPE} ${DIR_SRC_NET_UTILS} ${DIR_SRC_DEBUG_PRINT} ${CMAKE_CURRENT_LIST_DIR}/main.c ) ADD_EXECUTABLE(tx_server ${SRC_TX_SERVER}) TARGET_LINK_LIBRARIES(tx_server pthread dl)