abseil-cpp-vl.spec 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344
  1. %bcond_with testing
  2. # Installed library version
  3. %global lib_version 2308.0.0
  4. Name: abseil-cpp
  5. Summary: C++ Common Libraries
  6. Version: 20230802.1
  7. Release: 2%{?_dist_release}
  8. Group: system
  9. Vendor: Project Vine
  10. Distribution: Vine Linux
  11. # The entire source is Apache-2.0, except:
  12. # - The following files are LicenseRef-Fedora-Public-Domain:
  13. # absl/time/internal/cctz/src/tzfile.h
  14. # ** This file is in the public domain, so clarified as of
  15. # ** 1996-06-05 by Arthur David Olson.
  16. # absl/time/internal/cctz/testdata/zoneinfo/iso3166.tab
  17. # # This file is in the public domain, so clarified as of
  18. # # 2009-05-17 by Arthur David Olson.
  19. # absl/time/internal/cctz/testdata/zoneinfo/zone1970.tab
  20. # # This file is in the public domain.
  21. # Public-domain license text for these files was added to the
  22. # public-domain-text.txt file in fedora-license-data in commit
  23. # 538bc87d5e3c1cb08e81d690ce4122e1273dc9cd
  24. # (https://gitlab.com/fedora/legal/fedora-license-data/-/merge_requests/205).
  25. License: Apache-2.0 AND LicenseRef-Fedora-Public-Domain
  26. URL: https://abseil.io
  27. Source0: https://github.com/abseil/abseil-cpp/archive/%{version}/%{name}-%{version}.tar.gz
  28. BuildRequires: cmake
  29. # The default make backend would work just as well; ninja is observably faster
  30. BuildRequires: ninja
  31. BuildRequires: gcc-c++
  32. %if %{with testing}
  33. BuildRequires: gmock-devel
  34. BuildRequires: gtest-devel
  35. %endif
  36. # The contents of absl/time/internal/cctz are derived from
  37. # https://github.com/google/cctz (https://src.fedoraproject.org/rpms/cctz), but
  38. # have been forked with Abseil-specific changes. It is not obvious from which
  39. # particular version of CCTZ these sources are derived. Upstream was asked
  40. # about a path to supporting a system copy as required by bundling guidelines:
  41. # Please comment on CCTZ bundling
  42. # https://github.com/abseil/abseil-cpp/discussions/1415
  43. # They refused, for the time being, as follows:
  44. # “[…] we have no plans to change this decision, but we reserve the right to
  45. # change our minds.”
  46. Provides: bundled(cctz)
  47. %description
  48. Abseil is an open-source collection of C++ library code designed to augment
  49. the C++ standard library. The Abseil library code is collected from
  50. Google's own C++ code base, has been extensively tested and used in
  51. production, and is the same code we depend on in our daily coding lives.
  52. In some cases, Abseil provides pieces missing from the C++ standard; in
  53. others, Abseil provides alternatives to the standard for special needs we've
  54. found through usage in the Google code base. We denote those cases clearly
  55. within the library code we provide you.
  56. Abseil is not meant to be a competitor to the standard library; we've just
  57. found that many of these utilities serve a purpose within our code base,
  58. and we now want to provide those resources to the C++ community as a whole.
  59. %if %{with testing}
  60. %package testing
  61. Summary: Libraries needed for running tests on the installed %{name}
  62. Group: programming
  63. Requires: %{name}%{?_isa} = %{version}-%{release}
  64. Provides: bundled(cctz)
  65. %description testing
  66. %{summary}.
  67. %endif
  68. %package devel
  69. Summary: Development files for %{name}
  70. Group: programming
  71. Requires: %{name}%{?_isa} = %{version}-%{release}
  72. %if %{with testing}
  73. Requires: %{name}-testing%{?_isa} = %{version}-%{release}
  74. %endif
  75. # Some of the headers from CCTZ are part of the -devel subpackage. See the
  76. # corresponding virtual Provides in the base package for full details.
  77. Provides: bundled(cctz)
  78. %description devel
  79. Development headers for %{name}
  80. %debug_package
  81. %prep
  82. %autosetup -p1 -S gendiff
  83. %build
  84. # ABSL_BUILD_TEST_HELPERS is needed to build libraries for the -testing
  85. # subpackage when tests are not enabled. It is therefore redundant here, but we
  86. # still supply it to be more explicit.
  87. %cmake \
  88. -GNinja \
  89. -DABSL_USE_EXTERNAL_GOOGLETEST:BOOL=ON \
  90. -DABSL_FIND_GOOGLETEST:BOOL=ON \
  91. -DABSL_ENABLE_INSTALL:BOOL=ON \
  92. %if %{with testing}
  93. -DABSL_BUILD_TESTING:BOOL=ON \
  94. -DABSL_BUILD_TEST_HELPERS:BOOL=ON \
  95. %endif
  96. -DCMAKE_BUILD_TYPE:STRING=None \
  97. -DCMAKE_CXX_STANDARD:STRING=17
  98. %cmake_build
  99. %install
  100. %cmake_install
  101. %if %{with testing}
  102. %check
  103. %ctest
  104. %endif
  105. %files
  106. %license LICENSE
  107. %doc FAQ.md README.md UPGRADES.md
  108. # All shared libraries except installed TESTONLY libraries; see the %%files
  109. # list for the -testing subpackage for those.
  110. %{_libdir}/libabsl_bad_any_cast_impl.so.%{lib_version}
  111. %{_libdir}/libabsl_bad_optional_access.so.%{lib_version}
  112. %{_libdir}/libabsl_bad_variant_access.so.%{lib_version}
  113. %{_libdir}/libabsl_base.so.%{lib_version}
  114. %{_libdir}/libabsl_city.so.%{lib_version}
  115. %{_libdir}/libabsl_civil_time.so.%{lib_version}
  116. %{_libdir}/libabsl_cord.so.%{lib_version}
  117. %{_libdir}/libabsl_cord_internal.so.%{lib_version}
  118. %{_libdir}/libabsl_cordz_functions.so.%{lib_version}
  119. %{_libdir}/libabsl_cordz_handle.so.%{lib_version}
  120. %{_libdir}/libabsl_cordz_info.so.%{lib_version}
  121. %{_libdir}/libabsl_cordz_sample_token.so.%{lib_version}
  122. %{_libdir}/libabsl_crc32c.so.%{lib_version}
  123. %{_libdir}/libabsl_crc_cord_state.so.%{lib_version}
  124. %{_libdir}/libabsl_crc_cpu_detect.so.%{lib_version}
  125. %{_libdir}/libabsl_crc_internal.so.%{lib_version}
  126. %{_libdir}/libabsl_debugging_internal.so.%{lib_version}
  127. %{_libdir}/libabsl_demangle_internal.so.%{lib_version}
  128. %{_libdir}/libabsl_die_if_null.so.%{lib_version}
  129. %{_libdir}/libabsl_examine_stack.so.%{lib_version}
  130. %{_libdir}/libabsl_exponential_biased.so.%{lib_version}
  131. %{_libdir}/libabsl_failure_signal_handler.so.%{lib_version}
  132. %{_libdir}/libabsl_flags.so.%{lib_version}
  133. %{_libdir}/libabsl_flags_commandlineflag.so.%{lib_version}
  134. %{_libdir}/libabsl_flags_commandlineflag_internal.so.%{lib_version}
  135. %{_libdir}/libabsl_flags_config.so.%{lib_version}
  136. %{_libdir}/libabsl_flags_internal.so.%{lib_version}
  137. %{_libdir}/libabsl_flags_marshalling.so.%{lib_version}
  138. %{_libdir}/libabsl_flags_parse.so.%{lib_version}
  139. %{_libdir}/libabsl_flags_private_handle_accessor.so.%{lib_version}
  140. %{_libdir}/libabsl_flags_program_name.so.%{lib_version}
  141. %{_libdir}/libabsl_flags_reflection.so.%{lib_version}
  142. %{_libdir}/libabsl_flags_usage.so.%{lib_version}
  143. %{_libdir}/libabsl_flags_usage_internal.so.%{lib_version}
  144. %{_libdir}/libabsl_graphcycles_internal.so.%{lib_version}
  145. %{_libdir}/libabsl_hash.so.%{lib_version}
  146. %{_libdir}/libabsl_hashtablez_sampler.so.%{lib_version}
  147. %{_libdir}/libabsl_int128.so.%{lib_version}
  148. %{_libdir}/libabsl_kernel_timeout_internal.so.%{lib_version}
  149. %{_libdir}/libabsl_leak_check.so.%{lib_version}
  150. %{_libdir}/libabsl_log_entry.so.%{lib_version}
  151. %{_libdir}/libabsl_log_flags.so.%{lib_version}
  152. %{_libdir}/libabsl_log_globals.so.%{lib_version}
  153. %{_libdir}/libabsl_log_initialize.so.%{lib_version}
  154. %{_libdir}/libabsl_log_internal_check_op.so.%{lib_version}
  155. %{_libdir}/libabsl_log_internal_conditions.so.%{lib_version}
  156. %{_libdir}/libabsl_log_internal_format.so.%{lib_version}
  157. %{_libdir}/libabsl_log_internal_globals.so.%{lib_version}
  158. %{_libdir}/libabsl_log_internal_log_sink_set.so.%{lib_version}
  159. %{_libdir}/libabsl_log_internal_message.so.%{lib_version}
  160. %{_libdir}/libabsl_log_internal_nullguard.so.%{lib_version}
  161. %{_libdir}/libabsl_log_internal_proto.so.%{lib_version}
  162. %{_libdir}/libabsl_log_severity.so.%{lib_version}
  163. %{_libdir}/libabsl_log_sink.so.%{lib_version}
  164. %{_libdir}/libabsl_low_level_hash.so.%{lib_version}
  165. %{_libdir}/libabsl_malloc_internal.so.%{lib_version}
  166. %{_libdir}/libabsl_periodic_sampler.so.%{lib_version}
  167. %{_libdir}/libabsl_random_distributions.so.%{lib_version}
  168. %{_libdir}/libabsl_random_internal_distribution_test_util.so.%{lib_version}
  169. %{_libdir}/libabsl_random_internal_platform.so.%{lib_version}
  170. %{_libdir}/libabsl_random_internal_pool_urbg.so.%{lib_version}
  171. %{_libdir}/libabsl_random_internal_randen.so.%{lib_version}
  172. %{_libdir}/libabsl_random_internal_randen_hwaes.so.%{lib_version}
  173. %{_libdir}/libabsl_random_internal_randen_hwaes_impl.so.%{lib_version}
  174. %{_libdir}/libabsl_random_internal_randen_slow.so.%{lib_version}
  175. %{_libdir}/libabsl_random_internal_seed_material.so.%{lib_version}
  176. %{_libdir}/libabsl_random_seed_gen_exception.so.%{lib_version}
  177. %{_libdir}/libabsl_random_seed_sequences.so.%{lib_version}
  178. %{_libdir}/libabsl_raw_hash_set.so.%{lib_version}
  179. %{_libdir}/libabsl_raw_logging_internal.so.%{lib_version}
  180. %{_libdir}/libabsl_scoped_set_env.so.%{lib_version}
  181. %{_libdir}/libabsl_spinlock_wait.so.%{lib_version}
  182. %{_libdir}/libabsl_stacktrace.so.%{lib_version}
  183. %{_libdir}/libabsl_status.so.%{lib_version}
  184. %{_libdir}/libabsl_statusor.so.%{lib_version}
  185. %{_libdir}/libabsl_str_format_internal.so.%{lib_version}
  186. %{_libdir}/libabsl_strerror.so.%{lib_version}
  187. %{_libdir}/libabsl_strings.so.%{lib_version}
  188. %{_libdir}/libabsl_strings_internal.so.%{lib_version}
  189. %{_libdir}/libabsl_string_view.so.%{lib_version}
  190. %{_libdir}/libabsl_symbolize.so.%{lib_version}
  191. %{_libdir}/libabsl_synchronization.so.%{lib_version}
  192. %{_libdir}/libabsl_throw_delegate.so.%{lib_version}
  193. %{_libdir}/libabsl_time.so.%{lib_version}
  194. %{_libdir}/libabsl_time_zone.so.%{lib_version}
  195. %if %{with testing}
  196. %files testing
  197. # TESTONLY libraries (that are actually installed):
  198. # absl/base/CMakeLists.txt
  199. %{_libdir}/libabsl_exception_safety_testing.so.%{lib_version}
  200. %{_libdir}/libabsl_atomic_hook_test_helper.so.%{lib_version}
  201. %{_libdir}/libabsl_spinlock_test_common.so.%{lib_version}
  202. # absl/container/CMakeLists.txt
  203. %{_libdir}/libabsl_test_instance_tracker.so.%{lib_version}
  204. %{_libdir}/libabsl_hash_generator_testing.so.%{lib_version}
  205. # absl/debugging/CMakeLists.txt
  206. %{_libdir}/libabsl_stack_consumption.so.%{lib_version}
  207. # absl/log/CMakeLists.txt
  208. %{_libdir}/libabsl_log_internal_test_actions.so.%{lib_version}
  209. %{_libdir}/libabsl_log_internal_test_helpers.so.%{lib_version}
  210. %{_libdir}/libabsl_log_internal_test_matchers.so.%{lib_version}
  211. %{_libdir}/libabsl_scoped_mock_log.so.%{lib_version}
  212. # absl/strings/CMakeLists.txt
  213. %{_libdir}/libabsl_pow10_helper.so.%{lib_version}
  214. # absl/synchronization/CMakeLists.txt
  215. %{_libdir}/libabsl_per_thread_sem_test_common.so.%{lib_version}
  216. # absl/time/CMakeLists.txt
  217. %{_libdir}/libabsl_time_internal_test_util.so.%{lib_version}
  218. %endif
  219. %files devel
  220. %{_includedir}/absl
  221. %{_libdir}/libabsl_*.so
  222. %{_libdir}/cmake/absl
  223. %{_libdir}/pkgconfig/absl_*.pc
  224. %changelog
  225. * Thu Oct 12 2023 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> - 20230802.1-2
  226. - initial build for Vine Linux.
  227. * Wed Sep 20 2023 Benjamin A. Beasley <code@musicinmybrain.net> - 20230802.1-1
  228. - Update to 20230802.1 (close RHBZ#2239814)
  229. * Thu Aug 10 2023 Benjamin A. Beasley <code@musicinmybrain.net> - 20230802.0-1
  230. - Update to 20230802.0 (Abseil LTS branch, Aug 2023): close RHBZ#2229015
  231. * Wed Jul 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 20230125.3-2
  232. - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
  233. * Tue May 09 2023 Benjamin A. Beasley <code@musicinmybrain.net> - 20230125.3-1
  234. - Update to 20230125.3 (close RHBZ#2193306)
  235. - Split installed TESTONLY libraries into a -testing subpackage; explicitly
  236. list all installed shared libraries
  237. - Explicitly enable the ABSL_BUILD_TEST_HELPERS CMake option
  238. * Thu Mar 30 2023 Benjamin A. Beasley <code@musicinmybrain.net> - 20230125.2-1
  239. - Update to 20230125.2 (close RHBZ#2182229)
  240. * Thu Feb 23 2023 Benjamin A. Beasley <code@musicinmybrain.net> - 20230125.1-1
  241. - Update to 20230125.1 (close RHBZ#2162638)
  242. * Sat Jan 21 2023 Benjamin A. Beasley <code@musicinmybrain.net> - 20220623.1-4
  243. - Backport upstream commit 4eef161 for GCC 13
  244. * Wed Jan 18 2023 Fedora Release Engineering <releng@fedoraproject.org> - 20220623.1-3
  245. - Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
  246. * Fri Sep 02 2022 Benjamin A. Beasley <code@musicinmybrain.net> - 20220623.1-2
  247. - Update to 20220623.1 (close RHBZ#2123181)
  248. * Sat Aug 13 2022 Benjamin A. Beasley <code@musicinmybrain.net> - 20220623.0-1
  249. - Update to 20220623.0 (close RHBZ#2101021)
  250. - Update License to SPDX
  251. * Fri Jul 29 2022 Benjamin A. Beasley <code@musicinmybrain.net> - 20211102.0-4
  252. - Do not leak -maes -msse4.1 into pkgconfig (fix RHBZ#2108658)
  253. * Wed Jul 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 20211102.0-3
  254. - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
  255. * Tue Mar 15 2022 Benjamin A. Beasley <code@musicinmybrain.net> - 20211102.0-2
  256. - Disable LTO on s390x to work around test failure
  257. - Skip SysinfoTest.NominalCPUFrequency on all architectures; it fails
  258. occasionally on aarch64, and upstream says we should not care
  259. * Fri Feb 18 2022 Benjamin A. Beasley <code@musicinmybrain.net> - 20211102.0-1
  260. - Update to 20211102.0 (close RHBZ#2019691)
  261. - Drop --output-on-failure, already in %%ctest expansion
  262. - On s390x, instead of ignoring all tests, skip only the single failing test
  263. - Use ninja backend for CMake: speeds up build with no downsides
  264. - Drop patch for armv7hl
  265. * Mon Jan 31 2022 Benjamin A. Beasley <code@musicinmybrain.net> - 20210324.2-4
  266. - Fix test failure (fix RHBZ#2045186)
  267. * Wed Jan 19 2022 Fedora Release Engineering <releng@fedoraproject.org> - 20210324.2-3
  268. - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
  269. * Wed Jul 21 2021 Fedora Release Engineering <releng@fedoraproject.org> - 20210324.2-2
  270. - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
  271. * Fri May 21 2021 Rich Mattes <richmattes@gmail.com> - 20210324.1-2
  272. - Update to release 20210324.2
  273. - Enable and run test suite
  274. * Mon Mar 08 2021 Rich Mattes <richmattes@gmail.com> - 20200923.3-1
  275. - Update to release 20200923.3
  276. * Mon Jan 25 2021 Fedora Release Engineering <releng@fedoraproject.org> - 20200923.2-2
  277. - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
  278. * Sat Dec 19 2020 Rich Mattes <richmattes@gmail.com> - 20200923.2-1
  279. - Update to release 20200923.2
  280. - Rebuild to fix tagging in koji (rhbz#1885561)
  281. * Fri Jul 31 2020 Fedora Release Engineering <releng@fedoraproject.org> - 20200225.2-4
  282. - Second attempt - Rebuilt for
  283. https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
  284. * Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 20200225.2-3
  285. - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
  286. * Wed May 27 2020 Rich Mattes <richmattes@gmail.com> - 20200225.2-2
  287. - Don't remove buildroot in install
  288. * Sun May 24 2020 Rich Mattes <richmattes@gmail.com> - 20200225.2-1
  289. - Initial package.