Paritally addresses: #32770
This PR disables the slow secp256
test suites by default, both in CI runs and normal developer builds/tests. These tests are static in every run, except for the case in which we update the secp256 subtree.
This is done by decoupling the SECP256K1_BUILD_TESTS
and SECP256K1_BUILD_EXHAUSTIVE_TESTS
variables from the ${BUILD_TESTS}
configuration, allowing them to be selected individually.
We would likely still like to run these tests when the subtree is updated. To do this a standalone workflow is provided which runs only when modifications to src/secp256k1/**
are detected.
This reduces unit test runtime on my machine from ~30 seconds to ~10 seconds. On slower CI machines these tests are taking up to 10 minutes to run, so we may save up to 6 minutes of runtime per CI run.