Default textures #662
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build | |
on: | |
push: | |
branches: | |
- master | |
- development | |
pull_request: | |
branches: | |
- master | |
- development | |
release: | |
types: | |
- created | |
jobs: | |
build-windows: | |
strategy: | |
matrix: | |
os: [[windows-latest,x64-windows,msvc]] | |
buildType: [Release] | |
runs-on: ${{ matrix.os[0] }} | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Checkout submodules | |
run: | | |
git submodule update --init -- "CMake" | |
git submodule update --init -- "external/vcpkg" | |
- name: Setup vcpkg | |
uses: lukka/run-vcpkg@v10 | |
with: | |
vcpkgDirectory: '${{ github.workspace }}/external/vcpkg' | |
vcpkgJsonGlob: 'vcpkg.json' | |
- name: Create Build Environment | |
run: | | |
cmake -E make_directory ${{runner.workspace}}/build-${{ matrix.buildType }} | |
- name: Configure Warnings as errors (OFF) | |
if: github.event_name == 'push' | |
shell: bash | |
working-directory: ${{runner.workspace}}/build-${{ matrix.buildType }} | |
run: | | |
echo "PROJ_WAE=OFF" >> $GITHUB_ENV | |
- name: Configure Warnings as errors (ON) | |
if: github.event_name == 'pull_request' | |
shell: bash | |
working-directory: ${{runner.workspace}}/build-${{ matrix.buildType }} | |
run: | | |
echo "PROJ_WAE=ON" >> $GITHUB_ENV | |
- name: Configure CMake | |
id: configure | |
shell: bash | |
working-directory: ${{runner.workspace}}/build-${{ matrix.buildType }} | |
run: | | |
cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=${{ matrix.buildType }} -DCMAKE_TOOLCHAIN_FILE=$GITHUB_WORKSPACE/external/vcpkg/scripts/buildsystems/vcpkg.cmake -DCMAKE_INSTALL_PREFIX=$GITHUB_WORKSPACE/package/Castor3D -DPROJECTS_WARNINGS_AS_ERRORS=$PROJ_WAE --preset ci-vcpkg | |
- name: Build | |
if: steps.configure.conclusion == 'success' | |
id: build | |
working-directory: ${{runner.workspace}}/build-${{ matrix.buildType }} | |
shell: bash | |
run: | | |
cmake --build . --parallel 2 --config ${{ matrix.buildType }} | |
- name: Prepare success package | |
if: (github.event_name == 'push') && (steps.build.conclusion == 'success') | |
working-directory: ${{runner.workspace}}/build-${{ matrix.buildType }} | |
shell: bash | |
run: | | |
cmake --install . --config ${{ matrix.buildType }} | |
7z a $GITHUB_WORKSPACE/Castor3D-${{ matrix.os[1] }}.zip $GITHUB_WORKSPACE/package/Castor3D/ | |
- name: Clean build folder | |
if: (steps.build.conclusion == 'success') | |
working-directory: ${{runner.workspace}}/build-${{ matrix.buildType }} | |
shell: bash | |
run: | | |
cmake --build . --config ${{ matrix.buildType }} --target clean | |
- name: Upload success package | |
if: (github.event_name == 'push') && (steps.build.conclusion == 'success') | |
uses: actions/upload-artifact@v2 | |
with: | |
name: Castor3D-${{ matrix.os[1] }}.zip | |
path: ${{ github.workspace }}/Castor3D-${{ matrix.os[1] }}.zip | |
build-macos: | |
strategy: | |
matrix: | |
os: [[macos-latest,x64-osx,clang]] | |
buildType: [Release] | |
runs-on: ${{ matrix.os[0] }} | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Checkout submodules | |
run: | | |
git submodule update --init -- "CMake" | |
git submodule update --init -- "external/vcpkg" | |
- name: Setup vcpkg | |
uses: lukka/run-vcpkg@v10 | |
with: | |
vcpkgDirectory: '${{ github.workspace }}/external/vcpkg' | |
vcpkgJsonGlob: 'vcpkg.json' | |
- name: Install necessary packages | |
shell: bash | |
run: | | |
brew install autoconf automake autoconf-archive | |
- name: Create Build Environment | |
run: | | |
cmake -E make_directory ${{runner.workspace}}/build-${{ matrix.buildType }} | |
- name: Configure CMake | |
id: configure | |
shell: bash | |
working-directory: ${{runner.workspace}}/build-${{ matrix.buildType }} | |
run: | | |
cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=${{ matrix.buildType }} -DCMAKE_TOOLCHAIN_FILE=$GITHUB_WORKSPACE/external/vcpkg/scripts/buildsystems/vcpkg.cmake -DCMAKE_INSTALL_PREFIX=$GITHUB_WORKSPACE/package/Castor3D --preset ci-vcpkg-osx | |
- name: Build | |
if: steps.configure.conclusion == 'success' | |
id: build | |
working-directory: ${{runner.workspace}}/build-${{ matrix.buildType }} | |
shell: bash | |
run: | | |
cmake --build . --parallel 2 --config ${{ matrix.buildType }} | |
- name: Prepare success package | |
if: (github.event_name == 'push') && (steps.build.conclusion == 'success') | |
working-directory: ${{runner.workspace}}/build-${{ matrix.buildType }} | |
shell: bash | |
run: | | |
cmake --install . --config ${{ matrix.buildType }} | |
7z a $GITHUB_WORKSPACE/Castor3D-${{ matrix.os[1] }}.zip $GITHUB_WORKSPACE/package/Castor3D/ | |
- name: Clean build folder | |
if: (steps.build.conclusion == 'success') | |
working-directory: ${{runner.workspace}}/build-${{ matrix.buildType }} | |
shell: bash | |
run: | | |
cmake --build . --config ${{ matrix.buildType }} --target clean | |
- name: Upload success package | |
if: (github.event_name == 'push') && (steps.build.conclusion == 'success') | |
uses: actions/upload-artifact@v2 | |
with: | |
name: Castor3D-${{ matrix.os[1] }}.zip | |
path: ${{ github.workspace }}/Castor3D-${{ matrix.os[1] }}.zip | |
build-linux-gcc: | |
strategy: | |
matrix: | |
os: [[ubuntu-latest,x64-linux,gcc]] | |
buildType: [Release] | |
runs-on: ${{ matrix.os[0] }} | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Checkout submodules | |
run: | | |
git submodule update --init -- "CMake" | |
git submodule update --init -- "external/vcpkg" | |
- name: Setup vcpkg | |
uses: lukka/run-vcpkg@v10 | |
with: | |
vcpkgDirectory: '${{ github.workspace }}/external/vcpkg' | |
vcpkgJsonGlob: 'vcpkg.json' | |
- name: Install necessary G++ version | |
if: matrix.os[2] == 'gcc' | |
shell: bash | |
run: | | |
sudo apt-get update | |
sudo apt-get install -y --no-install-recommends ccache gcc-11 g++-11 | |
echo "CC=gcc-11" >> $GITHUB_ENV | |
echo "CXX=g++-11" >> $GITHUB_ENV | |
- name: Create Build Environment | |
run: | | |
cmake -E make_directory ${{runner.workspace}}/build-${{ matrix.buildType }} | |
- name: Configure Warnings as errors (OFF) | |
if: github.event_name == 'push' | |
shell: bash | |
working-directory: ${{runner.workspace}}/build-${{ matrix.buildType }} | |
run: | | |
echo "PROJ_WAE=OFF" >> $GITHUB_ENV | |
- name: Configure Warnings as errors (ON) | |
if: github.event_name == 'pull_request' | |
shell: bash | |
working-directory: ${{runner.workspace}}/build-${{ matrix.buildType }} | |
run: | | |
echo "PROJ_WAE=ON" >> $GITHUB_ENV | |
- name: Install necessary packages | |
shell: bash | |
run: | | |
sudo apt-get install -y --no-install-recommends libxi-dev libgl1-mesa-dev libglu1-mesa-dev mesa-common-dev libxrandr-dev libxxf86vm-dev libxaw7-dev libwayland-dev libxcb1-dev libx11-xcb-dev pkg-config libgtk-3-dev libsecret-1-dev libgcrypt20-dev libsystemd-dev autoconf automake autoconf-archive | |
- name: Configure CMake | |
id: configure | |
shell: bash | |
working-directory: ${{runner.workspace}}/build-${{ matrix.buildType }} | |
run: | | |
cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=${{ matrix.buildType }} -DCMAKE_TOOLCHAIN_FILE=$GITHUB_WORKSPACE/external/vcpkg/scripts/buildsystems/vcpkg.cmake -DCMAKE_INSTALL_PREFIX=$GITHUB_WORKSPACE/package/Castor3D -DPROJECTS_WARNINGS_AS_ERRORS=$PROJ_WAE --preset ci-vcpkg | |
- name: Build | |
if: steps.configure.conclusion == 'success' | |
id: build | |
working-directory: ${{runner.workspace}}/build-${{ matrix.buildType }} | |
shell: bash | |
run: | | |
cmake --build . --parallel 2 --config ${{ matrix.buildType }} | |
- name: Prepare success package | |
if: (github.event_name == 'push') && (steps.build.conclusion == 'success') | |
working-directory: ${{runner.workspace}}/build-${{ matrix.buildType }} | |
shell: bash | |
run: | | |
cmake --install . --config ${{ matrix.buildType }} | |
7z a $GITHUB_WORKSPACE/Castor3D-${{ matrix.os[1] }}.zip $GITHUB_WORKSPACE/package/Castor3D/ | |
- name: Clean build folder | |
if: (steps.build.conclusion == 'success') | |
working-directory: ${{runner.workspace}}/build-${{ matrix.buildType }} | |
shell: bash | |
run: | | |
cmake --build . --config ${{ matrix.buildType }} --target clean | |
- name: Upload success package | |
if: (github.event_name == 'push') && (steps.build.conclusion == 'success') | |
uses: actions/upload-artifact@v2 | |
with: | |
name: Castor3D-${{ matrix.os[1] }}.zip | |
path: ${{ github.workspace }}/Castor3D-${{ matrix.os[1] }}.zip |