Skip to content

ci: trigger build again #46

ci: trigger build again

ci: trigger build again #46

Workflow file for this run

name: CMake
on: [push]
env:
# Customize the CMake build type here (Release, Debug, RelWithDebInfo, etc.)
BUILD_TYPE: Release
jobs:
build:
name: ${{ matrix.config.name }}
runs-on: ${{ matrix.config.os }}
strategy:
fail-fast: true
matrix:
config:
- {
name: "Windows Latest MSVC", artifact: "Windows-MSVC.7z",
os: windows-latest,
cc: "cl", cxx: "cl",
environment_script: "C:/Program Files (x86)/Microsoft Visual Studio/2019/Enterprise/VC/Auxiliary/Build/vcvars64.bat"
}
- {
name: "Windows Latest MinGW", artifact: "Windows-MinGW.7z",
os: windows-latest,
cc: "gcc", cxx: "g++"
}
steps:
- 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 ${{runner.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: ${{runner.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
run: cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=$BUILD_TYPE -DFileWatch_Build_Tests=ON -DFileWatch_Build_Tests_FileSystem=ON
- name: Build
working-directory: ${{runner.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: ${{runner.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
linux:
name: ${{ matrix.config.name }} ${{ matrix.config.cxx }}
runs-on: ${{ matrix.config.os }}
strategy:
fail-fast: true
matrix:
config:
- {
name: "Ubuntu 18.04", artifact: "Linux.7z",
os: ubuntu-18.04,
cc: "gcc-10", cxx: "g++-10",
build-file-system: 'ON'
}
- {
name: "Ubuntu 18.04", artifact: "Linux.7z",
os: ubuntu-18.04,
cc: "gcc-9", cxx: "g++-9",
build-file-system: 'ON'
}
- {
name: "Ubuntu 18.04", artifact: "Linux.7z",
os: ubuntu-18.04,
cc: "gcc-8", cxx: "g++-8",
build-file-system: 'ON'
}
- {
name: "Ubuntu 18.04", artifact: "Linux.7z",
os: ubuntu-18.04,
cc: "gcc-7", cxx: "g++-7",
build-file-system: 'OFF'
}
- {
name: "Ubuntu 18.04", artifact: "Linux.7z",
os: ubuntu-18.04,
cc: "gcc-6", cxx: "g++-6",
build-file-system: 'OFF'
}
- {
name: "Ubuntu 18.04", artifact: "Linux.7z",
os: ubuntu-18.04,
cc: "gcc-5", cxx: "g++-5",
build-file-system: 'OFF'
}
- {
name: "Ubuntu 18.04", artifact: "Linux.7z",
os: ubuntu-18.04,
cc: "gcc-4.8", cxx: "g++-4.8",
build-file-system: 'OFF'
}
steps:
- uses: actions/checkout@v2
- name: Install Compiler
shell: bash
run: |
sudo apt update
sudo apt install ${{matrix.config.cc}} ${{matrix.config.cxx}}
- 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 ${{runner.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: ${{runner.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
run: cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=$BUILD_TYPE -DFileWatch_Build_Tests=ON -DFileWatch_Build_Tests_FileSystem=${{matrix.config.build-file-system}}
env:
CC: ${{matrix.config.cc}}
CXX: ${{matrix.config.cxx}}
- name: Build
working-directory: ${{runner.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: ${{runner.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
clang:
name: ${{ matrix.config.name }} clang ${{ matrix.config.clang-version }}
runs-on: ${{ matrix.config.os }}
strategy:
fail-fast: true
matrix:
config:
- {
name: "Ubuntu 18.04", artifact: "Linux.7z",
os: ubuntu-18.04,
clang-version: "4.0",
build-file-system: 'OFF'
}
- {
name: "Ubuntu 18.04", artifact: "Linux.7z",
os: ubuntu-18.04,
clang-version: "5.0",
build-file-system: 'OFF'
}
- {
name: "Ubuntu 18.04", artifact: "Linux.7z",
os: ubuntu-18.04,
clang-version: "6.0",
build-file-system: 'OFF'
}
- {
name: "Ubuntu 18.04", artifact: "Linux.7z",
os: ubuntu-18.04,
clang-version: "7",
build-file-system: 'OFF'
}
- {
name: "Ubuntu 18.04", artifact: "Linux.7z",
os: ubuntu-18.04,
clang-version: "8",
build-file-system: 'ON'
}
- {
name: "Ubuntu 18.04", artifact: "Linux.7z",
os: ubuntu-18.04,
clang-version: "9",
build-file-system: 'ON'
}
- {
name: "Ubuntu 18.04", artifact: "Linux.7z",
os: ubuntu-18.04,
clang-version: "10",
build-file-system: 'ON'
}
steps:
- uses: actions/checkout@v2
- name: Install Compiler
shell: bash
run: |
sudo apt-get update -y
sudo apt-get install clang-${{matrix.config.clang-version}} -y
sudo update-alternatives --install /usr/bin/cc cc /usr/bin/clang-${{ matrix.config.clang-version }} 100
sudo update-alternatives --install /usr/bin/c++ c++ /usr/bin/clang-${{ matrix.config.clang-version }} 100
- 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 ${{runner.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: ${{runner.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
run: cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=$BUILD_TYPE -DFileWatch_Build_Tests=ON -DFileWatch_Build_Tests_FileSystem=${{matrix.config.build-file-system}}
- name: Build
working-directory: ${{runner.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: ${{runner.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
macos:
name: ${{ matrix.config.name }} ${{ matrix.config.cxx }}
runs-on: ${{ matrix.config.os }}
strategy:
fail-fast: true
matrix:
config:
- {
name: "MacOS 11", artifact: "macos.7z",
os: macos-11,
cc: "clang", cxx: "clang++",
build-file-system: 'ON'
}
- {
name: MacOS 12", artifact: "macos.7z",
os: macos-12,
cc: "clang", cxx: "clang++",
build-file-system: 'ON'
}
steps:
- 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 ${{runner.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: ${{runner.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
run: cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=$BUILD_TYPE -DFileWatch_Build_Tests=ON -DFileWatch_Build_Tests_FileSystem=${{matrix.config.build-file-system}}
env:
CC: ${{matrix.config.cc}}
CXX: ${{matrix.config.cxx}}
- name: Build
working-directory: ${{runner.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: ${{runner.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