Contain retained vendor source bundle
This commit is contained in:
@@ -221,6 +221,30 @@ endif()
|
|||||||
|
|
||||||
if(PP_BUILD_APP)
|
if(PP_BUILD_APP)
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
|
add_library(pp_legacy_vendor OBJECT
|
||||||
|
${PP_VENDOR_SOURCES})
|
||||||
|
target_link_libraries(pp_legacy_vendor
|
||||||
|
PUBLIC
|
||||||
|
pp_project_options
|
||||||
|
PRIVATE
|
||||||
|
pp_project_warnings)
|
||||||
|
target_include_directories(pp_legacy_vendor
|
||||||
|
PUBLIC
|
||||||
|
${PP_LEGACY_INCLUDE_DIRS})
|
||||||
|
target_compile_definitions(pp_legacy_vendor
|
||||||
|
PUBLIC
|
||||||
|
ENUM_BITFIELDS_NOT_SUPPORTED
|
||||||
|
UNICODE
|
||||||
|
_UNICODE
|
||||||
|
_CRT_SECURE_NO_WARNINGS
|
||||||
|
_SCL_SECURE_NO_WARNINGS
|
||||||
|
_SILENCE_CXX17_CODECVT_HEADER_DEPRECATION_WARNING
|
||||||
|
_SILENCE_STDEXT_ARR_ITERS_DEPRECATION_WARNING
|
||||||
|
_CONSOLE
|
||||||
|
WITH_CURL=1)
|
||||||
|
set_target_properties(pp_legacy_vendor PROPERTIES
|
||||||
|
VS_GLOBAL_CharacterSet "Unicode")
|
||||||
|
|
||||||
add_library(pp_legacy_renderer_gl OBJECT
|
add_library(pp_legacy_renderer_gl OBJECT
|
||||||
${PP_LEGACY_RENDERER_GL_SOURCES})
|
${PP_LEGACY_RENDERER_GL_SOURCES})
|
||||||
target_link_libraries(pp_legacy_renderer_gl
|
target_link_libraries(pp_legacy_renderer_gl
|
||||||
@@ -253,7 +277,7 @@ if(PP_BUILD_APP)
|
|||||||
add_library(pp_legacy_engine STATIC
|
add_library(pp_legacy_engine STATIC
|
||||||
${PP_LEGACY_ENGINE_SOURCES}
|
${PP_LEGACY_ENGINE_SOURCES}
|
||||||
$<TARGET_OBJECTS:pp_legacy_renderer_gl>
|
$<TARGET_OBJECTS:pp_legacy_renderer_gl>
|
||||||
${PP_VENDOR_SOURCES})
|
$<TARGET_OBJECTS:pp_legacy_vendor>)
|
||||||
|
|
||||||
target_link_libraries(pp_legacy_engine
|
target_link_libraries(pp_legacy_engine
|
||||||
PUBLIC
|
PUBLIC
|
||||||
@@ -284,9 +308,6 @@ if(PP_BUILD_APP)
|
|||||||
VS_GLOBAL_CharacterSet "Unicode")
|
VS_GLOBAL_CharacterSet "Unicode")
|
||||||
|
|
||||||
target_precompile_headers(pp_legacy_engine PRIVATE src/pch.h)
|
target_precompile_headers(pp_legacy_engine PRIVATE src/pch.h)
|
||||||
set_source_files_properties(${PP_VENDOR_SOURCES}
|
|
||||||
PROPERTIES SKIP_PRECOMPILE_HEADERS ON)
|
|
||||||
|
|
||||||
add_library(pp_legacy_app STATIC
|
add_library(pp_legacy_app STATIC
|
||||||
${PP_LEGACY_APP_SOURCES})
|
${PP_LEGACY_APP_SOURCES})
|
||||||
|
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ Keep it updated as platform paths move to shared CMake targets.
|
|||||||
|
|
||||||
| Platform/Target | Current Entrypoint | Notes |
|
| Platform/Target | Current Entrypoint | Notes |
|
||||||
| --- | --- | --- |
|
| --- | --- | --- |
|
||||||
| Windows desktop | Root `CMakeLists.txt`, preset `windows-msvc-default`; target preset `windows-vs2026-x64` retained for VS 2026 | Raw `.sln/.vcxproj` files removed on 2026-05-31; local machine currently uses Visual Studio 17 2022; `PanoPainter` now links through `pp_platform_windows` and `panopainter_app`, with Windows/vendor link dependencies owned by the platform shell, runtime payload deployment in `cmake/PanoPainterRuntime.cmake`, retained OpenGL runtime sources contained by `pp_legacy_renderer_gl` and folded into `pp_legacy_engine`, legacy canvas/asset/runtime sources contained by `pp_legacy_engine`, app orchestration/version metadata owned by `panopainter_app`, and app-specific modal/dialog/panel/canvas workflow nodes owned by `pp_panopainter_ui` |
|
| Windows desktop | Root `CMakeLists.txt`, preset `windows-msvc-default`; target preset `windows-vs2026-x64` retained for VS 2026 | Raw `.sln/.vcxproj` files removed on 2026-05-31; local machine currently uses Visual Studio 17 2022; `PanoPainter` now links through `pp_platform_windows` and `panopainter_app`, with Windows/vendor link dependencies owned by the platform shell, runtime payload deployment in `cmake/PanoPainterRuntime.cmake`, retained third-party source dependencies contained by `pp_legacy_vendor`, retained OpenGL runtime sources contained by `pp_legacy_renderer_gl` and folded into `pp_legacy_engine`, legacy canvas/asset/runtime sources contained by `pp_legacy_engine`, app orchestration/version metadata owned by `panopainter_app`, and app-specific modal/dialog/panel/canvas workflow nodes owned by `pp_panopainter_ui` |
|
||||||
| Windows AppX | `PanoPainterPackage/Package.appxmanifest`, `.wapproj` referenced by solution | Distribution packaging |
|
| Windows AppX | `PanoPainterPackage/Package.appxmanifest`, `.wapproj` referenced by solution | Distribution packaging |
|
||||||
| macOS | `PanoPainter-OSX/` project files and `Info.plist` | Uses `NSOpenGLView` today |
|
| macOS | `PanoPainter-OSX/` project files and `Info.plist` | Uses `NSOpenGLView` today |
|
||||||
| iOS | `PanoPainter/Info.plist`, related Apple sources | Uses OpenGL ES today |
|
| iOS | `PanoPainter/Info.plist`, related Apple sources | Uses OpenGL ES today |
|
||||||
@@ -398,10 +398,14 @@ Known local toolchain state:
|
|||||||
Known warnings after the current CMake app build:
|
Known warnings after the current CMake app build:
|
||||||
|
|
||||||
- Legacy code/vendor warnings under `/W4`.
|
- Legacy code/vendor warnings under `/W4`.
|
||||||
- `pp_legacy_engine` intentionally contains retained vendor and legacy
|
- `pp_legacy_vendor` intentionally owns retained third-party source builds for
|
||||||
runtime sources for now, so it concentrates existing JPEG, SQLite, Yoga,
|
now, including JPEG, SQLite, Yoga, poly2tri, GLAD, fmt, Wacom utilities, and
|
||||||
poly2tri, Wacom, GLM/base64, and legacy canvas/render warnings until those
|
other patched/embedded sources. Each dependency should either move to vcpkg,
|
||||||
dependencies move to cleaner component or vcpkg ownership.
|
an SDK import target, or a documented permanent vendored target.
|
||||||
|
- `pp_legacy_engine` intentionally contains retained legacy runtime sources for
|
||||||
|
now, so it concentrates existing legacy canvas, asset, brush, tablet, video,
|
||||||
|
serialization, and low-level runtime warnings until those paths move to
|
||||||
|
cleaner component ownership.
|
||||||
- `pp_legacy_renderer_gl` is an object-library containment boundary because
|
- `pp_legacy_renderer_gl` is an object-library containment boundary because
|
||||||
the retained OpenGL runtime classes still include legacy app/engine headers
|
the retained OpenGL runtime classes still include legacy app/engine headers
|
||||||
and are still consumed directly by canvas and UI classes. It should become a
|
and are still consumed directly by canvas and UI classes. It should become a
|
||||||
|
|||||||
@@ -147,9 +147,12 @@ option targets exist. The Windows desktop app builds through CMake as
|
|||||||
`PanoPainter` is only the executable/resource wrapper; Windows and vendor link
|
`PanoPainter` is only the executable/resource wrapper; Windows and vendor link
|
||||||
dependencies now belong to the platform shell target, and Windows runtime
|
dependencies now belong to the platform shell target, and Windows runtime
|
||||||
payload deployment lives behind `cmake/PanoPainterRuntime.cmake`.
|
payload deployment lives behind `cmake/PanoPainterRuntime.cmake`.
|
||||||
`pp_legacy_engine` now contains the retained legacy canvas, asset/file, brush,
|
`pp_legacy_vendor` now owns the retained third-party source bundle as an
|
||||||
tablet, video, serialization, and low-level runtime sources as an interim
|
interim containment boundary until vcpkg, SDK imports, or documented permanent
|
||||||
containment boundary while pure replacement components take over.
|
vendoring decisions replace each dependency. `pp_legacy_engine` now contains
|
||||||
|
the retained legacy canvas, asset/file, brush, tablet, video, serialization,
|
||||||
|
and low-level runtime sources as an interim containment boundary while pure
|
||||||
|
replacement components take over.
|
||||||
`pp_legacy_renderer_gl` now owns the retained OpenGL runtime implementations
|
`pp_legacy_renderer_gl` now owns the retained OpenGL runtime implementations
|
||||||
for `Font`, `RTT`, `Shader`, `Shape`, `Texture2D`, `TextureCube`, `Sampler`,
|
for `Font`, `RTT`, `Shader`, `Shape`, `Texture2D`, `TextureCube`, `Sampler`,
|
||||||
and `TextureManager` as an object-library boundary folded into the retained
|
and `TextureManager` as an object-library boundary folded into the retained
|
||||||
|
|||||||
Reference in New Issue
Block a user