Finally got eCAL to build, including all dependencies.

This commit is contained in:
Stephan Menzel
2025-06-25 17:49:34 +02:00
parent 62747bab18
commit ab11f36e72
22 changed files with 605 additions and 59 deletions
+120
View File
@@ -0,0 +1,120 @@
diff --git a/app/app_pb/CMakeLists.txt b/app/app_pb/CMakeLists.txt
index aba4a91..5775cee 100644
--- a/app/app_pb/CMakeLists.txt
+++ b/app/app_pb/CMakeLists.txt
@@ -18,6 +18,7 @@
project(app_pb)
+find_package(absl REQUIRED)
find_package(Protobuf REQUIRED)
set(ProtoFiles
@@ -71,7 +72,13 @@ target_compile_options(${PROJECT_NAME}
set_property(TARGET ${PROJECT_NAME} PROPERTY POSITION_INDEPENDENT_CODE ON)
-target_link_libraries(${PROJECT_NAME} PUBLIC protobuf::libprotobuf)
+target_link_libraries(${PROJECT_NAME}
+ PUBLIC
+ protobuf::libprotobuf
+ absl::log
+ absl::strings
+ absl::base
+)
target_compile_features(${PROJECT_NAME} PUBLIC cxx_std_14)
ecal_install_library(${PROJECT_NAME})
diff --git a/ecal/core/src/ecal_process.cpp b/ecal/core/src/ecal_process.cpp
index cee6311..66b011c 100644
--- a/ecal/core/src/ecal_process.cpp
+++ b/ecal/core/src/ecal_process.cpp
@@ -366,16 +366,16 @@ namespace eCAL
short win_state = 0;
switch (process_mode_)
{
- case 0:
+ case eStartMode::normal:
win_state = SW_SHOW;
break;
- case 1:
+ case eStartMode::hidden:
win_state = SW_HIDE;
break;
- case 2:
+ case eStartMode::minimized:
win_state = SW_MINIMIZE;
break;
- case 3:
+ case eStartMode::maximized:
win_state = SW_MAXIMIZE;
break;
default:
diff --git a/ecal/core_pb/CMakeLists.txt b/ecal/core_pb/CMakeLists.txt
index 892e6ea..852a5b1 100644
--- a/ecal/core_pb/CMakeLists.txt
+++ b/ecal/core_pb/CMakeLists.txt
@@ -18,6 +18,7 @@
project(core_pb)
+find_package(absl REQUIRED)
find_package(Protobuf REQUIRED)
set(ProtoFiles
@@ -68,7 +69,14 @@ target_compile_options(${PROJECT_NAME}
set_property(TARGET ${PROJECT_NAME} PROPERTY POSITION_INDEPENDENT_CODE ON)
-target_link_libraries(${PROJECT_NAME} PUBLIC protobuf::libprotobuf)
+target_link_libraries(${PROJECT_NAME}
+ PUBLIC
+ protobuf::libprotobuf
+ absl::log
+ absl::strings
+ absl::base
+)
+
target_compile_features(${PROJECT_NAME} PUBLIC cxx_std_14)
ecal_install_library(${PROJECT_NAME})
diff --git a/serialization/protobuf/protobuf/CMakeLists.txt b/serialization/protobuf/protobuf/CMakeLists.txt
index 5264fad..2924162 100644
--- a/serialization/protobuf/protobuf/CMakeLists.txt
+++ b/serialization/protobuf/protobuf/CMakeLists.txt
@@ -20,6 +20,7 @@
# Protobuf base functionality
##########################
+find_package(absl REQUIRED)
find_package(Protobuf REQUIRED)
ecal_add_library(protobuf_base)
add_library(eCAL::protobuf_base ALIAS protobuf_base)
@@ -45,7 +46,13 @@ target_sources(protobuf_base
src/ecal_proto_visitor.cpp
)
-target_link_libraries(protobuf_base PUBLIC protobuf::libprotobuf)
+target_link_libraries(protobuf_base
+ PUBLIC
+ protobuf::libprotobuf
+ absl::log
+ absl::strings
+ absl::base
+)
target_compile_features(protobuf_base PUBLIC cxx_std_14)
diff --git a/thirdparty/cmakefunctions/cmake_functions/qt/qt_windeployqt.cmake b/thirdparty/cmakefunctions/cmake_functions/qt/qt_windeployqt.cmake
index 7e7ff0f..b429cf8 100644
--- a/thirdparty/cmakefunctions/cmake_functions/qt/qt_windeployqt.cmake
+++ b/thirdparty/cmakefunctions/cmake_functions/qt/qt_windeployqt.cmake
@@ -17,7 +17,7 @@
# ========================= eCAL LICENSE =================================
-set (qt_windeployqt_cmake_path ${CMAKE_CURRENT_LIST_DIR} PARENT_SCOPE)
+set (qt_windeployqt_cmake_path ${CMAKE_CURRENT_LIST_DIR})
# Create convenient function to run windeployqt
function(qt_add_windeployqt_postbuild arguments)
+17
View File
@@ -0,0 +1,17 @@
diff --git a/ecaludp/CMakeLists.txt b/ecaludp/CMakeLists.txt
index c6fc47a..34b96b3 100644
--- a/ecaludp/CMakeLists.txt
+++ b/ecaludp/CMakeLists.txt
@@ -94,11 +94,10 @@ generate_export_header(${PROJECT_NAME}
add_library (ecaludp::ecaludp ALIAS ${PROJECT_NAME})
target_link_libraries(${PROJECT_NAME}
- PUBLIC
- asio::asio
PRIVATE
# Link header-only libs (recycle) as described in this workaround:
# https://gitlab.kitware.com/cmake/cmake/-/issues/15415#note_633938
+ $<BUILD_INTERFACE:asio::asio>
$<BUILD_INTERFACE:steinwurf::recycle>
$<$<BOOL:${WIN32}>:ws2_32>
$<$<BOOL:${WIN32}>:wsock32>
@@ -0,0 +1,13 @@
diff --git a/thirdparty/cmakefunctions/cmake_functions/qt/qt_windeployqt.cmake b/thirdparty/cmakefunctions/cmake_functions/qt/qt_windeployqt.cmake
index 7e7ff0f..b429cf8 100644
--- a/thirdparty/cmakefunctions/cmake_functions/qt/qt_windeployqt.cmake
+++ b/thirdparty/cmakefunctions/cmake_functions/qt/qt_windeployqt.cmake
@@ -17,7 +17,7 @@
# ========================= eCAL LICENSE =================================
-set (qt_windeployqt_cmake_path ${CMAKE_CURRENT_LIST_DIR} PARENT_SCOPE)
+set (qt_windeployqt_cmake_path ${CMAKE_CURRENT_LIST_DIR})
# Create convenient function to run windeployqt
function(qt_add_windeployqt_postbuild arguments)