all of the changes

This commit is contained in:
2026-10-23 18:29:51 +02:00
parent 4c435fdd76
commit 5607dcf2b5
73 changed files with 4365 additions and 2059 deletions

View File

@@ -7,7 +7,6 @@ set(FLUIDSIM_FONT_FILE "" CACHE FILEPATH "Optional font file copied beside the d
add_library(fluidsim_core
src/carburetor.cpp
src/ecu.cpp
src/turbocharger.cpp
src/engine.cpp
src/crankcase.cpp
src/two_stroke_cylinder.cpp
@@ -17,7 +16,6 @@ add_library(fluidsim_core
src/audio_processing.cpp
src/outdoor_audio.cpp
src/outdoor_exhaust_reverb.cpp
src/mechanical_sound_processor.cpp
src/scenario.cpp
src/solver.cpp
src/vehicle.cpp
@@ -64,8 +62,17 @@ if(FLUIDSIM_BUILD_DESKTOP)
)
FetchContent_MakeAvailable(SFML)
endif()
find_package(OpenGL REQUIRED)
add_library(fluidsim_desktop_rendering
src/desktop_ui.cpp src/scenario_menu.cpp src/engine_schematic.cpp src/engine_renderer_3d.cpp src/dyno_renderer.cpp)
target_link_libraries(fluidsim_desktop_rendering PUBLIC fluidsim_core SFML::Graphics OpenGL::GL)
if(MSVC)
target_compile_options(fluidsim_desktop_rendering PRIVATE /W4 /permissive-)
else()
target_compile_options(fluidsim_desktop_rendering PRIVATE -Wall -Wextra -Wpedantic)
endif()
add_executable(fluidsim_desktop src/desktop_main.cpp src/audio_output_stream.cpp src/sound_engine.cpp)
target_link_libraries(fluidsim_desktop PRIVATE fluidsim_core SFML::Graphics SFML::Audio)
target_link_libraries(fluidsim_desktop PRIVATE fluidsim_desktop_rendering SFML::Audio)
if(MSVC)
target_compile_options(fluidsim_desktop PRIVATE /W4 /permissive-)
else()
@@ -102,9 +109,14 @@ endif()
include(CTest)
if(BUILD_TESTING)
add_executable(fluidsim_saab_turbo_regression tests/saab_turbo_regression.cpp)
target_link_libraries(fluidsim_saab_turbo_regression PRIVATE fluidsim_core)
add_test(NAME fluidsim_saab_turbo_regression COMMAND fluidsim_saab_turbo_regression)
add_executable(fluidsim_scenario_examples tests/scenario_examples.cpp)
target_link_libraries(fluidsim_scenario_examples PRIVATE fluidsim_core)
add_test(NAME fluidsim_scenario_examples COMMAND fluidsim_scenario_examples)
endif()
if(BUILD_TESTING AND FLUIDSIM_BUILD_DESKTOP)
add_executable(fluidsim_desktop_ui_tests tests/desktop_ui_tests.cpp)
target_link_libraries(fluidsim_desktop_ui_tests PRIVATE fluidsim_desktop_rendering)
add_test(NAME fluidsim_desktop_ui_tests COMMAND fluidsim_desktop_ui_tests)
endif()
if(BUILD_TESTING)
add_executable(fluidsim_physics_tests tests/physics_tests.cpp)
@@ -116,10 +128,15 @@ add_executable(fluidsim_physics_benchmark tools/physics_benchmark.cpp)
target_link_libraries(fluidsim_physics_benchmark PRIVATE fluidsim_core)
add_executable(fluidsim_scenario_benchmark tools/scenario_benchmark.cpp)
target_link_libraries(fluidsim_scenario_benchmark PRIVATE fluidsim_core)
if(BUILD_TESTING)
add_test(NAME fluidsim_v8_exhaust_regression COMMAND fluidsim_scenario_benchmark 8 coast v8)
endif()
if(BUILD_TESTING)
add_executable(fluidsim_fluid_validation tests/fluid_validation.cpp)
target_link_libraries(fluidsim_fluid_validation PRIVATE fluidsim_core)
add_test(NAME fluidsim_fluid_validation COMMAND fluidsim_fluid_validation)
add_test(NAME fluidsim_fluid_validation_hlle COMMAND fluidsim_fluid_validation hlle)
add_test(NAME fluidsim_fluid_validation_hllc COMMAND fluidsim_fluid_validation hllc)
endif()
find_package(Threads REQUIRED)
target_link_libraries(fluidsim_core PUBLIC Threads::Threads)
@@ -135,8 +152,6 @@ add_executable(fluidsim_audio_capture tools/audio_capture.cpp)
target_link_libraries(fluidsim_audio_capture PRIVATE fluidsim_core)
add_executable(fluidsim_two_stroke_benchmark tools/two_stroke_benchmark.cpp)
target_link_libraries(fluidsim_two_stroke_benchmark PRIVATE fluidsim_core)
add_executable(fluidsim_turbo_benchmark tools/turbo_benchmark.cpp)
target_link_libraries(fluidsim_turbo_benchmark PRIVATE fluidsim_core)
if(BUILD_TESTING)
add_executable(fluidsim_outdoor_audio_tests tests/outdoor_audio_tests.cpp)
target_link_libraries(fluidsim_outdoor_audio_tests PRIVATE fluidsim_core)
@@ -150,12 +165,6 @@ if(BUILD_TESTING)
add_executable(fluidsim_b205_regression tests/b205_regression.cpp)
target_link_libraries(fluidsim_b205_regression PRIVATE fluidsim_core)
add_test(NAME fluidsim_b205_regression COMMAND fluidsim_b205_regression)
add_executable(fluidsim_turbo_physics tests/turbo_physics.cpp)
target_link_libraries(fluidsim_turbo_physics PRIVATE fluidsim_core)
add_test(NAME fluidsim_turbo_physics COMMAND fluidsim_turbo_physics)
add_executable(fluidsim_turbo_twin_regression tests/turbo_twin_regression.cpp)
target_link_libraries(fluidsim_turbo_twin_regression PRIVATE fluidsim_core)
add_test(NAME fluidsim_turbo_twin_regression COMMAND fluidsim_turbo_twin_regression)
endif()
include(cmake/MinGWRuntime.cmake)