- Update to version 1.8.5:

* preparing for v1.8.5
  * clang format yet again
  * update actions/checkout to v4
  * another reversal of something that breaks on wasm
  * clang format header fixes
  * clang-format fixes
  * roll back fatal error that breaks some platform (wasm) expectations
  * revert perf counters change until we can do the full version
  * remove old travis config
  * [FR] Add API to provide custom profilers #1807 (#1809)
  * Clarify the difference between `BENCHMARK_TEMPLATE_F` and `BENCHMARK_TEMPLATE_DEFINE_F` + `BENCHMARK_REGISTER_F` (#1815)
  * add PERF_FORMAT_TOTAL_TIME_{ENABLED,RUNNING} to support multiplexing (#1814)
  * Add -lkstat to the .pc for Solaris (#1801)
  * Find libpfm dependency in installed CMake configs (#1806)
  * [bazel] Use `includes` instead of `strip_include_prefix` (#1803)
  * cycleclock: Fix type conversion to match function return type on riscv64 (#1802)
  * Bump minimum required C++ version from C++11 to C++14 (#1800)
  * bump standard to C++14 (#1799)
  * cycleclock: Fix type conversion to match function return type (#1794)
  * CMake: unbreak version handling for tarballs (#1793)
  * hotfix: Correct pypi-publishing action tag to v1.8.14 (#1791)
  * Improve compatibility with Hexagon hardware (#1785)
  * preparing for v1.8.4 (#1788)
  * Modernize wheel building job config (#1783)
  * Switch git override to stable BCR tag for nanobind_bazel (#1778)
  * Add `benchmark_main.pc` to link `main()` containing library (#1779)
  * Refactor: Return frequency as double (#1782)
  * Remove COMPILER_IBMXL macro for z/OS (#1777)
  * Fix OpenBSD build (#1772)

OBS-URL: https://build.opensuse.org/package/show/devel:tools/benchmark?expand=0&rev=49
This commit is contained in:
Martin Pluskal 2024-07-30 09:28:45 +00:00 committed by Git OBS Bridge
commit 77cb70bfa6
10 changed files with 794 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -0,0 +1,23 @@
## Default LFS
*.7z filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.gem filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.jar filter=lfs diff=lfs merge=lfs -text
*.lz filter=lfs diff=lfs merge=lfs -text
*.lzma filter=lfs diff=lfs merge=lfs -text
*.obscpio filter=lfs diff=lfs merge=lfs -text
*.oxt filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.rpm filter=lfs diff=lfs merge=lfs -text
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text

1
.gitignore vendored Normal file
View File

@ -0,0 +1 @@
.osc

18
_service Normal file
View File

@ -0,0 +1,18 @@
<services>
<service name="obs_scm" mode="manual">
<param name="revision">v1.8.5</param>
<param name="versionformat">1.8.5</param>
<param name="url">https://github.com/google/benchmark.git</param>
<param name="scm">git</param>
<param name="changesgenerate">enable</param>
<param name="exclude">.*</param>
</service>
<service name="tar" mode="buildtime"/>
<service name="recompress" mode="buildtime">
<param name="compression">gz</param>
<param name="file">*.tar</param>
</service>
<service name="set_version" mode="manual">
<param name="file">benchmark.spec</param>
</service>
</services>

4
_servicedata Normal file
View File

@ -0,0 +1,4 @@
<servicedata>
<service name="tar_scm">
<param name="url">https://github.com/google/benchmark.git</param>
<param name="changesrevision">a6ad7fbbdc2e14fab82bb8a6d27760d700198cbf</param></service></servicedata>

BIN
benchmark-1.7.1.obscpio (Stored with Git LFS) Normal file

Binary file not shown.

BIN
benchmark-1.8.5.obscpio (Stored with Git LFS) Normal file

Binary file not shown.

624
benchmark.changes Normal file
View File

@ -0,0 +1,624 @@
-------------------------------------------------------------------
Tue Jul 30 09:23:50 UTC 2024 - Martin Pluskal <mpluskal@suse.com>
- Update to version 1.8.5:
* preparing for v1.8.5
* clang format yet again
* update actions/checkout to v4
* another reversal of something that breaks on wasm
* clang format header fixes
* clang-format fixes
* roll back fatal error that breaks some platform (wasm) expectations
* revert perf counters change until we can do the full version
* remove old travis config
* [FR] Add API to provide custom profilers #1807 (#1809)
* Clarify the difference between `BENCHMARK_TEMPLATE_F` and `BENCHMARK_TEMPLATE_DEFINE_F` + `BENCHMARK_REGISTER_F` (#1815)
* add PERF_FORMAT_TOTAL_TIME_{ENABLED,RUNNING} to support multiplexing (#1814)
* Add -lkstat to the .pc for Solaris (#1801)
* Find libpfm dependency in installed CMake configs (#1806)
* [bazel] Use `includes` instead of `strip_include_prefix` (#1803)
* cycleclock: Fix type conversion to match function return type on riscv64 (#1802)
* Bump minimum required C++ version from C++11 to C++14 (#1800)
* bump standard to C++14 (#1799)
* cycleclock: Fix type conversion to match function return type (#1794)
* CMake: unbreak version handling for tarballs (#1793)
* hotfix: Correct pypi-publishing action tag to v1.8.14 (#1791)
* Improve compatibility with Hexagon hardware (#1785)
* preparing for v1.8.4 (#1788)
* Modernize wheel building job config (#1783)
* Switch git override to stable BCR tag for nanobind_bazel (#1778)
* Add `benchmark_main.pc` to link `main()` containing library (#1779)
* Refactor: Return frequency as double (#1782)
* Remove COMPILER_IBMXL macro for z/OS (#1777)
* Fix OpenBSD build (#1772)
* allow BENCHMARK_VERSION to be undefined (#1769)
* clang-tidy broke the world (#1766)
* Fix implicit conversion changes signess warning in perf_counters.cc (#1765)
* Add Python bindings build using bzlmod (#1764)
* mitigate clang build warnings -Wconversion (#1763)
* Fixed LTO issue on no discard variable (#1761)
* Revert "fix some warnings" (#1762)
* fix some warnings
* Rewrite complexity_test to use (hardcoded) manual time (#1757)
* sysinfo.cc: Always abort on GetNumCPUs failure (#1756)
* CycleClock: Add support for Alpha architecture (#1753)
* fix typo in GetBenchmarkVersion() (#1755)
* Deflake CI (#1751)
* Add `BENCHMARK_TEMPLATE[12]_CAPTURE`, fusion of `BENCHMARK_CAPTURE` and `BENCHMARK_TEMPLATE` (#1747)
* set library version in bazel (#1746)
* Output library / schema versions in JSON context block (#1742)
* ignore new bzlmod lock file
* changes to run bazel migration scripts
* Bump pre-commit dependencies (#1740)
* Fix C-style typecasting in QNX-specific code (#1739)
* Docs: `reducing_variance.md`: proofreading, fix typos (#1736)
* fix(cmakelists.txt): enforce CMake to find PFM or fail when BENCHMARK_ENABLE_LIBPFM is ON (#1705)
* Issue 1734: Streams not flushed if not running actual benchmarks (#1735)
* tools/compare: don't actually discard valid (but zero) `pvalue` (#1733)
* Issue1731 created console does not receive output (#1732)
* Change Fixture to use non-const SetUp and TearDown in example (#1723)
* Avoid leaking LFS flags to reverse dependencies (#1730)
* style: re-format BUILD file with buildifier.
* fix per-thread timing error on z/OS (#1719)
* Enable Large-file Support (#1726)
* CycleClock: use RDTIME instead of RDCYCLE on RISC-V (#1727)
* Update perf_counters_gtest.cc (#1728)
* Fix division by zero for low frequency timers for CV statistics (#1724)
* fix: fail to import gbench in bazel and python3.12
* define HOST_NAME_MAX for z/oS (#1717)
* Fix mis-matching argument in closing tag for cmake macro (#1714) (#1715)
* Check out repo at depth 0 for Python tests, bump Python and PyPI actions (#1713)
* Run `pre-commit autoupdate`, fix stale pyproject.toml comments (#1712)
* Upgrade core bazel dependencies (#1711)
* Fix editable install by unsetting `build_ext.copy_extensions_to_source` (#1710)
* [NFC] `complexity_n` is not of `IterationCount` type (#1709)
* Fix `pre-commit` GitHub Actions job (#1708)
* Support windows MSYS2 environments (#1704)
* [CI] Try to fix sanitizer builds by pinning the LLVM revision (#1703)
* Fix CMakeLists.txt for perf_counters_test (#1701)
* Add missing `\n` character at end of error log string (#1700)
* Switch out black for ruff format (#1698)
* Fixed compiler warnings (#1697)
* Fix unit tests compilation with non-gnu / non-msvc compilers with c++11 support. (#1691)
* Add `setuptools_scm` for dynamic zero-config Python versioning (#1690)
* Drop isort hook for ruff builtin import sorting (#1689)
* Add pre-commit config and GitHub Actions job (#1688)
* [bindings] Add LTO builds on Windows+MSVC (#1687)
* Reapply size optimizations for clang & MSVC, LTO for Mac+Linux (#1685)
* Change nanobind linkage to response file approach on macOS (#1638)
* Add Python 3.12 support (#1676)
* Add no-unititialized to tests (#1683)
* Set -Wno-unused-variable for tests (#1682)
* Increase the kMaxIterations limit (#1668)
* fix format in src/sysinfo
* add name to clang format job
* Fix building on MinGW: default `WINVER` is too old (#1681)
* Update bazel.yml (#1671)
* correct cli param in docs
* Make json and csv output consistent. (#1662)
* Audit MSVC references in cmake files to consider clang++ (#1669)
* bump version to 1.8.3
* tweak comment wording
* StatisticsMedian: Fix bug
* test: Use gtest_main only when needed (#1657)
* perf_counters: Initialize once only when needed (#1656)
* State: Initialize counters with kAvgIteration in constructor (#1652)
* perf-counters: Make tests pass on Android (#1653)
* add logo to github pages
* add black icon
* remove logo from generated docs
* remove icon from main README
* update logo path
* adding a logo to the docs
* benchmark.cc: Fix benchmarks_with_threads condition (#1651)
* sysinfo.cc: Call getloadavg for Android API >= 29 (#1) (#1649)
* [perf-counters] Fix pause/resume (#1643)
* fix: added benchmark_counters_tabular for file (#1645)
* Fix IntelLLVM compiler error (#1644)
* bug: Inconsistent suffixes console reporter 1009 (#1631)
* Mark internal deps as dev_depenencies so that downstream modules don't require those. (#1640)
* Fix `-Werror,-Wold-style-cast` build failure on Windows. (#1637)
* Re-enable windows-latest tests for newer Bazel (#1641)
* Update bzlmod support to new rules_python extension API (#1633)
* Delete unused requirements file, simplify nanobind build file (#1635)
* Add tests for Human Readable functionality (#1632)
* Downgrade bazel to windows-2019 (#1629)
* Bump scipy from 1.5.4 to 1.10.0 in /tools (#1630)
* Bump `nanobind` to stable v1.4.0 tag (#1626)
* missing cmake include
* add back package properties for PFM
* pfm: Use a more standard CMake approach for finding libpfm (#1628)
* Add pyproject.toml file for PEP518 compliance (#1625)
* Update tools.md for missing color meaning issue #1491 (#1624)
* Fix broken PFM-enabled tests (#1623)
* bump version to 1.8.2 ready for release
* Fix passing non-const lvalue refs to DoNotOptimize (#1622)
* Add more terminals with color support (#1621)
* Add discord server link to README
* bump version to 1.8.1 pre release
* Suppress intentional potential memory leak as detected by clang static analysis (#1618)
* Add a CI test for the new bzlmod integration (#1617)
* Add support for bzlmod (excluding Python bindings) (#1615)
* remove old-style (C-style) casts (#1614)
* Fix a typo in regex choice (#1610)
* Fix pass rvalue to DoNotOptimize (#1608)
* Add project name to version message
* Fixed a typo in docs (#1600)
* Update Python version to PY3, as indicated by the actual source file. (#1598)
* Fix code triggering -Wsign-conversion (#1596)
* Disable debug-only test in release builds to avoid expected failures. (#1595)
* update version to v1.8.0
* reenable msan sanitizer workflow (#1589)
* Guard NOMINMAX to prevent redefinition error (#1581) (#1582)
* Correct libpfm dep for integrators. (#1579)
* Fix compile warnings about ignoring a [[nodiscard]] type. (#1577)
* make libpfm dep work for integrators
* use 'new_git_repository' in external deps call to work with older bazel versions
* link to benchmark directly for tests that aren't link_main_test (#1576)
* Convert uses of `const char*` to `std::string` (#1567)
* add '@' to correctly reference build file for libpfm (#1575)
* Address warnings on NVIDIA nvc++ (#1573)
* simplify setting C++ standard
* [FR] Provide public accessors to benchmark name and arguments #1551 (#1563)
* use std::string for skip messages (#1571)
* [FR] state.SkipWithMessage #963 (#1564)
* Fix build break with nvc++ when -Werror is ON (#1569)
* Fix examples in user guide using deprecated `DoNotOptimize`-API (#1568)
* Bump nanobind to stable v0.2.0, change linker options (#1565)
* Refactoring of PerfCounters infrastructure (#1559)
* get rid of warnings in tests (#1562)
* Filter performance counter names, not invalidate all (#1554)
* Implement unlimited number of performance counters (#1552)
* add compiler to build-and-test and create min-cmake CI bot (#1550)
* Fix CPU frequency estimation on riscv (#1549)
* cleanup: support CMake >= 3.10 (#1544)
* Werror all the time (#1546)
* Add missing parentheses in ParseBenchMinTime() (#1545)
* Removing warnings appearing with C++20 / CLang 15 (#1542)
* update github actions to latest versions (#1541)
* replace complexity with simplicity for faster libc++ setup (#1539)
* Refactor links which include "master" and change it to "main" (#1540)
* Allow specifying number of iterations via --benchmark_min_time. (#1525)
* Support --benchmarks_filter in the compare.py 'benchmarks' command (#1486)
* get rid of some deprecation warnings from tests
* fix #1446 by removing the address operator (#1538)
* Fixing issue with ARM64EC and MSVC (#1514)
* Deprecate constant reference API to DoNotOptimize. (#1493)
* remove best effort support for ubuntu 18.04 (#1537)
* try disabling liquid for jekyll to fix curly braces (#1536)
* Switch bindings implementation to `nanobind` (#1526)
* Modernize setup.py, extend Python bindings CI (#1535)
* Add quick instructions on how to enable sans checks (#1529)
* Fix Clang-Tidy warnings readability-else-after-return (#1528)
* Include the benchmark's family-name in State (#1511)
* Fix typos found by codespell (#1519)
* Fix Clang-Tidy warnings related to modernize-use-override (#1523)
* Bug fix variable 'actual_iterations' set but not used (#1517)
* add more docs to index
* Add a `benchmark_deps.bzl` function to Google Benchmark (#1520)
* Try removing attempt to set the C++ standard (#1464)
* Fixes incorrect wide string conversion on win32 (#1516)
* Return option benchmark_perf_counters to help output (#1508)
* Removed deprecated function (#1506)
- Drop no longer needed gcc12-disable-Werror=maybe-uninitialized.patch
-------------------------------------------------------------------
Wed Jan 24 14:38:01 UTC 2024 - Stefan Brüns <stefan.bruens@rwth-aachen.de>
- Fix build to cope with changes in (open)SUSE specific cmake
macros, no user visible changes.
-------------------------------------------------------------------
Mon Dec 05 08:36:46 UTC 2022 - dmueller@suse.com
- Update to version 1.7.1:
* version bump for release
* [bazel] Build libpfm as a dependency to allow collection of perf counters (#1408)
* Add information for supported Python versions to setup.py (#1502)
* Partially revert "Do not depend on unversioned python binary (#1496)" (#1501)
* Do not depend on unversioned python binary (#1496)
* Fix Solaris compilation (#1499) (#1500)
* Support for QuRT OS (Hexagon RTOS) (#1497)
* bump cmake dep and docs (#1468)
* Bump pybind11 version to enable Python 3.11 wheel builds (#1489)
* Discuss sources of variance in the user guide (#1481)
* Stop using pandas.Timedelta (fixes #1482) (#1483)
* Eliminate usage of deprecated API in sysinfo.cc (#1474)
* Enable aarch64 Linux wheel builds, use cibuildwheel action directly (#1472)
* Clean up test documentation formatting (#1475)
* use CMAKE_INSTALL_FULL in pkg-config file (#1473)
* Link error when use as static library on windows. (#1470)
* add debug option for enabling more output for failed cxxfeaturechecks (#1467)
* FIx typo in benchmark.h (#1465)
* run ClearRegisteredBenchmarks at exit (#1463)
* Avoid deprecation warning in NVHPC (#1459)
* Ensure we don't need benchmark installed to pass c++ feature checks (#1456)
* Explicitly cast int literals to int8_t in tests to silence implicit-conversion warnings (#1455)
* Fixed build issues on window (#1449)
* remove unnecessary generated include directory (#1451)
* Initialize help hook before actually parsing the command line (#1447)
* Remove stray comment and added missing header (#1444)
-------------------------------------------------------------------
Mon Aug 15 11:19:19 UTC 2022 - dmueller@suse.com
- Update to version 1.7.0:
* version bump
* simplified code (#1439)
* use target_compile_definitions (#1440)
* Stop generating the export header and just check it in (#1435)
* Also fix the SOVERSION for benchmark_main
* Fix SOVERSION of shared library
* v1.6.2 bump
* Expose google_benchmark.State for python bindings. (#1430)
* Suppress nvcc `offsetof` warning (#1429)
* Correct typo in Passing Arguments section
* cleanup comments
* fix sanitizer builds by using clang 13 (#1426)
* fix dependabot numpy version warning
* fix cmake warning for libcxx setup
* Expose default help printer function (#1425)
* Fix DoNotOptimize() GCC compile error with some types (#1340) (#1424)
* Remove redundant formatting tags (#1420)
* Revert "Add possibility to ask for libbenchmark version number (#1004) (#1403)" (#1417)
* Clarify that the cpu frequency is not used for benchmark timings. (#1414)
* Fix DoNotOptimize() GCC copy overhead (#1340) (#1410)
* Add possibility to ask for libbenchmark version number (#1004) (#1403)
* add multiple OSes to bazel workflow (#1412)
* fix some build warnings on type conversions
* fix typo in comment
* Report large numbers in scientific notation in console reporter (#1303) (#1402)
* Introduce warmup phase to BenchmarkRunner (#1130) (#1399)
* Add support to get clock for new architecture CSKY (#1400)
* Add option to get the verbosity provided by commandline flag -v (#1330) (#1397)
* fix some typos (#1393)
* Add installation and build instructions for Python bindings (#1392)
* Enable -Wconversion (#1390)
* Add benchmark labels to the output of the comparison tool (#1388)
* Filter out benchmarks that start with "DISABLED_" (#1387)
* Fix wheel job name for PyPI uploads (#1384)
* Shut down Bazel gracefully and revert wheel build strategy to job matrix (#1383)
* Small optimization to counter map management (#1382)
* getting sysinfo in line with Google style (#1381)
* Promote inclusive language. (#1360)
* [nfc] Reformat doc-string in generate_export_header (#1376)
* Fix Bazel build breakage caused by commit 6a894bd. (#1374)
* Build `//:benchmark` as a static library only. (#1373)
* add note about wheels action to releasing docs
* Change artifact download name to dist to match upload name (#1371)
* Remove conditional trigger from PyPI upload job (#1370)
* Add BENCHMARK_STATIC_DEFINE to the Python bindings' `cc_binary` local defines. (#1369)
* Update LICENSE file to clearly state which file needs BSD 3 (#1366)
* Fix float comparaison and add float comparison warning (#1368)
* Add PyPI upload job to wheel building workflow (#1359)
* Appended additional BSD 3-Clause to LICENSE (#1363)
* Add SetBenchmarkFilter() to set --benchmark_filter flag value in user code (#1362)
* Add long description and content type for proper PyPI presentation (#1361)
* Allow setting the default time unit globally (#1337)
* restore BENCHMARK_MAIN() (#1357)
* @platforms is magical; remove it from WORKSPACE. (#1356)
* Make generate_export_header.bzl work for Windows. (#1355)
* avoid case sensitive issues with duplicated names (#1354)
* move bzl file out of tools (#1352)
* Introduce the possibility to customize the help printer function (#1342)
* simplify reference to internal path (#1349)
* Check for macro existence before using (#1347)
* annotate and export public symbols (#1321)
* Expose default display reporter creation in public API (#1344)
* Avoid potential truncation issues for the integral type parameterized tests. (#1341)
* Add mutex when reading counters_ (Fixes #1335) (#1338)
* Use Win32 API only for Win32 apps (#1333)
* bump numby, as per dependabot (#1336)
* Fix cross compilation for macOS ARM builds in `cibuildwheel` (#1334)
* Cache PerfCounters instance in PerfCountersMeasurement (#1308)
* Fix some errors in Custom Statistics demo code. (#1332)
* Refine the User Guide CPU Frequency Scaling section (#1331)
* Refine docs on changing cpufreq governor (#1325)
* Expand documentation for unpacking arbitrary arguments. (#1324)
* Suppress GoogleTest warnings on windows (MSVC) too. (#1320)
* Add docs on Memory profiling (#1217). (#1319)
* Add docs for `ThreadRange`. (#1318)
-------------------------------------------------------------------
Mon Mar 14 08:41:35 UTC 2022 - Martin Liška <mliska@suse.cz>
- Add gcc12-disable-Werror=maybe-uninitialized.patch in order
to fix boo#1196587.
-------------------------------------------------------------------
Mon Jan 17 11:58:46 UTC 2022 - Martin Pluskal <mpluskal@suse.com>
- Update to version 1.6.1:
* Creating release commit for v1.6.1
* Destructor not returning is expected in some cases (#1316)
* Address c4267 warning on MSVC (#1315)
* Fix `-DBENCHMARK_ENABLE_INSTALL=OFF` (Fixes #1275) (#1305)
* Avoid errors due to "default label in switch which covers all enumeration values" in Windows codepath (#1302)
* update googletest to latest release tag 1.11.0 (#1301)
* clang-tidy: readability-redundant and performance (#1298)
* Update user_guide.md (#1296)
* Fix broken link to Setup/Teardown section (#1291)
* Add clang-tidy check (#1290)
* compare.py: compute and print 'OVERALL GEOMEAN' aggregate (#1289)
* remove long-defunct cli parameter
* lose some build warnings
* Disable clang-tidy (unused-using-decls) (#1287)
* disable lint check where we know it'd fail (#1286)
* Add Setup/Teardown option on Benchmark. (#1269)
* Googletest renamed master to main today. (#1285)
* Remove bazelbuild/rules_cc dependency (#1283)
* Support for building with LLVM clang-10/clang-11 on Windows. (#1227)
* Fix dependency typo and unpin cibuildwheel version in wheel building … (#1263)
* check clang format on pull requests and merges (#1281)
* format tests with clang-format (#1282)
* clang-format Google on {src/,include/} (#1280)
* Fix warning with MacOS (#1276)
* Fixed typo in doc: s/marcro/macro (#1274)
* Fix error with Fix Werror=old-style-cast (#1272)
* Fix error Wshorten-64-to-32 (#1273)
* [cleanup] Change `== ""` to `.empty()` on string to avoid clang-tidy warnings (#1271)
* Fix un-initted error in test and fix change the API previously proposed to use std::string instead of raw char* (#1266)
* use docker container for ubuntu-16.04 builds (#1265)
* [RFC] Adding API for setting/getting benchmark_filter flag? (#1254)
* Allow template arguments to be specified directly on the BENCHMARK macro (#1262)
* Added Doxygen support. (#1228)
* Fix -Wdeprecated-declarations warning once more. (#1256)
* cmake: allow to use package config from build directory
* cmake: make package config relocatable
* GoogleTest.cmake.in: mention BENCHMARK_USE_BUNDLED_GTEST
* GoogleTest.cmake.in: immediately error-out after failure message, Closes #1255
* Introduce additional memory metrics (#1238)
* Fix -Wdeprecated-declarations warning triggered by clang-cl. (#1245)
* Cmake: options for controlling werror, disable werror for PGI compilers (#1246)
* cmake: eliminate redundant `target_include_directories` (#1242)
* Update policy to match reality
* Fix mention of --benchmarks in comment (#1229)
* Added support of packaged GTest for running unit tests. (#1226)
* Optimized docs installation (#1225)
* Remove unused parameter from lambda. (#1223)
* add to final releasing step
* bump version to 1.6 in preparation for release
* COnsole reporter: if statistic produces percents, format it as such (#1221)
* Introduce Coefficient of variation aggregate (#1220)
* Statistics: add support for percentage unit in addition to time (#1219)
* report.py: adjust expected u-test values for tests
* CMake: add forgotten include(FeatureSummary) into FindPFM.cmake to fix build
* replace #warning with #pragma message (#1216)
* force cmake version to 3.5.1
* [NFC] PFM: actually report package as found, and advertise description
* Fix links to further doc in user_guide.md (#1215)
* Introduce accessors for currently public data members (threads and thread_index) (#1208)
* Fix a -Wunreachable-code-aggressive warning (#1214)
* Set theme jekyll-theme-minimal
* wrap things that look like tags but aren't with `{% raw %}`
* install docs folder when installing library (#1212)
* add .DS_Store to .gitignore
* refactor the documentation to minimise `README.md` (#1211)
* preparing v1.5.6 release
* Set theme jekyll-theme-modernist
* so much for googletest not failing any more
* turn back on strict mode for googletest as it no longer breaks
* Change the default value of `--benchmark_filter` from "." to <empty> (#1207)
* Remove dead code from PredictNumItersNeeded (#1206)
* downgrade warnings for googletest (#1203)
* Add wheel and sdist building action to GH Workflow (#1180)
* add g++ to sanitizer buildbots (#1197)
* Don't return a reference when the callers all expect pointers.
* fix clang-tidy warnings (#1195)
* Fix typos (#1194)
* Fix type warning on certain compilers (#1193)
* Use C++11 atomic_signal_fence for ClobberMemory (#1190)
* Bazel qnx (#1192)
* Deduplicate test function name in python bindings example (#1189)
* prefix VLOG (#1187)
* prefix macros to avoid clashes (#1186)
* Move flags inside the `benchmark` namespace (#1185)
* Add missing trailing commas (#1182)
* Provide helpers to create integer lists for the given ranges. (#1179)
* benchmark_runner.h: Remove superfluous semi colon (#1178)
-------------------------------------------------------------------
Mon Sep 13 08:40:20 UTC 2021 - Martin Pluskal <mpluskal@suse.com>
- Update to version 1.5.5:
* [NFCI] Drop warning to satisfy clang's -Wunused-but-set-variable diag (#1174)
* Add support for new architecture loongarch (#1173)
* Use modern clang/libc++ for sanitizers (#1171)
* Enable various sanitizer builds in github actions (#1167)
* Random interleaving of benchmark repetitions - the sequel (fixes #1051) (#1163)
* Fix leak in test, and provide path to remove leak from library (#1169)
* [NFCI] Make BenchmarkRunner non-internal to it's .cpp file
* [NFCI] RunBenchmarks(): extract FlushStreams()/Report() functions
* compare.py: sort the results (#1168)
* Make 'complexity reports' cache per-family, not global (#1166)
* Introduce per-family instance index (#1165)
* Introduce "family index" field into JSON output (#1164)
* BenchmarkFamilies::FindBenchmarks(): correctly use std::vector<>::reserve()
* Ensure that we print repetition count even when it was specified via flag `--benchmark_repetitions=`
* Revert "Implementation of random interleaving. (#1105)" (#1161)
* Fix perf counter argument parsing (#1160)
* Run build-and-test on all branches
* Un-disable github actions :]
* Run build-and-test on all branches
* Set theme jekyll-theme-hacker
* bump version to v1.5.4
* Removing freenode from README
* Fix pedantic compilation flag violation (#1156)
* fix version recorded in releases (#1047)
* Implementation of random interleaving. (#1105)
* remove appveyor and add libera.chat as IRC resource
* [PFM] Extend perf counter support to multi-threaded cases. (#1153)
* Support -Wsuggest-override (#1059)
* Refactor `BenchmarkInstance` (#1148)
* Remove travis configs that are covered by actions (#1145)
* remove done TODOs
* add g++-6 to ubuntu-14.04 (#1144)
* Add MSVC ARM64 support to cmake (#1090)
* Add ubuntu-14.04 build and test workflow (#1131)
* Clean -Wreserved-identifier instances (#1143)
* Fix StrSplit empty string case (#1142)
* cmake: Add explicit BENCHMARK_ENABLE_LIBPFM option (#1141)
* Add API to benchmark allowing for custom context to be added (#1137)
* Add `benchmark_context` flag that allows per-run custom context. (#1127)
* Add multiple compiler support to build-and-test workflow (#1128)
* enable markdown rendering on github pages
* Support optional, user-directed collection of performance counters (#1114)
-------------------------------------------------------------------
Wed Apr 28 06:47:33 UTC 2021 - mpluskal@suse.com
- Update to version 1.5.3:
* Be compliant and return 0 from main.
* Fix windows warning on type conversion (#1121)
* Add verbosity to CI logs (#1122)
* fix cmake issue with referencing a non-existing function argument (#1118)
* [tools] Fix dumb mistake in previous commit - print aggregates only means aggregates, not non-aggregates
* [tools] Don't forget to print UTest when printing aggregates only
* [sysinfo] Fix CPU Frequency reading on AMD Ryzen CPU's (#1117)
* Use fewer ramp up repetitions when KeepRunningBatch is used (#1113)
* Add bazel status to README
* Re-enable bazel without bazelisk and with scoped build/test targets (#1109)
- Drop no longer needed 0001-src-benchmark_register.h-add-missing-limits-inclusio.patch
-------------------------------------------------------------------
Mon Feb 8 21:56:31 UTC 2021 - Christophe Giboudeaux <christophe@krop.fr>
- Add upstream patch to fix build with GCC 11 (boo#1181865):
* 0001-src-benchmark_register.h-add-missing-limits-inclusio.patch
-------------------------------------------------------------------
Tue Dec 29 15:45:59 UTC 2020 - Martin Pluskal <mpluskal@suse.com>
- Update to version 1.5.2:
* Timestamps in output are now rfc3339-formatted #965
* overflow warnings with timers fixed #980
* Python dependencies are now covered by a requirements.txt #994
* JSON output cleaned up when no CPU scaling is present (#1008)
* CartesianProduct added for easier settings of multiple ranges (#1029)
* Python bindings improvements:
+ Custom main functions (#993)
+ A rename to google_benchmark (#199
+ More state methods bound (#1037) with a builder interface (#1040)
* Workflow additions in github include pylint (#1039) and bindings runs (#1041)
-------------------------------------------------------------------
Mon Nov 18 23:15:31 UTC 2019 - Simon Lees <sflees@suse.de>
- %make_jobs is depricated replaced by %cmake_build
-------------------------------------------------------------------
Thu Oct 17 14:33:14 UTC 2019 - Richard Brown <rbrown@suse.com>
- Remove obsolete Groups tag (fate#326485)
-------------------------------------------------------------------
Mon Jun 24 07:26:21 UTC 2019 - Martin Pluskal <mpluskal@suse.com>
- Update to version 1.5.0:
* Bump CMake minimum version to 3.5.1 (see dependencies.md)
* Add threads and repetitions to the JSON outputa
* Memory management and reporting hooks
* Documentation improvements
* Miscellaneous build fixes
- Disable gtest part of tests untill new gtest is available
-------------------------------------------------------------------
Sat Feb 23 10:47:16 UTC 2019 - Luigi Baldoni <aloisio@gmx.com>
- Use arch-specific libdir in pkgconfig file
-------------------------------------------------------------------
Mon Feb 18 09:52:40 UTC 2019 - Luigi Baldoni <aloisio@gmx.com>
- Use arch-specific directories for support files
-------------------------------------------------------------------
Mon Jun 25 11:56:55 UTC 2018 - mpluskal@suse.com
- Enable lto
- Update dependencies
-------------------------------------------------------------------
Mon May 28 21:43:24 UTC 2018 - avindra@opensuse.org
- Update to version 1.4.1
* Realign expectation that State::iterations() returns 0 before
the main benchmark loop begins.
* CMake error message fixes
* Enscripten check fix
* Bazel pthread linking
* Negative regexes
* gmock fix
-------------------------------------------------------------------
Wed Apr 4 22:20:14 UTC 2018 - avindra@opensuse.org
- Update to version 1.4.0
* Removal of deprecated headers
* Improved CPU cache info reporting
* Support State::KeepRunningBatch()
* Support int64_t for AddRange()
* New platform support: NetBSD, s390x, Solaris
* Bazel build support
* Support googletest unit tests
* Add assembler tests
* Various warnings fixed
- Drop benchmark-s390.patch
* fixed upstream (commit ff2c255af5bb2fc2e5cd3b3685f0c6283117ce73)
-------------------------------------------------------------------
Tue Mar 27 03:25:41 UTC 2018 - stefan.bruens@rwth-aachen.de
- Remove ExclusiveArch, it works on non-x86 as well
-------------------------------------------------------------------
Fri Mar 16 18:38:52 UTC 2018 - avindra@opensuse.org
- Update to version 1.3.0:
* Ranged for loop optimization!
* Make installation optional
* Better stats including user-provided ones
* JSON reporter format fixes
* Documentation improvements
- Includes changes from 1.2.0:
* User-defined counters
* Single header library
* Ability to clear benchmarks so the runtime registration is more flexible
* Sample-based standard deviation
* 32-bit build enabled
* Bug fixes
- Cleanup with spec-cleaner
- Use %ctest macro for testing
-------------------------------------------------------------------
Fri Jan 27 14:46:11 UTC 2017 - mpluskal@suse.com
- Update to version 1.1.0:
* ArgNames support
* Fixes for OSX and Cygwin and MSVC builds
* PauseTiming and ResumeTiming are per thread (#286)
* Better Range and Arg specifications
* Complexity reporting
-------------------------------------------------------------------
Fri Jan 27 14:28:26 UTC 2017 - bg@suse.com
- add support for s390x:
* benchmark-s390.patch
-------------------------------------------------------------------
Sat Nov 12 13:43:21 CET 2016 - ro@suse.de
- add ExclusiveArch, package is not ported to anything but
x86 and x86_64
-------------------------------------------------------------------
Mon Jul 4 09:24:59 UTC 2016 - mpluskal@suse.com
- Disable lto as it does not seem to go well with -fPIE
-------------------------------------------------------------------
Sat May 14 17:15:41 UTC 2016 - mpluskal@suse.com
- Initial package for version 1.0.0

4
benchmark.obsinfo Normal file
View File

@ -0,0 +1,4 @@
name: benchmark
version: 1.8.5
mtime: 1721297584
commit: a6ad7fbbdc2e14fab82bb8a6d27760d700198cbf

102
benchmark.spec Normal file
View File

@ -0,0 +1,102 @@
#
# spec file for package benchmark
#
# Copyright (c) 2024 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%define soname lib%{name}
%define sover 1
Name: benchmark
Version: 1.8.5
Release: 0
Summary: A microbenchmark support library
License: Apache-2.0
URL: https://github.com/google/benchmark
Source: %{name}-%{version}.tar.gz
#Patch0: gcc12-disable-Werror=maybe-uninitialized.patch
BuildRequires: cmake >= 3.5.1
BuildRequires: gcc-c++
BuildRequires: git-core
BuildRequires: gmock
BuildRequires: gtest
BuildRequires: pkgconfig
%description
A library to support the benchmarking of functions, similar to unit-tests.
%package -n %{soname}%{sover}
Summary: Shared library for google benchmark
%description -n %{soname}%{sover}
A library to support the benchmarking of functions, similar to unit-tests.
%package devel
Summary: Development files for google benchmark
Requires: %{soname}%{sover} = %{version}
%description devel
Development files for google benchmark library
%prep
%autosetup
%build
sed -e 's|lib_install_dir "lib/"|lib_install_dir "%{_libdir}/"|g' \
-e 's|config_install_dir "lib/cmake|config_install_dir "%{_libdir}/cmake|g' \
-e 's|pkgconfig_install_dir "lib/pkgconfig"|pkgconfig_install_dir "%{_libdir}/pkgconfig"|g' \
-i src/CMakeLists.txt
sed -e 's|libdir=${prefix}/lib|libdir=${prefix}/%{_lib}|' \
-i cmake/benchmark.pc.in
%cmake \
-DBENCHMARK_ENABLE_LTO=on \
-DBENCHMARK_ENABLE_GTEST_TESTS=false \
-DBENCHMARK_ENABLE_TESTING=true
%cmake_build
%install
%cmake_install
# dont ship debug stuff
rm -rf %{buildroot}%{_libexecdir}/debug
# doc will be installed in different location
# Location differs between TW and SLE/Leap, clear both
rm -rf %{buildroot}%{_datadir}/doc/benchmark
rm -rf %{buildroot}%{_datadir}/doc/packages/benchmark
%check
# path needs to be exported otherwise unit tests will fail
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:%{_builddir}/%{name}-%{version}/build/src/
%ctest
%ldconfig_scriptlets -n %{soname}%{sover}
%files -n %{soname}%{sover}
%license LICENSE
%doc README.md AUTHORS
%{_libdir}/%{soname}.so.%{sover}*
%{_libdir}/%{soname}_main.so.%{sover}*
%files devel
%license LICENSE
%doc README.md AUTHORS docs/*
%dir %{_libdir}/cmake/%{name}
%{_libdir}/cmake/%{name}/*.cmake
%{_libdir}/pkgconfig/%{name}.pc
/usr/lib64/pkgconfig/%{name}_main.pc
%{_libdir}/%{soname}.so
%{_libdir}/%{soname}_main.so
%{_includedir}/%{name}
%changelog

View File

@ -0,0 +1,12 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index b8852e4..4363fa1 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -238,6 +238,7 @@ else()
if (BENCHMARK_ENABLE_LTO)
add_cxx_compiler_flag(-flto)
add_cxx_compiler_flag(-Wno-lto-type-mismatch)
+ add_cxx_compiler_flag(-Wno-error=maybe-uninitialized)
if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
find_program(GCC_AR gcc-ar)
if (GCC_AR)