Update to latest libmodular_arithmetic #66
This file contains hidden or 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: ci | |
| on: | |
| push: | |
| branches-ignore: | |
| - gh-pages | |
| pull_request: | |
| branches-ignore: | |
| - gh-pages | |
| jobs: | |
| linux_gcc: | |
| strategy: | |
| matrix: | |
| platform: ['ubuntu-latest'] | |
| config: ['Debug', 'Release'] | |
| runs-on: ${{ matrix.platform }} | |
| env: | |
| CC: gcc | |
| CXX: g++ | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Build pseudosquares_prime_sieve | |
| run: | | |
| cmake . -DCMAKE_BUILD_TYPE=${{matrix.config}} -DCMAKE_C_FLAGS="-O3 -Wall -Wextra -pedantic -Werror" -DCMAKE_CXX_FLAGS="-O3 -Wall -Wextra -pedantic -Werror" | |
| cmake --build . --parallel --verbose | |
| - name: Unit tests | |
| run: ./tests | |
| linux_clang: | |
| strategy: | |
| matrix: | |
| platform: ['ubuntu-latest'] | |
| config: ['Debug', 'Release'] | |
| runs-on: ${{ matrix.platform }} | |
| env: | |
| CC: clang | |
| CXX: clang++ | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Build pseudosquares_prime_sieve | |
| run: | | |
| cmake . -DCMAKE_BUILD_TYPE=${{matrix.config}} -DCMAKE_C_FLAGS="-O3 -Wall -Wextra -pedantic -Werror" -DCMAKE_CXX_FLAGS="-O3 -Wall -Wextra -pedantic -Werror" | |
| cmake --build . --parallel --verbose | |
| - name: Unit tests | |
| run: ./tests | |
| # See documentation: https://www.msys2.org/docs/ci/ | |
| windows_mingw64: | |
| strategy: | |
| matrix: | |
| platform: ['windows-latest'] | |
| config: ['Debug', 'Release'] | |
| runs-on: ${{ matrix.platform }} | |
| defaults: | |
| run: | |
| shell: msys2 {0} | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: msys2/setup-msys2@v2 | |
| with: | |
| update: true | |
| install: base-devel mingw-w64-x86_64-toolchain mingw-w64-x86_64-cmake | |
| - name: Build pseudosquares_prime_sieve | |
| run: | | |
| cmake . -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=${{matrix.config}} -DCMAKE_C_FLAGS="-O3 -Wall -Wextra -pedantic -Werror" -DCMAKE_CXX_FLAGS="-O3 -Wall -Wextra -pedantic -Werror" | |
| cmake --build . --parallel --verbose | |
| - name: Unit tests | |
| run: ./tests | |
| macos_clang: | |
| strategy: | |
| matrix: | |
| platform: ['macos-latest'] | |
| config: ['Debug', 'Release'] | |
| runs-on: ${{ matrix.platform }} | |
| env: | |
| CC: clang | |
| CXX: clang++ | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Build pseudosquares_prime_sieve | |
| run: | | |
| cmake . -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=${{matrix.config}} -DCMAKE_C_FLAGS="-O3 -Wall -Wextra -pedantic -Werror" -DCMAKE_CXX_FLAGS="-O3 -Wall -Wextra -pedantic -Werror" | |
| cmake --build . --parallel --verbose | |
| - name: Unit tests | |
| run: ./tests | |
| linux_gcc_sanitizers: | |
| runs-on: ubuntu-latest | |
| env: | |
| CC: gcc | |
| CXX: g++ | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Build pseudosquares_prime_sieve | |
| run: | | |
| cmake . -DBUILD_SHARED_LIBS=OFF -DCMAKE_BUILD_TYPE=Debug -DCMAKE_C_FLAGS="-Wall -Wextra -pedantic -Werror -O2 -g -fsanitize=address -fsanitize=undefined -fno-sanitize-recover=all -fno-omit-frame-pointer" -DCMAKE_CXX_FLAGS="-Wall -Wextra -pedantic -Werror -O2 -g -fsanitize=address -fsanitize=undefined -fno-sanitize-recover=all -fno-omit-frame-pointer" | |
| cmake --build . --parallel --verbose | |
| - name: Unit tests | |
| run: ./tests | |
| - name: pseudosquares_prime_sieve 1e8 --threads=4 | |
| run: ./pseudosquares_prime_sieve 1e8 --threads=4 | |
| - name: pseudosquares_prime_sieve 1e25 1e25+1e5 | |
| run: ./pseudosquares_prime_sieve 1e25 1e25+1e5 | |
| linux_gcc_valgrind: | |
| runs-on: ubuntu-latest | |
| env: | |
| CC: gcc | |
| CXX: g++ | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Install valgrind | |
| run: | | |
| sudo apt update | |
| sudo apt install valgrind | |
| - name: Build pseudosquares_prime_sieve | |
| run: | | |
| cmake . -DCMAKE_C_FLAGS="-Wall -Wextra -pedantic -Werror -g" -DCMAKE_CXX_FLAGS="-Wall -Wextra -pedantic -Werror -g" | |
| cmake --build . --parallel --verbose | |
| - name: Valgrind pseudosquares_prime_sieve 1e8 | |
| run: valgrind --error-exitcode=1 ./pseudosquares_prime_sieve 1e8 | |
| - name: Valgrind pseudosquares_prime_sieve --print | |
| run: valgrind --error-exitcode=1 ./pseudosquares_prime_sieve 10000 --print |