Merge v0.3.0 in FROST #12
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build using cmake | |
# In secp256k1 some assertions are not exactly equal when coverage is enabled | |
# and when it is not. Hence, it is better to run the two cases separately. | |
on: | |
push: | |
branches: | |
- frost | |
pull_request: | |
# Allows you to run this workflow manually from the Actions tab | |
workflow_dispatch: | |
jobs: | |
build-with-cmake: | |
runs-on: ubuntu-22.04 | |
# Use fedora:38 to compile using gcc-13 | |
container: | |
image: fedora:38 | |
steps: | |
- name: Install build dependencies | |
run: | | |
dnf install -y \ | |
autoconf \ | |
automake \ | |
gcc \ | |
gcovr \ | |
libtool \ | |
pkg-config \ | |
cmake | |
- uses: actions/checkout@v3 | |
with: | |
fetch-depth: 1 | |
- name: Create and enter build directory | |
continue-on-error: false | |
run: | | |
mkdir _build | |
cd _build | |
- name: Build with CMake | |
run: | | |
cmake -DCMAKE_C_FLAGS="-Werror" -DCMAKE_BUILD_TYPE="Release" -DSECP256K1_EXPERIMENTAL=ON -DSECP256K1_ENABLE_MODULE_FROST=ON -DSECP256K1_BUILD_BENCHMARK=OFF -DSECP256K1_BUILD_EXAMPLES=ON -DSECP256K1_BUILD_EXHAUSTIVE_TESTS=OFF -DSECP256K1_BUILD_TESTS=ON . | |
make -j | |
- name: Run FROST example | |
continue-on-error: true | |
id: run_frost_example | |
run: | | |
./examples/frost_example | |
- name: Functional tests with -Werror, no code coverage | |
continue-on-error: true | |
id: tests_no_coverage | |
run: | | |
./src/tests | |
- name: Summarize outcomes. Fail if any step failed. | |
run: | | |
# summary | |
RED='\033[0;31m' | |
GREEN='\033[0;32m' | |
NC='\033[0m' # No Color | |
echo -n "FROST example: " | |
if [[ ${{ steps.run_frost_example.outcome }} == "success" ]]; then | |
printf "${GREEN}SUCCESS${NC}\n" | |
else | |
printf "${RED}FAIL${NC} (${{ steps.run_frost_example.outcome }}), please check\n" | |
fi | |
echo -n "Functional tests with -Werror, no code coverage: " | |
if [[ ${{ steps.tests_no_coverage.outcome }} == "success" ]]; then | |
printf "${GREEN}SUCCESS${NC}\n" | |
else | |
printf "${RED}FAIL${NC} (${{ steps.tests_no_coverage.outcome }}), please check\n" | |
fi | |
if [[ ${{ steps.tests_with_coverage.outcome }} != "success" ]] || [[ ${{ steps.tests_no_coverage.outcome }} != "success" ]]; then | |
exit 1 | |
fi |