Compare commits

3 Commits
main ... 1.1

8 changed files with 48 additions and 282 deletions

BIN
abseil-cpp-20230802.1.tar.gz (Stored with Git LFS) Normal file

Binary file not shown.

BIN
abseil-cpp-20240722.1.tar.gz (Stored with Git LFS)

Binary file not shown.

View File

@@ -1,94 +1,3 @@
-------------------------------------------------------------------
Sun Jan 26 18:31:46 UTC 2025 - Andreas Stieger <andreas.stieger@gmx.de>
- update to 20240722.1 (boo#1236438)
* potential integer overflow in hash container create/resize
-------------------------------------------------------------------
Wed Jan 15 02:02:17 UTC 2025 - Bernhard Wiedemann <bwiedemann@suse.com>
- Extend options-cxx17.patch and options-old.patch
to avoid race-condition (boo#1235867)
-------------------------------------------------------------------
Sat Nov 16 22:20:54 UTC 2024 - Andreas Stieger <andreas.stieger@gmx.de>
- update to 20240722.0:
* Add GoogleTest matchers for absl::Status. These matchers make
it easier to write unit tests for code that uses absl::Status.
* absl::AlphaNum no longer allows brace-initialization
* The deprecated symbol absl::kuint128max has been removed and
should be replaced with absl::Uint128Max().
* absl::aligned_storage_t, which was a polyfill consistent with
std::aligned_storage_t, has been removed.
std::aligned_storage_t is deprecated in C++23
* absl::StrJoin now has a absl::string_view overload. This
allows for passing a collection of string-like objects without
having to convert everything to the same type first. However,
this may be a breaking change for users passing an explicit
template argument to absl::StrJoin. In this case, simply remove
the explicit template parameter.
* vlog_is_on.h is now a public header and is no longer included
from log.h. To use VLOG_IS_ON(), absl/log/vlog_is_on.h must be
included.
- drop abseil-cmake-gtest-testonly.patch
-------------------------------------------------------------------
Fri Jul 5 21:27:25 UTC 2024 - Christoph G <foss@grueninger.de>
- Add upstream patch abseil-cmake-gtest-testonly.patch to fix
issue with GTest and CMake 3.30
-------------------------------------------------------------------
Thu Apr 11 20:12:22 UTC 2024 - Andreas Stieger <andreas.stieger@gmx.de>
- update to 20240116.2
* Added absl::NoDestructor<T> to simplify defining static types
that do not need to be destructed upon program exit.
* Added configurable verbose logging (also known as VLOG).
* Added absl::Overload(), which returns a functor that provides
overloads based on the functors passed to it. (from C++17)
* Breaking change: AbslHashValue() no longer accepts C-style
arrays as a parameter.
* Breaking change: absl::weak_equality and absl::strong_equality
have been removed
-------------------------------------------------------------------
Tue Apr 2 13:01:58 UTC 2024 - Dirk Müller <dmueller@suse.com>
- split abseil libraries so that libzypp / protobuf doesn't
require all to be installed (jsc#PED-8153)
-------------------------------------------------------------------
Mon Mar 4 10:30:53 UTC 2024 - Fridrich Strba <fstrba@suse.com>
- Fix broken link to sources
- Fix build for distributions that lack the ldconfig_scriptlets
macro
- Make the gcc version condition a bit more generic
-------------------------------------------------------------------
Sun Mar 3 06:35:57 UTC 2024 - Andreas Stieger <andreas.stieger@gmx.de>
- update to 20240116.1:
* Add absl::NoDestructor<T> to simplify defining static types
that do not need to be destructed upon program exit.
* Add configurable verbose logging (also known as VLOG).
* Added absl::Overload(), which returns a functor that provides
overloads based on the functors passed to it. Note that this
functionality requires C++17 or newer.
* Breaking Change: AbslHashValue() no longer accepts C-style
arrays as a parameter, caller need to wrap C-string literals in
absl::string_view.
* Breaking Change: absl::weak_equality and absl::strong_equality
have been removed. The corresponding std types were removed
before C++20 was finalized
-------------------------------------------------------------------
Fri Jan 19 15:53:47 UTC 2024 - Dirk Müller <dmueller@suse.com>
- fix build for non-SUSE distributions
-------------------------------------------------------------------
Fri Oct 6 17:44:18 UTC 2023 - Andreas Stieger <andreas.stieger@gmx.de>
@@ -159,7 +68,7 @@ Mon Apr 24 12:12:45 UTC 2023 - Adrian Schröter <adrian@suse.de>
A library for computing CRC32C checksums has been added.
Floating-point parsing now uses the Eisel-Lemire algorithm,
which provides a significant speed improvement.
The flags library now provides suggestions for the closest
The flags library now provides suggestions for the closest
flag(s) in the case of misspelled flags.
Using CMake to install Abseil now makes the installed artifacts
(in particular absl/base/options.h) reflect the compiled ABI.
@@ -186,13 +95,13 @@ Mon Apr 24 12:12:45 UTC 2023 - Adrian Schröter <adrian@suse.de>
Sat Sep 24 13:47:49 UTC 2022 - Dirk Müller <dmueller@suse.com>
- update to 20220623.1:
* minor warning fix
* minor warning fix
-------------------------------------------------------------------
Mon Jul 11 14:56:15 UTC 2022 - Bruno Pitrus <brunopitrus@hotmail.com>
- Add Fix-maes-msse41-leaking-into-pkgconfig.patch
* Do not make programs compiled with abseil require new-ish CPUs (boo#1203379)
* Do not make programs compiled with abseil require new-ish CPUs.
-------------------------------------------------------------------
Sun Jul 3 21:25:15 UTC 2022 - Matthias Eliasson <elimat@opensuse.org>
@@ -227,7 +136,7 @@ Wed Jun 29 12:49:20 UTC 2022 - Fabian Vogt <fvogt@suse.com>
-------------------------------------------------------------------
Wed Jun 29 12:04:22 UTC 2022 - Bruno Pitrus <brunopitrus@hotmail.com>
- Add options-old.patch, options-cxx17.patch (boo#1203378)
- Add options-old.patch, options-cxx17.patch
* Ensure ABI stability regardless of compiler settings per instruction in the header.
-------------------------------------------------------------------
@@ -247,7 +156,7 @@ Tue Jan 4 18:55:41 UTC 2022 - Dirk Müller <dmueller@suse.com>
* absl::Cord is now implemented as a b-tree. The new implementation offers
improved performance in most workloads.
* absl::SimpleHexAtoi() has been added to strings library for parsing
hexadecimal strings
hexadecimal strings
-------------------------------------------------------------------
Wed Jun 30 11:18:51 UTC 2021 - Ferdinand Thiessen <rpm@fthiessen.de>
@@ -347,7 +256,7 @@ Tue Jan 14 11:54:55 UTC 2020 - Dominique Leuenberger <dimstar@opensuse.org>
-------------------------------------------------------------------
Wed Dec 18 23:12:35 UTC 2019 - Swaminathan Vasudevan <svasudevan@suse.com>
- Update to version 20190808
- Update to version 20190808
-------------------------------------------------------------------
Sat Nov 23 21:26:12 UTC 2019 - Bernhard Wiedemann <bwiedemann@suse.com>

View File

@@ -1,8 +1,7 @@
#
# spec file for package abseil-cpp
#
# Copyright (c) 2024 SUSE LLC
# Copyright (c) 2025 Andreas Stieger <Andreas.Stieger@gmx.de>
# Copyright (c) 2023 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -17,26 +16,27 @@
#
%global soversion so.2407.0.0
%global lname_suffix 2407_0_0
%if 0%{?gcc_version} < 7
%global with_gcc 7
%endif
%define lname libabsl2308_0_0
Name: abseil-cpp
Version: 20240722.1
Version: 20230802.1
Release: 0
Summary: C++11 libraries which augment the C++ stdlib
License: Apache-2.0
URL: https://abseil.io/
Source0: https://github.com/abseil/abseil-cpp/releases/download/%{version}/%{name}-%{version}.tar.gz
Source0: https://github.com/abseil/abseil-cpp/archive/%{version}.tar.gz#/%{name}-%{version}.tar.gz
Source1: baselibs.conf
%if 0%{?suse_version} < 1500
BuildRequires: gcc7
BuildRequires: gcc7-c++
%else
BuildRequires: gcc >= 7
BuildRequires: gcc-c++ >= 7
%endif
BuildRequires: cmake
BuildRequires: fdupes
BuildRequires: gcc%{?with_gcc}
BuildRequires: gcc%{?with_gcc}-c++
BuildRequires: pkgconfig
# PATCH-FIX-OPENSUSE options-{old,cxx17}.patch Ensure ABI stability regardless of compiler options
%if 0%{?suse_version} && 0%{?suse_version} < 1550
%if 0%{?suse_version} < 1550
Patch0: options-old.patch
Patch1: cmake.patch
%else
@@ -48,33 +48,19 @@ Abseil is a collection of C++11 libraries which augment the C++
standard library. It also provides features incorporated into C++14
and C++17 standards.
%package -n libabsl_lite_%{lname_suffix}
Summary: C++11 libraries which augment the C++ stdlib - lite
%package -n %{lname}
Summary: C++11 libraries which augment the C++ stdlib
Obsoletes: abseil-cpp < %{version}-%{release}
Provides: abseil-cpp = %{version}-%{release}
%description -n libabsl_lite_%{lname_suffix}
Abseil is a collection of C++11 libraries which augment the C++
standard library. It also provides features incorporated into C++14
and C++17 standards.
This package provides the subset needed by protobuf-lite.
%package -n libabsl_%{lname_suffix}
Summary: C++11 libraries which augment the C++ stdlib - others
Obsoletes: abseil-cpp < %{version}-%{release}
Obsoletes: libabsl2401_0_0 < %{version}-%{release}
Provides: abseil-cpp = %{version}-%{release}
%description -n libabsl_%{lname_suffix}
%description -n %{lname}
Abseil is a collection of C++11 libraries which augment the C++
standard library. It also provides features incorporated into C++14
and C++17 standards.
%package devel
Summary: Header files for Abseil
Requires: libabsl_%{lname_suffix}
Requires: libabsl_lite_%{lname_suffix}
Requires: %{lname} = %{version}
%description devel
Abseil is a collection of C++11 libraries which augment the C++
@@ -85,9 +71,9 @@ This package contains headers and build system files for it.
%autosetup -p1
%build
%if 0%{?with_gcc}
export CC="gcc-%{with_gcc}"
export CXX="g++-%{with_gcc}"
%if 0%{?suse_version} < 1500
export CC="gcc-7"
export CXX="g++-7"
%endif
%cmake
%cmake_build
@@ -96,120 +82,14 @@ export CXX="g++-%{with_gcc}"
%cmake_install
%fdupes %{buildroot}/%{_prefix}
%check
%ctest
%post -n %{lname} -p /sbin/ldconfig
%postun -n %{lname} -p /sbin/ldconfig
# SLE12 doed not define this macro
%if %{undefined ldconfig_scriptlets}
%post -n libabsl_lite_%{lname_suffix} -p /sbin/ldconfig
%postun -n libabsl_lite_%{lname_suffix} -p /sbin/ldconfig
%post -n libabsl_%{lname_suffix} -p /sbin/ldconfig
%postun -n libabsl_%{lname_suffix} -p /sbin/ldconfig
%else
%ldconfig_scriptlets -n libabsl_lite_%{lname_suffix}
%ldconfig_scriptlets -n libabsl_%{lname_suffix}
%endif
%files -n libabsl_lite_%{lname_suffix}
%files -n %{lname}
%license LICENSE
%{_libdir}/libabsl_base.%{soversion}
%{_libdir}/libabsl_city.%{soversion}
%{_libdir}/libabsl_cord.%{soversion}
%{_libdir}/libabsl_cord_internal.%{soversion}
%{_libdir}/libabsl_cordz_functions.%{soversion}
%{_libdir}/libabsl_cordz_handle.%{soversion}
%{_libdir}/libabsl_cordz_info.%{soversion}
%{_libdir}/libabsl_crc32c.%{soversion}
%{_libdir}/libabsl_crc_cord_state.%{soversion}
%{_libdir}/libabsl_crc_internal.%{soversion}
%{_libdir}/libabsl_debugging_internal.%{soversion}
%{_libdir}/libabsl_demangle_internal.%{soversion}
%{_libdir}/libabsl_examine_stack.%{soversion}
%{_libdir}/libabsl_exponential_biased.%{soversion}
%{_libdir}/libabsl_hash.%{soversion}
%{_libdir}/libabsl_int128.%{soversion}
%{_libdir}/libabsl_kernel_timeout_internal.%{soversion}
%{_libdir}/libabsl_log_globals.%{soversion}
%{_libdir}/libabsl_log_internal_check_op.%{soversion}
%{_libdir}/libabsl_log_internal_format.%{soversion}
%{_libdir}/libabsl_log_internal_globals.%{soversion}
%{_libdir}/libabsl_log_internal_log_sink_set.%{soversion}
%{_libdir}/libabsl_log_internal_message.%{soversion}
%{_libdir}/libabsl_log_internal_nullguard.%{soversion}
%{_libdir}/libabsl_log_internal_proto.%{soversion}
%{_libdir}/libabsl_log_sink.%{soversion}
%{_libdir}/libabsl_low_level_hash.%{soversion}
%{_libdir}/libabsl_malloc_internal.%{soversion}
%{_libdir}/libabsl_raw_hash_set.%{soversion}
%{_libdir}/libabsl_raw_logging_internal.%{soversion}
%{_libdir}/libabsl_spinlock_wait.%{soversion}
%{_libdir}/libabsl_stacktrace.%{soversion}
%{_libdir}/libabsl_str_format_internal.%{soversion}
%{_libdir}/libabsl_strerror.%{soversion}
%{_libdir}/libabsl_string_view.%{soversion}
%{_libdir}/libabsl_strings.%{soversion}
%{_libdir}/libabsl_strings_internal.%{soversion}
%{_libdir}/libabsl_symbolize.%{soversion}
%{_libdir}/libabsl_synchronization.%{soversion}
%{_libdir}/libabsl_throw_delegate.%{soversion}
%{_libdir}/libabsl_time.%{soversion}
%{_libdir}/libabsl_time_zone.%{soversion}
%files -n libabsl_%{lname_suffix}
%license LICENSE
%{_libdir}/libabsl_bad_any_cast_impl.%{soversion}
%{_libdir}/libabsl_bad_optional_access.%{soversion}
%{_libdir}/libabsl_bad_variant_access.%{soversion}
%{_libdir}/libabsl_civil_time.%{soversion}
%{_libdir}/libabsl_cordz_sample_token.%{soversion}
%{_libdir}/libabsl_crc_cpu_detect.%{soversion}
%{_libdir}/libabsl_decode_rust_punycode.%{soversion}
%{_libdir}/libabsl_demangle_rust.%{soversion}
%{_libdir}/libabsl_die_if_null.%{soversion}
%{_libdir}/libabsl_failure_signal_handler.%{soversion}
%{_libdir}/libabsl_flags_commandlineflag_internal.%{soversion}
%{_libdir}/libabsl_flags_commandlineflag.%{soversion}
%{_libdir}/libabsl_flags_config.%{soversion}
%{_libdir}/libabsl_flags_internal.%{soversion}
%{_libdir}/libabsl_flags_marshalling.%{soversion}
%{_libdir}/libabsl_flags_parse.%{soversion}
%{_libdir}/libabsl_flags_private_handle_accessor.%{soversion}
%{_libdir}/libabsl_flags_program_name.%{soversion}
%{_libdir}/libabsl_flags_reflection.%{soversion}
%{_libdir}/libabsl_flags_usage_internal.%{soversion}
%{_libdir}/libabsl_flags_usage.%{soversion}
%{_libdir}/libabsl_graphcycles_internal.%{soversion}
%{_libdir}/libabsl_hashtablez_sampler.%{soversion}
%{_libdir}/libabsl_leak_check.%{soversion}
%{_libdir}/libabsl_log_entry.%{soversion}
%{_libdir}/libabsl_log_flags.%{soversion}
%{_libdir}/libabsl_log_initialize.%{soversion}
%{_libdir}/libabsl_log_internal_conditions.%{soversion}
%{_libdir}/libabsl_log_internal_fnmatch.%{soversion}
%{_libdir}/libabsl_log_severity.%{soversion}
%{_libdir}/libabsl_periodic_sampler.%{soversion}
%{_libdir}/libabsl_poison.%{soversion}
%{_libdir}/libabsl_random_distributions.%{soversion}
%{_libdir}/libabsl_random_internal_distribution_test_util.%{soversion}
%{_libdir}/libabsl_random_internal_platform.%{soversion}
%{_libdir}/libabsl_random_internal_pool_urbg.%{soversion}
%{_libdir}/libabsl_random_internal_randen_hwaes_impl.%{soversion}
%{_libdir}/libabsl_random_internal_randen_hwaes.%{soversion}
%{_libdir}/libabsl_random_internal_randen_slow.%{soversion}
%{_libdir}/libabsl_random_internal_randen.%{soversion}
%{_libdir}/libabsl_random_internal_seed_material.%{soversion}
%{_libdir}/libabsl_random_seed_gen_exception.%{soversion}
%{_libdir}/libabsl_random_seed_sequences.%{soversion}
%{_libdir}/libabsl_scoped_set_env.%{soversion}
%{_libdir}/libabsl_statusor.%{soversion}
%{_libdir}/libabsl_status.%{soversion}
%{_libdir}/libabsl_utf8_for_code_point.%{soversion}
%{_libdir}/libabsl_vlog_config_internal.%{soversion}
%{_libdir}/libabsl_*.so.*
%files devel
%license LICENSE
%doc README.md
%{_includedir}/absl
%{_libdir}/cmake/absl

View File

@@ -1,2 +1 @@
libabsl_lite_2407_0_0
libabsl_2407_0_0
libabsl2308_0_0

View File

@@ -1,13 +1,11 @@
Index: abseil-cpp-20240722.0/CMakeLists.txt
===================================================================
--- abseil-cpp-20240722.0.orig/CMakeLists.txt
+++ abseil-cpp-20240722.0/CMakeLists.txt
--- abseil-cpp-20230125.3/CMakeLists.txt 2023-08-08 13:05:37.796998429 +0200
+++ abseil-cpp-20230125.3/CMakeLists.txt 2023-08-08 13:06:11.263885421 +0200
@@ -16,7 +16,7 @@
# https://github.com/google/oss-policies-info/blob/main/foundational-cxx-support-matrix.md
# As of 2024-07-01, CMake 3.16 is the minimum supported version.
-cmake_minimum_required(VERSION 3.16)
# As of 2022-09-06, CMake 3.10 is the minimum supported version.
-cmake_minimum_required(VERSION 3.10)
+cmake_minimum_required(VERSION 3.5)
# Allow the user to specify the CMAKE_MSVC_DEBUG_INFORMATION_FORMAT
if (POLICY CMP0141)
# Compiler id for Apple Clang is now AppleClang.
if (POLICY CMP0025)

View File

@@ -3,10 +3,10 @@ to avoid mysterious linker errors when using wrong C++ version in compiler.
This version of patch is for new systems (Tumbleweed) where Abseil is built with C++17 support.
For more information, see “notice for package managers” in options.h
Index: abseil-cpp-20240116.1/absl/base/options.h
Index: abseil-cpp-20230125.2/absl/base/options.h
===================================================================
--- abseil-cpp-20240116.1.orig/absl/base/options.h
+++ abseil-cpp-20240116.1/absl/base/options.h
--- abseil-cpp-20230125.2.orig/absl/base/options.h
+++ abseil-cpp-20230125.2/absl/base/options.h
@@ -94,7 +94,7 @@
// User code should not inspect this macro. To check in the preprocessor if
// absl::any is a typedef of std::any, use the feature macro ABSL_USES_STD_ANY.
@@ -41,14 +41,5 @@ Index: abseil-cpp-20240116.1/absl/base/options.h
-#define ABSL_OPTION_USE_STD_VARIANT 2
+#define ABSL_OPTION_USE_STD_VARIANT 1
// ABSL_OPTION_USE_STD_ORDERING
//
@@ -201,7 +201,7 @@
// the ordering types are aliases of std:: ordering types, use the feature macro
// ABSL_USES_STD_ORDERING.
-#define ABSL_OPTION_USE_STD_ORDERING 2
+#define ABSL_OPTION_USE_STD_ORDERING 0
// ABSL_OPTION_USE_INLINE_NAMESPACE
// ABSL_OPTION_INLINE_NAMESPACE_NAME

View File

@@ -3,11 +3,9 @@ to avoid mysterious linker errors when using wrong C++ version in compiler.
This version of the patch is for old systems where the system compiler does not use C++17.
For more information, see “notice for package managers” in options.h
Index: abseil-cpp-20240116.1/absl/base/options.h
===================================================================
--- abseil-cpp-20240116.1.orig/absl/base/options.h
+++ abseil-cpp-20240116.1/absl/base/options.h
@@ -94,7 +94,7 @@
--- a/absl/base/options.h 2021-11-03 16:26:14.000000000 +0100
+++ b/absl/base/options.h 2022-06-28 22:49:52.830727200 +0200
@@ -100,7 +100,7 @@
// User code should not inspect this macro. To check in the preprocessor if
// absl::any is a typedef of std::any, use the feature macro ABSL_USES_STD_ANY.
@@ -16,7 +14,7 @@ Index: abseil-cpp-20240116.1/absl/base/options.h
// ABSL_OPTION_USE_STD_OPTIONAL
@@ -121,7 +121,7 @@
@@ -127,7 +127,7 @@
// absl::optional is a typedef of std::optional, use the feature macro
// ABSL_USES_STD_OPTIONAL.
@@ -25,7 +23,7 @@ Index: abseil-cpp-20240116.1/absl/base/options.h
// ABSL_OPTION_USE_STD_STRING_VIEW
@@ -148,7 +148,7 @@
@@ -154,7 +154,7 @@
// absl::string_view is a typedef of std::string_view, use the feature macro
// ABSL_USES_STD_STRING_VIEW.
@@ -34,21 +32,12 @@ Index: abseil-cpp-20240116.1/absl/base/options.h
// ABSL_OPTION_USE_STD_VARIANT
//
@@ -174,7 +174,7 @@
@@ -180,7 +180,7 @@
// absl::variant is a typedef of std::variant, use the feature macro
// ABSL_USES_STD_VARIANT.
-#define ABSL_OPTION_USE_STD_VARIANT 2
+#define ABSL_OPTION_USE_STD_VARIANT 0
// ABSL_OPTION_USE_STD_ORDERING
//
@@ -201,7 +201,7 @@
// the ordering types are aliases of std:: ordering types, use the feature macro
// ABSL_USES_STD_ORDERING.
-#define ABSL_OPTION_USE_STD_ORDERING 2
+#define ABSL_OPTION_USE_STD_ORDERING 0
// ABSL_OPTION_USE_INLINE_NAMESPACE
// ABSL_OPTION_INLINE_NAMESPACE_NAME