ranczo-io/libs/CMakeLists.txt
Bartosz Wieczorek 6da01a2f6b Add HTTP get
2025-12-12 16:57:05 +01:00

49 lines
1.5 KiB
CMake

include(modbus.cmake)
find_package(SQLite3)
find_package(OpenSSL REQUIRED)
add_library(ranczo-io_utils
mqtt_client.cpp ${CMAKE_CURRENT_SOURCE_DIR}/ranczo-io/utils/mqtt_client.hpp
json_helpers.cpp ${CMAKE_CURRENT_SOURCE_DIR}/ranczo-io/utils/json_helpers.hpp
date_utils.cpp ${CMAKE_CURRENT_SOURCE_DIR}/ranczo-io/utils/date_utils.hpp
asio_watchdog.cpp ${CMAKE_CURRENT_SOURCE_DIR}/ranczo-io/utils/asio_watchdog.hpp
modbus.cpp ${CMAKE_CURRENT_SOURCE_DIR}/ranczo-io/utils/modbus.hpp
config.cpp ${CMAKE_CURRENT_SOURCE_DIR}/ranczo-io/utils/config.hpp
http.cpp ${CMAKE_CURRENT_SOURCE_DIR}/ranczo-io/utils/http.hpp
${CMAKE_CURRENT_SOURCE_DIR}/ranczo-io/utils/mqtt_topic_builder.hpp
${CMAKE_CURRENT_SOURCE_DIR}/ranczo-io/utils/memory_resource.hpp
)
add_library(ranczo-io::utils ALIAS ranczo-io_utils)
target_include_directories(ranczo-io_utils
PUBLIC
${CMAKE_CURRENT_SOURCE_DIR}
)
target_link_libraries(ranczo-io_utils
PUBLIC
tl::expected
Boost::json
Boost::mqtt5
spdlog::spdlog
fmt::fmt
modbus
date::date
OpenSSL::SSL #http
OpenSSL::Crypto
Boost::url
PRIVATE
SQLite::SQLite3
)
install(
TARGETS ranczo-io_utils
INCLUDES DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
)