chore: consolidate gRPC and protobuf linking into a dedicated support library

- Introduced a new `yaze_grpc_support` library to centralize all gRPC and protobuf usage, addressing Windows linker errors and improving build stability.
- Updated CMake configurations across various components to link against the new support library instead of individual protobuf targets, simplifying the linking process.
- Removed legacy whole-archive linking logic, ensuring a cleaner and more maintainable build setup.

Benefits:
- Reduces complexity in CMake files and enhances compatibility across platforms.
- Prevents potential linker errors by consolidating gRPC and protobuf dependencies into a single library.
This commit is contained in:
scawful
2025-10-18 15:58:58 -04:00
parent 8e86c1bbdf
commit 6db7ba4782
15 changed files with 152 additions and 170 deletions

View File

@@ -76,6 +76,11 @@ if(YAZE_BUILD_TESTS OR NOT YAZE_MINIMAL_BUILD)
include(app/test/test.cmake)
endif()
# Include gRPC support library (consolidates all protobuf/gRPC usage)
if(YAZE_WITH_GRPC)
include(app/service/grpc_support.cmake)
endif()
# Include agent/CLI components (needed by yaze_editor for agent features)
if(YAZE_BUILD_APP OR YAZE_BUILD_Z3ED OR YAZE_BUILD_TESTS)
include(cli/agent.cmake)