backend-infra-engineer: Post v0.3.9-hotfix7 snapshot (build cleanup)
This commit is contained in:
27
cmake/dependencies/implot.cmake
Normal file
27
cmake/dependencies/implot.cmake
Normal file
@@ -0,0 +1,27 @@
|
||||
# ImPlot dependency management
|
||||
# Uses the bundled ImPlot sources that ship with the ImGui Test Engine
|
||||
|
||||
set(YAZE_IMPLOT_TARGETS "")
|
||||
|
||||
set(IMPLOT_DIR ${CMAKE_SOURCE_DIR}/ext/imgui_test_engine/imgui_test_suite/thirdparty/implot)
|
||||
|
||||
if(EXISTS ${IMPLOT_DIR}/implot.h)
|
||||
message(STATUS "Setting up ImPlot from bundled sources")
|
||||
|
||||
add_library(ImPlot STATIC
|
||||
${IMPLOT_DIR}/implot.cpp
|
||||
${IMPLOT_DIR}/implot_items.cpp
|
||||
)
|
||||
|
||||
target_include_directories(ImPlot PUBLIC
|
||||
${IMPLOT_DIR}
|
||||
${IMGUI_DIR}
|
||||
)
|
||||
|
||||
target_link_libraries(ImPlot PUBLIC ImGui)
|
||||
target_compile_features(ImPlot PUBLIC cxx_std_17)
|
||||
|
||||
set(YAZE_IMPLOT_TARGETS ImPlot)
|
||||
else()
|
||||
message(WARNING "ImPlot sources not found at ${IMPLOT_DIR}. Plot widgets will be unavailable.")
|
||||
endif()
|
||||
@@ -4,6 +4,21 @@
|
||||
include(cmake/CPM.cmake)
|
||||
include(cmake/dependencies.lock)
|
||||
|
||||
# For Emscripten, use the built-in SDL2 port
|
||||
if(EMSCRIPTEN)
|
||||
message(STATUS "Using Emscripten built-in SDL2")
|
||||
if(NOT TARGET yaze_sdl2)
|
||||
add_library(yaze_sdl2 INTERFACE)
|
||||
# Flags are already set in CMakePresets.json or toolchain (-s USE_SDL=2)
|
||||
# But we can enforce them here too if needed, or just leave empty as an interface
|
||||
# to satisfy linking requirements of other targets.
|
||||
target_link_options(yaze_sdl2 INTERFACE "SHELL:-s USE_SDL=2")
|
||||
target_compile_options(yaze_sdl2 INTERFACE "SHELL:-s USE_SDL=2")
|
||||
endif()
|
||||
set(YAZE_SDL2_TARGETS yaze_sdl2)
|
||||
return()
|
||||
endif()
|
||||
|
||||
message(STATUS "Setting up SDL2 ${SDL2_VERSION} with CPM.cmake")
|
||||
|
||||
# Try to use system packages first if requested
|
||||
|
||||
@@ -53,6 +53,7 @@ if(_YAZE_USE_SYSTEM_YAML)
|
||||
if(yaml-cpp_FOUND)
|
||||
message(STATUS "Using system yaml-cpp")
|
||||
add_library(yaze_yaml INTERFACE)
|
||||
target_compile_definitions(yaze_yaml INTERFACE YAZE_HAS_YAML_CPP=1)
|
||||
if(TARGET yaml-cpp::yaml-cpp)
|
||||
message(STATUS "Linking yaze_yaml against yaml-cpp::yaml-cpp")
|
||||
target_link_libraries(yaze_yaml INTERFACE yaml-cpp::yaml-cpp)
|
||||
@@ -96,6 +97,7 @@ endif()
|
||||
# Create convenience targets for the rest of the project
|
||||
add_library(yaze_yaml INTERFACE)
|
||||
target_link_libraries(yaze_yaml INTERFACE yaml-cpp)
|
||||
target_compile_definitions(yaze_yaml INTERFACE YAZE_HAS_YAML_CPP=1)
|
||||
|
||||
# Export yaml-cpp targets for use in other CMake files
|
||||
set(YAZE_YAML_TARGETS yaze_yaml)
|
||||
|
||||
Reference in New Issue
Block a user