Add complib client and TCP communication

This commit is contained in:
Konstantin Lampalzer 2022-05-22 23:00:57 +02:00
parent 1a033c8b03
commit a484bc2137
35 changed files with 815 additions and 232 deletions

View file

@ -10,13 +10,26 @@ if (NOT CMAKE_BUILD_TYPE)
set(CMAKE_BUILD_TYPE Release)
endif ()
set(CMAKE_CXX_FLAGS "-Wall -Wextra -Wno-psabi")
set(CMAKE_CXX_FLAGS_DEBUG "-g")
set(CMAKE_CXX_FLAGS_RELEASE "-O3")
find_package(Protobuf REQUIRED)
find_package(spdlog REQUIRED)
find_package(pigpio REQUIRED)
if (APPLE)
set(CMAKE_CXX_FLAGS_DEBUG "-g -O0")
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -gdwarf-3")
set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -Wall -Wextra -gdwarf-3")
set(LIBRARIES "spdlog::spdlog")
elseif (UNIX)
message("Running on Raspberry Pi")
add_definitions(-DIS_RASPI)
set(CMAKE_CXX_FLAGS_RELEASE "-O3")
find_package(pigpio REQUIRED)
set(LIBRARIES "pigpio" "spdlog::spdlog")
set(CMAKE_CXX_FLAGS "-Wall -Wextra -Wno-psabi")
endif ()
message("CMAKE_SYSTEM_PROCESSOR = ${CMAKE_SYSTEM_PROCESSOR}")
set(PROTO_FILES
protos/CompLib.proto
@ -35,7 +48,8 @@ set(SRC_FILES
src/Odometry.cpp
src/communication/MessageProcessor.cpp
src/communication/MessageBuilder.cpp
src/communication/UnixSocketServer.cpp)
src/communication/UnixSocketServer.cpp
src/communication/TCPSocketServer.cpp)
set(HDR_FILES
include/spi.hpp
@ -52,7 +66,8 @@ set(HDR_FILES
include/Odometry.hpp
include/communication/MessageProcessor.hpp
include/communication/MessageBuilder.hpp
include/communication/UnixSocketServer.hpp)
include/communication/UnixSocketServer.hpp
include/communication/TCPSocketServer.hpp)
include_directories(third_party/asio)
@ -63,4 +78,4 @@ target_include_directories(${PROJECT_NAME}
PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}
PUBLIC ${PROTOBUF_INCLUDE_DIRS}
)
target_link_libraries(${PROJECT_NAME} ${PROTOBUF_LIBRARIES} pigpio spdlog::spdlog)
target_link_libraries(${PROJECT_NAME} ${PROTOBUF_LIBRARIES} ${LIBRARIES})