Merge branch 'master' into mqtt_client
This commit is contained in:
@@ -5,9 +5,9 @@ if (POLICY CMP0177)
|
||||
endif()
|
||||
project(PIP)
|
||||
set(PIP_MAJOR 5)
|
||||
set(PIP_MINOR 6)
|
||||
set(PIP_MINOR 7)
|
||||
set(PIP_REVISION 0)
|
||||
set(PIP_SUFFIX )
|
||||
set(PIP_SUFFIX _alpha)
|
||||
set(PIP_COMPANY SHS)
|
||||
set(PIP_DOMAIN org.SHS)
|
||||
|
||||
@@ -67,11 +67,13 @@ set(PIP_DLL_DIR "${CMAKE_CURRENT_BINARY_DIR}" CACHE STRING "")
|
||||
option(ICU "ICU support for convert codepages" ${_ICU_DEFAULT})
|
||||
option(STD_IOSTREAM "Building with std iostream operators support" OFF)
|
||||
option(INTROSPECTION "Build with introspection" OFF)
|
||||
option(TESTS "Build tests and perform their before install step" OFF)
|
||||
option(TESTS "Build tests" OFF)
|
||||
option(TESTS_RUN "Run tests before install step" OFF)
|
||||
option(COVERAGE "Build project with coverage info" OFF)
|
||||
option(PIP_FFTW_F "Support fftw module for float" ON)
|
||||
option(PIP_FFTW_L "Support fftw module for long double" ON)
|
||||
option(PIP_FFTW_Q "Support fftw module for quad double" OFF)
|
||||
option(PIP_MANUAL_TEST "Build dev test (main.cpp)" OFF)
|
||||
set(PIP_UTILS 1)
|
||||
set(CMAKE_CXX_STANDARD_REQUIRED TRUE)
|
||||
set(CMAKE_CXX_STANDARD 11)
|
||||
@@ -96,7 +98,7 @@ set(PIP_TESTS_LIST)
|
||||
set(PIP_EXPORTS)
|
||||
set(PIP_3PL_DIR "${CMAKE_CURRENT_SOURCE_DIR}/3rd")
|
||||
|
||||
set(PIP_SRC_MODULES "console;crypt;compress;usb;fftw;opencl;io_utils;client_server;cloud;lua;http_client;http_server")
|
||||
set(PIP_SRC_MODULES "console;crypt;compress;usb;fftw;opencl;io_utils;client_server;cloud;lua;http_client;http_server;mqtt_client")
|
||||
foreach(_m ${PIP_SRC_MODULES})
|
||||
set(PIP_MSG_${_m} "no")
|
||||
string(TOUPPER "${_m}" _mu)
|
||||
@@ -360,10 +362,13 @@ endif()
|
||||
if(WIN32)
|
||||
add_definitions(-DPSAPI_VERSION=1)
|
||||
if(${C_COMPILER} STREQUAL "cl.exe")
|
||||
set(CMAKE_CXX_FLAGS "/O2 /Ob2 /Ot /W0")
|
||||
set(CMAKE_CXX_FLAGS "/O2 /Ob2 /Ot /W0 /EH-")
|
||||
endif()
|
||||
else()
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIC")
|
||||
if (NOT DEFINED ANDROID_PLATFORM)
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-exceptions")
|
||||
endif()
|
||||
if(DEFINED ENV{QNX_HOST} OR PIP_FREERTOS)
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -ftemplate-depth-32")
|
||||
endif()
|
||||
@@ -382,28 +387,6 @@ endif()
|
||||
add_subdirectory("3rd/pcre2" EXCLUDE_FROM_ALL)
|
||||
list(APPEND LIBS_MAIN pcre2-16-static)
|
||||
|
||||
#set(MQTT_C_OpenSSL_SUPPORT OFF CACHE BOOL "" FORCE)
|
||||
#set(MQTT_C_MbedTLS_SUPPORT OFF CACHE BOOL "" FORCE)
|
||||
#set(MQTT_C_BearSSL_SUPPORT OFF CACHE BOOL "" FORCE)
|
||||
#set(MQTT_C_EXAMPLES OFF CACHE BOOL "" FORCE)
|
||||
#set(MQTT_C_INSTALL_EXAMPLES OFF CACHE BOOL "" FORCE)
|
||||
#set(MQTT_C_TESTS OFF CACHE BOOL "" FORCE)
|
||||
set(PAHO_WITH_SSL OFF CACHE BOOL "" FORCE)
|
||||
set(PAHO_WITH_LIBRESSL OFF CACHE BOOL "" FORCE)
|
||||
set(PAHO_WITH_LIBUUID OFF CACHE BOOL "" FORCE)
|
||||
set(PAHO_BUILD_SHARED OFF CACHE BOOL "" FORCE)
|
||||
set(PAHO_BUILD_STATIC ON CACHE BOOL "" FORCE)
|
||||
set(PAHO_BUILD_DOCUMENTATION OFF CACHE BOOL "" FORCE)
|
||||
set(PAHO_BUILD_SAMPLES OFF CACHE BOOL "" FORCE)
|
||||
set(PAHO_BUILD_DEB_PACKAGE OFF CACHE BOOL "" FORCE)
|
||||
set(PAHO_ENABLE_TESTING OFF CACHE BOOL "" FORCE)
|
||||
set(PAHO_ENABLE_CPACK OFF CACHE BOOL "" FORCE)
|
||||
set(PAHO_HIGH_PERFORMANCE OFF CACHE BOOL "" FORCE)
|
||||
set(PAHO_USE_SELECT OFF CACHE BOOL "" FORCE)
|
||||
set(PAHO_NO_TCP_NODELAY OFF CACHE BOOL "" FORCE)
|
||||
add_subdirectory("3rd/paho.mqtt.c" EXCLUDE_FROM_ALL)
|
||||
list(APPEND LIBS_MAIN eclipse-paho-mqtt-c::paho-mqtt3c-static)
|
||||
|
||||
pip_module(main "${LIBS_MAIN}" "PIP main library" "" "${PIP_3PL_DIR}/BLAKE2;${PIP_3PL_DIR}/SipHash" "")
|
||||
|
||||
generate_export_header(pip)
|
||||
@@ -607,6 +590,34 @@ if (NOT CROSSTOOLS)
|
||||
endif()
|
||||
|
||||
|
||||
if (PIP_BUILD_MQTT_CLIENT)
|
||||
# paho.mqtt.c
|
||||
|
||||
#set(MQTT_C_OpenSSL_SUPPORT OFF CACHE BOOL "" FORCE)
|
||||
#set(MQTT_C_MbedTLS_SUPPORT OFF CACHE BOOL "" FORCE)
|
||||
#set(MQTT_C_BearSSL_SUPPORT OFF CACHE BOOL "" FORCE)
|
||||
#set(MQTT_C_EXAMPLES OFF CACHE BOOL "" FORCE)
|
||||
#set(MQTT_C_INSTALL_EXAMPLES OFF CACHE BOOL "" FORCE)
|
||||
#set(MQTT_C_TESTS OFF CACHE BOOL "" FORCE)
|
||||
set(PAHO_WITH_SSL OFF CACHE BOOL "" FORCE)
|
||||
set(PAHO_WITH_LIBRESSL OFF CACHE BOOL "" FORCE)
|
||||
set(PAHO_WITH_LIBUUID OFF CACHE BOOL "" FORCE)
|
||||
set(PAHO_BUILD_SHARED OFF CACHE BOOL "" FORCE)
|
||||
set(PAHO_BUILD_STATIC ON CACHE BOOL "" FORCE)
|
||||
set(PAHO_BUILD_DOCUMENTATION OFF CACHE BOOL "" FORCE)
|
||||
set(PAHO_BUILD_SAMPLES OFF CACHE BOOL "" FORCE)
|
||||
set(PAHO_BUILD_DEB_PACKAGE OFF CACHE BOOL "" FORCE)
|
||||
set(PAHO_ENABLE_TESTING OFF CACHE BOOL "" FORCE)
|
||||
set(PAHO_ENABLE_CPACK OFF CACHE BOOL "" FORCE)
|
||||
set(PAHO_HIGH_PERFORMANCE OFF CACHE BOOL "" FORCE)
|
||||
set(PAHO_USE_SELECT OFF CACHE BOOL "" FORCE)
|
||||
set(PAHO_NO_TCP_NODELAY OFF CACHE BOOL "" FORCE)
|
||||
add_subdirectory("3rd/paho.mqtt.c" EXCLUDE_FROM_ALL)
|
||||
|
||||
pip_module(mqtt_client eclipse-paho-mqtt-c::paho-mqtt3c-static "PIP MQTT Client" "" "" " (internal)")
|
||||
endif()
|
||||
|
||||
|
||||
# Test program
|
||||
if(PIP_UTILS)
|
||||
|
||||
@@ -614,12 +625,14 @@ if (NOT CROSSTOOLS)
|
||||
#target_link_libraries(pip_plugin pip)
|
||||
|
||||
if (NOT DEFINED ANDROID_PLATFORM)
|
||||
if(microhttpd_FOUND AND curl_FOUND)
|
||||
add_executable(pip_test "main.cpp")
|
||||
target_link_libraries(pip_test pip pip_io_utils pip_client_server pip_http_server pip_http_client)
|
||||
if(sodium_FOUND)
|
||||
add_executable(pip_cloud_test "main_picloud_test.cpp")
|
||||
target_link_libraries(pip_cloud_test pip_cloud)
|
||||
if (PIP_MANUAL_TEST)
|
||||
if(microhttpd_FOUND AND curl_FOUND)
|
||||
add_executable(pip_test "main.cpp")
|
||||
target_link_libraries(pip_test pip pip_io_utils pip_client_server pip_http_server pip_http_client pip_mqtt_client)
|
||||
if(sodium_FOUND)
|
||||
add_executable(pip_cloud_test "main_picloud_test.cpp")
|
||||
target_link_libraries(pip_cloud_test pip_cloud)
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
@@ -756,7 +769,7 @@ if ((NOT PIP_FREERTOS) AND (NOT CROSSTOOLS))
|
||||
find_package(Doxygen)
|
||||
if(DOXYGEN_FOUND)
|
||||
set(DOXY_DEFINES "${PIP_EXPORTS}")
|
||||
foreach (_m "console" "usb" "compress" "crypt" "client_server" "cloud" "fftw" "opencl" "io_utils" "lua" "http_server" "http_client")
|
||||
foreach (_m "console" "usb" "compress" "crypt" "client_server" "cloud" "fftw" "opencl" "io_utils" "lua" "http_server" "http_client" "mqtt_client")
|
||||
string(TOUPPER "${_m}" _mdef)
|
||||
list(APPEND DOXY_DEFINES "PIP_${_mdef}_EXPORT")
|
||||
endforeach()
|
||||
@@ -845,6 +858,9 @@ if (PIP_TESTS_LIST)
|
||||
foreach(_test ${PIP_TESTS_LIST})
|
||||
message(" * ${_test}")
|
||||
endforeach()
|
||||
if (TESTS_RUN)
|
||||
message("TESTS_RUN ON -> Run tests before install step")
|
||||
endif()
|
||||
else()
|
||||
message(" Tests: skip (tests off)")
|
||||
endif()
|
||||
|
||||
Reference in New Issue
Block a user