Root Cause:
The z3ed CLI tool (via yaze_agent) depends on yaze_app_core_lib, but this
library was only being created when YAZE_BUILD_APP=ON (which doesn't exist -
should be YAZE_BUILD_GUI). When building z3ed standalone with tests
(YAZE_BUILD_Z3ED=ON, YAZE_BUILD_GUI=OFF), the linker failed with:
ld: library 'yaze_app_core_lib' not found
clang: error: linker command failed with exit code 1
Changes:
1. Created src/app/app_core.cmake: Contains only yaze_app_core_lib creation
2. Modified src/app/app.cmake: Now includes app_core.cmake, then conditionally
builds the yaze executable only when YAZE_BUILD_GUI=ON
3. Modified src/CMakeLists.txt: Include app/app.cmake whenever agent features
are needed (YAZE_BUILD_GUI OR YAZE_BUILD_Z3ED OR YAZE_BUILD_TESTS), ensuring
yaze_app_core_lib is always available before yaze_agent is built
Impact:
- macOS CI builds will now succeed (z3ed can link properly)
- No impact on existing GUI builds (yaze executable still built correctly)
- No impact on Windows/Linux (same dependency structure applies)
- Cleaner separation: library (always) vs executable (conditional)
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>