ci: Optimize build matrix #1046

pull real-or-random wants to merge 6 commits into bitcoin-core:master from real-or-random:202112-ci-matrix changing 4 files +71 −85
  1. real-or-random commented at 11:41 am on December 20, 2021: contributor
    • Removes STATICPRECOMPUTATION from CI (left-over from #988)
    • Optimizes the Linux build matrix (more coverage with fewer jobs)
    • Trims down the MacOS build matrix: MacOS jobs take roughly 10x time as compared Linux jobs, so I think we should run only some basic tests. And anyway, they target gcc and clang for x86_64, which is covered by the Linux jobs already. (And they currently fail due to some homebrew server being down but that’s a different issue…)

    I’m working on a further PR that adds MSVCs build on native Windows. This will give us a real new dimension in the configuration space. And there’s still the idea to build with multiple versions of gcc and clang.

  2. real-or-random force-pushed on Dec 20, 2021
  3. precompute_ecmult: Always compute all tables up to default WINDOW_G
    Also simplify #ifdefs in generated file.
    10461d8bd3
  4. ci: Remove STATICPRECOMPUTATION
    This has been overlooked in #988.
    26a022a3a0
  5. ci: Test different ecmult window sizes 151cffc36c
  6. real-or-random force-pushed on Dec 20, 2021
  7. real-or-random commented at 1:20 pm on December 20, 2021: contributor
    Added the commit “precompute_ecmult: Always compute all tables up to default WINDOW_G” to make sure the new CI check that the build does not modify the precomp files passed (introduced by https://github.com/bitcoin-core/secp256k1/commit/bb36fe9be0998c81ebc9f18e122bb7617d919877).
  8. real-or-random commented at 2:49 pm on December 20, 2021: contributor

    MacOS jobs take roughly 10x time as compared Linux jobs, so I think we should run only some basic tests. And anyway, they target gcc and clang for x86_64, which is covered by the Linux jobs already. (And they currently fail due to some homebrew server being down but that’s a different issue…)

    Oh I think the reason is that we never update brew (and the catalina image provided by Cirrus is old and deprecated). Since the brew binary URL has moved, it always needs to fall back to building deps (autotools) from source, which currently fails because gnu.org is down…

    Let’s see if a newer brew fixes this. Then I may reconsider the commit that trims the macOS matrix.

    We’re stuck to old macOS Catalina because valgrind doesn’t work on the latest versions and even the unoffical fork we use does only support Catalina (https://github.com/LouisBrunner/valgrind-macos/issues/19). Do you think we should stick to Catalina or move on (and drop Valgrind builds on macOS)?

  9. real-or-random marked this as a draft on Dec 20, 2021
  10. real-or-random force-pushed on Dec 20, 2021
  11. real-or-random marked this as ready for review on Dec 20, 2021
  12. real-or-random force-pushed on Dec 20, 2021
  13. real-or-random marked this as a draft on Dec 20, 2021
  14. real-or-random commented at 4:33 pm on December 20, 2021: contributor

    This is WIP.

    I unmarked and marked again as draft trigger CI (which does not run on draft PRs…)

  15. real-or-random commented at 5:28 pm on December 20, 2021: contributor
    Opened https://github.com/cirruslabs/osx-images/issues/41 to avoid adding brew update to every macOS task, which takes a few minutes.
  16. ci: Run brew update on macOS
    ... and remove non-existing --shallow argument from brew tap.
    358f587775
  17. ci: Use Cirrus "greedy" flag to use idle CPU time when available 2168b1d27f
  18. ci: Optimize build matrix dacab1b20d
  19. real-or-random force-pushed on Dec 21, 2021
  20. real-or-random closed this on Dec 21, 2021

  21. real-or-random cross-referenced this on Dec 21, 2021 from issue ci: Various improvements by real-or-random


real-or-random


github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin-core/secp256k1. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2024-10-30 05:15 UTC

This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me