@@ -175,19 +175,8 @@ endif()
175175
176176# ── HDF5 Integration ──
177177# Prefer config package at provided root; avoid environment/registry
178- if (DEFINED HDF5_DIR AND NOT DEFINED HDF5_ROOT)
179- set (HDF5_ROOT "${HDF5_DIR} " )
180- endif ()
181- set (HDF5_ROOT "${HDF5_ROOT} " CACHE PATH "HDF5 root directory" )
182- if (DEFINED HDF5_ROOT)
183- # Prepend so our supplied root wins
184- if (CMAKE_PREFIX_PATH )
185- set (CMAKE_PREFIX_PATH "${HDF5_ROOT} ;${CMAKE_PREFIX_PATH} " )
186- else ()
187- set (CMAKE_PREFIX_PATH "${HDF5_ROOT} " )
188- endif ()
189- endif ()
190- find_package (HDF5 CONFIG REQUIRED COMPONENTS CXX )
178+
179+ find_package (HDF5 REQUIRED COMPONENTS CXX )
191180
192181# ---- Eigen: support both CONFIG and module modes ----
193182find_package (Eigen3 QUIET CONFIG )
@@ -619,9 +608,14 @@ if(HC_INSTALL_DEV_KIT)
619608 )
620609endif ()
621610
622- # ── Debug Symbols in Release Mode ──
623- # Keep debug symbols in Release builds for better profiling and crash analysis
624- set (CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /Zi /O2" )
611+ if (MSVC )
612+ # Windows: Enable debug symbols in Release builds with MSVC
613+ set (CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /Zi /O2" )
614+ else ()
615+ # Non-MSVC (Linux, macOS): Use -g for debug symbols
616+ set (CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -g -O2" )
617+ endif ()
618+
625619
626620# ──────────────────────────────────────────────────────────────────────────────
627621# 7.1 Runtime installer and ZIP packaging for releases
@@ -750,12 +744,15 @@ if(HC_INSTALL_DEV_DEMOS)
750744 FILES_MATCHING PATTERN "demo_*.exe" )
751745endif ()
752746
747+
753748# MSVC runtime DLLs and ZIP packaging via CPack
754- include (InstallRequiredSystemLibraries )
755- set (CPACK_GENERATOR "ZIP" )
756- set (CPACK_PACKAGE_NAME "HydroChrono" )
757- set (CPACK_COMPONENTS_ALL runtime python-tests dev-demos)
758- include (CPack )
749+ include (InstallRequiredSystemLibraries )
750+ set (CPACK_GENERATOR "ZIP" )
751+ set (CPACK_PACKAGE_NAME "HydroChrono" )
752+ set (CPACK_COMPONENTS_ALL runtime python-tests dev-demos)
753+ include (CPack )
754+
755+
759756
760757# Optionally include Python runtime DLL if Chrono::Parsers depends on it
761758find_package (Python3 QUIET COMPONENTS Interpreter )
@@ -768,4 +765,4 @@ if(Python3_Interpreter_FOUND OR Python3_FOUND)
768765 install (FILES "${_PY_DLL_PATH} " DESTINATION bin COMPONENT runtime )
769766 endif ()
770767 endif ()
771- endif ()
768+ endif ()
0 commit comments