Decouple XCEditorCore from editor app target
This commit is contained in:
@@ -105,6 +105,10 @@ Completed boundary cuts:
|
||||
explicit app module include roots. It restores project panel, scene viewport,
|
||||
viewport render-plan, viewport object-id picker, and app input-routing tests
|
||||
without widening the include surface.
|
||||
- `XCEditorCore` is now controlled by `XCENGINE_BUILD_XCUI_EDITOR_CORE`
|
||||
instead of the executable-host switch. `XCENGINE_BUILD_XCUI_EDITOR_APP=OFF`
|
||||
can still build the product core and the app-facing test targets when
|
||||
renderer editor support is enabled.
|
||||
- The old Win32 tab-drag-drop target test now covers the current reusable
|
||||
`XCEditor/Docking/UIEditorDockHostTransfer.h` API through
|
||||
`editor_windowing_phase1_tests`.
|
||||
@@ -280,6 +284,8 @@ Completed follow-up:
|
||||
|
||||
## Phase 2: Introduce XCEditorCore
|
||||
|
||||
Status: completed and build-graph enforced.
|
||||
|
||||
Create:
|
||||
|
||||
```cmake
|
||||
@@ -316,6 +322,19 @@ Important: do not hide Win32/D3D12 in `XCEditorCore` just to make the first
|
||||
CMake edit easier. If a source file needs `windows.h`, it belongs in the host
|
||||
side until a neutral interface exists.
|
||||
|
||||
Completed target-graph cut:
|
||||
|
||||
- `XCENGINE_BUILD_XCUI_EDITOR_CORE` controls `XCEditorCore` and defaults to
|
||||
`ON`.
|
||||
- `XCENGINE_BUILD_XCUI_EDITOR_APP` controls only the concrete executable host
|
||||
target `XCEditor`.
|
||||
- `XCEditor` requires `XCENGINE_BUILD_XCUI_EDITOR_CORE=ON`.
|
||||
- When either the core library or executable host is enabled, the root build
|
||||
defaults `XCENGINE_ENABLE_RENDERING_EDITOR_SUPPORT=ON` because editor core
|
||||
owns viewport services that link renderer editor support.
|
||||
- The host-off validation shape is:
|
||||
`-DXCENGINE_BUILD_XCUI_EDITOR_APP=OFF -DXCENGINE_BUILD_XCUI_EDITOR_CORE=ON -DXCENGINE_ENABLE_RENDERING_EDITOR_SUPPORT=ON`.
|
||||
|
||||
## Phase 3: Restore App-Core And App Feature Tests
|
||||
|
||||
Status: completed for the initial app-core and app feature/viewport suites.
|
||||
@@ -512,6 +531,16 @@ cmake --build build --config Debug --target editor_app_feature_tests
|
||||
cmake --build build --config Debug --target editor_windowing_phase1_tests
|
||||
```
|
||||
|
||||
To prove the product core boundary without the executable host, configure a
|
||||
separate build directory with:
|
||||
|
||||
```powershell
|
||||
cmake -S . -B build/editor_core_hostoff -DXCENGINE_BUILD_XCUI_EDITOR_APP=OFF -DXCENGINE_BUILD_XCUI_EDITOR_CORE=ON -DXCENGINE_ENABLE_RENDERING_EDITOR_SUPPORT=ON
|
||||
cmake --build build/editor_core_hostoff --config Debug --target XCEditorCore
|
||||
cmake --build build/editor_core_hostoff --config Debug --target editor_app_core_tests
|
||||
cmake --build build/editor_core_hostoff --config Debug --target editor_app_feature_tests
|
||||
```
|
||||
|
||||
When app smoke is available:
|
||||
|
||||
```powershell
|
||||
|
||||
Reference in New Issue
Block a user