diff --git a/.gitignore b/.gitignore index 20ab92b..59e74bf 100644 --- a/.gitignore +++ b/.gitignore @@ -15,3 +15,4 @@ /v1.8.1.tar.gz /v1.8.2.tar.gz /v1.8.5.tar.gz +/v1.9.0.tar.gz diff --git a/sources b/sources index acb12a5..17e5429 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (v1.8.5.tar.gz) = 77cc9df0c40bbdbfe1f3e5818dccf121918bfceac28f2608f39e5bf944968b7e8e24a6fc29f01bc58a9bae41b8892d49cfb59c196935ec9868884320b50f130c +SHA512 (v1.9.0.tar.gz) = df023847e49b2ad8e5dc4cb681d31515bb7f87644a4baa946836cf3cb4114bb95ad603b746969e0e7f8220d3bfa453220c00dfde812f1e610801a5cc62e1f0f2 diff --git a/spdlog-fmt8.patch b/spdlog-fmt8.patch deleted file mode 100644 index 13ae659..0000000 --- a/spdlog-fmt8.patch +++ /dev/null @@ -1,149 +0,0 @@ -From 8bf718671a9eac5517c27a5ffe72089b7f426d8c Mon Sep 17 00:00:00 2001 -From: gabime -Date: Thu, 24 Jun 2021 13:22:02 +0300 -Subject: [PATCH] Update fmt version 8.0 - -diff --git a/include/spdlog/common-inl.h b/include/spdlog/common-inl.h -index c3e992224..5fa4e5d95 100644 ---- a/include/spdlog/common-inl.h -+++ b/include/spdlog/common-inl.h -@@ -56,7 +56,7 @@ SPDLOG_INLINE spdlog_ex::spdlog_ex(std::string msg) - SPDLOG_INLINE spdlog_ex::spdlog_ex(const std::string &msg, int last_errno) - { - memory_buf_t outbuf; -- fmt::format_system_error(outbuf, last_errno, msg); -+ fmt::format_system_error(outbuf, last_errno, msg.c_str()); - msg_ = fmt::to_string(outbuf); - } - -diff --git a/src/fmt.cpp b/src/fmt.cpp -index 9e91beb17..edd52dd55 100644 ---- a/src/fmt.cpp -+++ b/src/fmt.cpp -@@ -10,94 +10,58 @@ - #include - - -+ - FMT_BEGIN_NAMESPACE - namespace detail { - --template --int format_float(char* buf, std::size_t size, const char* format, int precision, -- T value) { --#ifdef FMT_FUZZ -- if (precision > 100000) -- throw std::runtime_error( -- "fuzz mode - avoid large allocation inside snprintf"); --#endif -- // Suppress the warning about nonliteral format string. -- int (*snprintf_ptr)(char*, size_t, const char*, ...) = FMT_SNPRINTF; -- return precision < 0 ? snprintf_ptr(buf, size, format, value) -- : snprintf_ptr(buf, size, format, precision, value); -+template -+int format_float(char *buf, std::size_t size, const char *format, int precision, T value) -+{ -+# ifdef FMT_FUZZ -+ if (precision > 100000) -+ throw std::runtime_error("fuzz mode - avoid large allocation inside snprintf"); -+# endif -+ // Suppress the warning about nonliteral format string. -+ int (*snprintf_ptr)(char *, size_t, const char *, ...) = FMT_SNPRINTF; -+ return precision < 0 ? snprintf_ptr(buf, size, format, value) : snprintf_ptr(buf, size, format, precision, value); - } - --template FMT_API dragonbox::decimal_fp dragonbox::to_decimal(float x) -- FMT_NOEXCEPT; --template FMT_API dragonbox::decimal_fp dragonbox::to_decimal(double x) -- FMT_NOEXCEPT; -- --// DEPRECATED! This function exists for ABI compatibility. --template --typename basic_format_context>, -- Char>::iterator --vformat_to(buffer& buf, basic_string_view format_str, -- basic_format_args>>, -- type_identity_t>> -- args) { -- using iterator = std::back_insert_iterator>; -- using context = basic_format_context< -- std::back_insert_iterator>>, -- type_identity_t>; -- auto out = iterator(buf); -- format_handler h(out, format_str, args, {}); -- parse_format_string(format_str, h); -- return out; --} --template basic_format_context>, -- char>::iterator --vformat_to(buffer&, string_view, -- basic_format_args>>, -- type_identity_t>>); --} // namespace detail -- --template struct FMT_INSTANTIATION_DEF_API detail::basic_data; -+template FMT_API dragonbox::decimal_fp dragonbox::to_decimal(float x) FMT_NOEXCEPT; -+template FMT_API dragonbox::decimal_fp dragonbox::to_decimal(double x) FMT_NOEXCEPT; -+} // namespace detail - - // Workaround a bug in MSVC2013 that prevents instantiation of format_float. --int (*instantiate_format_float)(double, int, detail::float_specs, -- detail::buffer&) = detail::format_float; -+int (*instantiate_format_float)(double, int, detail::float_specs, detail::buffer &) = detail::format_float; - --#ifndef FMT_STATIC_THOUSANDS_SEPARATOR --template FMT_API detail::locale_ref::locale_ref(const std::locale& loc); -+# ifndef FMT_STATIC_THOUSANDS_SEPARATOR -+template FMT_API detail::locale_ref::locale_ref(const std::locale &loc); - template FMT_API std::locale detail::locale_ref::get() const; --#endif -+# endif - - // Explicit instantiations for char. - --template FMT_API std::string detail::grouping_impl(locale_ref); --template FMT_API char detail::thousands_sep_impl(locale_ref); -+template FMT_API auto detail::thousands_sep_impl(locale_ref) -> thousands_sep_result; - template FMT_API char detail::decimal_point_impl(locale_ref); - --template FMT_API void detail::buffer::append(const char*, const char*); -+template FMT_API void detail::buffer::append(const char *, const char *); - - template FMT_API void detail::vformat_to( -- detail::buffer&, string_view, -- basic_format_args, detail::locale_ref); -- --template FMT_API int detail::snprintf_float(double, int, detail::float_specs, -- detail::buffer&); --template FMT_API int detail::snprintf_float(long double, int, -- detail::float_specs, -- detail::buffer&); --template FMT_API int detail::format_float(double, int, detail::float_specs, -- detail::buffer&); --template FMT_API int detail::format_float(long double, int, detail::float_specs, -- detail::buffer&); -+ detail::buffer &, string_view, basic_format_args, detail::locale_ref); -+ -+template FMT_API int detail::snprintf_float(double, int, detail::float_specs, detail::buffer &); -+template FMT_API int detail::snprintf_float(long double, int, detail::float_specs, detail::buffer &); -+template FMT_API int detail::format_float(double, int, detail::float_specs, detail::buffer &); -+template FMT_API int detail::format_float(long double, int, detail::float_specs, detail::buffer &); - - // Explicit instantiations for wchar_t. - --template FMT_API std::string detail::grouping_impl(locale_ref); --template FMT_API wchar_t detail::thousands_sep_impl(locale_ref); -+template FMT_API auto detail::thousands_sep_impl(locale_ref) -> thousands_sep_result; - template FMT_API wchar_t detail::decimal_point_impl(locale_ref); - --template FMT_API void detail::buffer::append(const wchar_t*, -- const wchar_t*); -+template FMT_API void detail::buffer::append(const wchar_t *, const wchar_t *); -+ -+template struct detail::basic_data; -+ - FMT_END_NAMESPACE -+ - #endif // !SPDLOG_FMT_EXTERNAL diff --git a/spdlog-fmt8_tests.patch b/spdlog-fmt8_tests.patch deleted file mode 100644 index 1798df2..0000000 --- a/spdlog-fmt8_tests.patch +++ /dev/null @@ -1,22 +0,0 @@ -From 5887744d8b6ddaa3044d1c59f06e2cf24b8e0349 Mon Sep 17 00:00:00 2001 -From: gabime -Date: Thu, 24 Jun 2021 15:58:25 +0300 -Subject: [PATCH] Fixed bin2hex to work with fmt v8 - ---- - include/spdlog/fmt/bin_to_hex.h | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/include/spdlog/fmt/bin_to_hex.h b/include/spdlog/fmt/bin_to_hex.h -index 1e2b054b1..45bc8f7d8 100644 ---- a/include/spdlog/fmt/bin_to_hex.h -+++ b/include/spdlog/fmt/bin_to_hex.h -@@ -209,7 +209,7 @@ struct formatter> - - if (put_positions) - { -- fmt::format_to(inserter, "{:<04X}: ", pos); -+ fmt::format_to(inserter, "{:04X}: ", pos); - } - } - }; diff --git a/spdlog.spec b/spdlog.spec index 19a3b2a..8208b69 100644 --- a/spdlog.spec +++ b/spdlog.spec @@ -1,22 +1,19 @@ %undefine __cmake_in_source_build Name: spdlog -Version: 1.8.5 -Release: 2%{?dist} -Summary: Super fast C++ logging library +Version: 1.9.0 +Release: 1%{?dist} + License: MIT +Summary: Super fast C++ logging library URL: https://github.com/gabime/%{name} Source0: %{url}/archive/v%{version}.tar.gz -# https://github.com/gabime/spdlog/issues/1975 -Patch100: %{name}-fmt8.patch -Patch101: %{name}-fmt8_tests.patch - BuildRequires: catch-devel >= 2.8.0 BuildRequires: cmake BuildRequires: fmt-devel >= 7.0.0 -BuildRequires: gcc-c++ BuildRequires: gcc +BuildRequires: gcc-c++ BuildRequires: google-benchmark-devel BuildRequires: ninja-build @@ -71,6 +68,9 @@ ln -svf %{_includedir}/catch2/catch.hpp ./tests/catch.hpp %{_libdir}/pkgconfig/%{name}.pc %changelog +* Wed Jul 21 2021 Vitaly Zaitsev - 1.9.0-1 +- Updated to version 1.9.0. + * Sun Jul 04 2021 Vitaly Zaitsev - 1.8.5-2 - Rebuilt due to fmt library update.