if(DEP_FMT STREQUAL "BUNDLED")
message(STATUS "Using bundled Fmt as requested")
else()
- find_path(FMT_INCLUDE_DIR fmt/core.h)
+ find_path(FMT_INCLUDE_DIR fmt/base.h fmt/core.h)
find_library(FMT_LIBRARY fmt)
if(FMT_INCLUDE_DIR AND FMT_LIBRARY)
- file(READ "${FMT_INCLUDE_DIR}/fmt/core.h" _fmt_core_h)
- string(REGEX MATCH "#define FMT_VERSION ([0-9]+)" _ "${_fmt_core_h}")
+ file(READ "${FMT_INCLUDE_DIR}/fmt/base.h" _fmt_base_h)
+ string(REGEX MATCH "#define FMT_VERSION ([0-9]+)" _ "${_fmt_base_h}")
+ if("${CMAKE_MATCH_0}" STREQUAL "")
+ file(READ "${FMT_INCLUDE_DIR}/fmt/core.h" _fmt_core_h)
+ string(REGEX MATCH "#define FMT_VERSION ([0-9]+)" _ "${_fmt_core_h}")
+ endif()
+ if("${CMAKE_MATCH_0}" STREQUAL "")
+ message(FATAL_ERROR "FMT_VERSION not found")
+ return()
+ endif()
math(EXPR _fmt_major "${CMAKE_MATCH_1} / 10000")
math(EXPR _fmt_minor "${CMAKE_MATCH_1} / 100 % 100")
math(EXPR _fmt_patch "${CMAKE_MATCH_1} % 100")