Compare commits
14 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
63fe7364ce | ||
|
13bb6803bb | ||
|
99fe9af2af | ||
|
e0b2e831a5 | ||
|
245608b286 | ||
|
4b8d306dee | ||
|
0da16bcfd8 | ||
|
c43daf75e5 | ||
|
90ddd348dd | ||
|
20f616750e | ||
|
804bd00e2c | ||
|
d70989cf7d | ||
|
95b392305a | ||
|
5633c821bd |
3
.gitignore
vendored
3
.gitignore
vendored
@ -2,3 +2,6 @@
|
||||
/abseil-cpp-20200923.2.tar.gz
|
||||
/abseil-cpp-20200923.3.tar.gz
|
||||
/abseil-cpp-20210324.2.tar.gz
|
||||
/abseil-cpp-20211102.0.tar.gz
|
||||
/abseil-cpp-20220623.0.tar.gz
|
||||
/abseil-cpp-20220623.1.tar.gz
|
||||
|
22
09e96049995584c3489e4bd1467313e3e85af99c.patch
Normal file
22
09e96049995584c3489e4bd1467313e3e85af99c.patch
Normal file
@ -0,0 +1,22 @@
|
||||
From 09e96049995584c3489e4bd1467313e3e85af99c Mon Sep 17 00:00:00 2001
|
||||
From: Bruno Pitrus <brunopitrus@hotmail.com>
|
||||
Date: Mon, 11 Jul 2022 18:27:39 +0200
|
||||
Subject: [PATCH] Do not leak -maes -msse4.1 into pkgconfig
|
||||
|
||||
---
|
||||
CMake/AbseilHelpers.cmake | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/CMake/AbseilHelpers.cmake b/CMake/AbseilHelpers.cmake
|
||||
index ebe9ddc87..9cd87c513 100644
|
||||
--- a/CMake/AbseilHelpers.cmake
|
||||
+++ b/CMake/AbseilHelpers.cmake
|
||||
@@ -166,6 +166,8 @@ function(absl_cc_library)
|
||||
set(PC_CFLAGS "${PC_CFLAGS} ${cflag}")
|
||||
elseif(${cflag} MATCHES "^(-W|/w[1234eo])")
|
||||
# Don't impose our warnings on others.
|
||||
+ elseif(${cflag} MATCHES "^-m")
|
||||
+ # Don't impose CPU instruction requirements on others, as the code performs feature detection on runtime.
|
||||
else()
|
||||
set(PC_CFLAGS "${PC_CFLAGS} ${cflag}")
|
||||
endif()
|
@ -1,26 +0,0 @@
|
||||
diff -up ./CMakeLists.txt.2 ./CMakeLists.txt
|
||||
--- ./CMakeLists.txt.2 2021-04-20 12:55:14.000000000 -0400
|
||||
+++ ./CMakeLists.txt 2021-05-21 22:26:12.910191071 -0400
|
||||
@@ -127,6 +127,22 @@ if(BUILD_TESTING)
|
||||
set(absl_gtest_src_dir ${ABSL_LOCAL_GOOGLETEST_DIR})
|
||||
endif()
|
||||
include(CMake/Googletest/DownloadGTest.cmake)
|
||||
+ else()
|
||||
+ # Set up gtest targets
|
||||
+ find_library(GTEST_LIB gtest)
|
||||
+ add_library(gtest UNKNOWN IMPORTED)
|
||||
+ set_target_properties(gtest PROPERTIES IMPORTED_LOCATION ${GTEST_LIB})
|
||||
+ find_library(GTEST_MAIN_LIB gtest_main)
|
||||
+ add_library(gtest_main UNKNOWN IMPORTED)
|
||||
+ set_target_properties(gtest_main PROPERTIES IMPORTED_LOCATION ${GTEST_MAIN_LIB} INTERFACE_LINK_LIBRARIES gtest)
|
||||
+
|
||||
+ # Set up gmock targets
|
||||
+ find_library(GMOCK_LIB gmock)
|
||||
+ add_library(gmock UNKNOWN IMPORTED)
|
||||
+ set_target_properties(gmock PROPERTIES IMPORTED_LOCATION ${GMOCK_LIB} INTERFACE_LINK_LIBRARIES gtest)
|
||||
+ find_library(GMOCK_MAIN_LIB gmock_main)
|
||||
+ add_library(gmock_main UNKNOWN IMPORTED)
|
||||
+ set_target_properties(gmock_main PROPERTIES IMPORTED_LOCATION ${GMOCK_MAIN_LIB} INTERFACE_LINK_LIBRARIES "gmock;Threads::Threads")
|
||||
endif()
|
||||
|
||||
check_target(gtest)
|
@ -1,19 +0,0 @@
|
||||
diff -up ./absl/base/internal/sysinfo_test.cc.armv7 ./absl/base/internal/sysinfo_test.cc
|
||||
--- ./absl/base/internal/sysinfo_test.cc.armv7 2021-06-09 21:54:44.503755718 -0400
|
||||
+++ ./absl/base/internal/sysinfo_test.cc 2021-06-09 22:56:14.459611843 -0400
|
||||
@@ -43,13 +43,13 @@ TEST(SysinfoTest, NumCPUs) {
|
||||
// POWER is particularly problematic here; some Linux kernels expose the CPU
|
||||
// frequency, while others do not. Since we can't predict a priori what a given
|
||||
// machine is going to do, just disable this test on POWER on Linux.
|
||||
-#if !(defined(__linux) && (defined(__ppc64__) || defined(__PPC64__)))
|
||||
+#if !(defined(__linux) && (defined(__ppc64__) || defined(__PPC64__) || defined(__aarch64__) || defined(__arm__)))
|
||||
TEST(SysinfoTest, NominalCPUFrequency) {
|
||||
// Linux only exposes the CPU frequency on certain architectures, and
|
||||
// Emscripten doesn't expose it at all.
|
||||
#if defined(__linux__) && \
|
||||
(defined(__aarch64__) || defined(__hppa__) || defined(__mips__) || \
|
||||
- defined(__riscv) || defined(__s390x__)) || \
|
||||
+ defined(__riscv) || defined(__s390x__)) || \
|
||||
defined(__EMSCRIPTEN__)
|
||||
EXPECT_EQ(NominalCPUFrequency(), 1.0)
|
||||
<< "CPU frequency detection was fixed! Please update unittest.";
|
@ -1,34 +1,48 @@
|
||||
# Force out of source build
|
||||
%undefine __cmake_in_source_build
|
||||
|
||||
# Installed library version
|
||||
%global lib_version 2103.0.1
|
||||
%global lib_version 2206.0.0
|
||||
|
||||
Name: abseil-cpp
|
||||
Version: 20210324.2
|
||||
Version: 20220623.1
|
||||
Release: 2%{?dist}
|
||||
Summary: C++ Common Libraries
|
||||
|
||||
License: ASL 2.0
|
||||
# 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.
|
||||
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
|
||||
|
||||
# Set up system gtest and gmock targets to allow test suite to be built.
|
||||
# abseil-cpp expects the targets to be created by a bundled copy of gtest/gmock.
|
||||
# This patch replicates those targets via find_library and imported targets.
|
||||
# Not submitted upstream.
|
||||
Patch1: abseil-cpp-20210324-gtest.patch
|
||||
|
||||
# Disable CPU frequency detection on armv7hl architectures.
|
||||
# Makes test consistent with aarch64 CPUs.
|
||||
# Not submitted upstream.
|
||||
Patch2: abseil-cpp-20210324.2-armv7.patch
|
||||
# Backport upstream commit 09e96049995584c3489e4bd1467313e3e85af99c, which
|
||||
# corresponds to:
|
||||
#
|
||||
# Do not leak -maes -msse4.1 into pkgconfig
|
||||
# https://github.com/abseil/abseil-cpp/pull/1216
|
||||
#
|
||||
# Fixes RHBZ#2108658.
|
||||
Patch: https://github.com/abseil/abseil-cpp/commit/09e96049995584c3489e4bd1467313e3e85af99c.patch
|
||||
|
||||
BuildRequires: cmake
|
||||
# The default make backend would work just as well; ninja is observably faster
|
||||
BuildRequires: ninja-build
|
||||
BuildRequires: gcc-c++
|
||||
|
||||
BuildRequires: gmock-devel
|
||||
BuildRequires: gtest-devel
|
||||
BuildRequires: make
|
||||
|
||||
%ifarch s390x
|
||||
# Symbolize.SymbolizeWithMultipleMaps fails in absl_symbolize_test on s390x
|
||||
# with LTO
|
||||
# https://github.com/abseil/abseil-cpp/issues/1133
|
||||
%global _lto_cflags %{nil}
|
||||
%endif
|
||||
|
||||
%description
|
||||
Abseil is an open-source collection of C++ library code designed to augment
|
||||
@ -54,13 +68,14 @@ Development headers for %{name}
|
||||
|
||||
%prep
|
||||
%autosetup -p1 -S gendiff
|
||||
# Remove macro only defined in googletest git master
|
||||
sed -i 's|GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST|//|' absl/container/internal/unordered_map_modifiers_test.h
|
||||
|
||||
%build
|
||||
%cmake \
|
||||
-GNinja \
|
||||
-DABSL_USE_EXTERNAL_GOOGLETEST:BOOL=ON \
|
||||
-DBUILD_TESTING:BOOL=ON \
|
||||
-DABSL_FIND_GOOGLETEST:BOOL=ON \
|
||||
-DABSL_ENABLE_INSTALL:BOOL=ON \
|
||||
-DABSL_BUILD_TESTING:BOOL=ON \
|
||||
-DCMAKE_BUILD_TYPE:STRING=None \
|
||||
-DCMAKE_CXX_STANDARD:STRING=17
|
||||
%cmake_build
|
||||
@ -70,13 +85,7 @@ sed -i 's|GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST|//|' absl/container/inte
|
||||
%cmake_install
|
||||
|
||||
%check
|
||||
# s390x does not seem to be supported, several tests fail.
|
||||
# Make tests informational until failures are resolved.
|
||||
%ifarch s390x
|
||||
%ctest --output-on-failure || :
|
||||
%else
|
||||
%ctest --output-on-failure
|
||||
%endif
|
||||
%ctest
|
||||
|
||||
%files
|
||||
%license LICENSE
|
||||
@ -90,6 +99,37 @@ sed -i 's|GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST|//|' absl/container/inte
|
||||
%{_libdir}/pkgconfig/*.pc
|
||||
|
||||
%changelog
|
||||
* 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
|
||||
|
||||
|
2
sources
2
sources
@ -1 +1 @@
|
||||
SHA512 (abseil-cpp-20210324.2.tar.gz) = 7b935f0f2787a81438f30072f2191138ce3c099e4b22addfbe8ebe579d906604bc6ab03f054d3d6917a08ef5cb7a4371c1a501a7dfbc15c50301261dbf5f6e27
|
||||
SHA512 (abseil-cpp-20220623.1.tar.gz) = ab4fccd9a2bfa0c5ad4b56c8e8f8b7ec7a8eca8b6cc6959802acadd1da785e1feb078c6ac621808cd699c82717a9e637dc426d94b70a8db7f2a807059d41cbc2
|
||||
|
Loading…
Reference in New Issue
Block a user