cmake.yml 2.83 KB
Newer Older
greole's avatar
greole committed
1
2
3
4
5
6
7
8
9
10
11
12
13
14
name: CMake

on: [push]

env:
  # Customize the CMake build type here (Release, Debug, RelWithDebInfo, etc.)
  BUILD_TYPE: Release

jobs:
  build:
    # The CMake configure and build commands are platform agnostic and should work equally
    # well on Windows or Mac.  You can convert this to a matrix build if you need
    # cross-platform coverage.
    # See: https://docs.github.com/en/free-pro-team@latest/actions/learn-github-actions/managing-complex-workflows#using-a-build-matrix
greole's avatar
greole committed
15
16
    runs-on: ubuntu-latest    
    env:
greole's avatar
greole committed
17
18
19
20
      BASE: ~/OpenFOAM/OpenFOAM-8/
      BASE_: ~/OpenFOAM/OpenFOAM-8/
      FOAM_SRC: ~/OpenFOAM/OpenFOAM-8/src
      FOAM_USER_LIBBIN: ~/OpenFOAM/OpenFOAM-8/platforms
greole's avatar
greole committed
21
    
greole's avatar
greole committed
22
    steps:
greole's avatar
greole committed
23
    - name: Setup OpenFOAM Directory
greole's avatar
greole committed
24
25
26
      # Create OpenFOAM directory and clone
      run: mkdir -p ~/OpenFOAM
      
greole's avatar
greole committed
27
28
    - name: Clone OpenFOAM 
      # Clone OpenFOAM
greole's avatar
greole committed
29
      run: git clone  --depth 1 https://github.com/OpenFOAM/OpenFOAM-8.git  $BASE
greole's avatar
greole committed
30
      
greole's avatar
greole committed
31
32
33
34
35
    - name: Make of bashrc executable
      # Clone OpenFOAM
      run: chmod +x ./$BASE/etc/bashrc
      
    - name: dot source bash_rc 
greole's avatar
greole committed
36
      # Clone OpenFOAM
greole's avatar
greole committed
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
      run: . ./$BASE/etc/bashrc
  
    - name: get results of dot source
      # Clone OpenFOAM
      run: echo $WM_PROJECT
      

    - name: Show OpenFOAM folder
      run: ls $BASE
    - name: Show OpenFOAM folder
      run: ls $BASE_
      
    - name: Show OpenFOAM folder
      run: echo $FOAM_SRC
      
    - name: Show OpenFOAM folder
      run: ls $FOAM_SRC
greole's avatar
greole committed
54
      
greole's avatar
greole committed
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
    - uses: actions/checkout@v2

    - name: Create Build Environment
      # Some projects don't allow in-source building, so create a separate build directory
      # We'll use this as our working directory for all subsequent commands
      run: cmake -E make_directory ${{github.workspace}}/build

    - name: Configure CMake
      # Use a bash shell so we can use the same syntax for environment variable
      # access regardless of the host operating system
      shell: bash
      working-directory: ${{github.workspace}}/build
      # Note the current convention is to use the -S and -B options here to specify source 
      # and build directories, but this is only available with CMake 3.13 and higher.  
      # The CMake binaries on the Github Actions machines are (as of this writing) 3.12
greole's avatar
greole committed
70
      run: cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=$BUILD_TYPE -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON 
greole's avatar
greole committed
71
72
73
74
75
76
77
78
79
80
81
82
83

    - name: Build
      working-directory: ${{github.workspace}}/build
      shell: bash
      # Execute the build.  You can specify a specific target with "--target <NAME>"
      run: cmake --build . --config $BUILD_TYPE

    - name: Test
      working-directory: ${{github.workspace}}/build
      shell: bash
      # Execute tests defined by the CMake configuration.  
      # See https://cmake.org/cmake/help/latest/manual/ctest.1.html for more detail
      run: ctest -C $BUILD_TYPE