diff --git a/ThirdParty/custom-surfio/CMakeLists.txt b/ThirdParty/custom-surfio/CMakeLists.txt index 70e6776b31..86c3a86bf3 100644 --- a/ThirdParty/custom-surfio/CMakeLists.txt +++ b/ThirdParty/custom-surfio/CMakeLists.txt @@ -16,6 +16,10 @@ if(NOT mdspan_POPULATED) add_subdirectory(${mdspan_SOURCE_DIR} ${mdspan_BINARY_DIR} EXCLUDE_FROM_ALL) endif() +# surfio uses parse_number/parse_number.h which falls back to fast_float +# when std::from_chars for floats is not available. fast_float is provided via vcpkg. +find_package(FastFloat CONFIG REQUIRED) + # surfio_lib set(SRC_PATH "${CMAKE_CURRENT_LIST_DIR}/surfio/src/lib") add_library(surfio_lib) @@ -32,5 +36,7 @@ target_include_directories( PRIVATE ../mio ) -target_link_libraries(surfio_lib PUBLIC mdspan) +target_compile_definitions(surfio_lib PRIVATE STD_FROM_CHARS_FLOAT_SUPPORT=0) + +target_link_libraries(surfio_lib PUBLIC mdspan PRIVATE FastFloat::fast_float) diff --git a/ThirdParty/custom-surfio/surfio b/ThirdParty/custom-surfio/surfio index 255ff96fe2..14e3fc39f4 160000 --- a/ThirdParty/custom-surfio/surfio +++ b/ThirdParty/custom-surfio/surfio @@ -1 +1 @@ -Subproject commit 255ff96fe28e86b634c3e9ccebc08af3c9aa2a3d +Subproject commit 14e3fc39f4531c9183d50d0e9039f420c10510e4