123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344 |
- %bcond_with testing
- # Installed library version
- %global lib_version 2308.0.0
- Name: abseil-cpp
- Summary: C++ Common Libraries
- Version: 20230802.1
- Release: 2%{?_dist_release}
- Group: system
- Vendor: Project Vine
- Distribution: Vine Linux
- # The entire source is Apache-2.0, except:
- # - The following files are LicenseRef-Fedora-Public-Domain:
- # absl/time/internal/cctz/src/tzfile.h
- # ** This file is in the public domain, so clarified as of
- # ** 1996-06-05 by Arthur David Olson.
- # absl/time/internal/cctz/testdata/zoneinfo/iso3166.tab
- # # This file is in the public domain, so clarified as of
- # # 2009-05-17 by Arthur David Olson.
- # absl/time/internal/cctz/testdata/zoneinfo/zone1970.tab
- # # This file is in the public domain.
- # Public-domain license text for these files was added to the
- # public-domain-text.txt file in fedora-license-data in commit
- # 538bc87d5e3c1cb08e81d690ce4122e1273dc9cd
- # (https://gitlab.com/fedora/legal/fedora-license-data/-/merge_requests/205).
- License: Apache-2.0 AND LicenseRef-Fedora-Public-Domain
- URL: https://abseil.io
- Source0: https://github.com/abseil/abseil-cpp/archive/%{version}/%{name}-%{version}.tar.gz
- BuildRequires: cmake
- # The default make backend would work just as well; ninja is observably faster
- BuildRequires: ninja
- BuildRequires: gcc-c++
- %if %{with testing}
- BuildRequires: gmock-devel
- BuildRequires: gtest-devel
- %endif
- # The contents of absl/time/internal/cctz are derived from
- # https://github.com/google/cctz (https://src.fedoraproject.org/rpms/cctz), but
- # have been forked with Abseil-specific changes. It is not obvious from which
- # particular version of CCTZ these sources are derived. Upstream was asked
- # about a path to supporting a system copy as required by bundling guidelines:
- # Please comment on CCTZ bundling
- # https://github.com/abseil/abseil-cpp/discussions/1415
- # They refused, for the time being, as follows:
- # “[…] we have no plans to change this decision, but we reserve the right to
- # change our minds.”
- Provides: bundled(cctz)
- %description
- Abseil is an open-source collection of C++ library code designed to augment
- the C++ standard library. The Abseil library code is collected from
- Google's own C++ code base, has been extensively tested and used in
- production, and is the same code we depend on in our daily coding lives.
- In some cases, Abseil provides pieces missing from the C++ standard; in
- others, Abseil provides alternatives to the standard for special needs we've
- found through usage in the Google code base. We denote those cases clearly
- within the library code we provide you.
- Abseil is not meant to be a competitor to the standard library; we've just
- found that many of these utilities serve a purpose within our code base,
- and we now want to provide those resources to the C++ community as a whole.
- %if %{with testing}
- %package testing
- Summary: Libraries needed for running tests on the installed %{name}
- Group: programming
- Requires: %{name}%{?_isa} = %{version}-%{release}
- Provides: bundled(cctz)
- %description testing
- %{summary}.
- %endif
- %package devel
- Summary: Development files for %{name}
- Group: programming
- Requires: %{name}%{?_isa} = %{version}-%{release}
- %if %{with testing}
- Requires: %{name}-testing%{?_isa} = %{version}-%{release}
- %endif
- # Some of the headers from CCTZ are part of the -devel subpackage. See the
- # corresponding virtual Provides in the base package for full details.
- Provides: bundled(cctz)
- %description devel
- Development headers for %{name}
- %debug_package
- %prep
- %autosetup -p1 -S gendiff
- %build
- # ABSL_BUILD_TEST_HELPERS is needed to build libraries for the -testing
- # subpackage when tests are not enabled. It is therefore redundant here, but we
- # still supply it to be more explicit.
- %cmake \
- -GNinja \
- -DABSL_USE_EXTERNAL_GOOGLETEST:BOOL=ON \
- -DABSL_FIND_GOOGLETEST:BOOL=ON \
- -DABSL_ENABLE_INSTALL:BOOL=ON \
- %if %{with testing}
- -DABSL_BUILD_TESTING:BOOL=ON \
- -DABSL_BUILD_TEST_HELPERS:BOOL=ON \
- %endif
- -DCMAKE_BUILD_TYPE:STRING=None \
- -DCMAKE_CXX_STANDARD:STRING=17
- %cmake_build
- %install
- %cmake_install
- %if %{with testing}
- %check
- %ctest
- %endif
- %files
- %license LICENSE
- %doc FAQ.md README.md UPGRADES.md
- # All shared libraries except installed TESTONLY libraries; see the %%files
- # list for the -testing subpackage for those.
- %{_libdir}/libabsl_bad_any_cast_impl.so.%{lib_version}
- %{_libdir}/libabsl_bad_optional_access.so.%{lib_version}
- %{_libdir}/libabsl_bad_variant_access.so.%{lib_version}
- %{_libdir}/libabsl_base.so.%{lib_version}
- %{_libdir}/libabsl_city.so.%{lib_version}
- %{_libdir}/libabsl_civil_time.so.%{lib_version}
- %{_libdir}/libabsl_cord.so.%{lib_version}
- %{_libdir}/libabsl_cord_internal.so.%{lib_version}
- %{_libdir}/libabsl_cordz_functions.so.%{lib_version}
- %{_libdir}/libabsl_cordz_handle.so.%{lib_version}
- %{_libdir}/libabsl_cordz_info.so.%{lib_version}
- %{_libdir}/libabsl_cordz_sample_token.so.%{lib_version}
- %{_libdir}/libabsl_crc32c.so.%{lib_version}
- %{_libdir}/libabsl_crc_cord_state.so.%{lib_version}
- %{_libdir}/libabsl_crc_cpu_detect.so.%{lib_version}
- %{_libdir}/libabsl_crc_internal.so.%{lib_version}
- %{_libdir}/libabsl_debugging_internal.so.%{lib_version}
- %{_libdir}/libabsl_demangle_internal.so.%{lib_version}
- %{_libdir}/libabsl_die_if_null.so.%{lib_version}
- %{_libdir}/libabsl_examine_stack.so.%{lib_version}
- %{_libdir}/libabsl_exponential_biased.so.%{lib_version}
- %{_libdir}/libabsl_failure_signal_handler.so.%{lib_version}
- %{_libdir}/libabsl_flags.so.%{lib_version}
- %{_libdir}/libabsl_flags_commandlineflag.so.%{lib_version}
- %{_libdir}/libabsl_flags_commandlineflag_internal.so.%{lib_version}
- %{_libdir}/libabsl_flags_config.so.%{lib_version}
- %{_libdir}/libabsl_flags_internal.so.%{lib_version}
- %{_libdir}/libabsl_flags_marshalling.so.%{lib_version}
- %{_libdir}/libabsl_flags_parse.so.%{lib_version}
- %{_libdir}/libabsl_flags_private_handle_accessor.so.%{lib_version}
- %{_libdir}/libabsl_flags_program_name.so.%{lib_version}
- %{_libdir}/libabsl_flags_reflection.so.%{lib_version}
- %{_libdir}/libabsl_flags_usage.so.%{lib_version}
- %{_libdir}/libabsl_flags_usage_internal.so.%{lib_version}
- %{_libdir}/libabsl_graphcycles_internal.so.%{lib_version}
- %{_libdir}/libabsl_hash.so.%{lib_version}
- %{_libdir}/libabsl_hashtablez_sampler.so.%{lib_version}
- %{_libdir}/libabsl_int128.so.%{lib_version}
- %{_libdir}/libabsl_kernel_timeout_internal.so.%{lib_version}
- %{_libdir}/libabsl_leak_check.so.%{lib_version}
- %{_libdir}/libabsl_log_entry.so.%{lib_version}
- %{_libdir}/libabsl_log_flags.so.%{lib_version}
- %{_libdir}/libabsl_log_globals.so.%{lib_version}
- %{_libdir}/libabsl_log_initialize.so.%{lib_version}
- %{_libdir}/libabsl_log_internal_check_op.so.%{lib_version}
- %{_libdir}/libabsl_log_internal_conditions.so.%{lib_version}
- %{_libdir}/libabsl_log_internal_format.so.%{lib_version}
- %{_libdir}/libabsl_log_internal_globals.so.%{lib_version}
- %{_libdir}/libabsl_log_internal_log_sink_set.so.%{lib_version}
- %{_libdir}/libabsl_log_internal_message.so.%{lib_version}
- %{_libdir}/libabsl_log_internal_nullguard.so.%{lib_version}
- %{_libdir}/libabsl_log_internal_proto.so.%{lib_version}
- %{_libdir}/libabsl_log_severity.so.%{lib_version}
- %{_libdir}/libabsl_log_sink.so.%{lib_version}
- %{_libdir}/libabsl_low_level_hash.so.%{lib_version}
- %{_libdir}/libabsl_malloc_internal.so.%{lib_version}
- %{_libdir}/libabsl_periodic_sampler.so.%{lib_version}
- %{_libdir}/libabsl_random_distributions.so.%{lib_version}
- %{_libdir}/libabsl_random_internal_distribution_test_util.so.%{lib_version}
- %{_libdir}/libabsl_random_internal_platform.so.%{lib_version}
- %{_libdir}/libabsl_random_internal_pool_urbg.so.%{lib_version}
- %{_libdir}/libabsl_random_internal_randen.so.%{lib_version}
- %{_libdir}/libabsl_random_internal_randen_hwaes.so.%{lib_version}
- %{_libdir}/libabsl_random_internal_randen_hwaes_impl.so.%{lib_version}
- %{_libdir}/libabsl_random_internal_randen_slow.so.%{lib_version}
- %{_libdir}/libabsl_random_internal_seed_material.so.%{lib_version}
- %{_libdir}/libabsl_random_seed_gen_exception.so.%{lib_version}
- %{_libdir}/libabsl_random_seed_sequences.so.%{lib_version}
- %{_libdir}/libabsl_raw_hash_set.so.%{lib_version}
- %{_libdir}/libabsl_raw_logging_internal.so.%{lib_version}
- %{_libdir}/libabsl_scoped_set_env.so.%{lib_version}
- %{_libdir}/libabsl_spinlock_wait.so.%{lib_version}
- %{_libdir}/libabsl_stacktrace.so.%{lib_version}
- %{_libdir}/libabsl_status.so.%{lib_version}
- %{_libdir}/libabsl_statusor.so.%{lib_version}
- %{_libdir}/libabsl_str_format_internal.so.%{lib_version}
- %{_libdir}/libabsl_strerror.so.%{lib_version}
- %{_libdir}/libabsl_strings.so.%{lib_version}
- %{_libdir}/libabsl_strings_internal.so.%{lib_version}
- %{_libdir}/libabsl_string_view.so.%{lib_version}
- %{_libdir}/libabsl_symbolize.so.%{lib_version}
- %{_libdir}/libabsl_synchronization.so.%{lib_version}
- %{_libdir}/libabsl_throw_delegate.so.%{lib_version}
- %{_libdir}/libabsl_time.so.%{lib_version}
- %{_libdir}/libabsl_time_zone.so.%{lib_version}
- %if %{with testing}
- %files testing
- # TESTONLY libraries (that are actually installed):
- # absl/base/CMakeLists.txt
- %{_libdir}/libabsl_exception_safety_testing.so.%{lib_version}
- %{_libdir}/libabsl_atomic_hook_test_helper.so.%{lib_version}
- %{_libdir}/libabsl_spinlock_test_common.so.%{lib_version}
- # absl/container/CMakeLists.txt
- %{_libdir}/libabsl_test_instance_tracker.so.%{lib_version}
- %{_libdir}/libabsl_hash_generator_testing.so.%{lib_version}
- # absl/debugging/CMakeLists.txt
- %{_libdir}/libabsl_stack_consumption.so.%{lib_version}
- # absl/log/CMakeLists.txt
- %{_libdir}/libabsl_log_internal_test_actions.so.%{lib_version}
- %{_libdir}/libabsl_log_internal_test_helpers.so.%{lib_version}
- %{_libdir}/libabsl_log_internal_test_matchers.so.%{lib_version}
- %{_libdir}/libabsl_scoped_mock_log.so.%{lib_version}
- # absl/strings/CMakeLists.txt
- %{_libdir}/libabsl_pow10_helper.so.%{lib_version}
- # absl/synchronization/CMakeLists.txt
- %{_libdir}/libabsl_per_thread_sem_test_common.so.%{lib_version}
- # absl/time/CMakeLists.txt
- %{_libdir}/libabsl_time_internal_test_util.so.%{lib_version}
- %endif
- %files devel
- %{_includedir}/absl
- %{_libdir}/libabsl_*.so
- %{_libdir}/cmake/absl
- %{_libdir}/pkgconfig/absl_*.pc
- %changelog
- * Thu Oct 12 2023 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> - 20230802.1-2
- - initial build for Vine Linux.
- * Wed Sep 20 2023 Benjamin A. Beasley <code@musicinmybrain.net> - 20230802.1-1
- - Update to 20230802.1 (close RHBZ#2239814)
- * Thu Aug 10 2023 Benjamin A. Beasley <code@musicinmybrain.net> - 20230802.0-1
- - Update to 20230802.0 (Abseil LTS branch, Aug 2023): close RHBZ#2229015
- * Wed Jul 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 20230125.3-2
- - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
- * Tue May 09 2023 Benjamin A. Beasley <code@musicinmybrain.net> - 20230125.3-1
- - Update to 20230125.3 (close RHBZ#2193306)
- - Split installed TESTONLY libraries into a -testing subpackage; explicitly
- list all installed shared libraries
- - Explicitly enable the ABSL_BUILD_TEST_HELPERS CMake option
- * Thu Mar 30 2023 Benjamin A. Beasley <code@musicinmybrain.net> - 20230125.2-1
- - Update to 20230125.2 (close RHBZ#2182229)
- * Thu Feb 23 2023 Benjamin A. Beasley <code@musicinmybrain.net> - 20230125.1-1
- - Update to 20230125.1 (close RHBZ#2162638)
- * Sat Jan 21 2023 Benjamin A. Beasley <code@musicinmybrain.net> - 20220623.1-4
- - Backport upstream commit 4eef161 for GCC 13
- * Wed Jan 18 2023 Fedora Release Engineering <releng@fedoraproject.org> - 20220623.1-3
- - Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
- * Fri Sep 02 2022 Benjamin A. Beasley <code@musicinmybrain.net> - 20220623.1-2
- - Update to 20220623.1 (close RHBZ#2123181)
- * Sat Aug 13 2022 Benjamin A. Beasley <code@musicinmybrain.net> - 20220623.0-1
- - Update to 20220623.0 (close RHBZ#2101021)
- - Update License to SPDX
- * Fri Jul 29 2022 Benjamin A. Beasley <code@musicinmybrain.net> - 20211102.0-4
- - Do not leak -maes -msse4.1 into pkgconfig (fix RHBZ#2108658)
- * Wed Jul 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 20211102.0-3
- - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
- * Tue Mar 15 2022 Benjamin A. Beasley <code@musicinmybrain.net> - 20211102.0-2
- - Disable LTO on s390x to work around test failure
- - Skip SysinfoTest.NominalCPUFrequency on all architectures; it fails
- occasionally on aarch64, and upstream says we should not care
- * Fri Feb 18 2022 Benjamin A. Beasley <code@musicinmybrain.net> - 20211102.0-1
- - Update to 20211102.0 (close RHBZ#2019691)
- - Drop --output-on-failure, already in %%ctest expansion
- - On s390x, instead of ignoring all tests, skip only the single failing test
- - Use ninja backend for CMake: speeds up build with no downsides
- - Drop patch for armv7hl
- * Mon Jan 31 2022 Benjamin A. Beasley <code@musicinmybrain.net> - 20210324.2-4
- - Fix test failure (fix RHBZ#2045186)
- * Wed Jan 19 2022 Fedora Release Engineering <releng@fedoraproject.org> - 20210324.2-3
- - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
- * Wed Jul 21 2021 Fedora Release Engineering <releng@fedoraproject.org> - 20210324.2-2
- - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
- * Fri May 21 2021 Rich Mattes <richmattes@gmail.com> - 20210324.1-2
- - Update to release 20210324.2
- - Enable and run test suite
- * Mon Mar 08 2021 Rich Mattes <richmattes@gmail.com> - 20200923.3-1
- - Update to release 20200923.3
- * Mon Jan 25 2021 Fedora Release Engineering <releng@fedoraproject.org> - 20200923.2-2
- - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
- * Sat Dec 19 2020 Rich Mattes <richmattes@gmail.com> - 20200923.2-1
- - Update to release 20200923.2
- - Rebuild to fix tagging in koji (rhbz#1885561)
- * Fri Jul 31 2020 Fedora Release Engineering <releng@fedoraproject.org> - 20200225.2-4
- - Second attempt - Rebuilt for
- https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
- * Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 20200225.2-3
- - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
- * Wed May 27 2020 Rich Mattes <richmattes@gmail.com> - 20200225.2-2
- - Don't remove buildroot in install
- * Sun May 24 2020 Rich Mattes <richmattes@gmail.com> - 20200225.2-1
- - Initial package.
|