vcpkg/ports/spdlog/fmt-10-support.patch
Pierre Wendling 656fcc6ab2
[fmt] Update to 10.0.0 (#31378)
* [fmt] Update to version 10.0.0.

* [fmt] Update portfile.

- Remove dead code. It is no longer necessary to manually move DLLs and
edit CMake configs.
- Use vcpkg_install_copyright.

* [fmt] Update baseline.

* [cachelib] Update to 2023.05.08.00, support fmt 10

* Update to 2023.05.08.00.
* Add patch to support fmt 10.
* Update baseline.

* [spdlog] Add upstream patch for fmt 10.

* Add upstream patch to support fmt 10.
* Update portfile.
* Add usage.
* Update baseline.

* [seacas] Add upstream patch to support fmt 10.0.0.

* Add patch to support fmt 10.0.0.
* Update baseline.

* [coolprop] Update patch to support fmt 10.

* Update patch to support fmt 10.0.0. See CoolProp/CoolProp#2252
* Update baseline.

* [wasmedge] Add patch for fmt 10 support.

* Add patch to support fmt 10
* Update baseline
2023-05-21 18:05:01 -07:00

40 lines
1.7 KiB
Diff

From 0ca574ae168820da0268b3ec7607ca7b33024d05 Mon Sep 17 00:00:00 2001
From: H1X4 <10332146+H1X4Dev@users.noreply.github.com>
Date: Fri, 31 Mar 2023 20:39:32 +0300
Subject: [PATCH] fix build for master fmt (non-bundled) (#2694)
* fix build for master fmt (non-bundled)
* update fmt_runtime_string macro
* fix build of updated macro
---
include/spdlog/common.h | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/include/spdlog/common.h b/include/spdlog/common.h
index e69201a81..5f671c5c6 100644
--- a/include/spdlog/common.h
+++ b/include/spdlog/common.h
@@ -173,12 +173,19 @@ using format_string_t = fmt::format_string<Args...>;
template<class T>
using remove_cvref_t = typename std::remove_cv<typename std::remove_reference<T>::type>::type;
+template <typename Char>
+#if FMT_VERSION >= 90101
+using fmt_runtime_string = fmt::runtime_format_string<Char>;
+#else
+using fmt_runtime_string = fmt::basic_runtime<Char>;
+#endif
+
// clang doesn't like SFINAE disabled constructor in std::is_convertible<> so have to repeat the condition from basic_format_string here,
// in addition, fmt::basic_runtime<Char> is only convertible to basic_format_string<Char> but not basic_string_view<Char>
template<class T, class Char = char>
struct is_convertible_to_basic_format_string
: std::integral_constant<bool,
- std::is_convertible<T, fmt::basic_string_view<Char>>::value || std::is_same<remove_cvref_t<T>, fmt::basic_runtime<Char>>::value>
+ std::is_convertible<T, fmt::basic_string_view<Char>>::value || std::is_same<remove_cvref_t<T>, fmt_runtime_string<Char>>::value>
{};
# if defined(SPDLOG_WCHAR_FILENAMES) || defined(SPDLOG_WCHAR_TO_UTF8_SUPPORT)