File: main.yml

package info (click to toggle)
poselib 2.0.5-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 1,592 kB
  • sloc: cpp: 15,023; python: 182; sh: 85; makefile: 10
file content (55 lines) | stat: -rw-r--r-- 1,425 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
name: Build PoseLib

on:
  pull_request:
    branches:
      - '**'
  push:
    branches:    
      - master

env:
  BUILD_CONFIGURATION: Release
  LIBRARY_TYPE: OFF  # Static libraries
  BUILD_DIR: _build
  INSTALL_DIR: _install

jobs:
  CI-pipeline:
    runs-on: ubuntu-latest
    
    steps:
    - uses: actions/checkout@v3
      with:
        # Fetches all submodules recursively.
        submodules: 'recursive'

    - name: Install Eigen3 Dependency
      run: |
        sudo apt-get update && \
        sudo apt-get install -y libeigen3-dev clang-format

    - name: Check formatting using clang-format
      run: |
        git ls-files | grep -E '\.(cc|h)$' | xargs clang-format -i --verbose
        git diff --exit-code || (echo "Code format check failed, run clang-format to fix it." && exit 1)


    - name: Setup CMake Configuration
      run: |
        cmake \
          -B ${{github.workspace}}/${{env.BUILD_DIR}} \
          -DWITH_BENCHMARK=ON \
          -DCMAKE_BUILD_TYPE=${{env.BUILD_CONFIGURATION}} \
          -DBUILD_SHARED_LIBS=${{env.LIBRARY_TYPE}} \
          -DCMAKE_INSTALL_PREFIX=${{github.workspace}}/${{env.INSTALL_DIR}}

    - name: Compile and Install
      run: |
        cmake \
          --build ${{github.workspace}}/${{env.BUILD_DIR}} \
          --target install \
          -j $(nproc)

    - name: Execute Benchmark
      run: ${{github.workspace}}/${{env.INSTALL_DIR}}/bin/benchmark