diff --git a/.github/workflows/presubmit.yml b/.github/workflows/presubmit.yml index fbdb01f4..633a5b2f 100644 --- a/.github/workflows/presubmit.yml +++ b/.github/workflows/presubmit.yml @@ -79,6 +79,39 @@ jobs: build/**/*.log build/config.log + build-and-check-thread-safe: + needs: pre_job + if: ${{ needs.pre_job.outputs.should_skip != 'true' }} + name: Build and Check Thread Safe ${{ matrix.os }} + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-latest, macos-latest] + + steps: + - uses: actions/checkout@v3 + - run: sudo apt update; sudo apt install -y gcc ruby-dev libgsl-dev python3-dev + if: ${{ matrix.os == 'ubuntu-latest' }} + - run: brew install gsl automake + if: ${{ matrix.os == 'macos-latest' }} + - run: gem install --user-install rake ffi ffi-value whittle + - run: pip3 install --user parglare==0.12.0 + - run: ./autogen.sh + - run: mkdir -p build + - run: ../configure --enable-strict --enable-thread-safe + working-directory: build + - run: make -j + working-directory: build + - run: make -j check + working-directory: build + - uses: actions/upload-artifact@v2 + if: failure() + with: + name: build-and-check + path: | + build/**/*.log + build/config.log + build-and-check-clang: needs: pre_job if: ${{ needs.pre_job.outputs.should_skip != 'true' }} @@ -129,7 +162,9 @@ jobs: working-directory: build - run: make -j working-directory: build - - run: make -j check-valgrind + - run: make -j check-valgrind-memgrind + working-directory: build + - run: make -j check-valgrind-helgrind working-directory: build - uses: actions/upload-artifact@v2 if: failure()