Skip to content

Merge tag '3.1.0' into develop #109

Merge tag '3.1.0' into develop

Merge tag '3.1.0' into develop #109

Workflow file for this run

name: Windows
on:
push:
branches-ignore:
- 'feature/*'
pull_request:
branches-ignore:
- 'feature/*'
env:
# Customize the CMake build type here (Release, Debug, RelWithDebInfo, etc.)
BUILD_TYPE: Release
CXX: cl
EXPERIMENTAL: ""
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/actions/configuring-and-managing-workflows/configuring-a-workflow#configuring-a-build-matrix
runs-on: windows-latest
steps:
- uses: actions/checkout@v2
- uses: ilammy/[email protected]
- name: Install gtest manually
run: git clone https://github.com/google/googletest.git && cd googletest && mkdir build && cd build && cmake .. -DGTEST_CREATE_SHARED_LIBRARY=1 -Dgtest_force_shared_crt=ON -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON && cmake --build . --config Release && cmake --install . --config Release
- 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}}/GHOST/build
- name: Configure CMake
# Use a cmd shell so we can use the same syntax for environment variable
# access regardless of the host operating system
shell: cmd
working-directory: ${{runner.workspace}}/GHOST/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 -DCMAKE_WINDOWS_EXPORT_ALL_SYMBOLS=TRUE -DCMAKE_BUILD_TYPE=$BUILD_TYPE -DCMAKE_CXX_COMPILER=$CXX $EXPERIMENTAL ..
- name: Build GHOST
working-directory: ${{runner.workspace}}/GHOST/build
shell: cmd
run: cmake --build . --config Release
- name: Install GHOST
working-directory: ${{runner.workspace}}/GHOST/build
shell: cmd
run: cmake --install . --config Release --prefix "C:\Program Files (x86)\ghost"
- name: Build Test
working-directory: ${{runner.workspace}}/GHOST/tests
run: mkdir build && cd build && cmake .. -A "x64" && cmake --build . --config Release
- name: Run Test
working-directory: ${{runner.workspace}}/GHOST/tests/build
shell: cmd
run: set PATH=C:\Program Files (x86)\ghost\lib\;%PATH% && ctest -C Release
- name: Build Tutorial Wiki
working-directory: ${{runner.workspace}}/GHOST/tutorial/wiki
run: mkdir -p build && cd build && cmake .. -A "x64" && cmake --build . --config Release
- name: Build Tutorial Video
working-directory: ${{runner.workspace}}/GHOST/tutorial/video
run: mkdir -p build && cd build && cmake .. -A "x64" && cmake --build . --config Release