| name: build-and-test-perfcounters |
| |
| on: |
| push: |
| branches: [ main ] |
| pull_request: |
| branches: [ main ] |
| |
| jobs: |
| job: |
| # TODO(dominic): Extend this to include compiler and set through env: CC/CXX. |
| name: ${{ matrix.os }}.${{ matrix.build_type }} |
| runs-on: ${{ matrix.os }} |
| strategy: |
| fail-fast: false |
| matrix: |
| os: [ubuntu-22.04, ubuntu-20.04] |
| build_type: ['Release', 'Debug'] |
| steps: |
| - uses: actions/checkout@v3 |
| |
| - name: install libpfm |
| run: | |
| sudo apt update |
| sudo apt -y install libpfm4-dev |
| |
| - name: create build environment |
| run: cmake -E make_directory ${{ runner.workspace }}/_build |
| |
| - name: configure cmake |
| shell: bash |
| working-directory: ${{ runner.workspace }}/_build |
| run: > |
| cmake $GITHUB_WORKSPACE |
| -DBENCHMARK_ENABLE_LIBPFM=1 |
| -DBENCHMARK_DOWNLOAD_DEPENDENCIES=ON |
| -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} |
| |
| - name: build |
| shell: bash |
| working-directory: ${{ runner.workspace }}/_build |
| run: cmake --build . --config ${{ matrix.build_type }} |
| |
| # Skip testing, for now. It seems perf_event_open does not succeed on the |
| # hosting machine, very likely a permissions issue. |
| # TODO(mtrofin): Enable test. |
| # - name: test |
| # shell: bash |
| # working-directory: ${{ runner.workspace }}/_build |
| # run: ctest -C ${{ matrix.build_type }} --rerun-failed --output-on-failure |
| |