Browse Source

Create cmake.yml

master
Trevor Irons 3 years ago
parent
commit
209a1e6f94
No account linked to committer's email address
1 changed files with 46 additions and 0 deletions
  1. 46
    0
      .github/workflows/cmake.yml

+ 46
- 0
.github/workflows/cmake.yml View File

@@ -0,0 +1,46 @@
1
+name: CMake
2
+
3
+on: [push]
4
+
5
+env:
6
+  # Customize the CMake build type here (Release, Debug, RelWithDebInfo, etc.)
7
+  BUILD_TYPE: Release
8
+
9
+jobs:
10
+  build:
11
+    # The CMake configure and build commands are platform agnostic and should work equally
12
+    # well on Windows or Mac.  You can convert this to a matrix build if you need
13
+    # cross-platform coverage.
14
+    # See: https://docs.github.com/en/free-pro-team@latest/actions/learn-github-actions/managing-complex-workflows#using-a-build-matrix
15
+    runs-on: ubuntu-latest
16
+
17
+    steps:
18
+    - uses: actions/checkout@v2
19
+
20
+    - name: Create Build Environment
21
+      # Some projects don't allow in-source building, so create a separate build directory
22
+      # We'll use this as our working directory for all subsequent commands
23
+      run: cmake -E make_directory ${{runner.workspace}}/build
24
+
25
+    - name: Configure CMake
26
+      # Use a bash shell so we can use the same syntax for environment variable
27
+      # access regardless of the host operating system
28
+      shell: bash
29
+      working-directory: ${{runner.workspace}}/build
30
+      # Note the current convention is to use the -S and -B options here to specify source 
31
+      # and build directories, but this is only available with CMake 3.13 and higher.  
32
+      # The CMake binaries on the Github Actions machines are (as of this writing) 3.12
33
+      run: cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=$BUILD_TYPE
34
+
35
+    - name: Build
36
+      working-directory: ${{runner.workspace}}/build
37
+      shell: bash
38
+      # Execute the build.  You can specify a specific target with "--target <NAME>"
39
+      run: cmake --build . --config $BUILD_TYPE
40
+
41
+    - name: Test
42
+      working-directory: ${{runner.workspace}}/build
43
+      shell: bash
44
+      # Execute tests defined by the CMake configuration.  
45
+      # See https://cmake.org/cmake/help/latest/manual/ctest.1.html for more detail
46
+      run: ctest -C $BUILD_TYPE

Loading…
Cancel
Save