--- name: Build game on: [ push, pull_request ] jobs: build-gcc: name: Linux build on Ubuntu runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 with: submodules: false fetch-depth: 1 - name: Cache conan id: cache-conan uses: actions/cache@v4 with: key: conan-ubuntu-${{ hashFiles('conanfile.py') }} restore-keys: | conan-ubuntu- path: ~/.conan2/ - name: Install dependencies run: | curl "https://raw.githubusercontent.com/AnotherFoxGuy/ci-scripts/main/install-conan.sh" | sudo bash sudo apt-get update sudo apt-get -y install \ pkg-config \ ninja-build \ qtbase5-dev \ qtbase5-private-dev \ qtwebengine5-dev \ qtwebengine5-dev-tools \ qtmultimedia5-dev \ libqt5opengl5-dev \ qtscript5-dev \ libqt5scripttools5 \ libqt5webchannel5-dev \ libqt5websockets5-dev \ qtxmlpatterns5-dev-tools \ qttools5-dev \ libqt5xmlpatterns5-dev \ libqt5svg5-dev \ qml-module-qtwebchannel \ qml-module-qtquick-controls \ qml-module-qtquick-controls2 \ qml-module-qt-labs-settings \ qml-module-qtquick-dialogs \ qml-module-qtwebengine shell: bash - name: Fix broken mpg123 lib if: steps.cache-conan.outputs.cache-hit != 'true' run: | conan profile detect --force echo "tools.system.package_manager:mode = install" > ~/.conan2/global.conf echo "tools.system.package_manager:sudo = True" >> ~/.conan2/global.conf conan remote add overte https://git.anotherfoxguy.com/api/packages/overte/conan -f conan install --requires mpg123/1.31.2 -b mpg123/1.31.2 -b missing - name: Install conan pkgs run: | conan install . \ -s build_type=Release \ -b missing \ -pr:b=default \ -c tools.cmake.cmaketoolchain:generator="Ninja" \ -of build conan cache clean "*" -sbd shell: bash - name: Configure run: cmake --preset conan-release shell: bash - name: Build run: | cd build ninja shell: bash build-msvc: name: Windows build runs-on: windows-2019 env: BUILD_TOOLS_PATH: C:\apps\build-tools\ steps: - run: echo $env:BUILD_TOOLS_PATH | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append - uses: actions/checkout@v4 with: submodules: false fetch-depth: 1 - name: Install Build tools run: git clone https://git.anotherfoxguy.com/AnotherFoxGuy/build-tools.git %BUILD_TOOLS_PATH% shell: cmd - name: Install Qt5 uses: jurplel/install-qt-action@v3 with: cache: true cache-key-prefix: windows-QtCache modules: qtwebengine - name: Cache conan packages uses: actions/cache@v4 with: key: conan-windows-${{ hashFiles('conanfile.py') }} restore-keys: | conan-windows- path: ~/.conan2 - name: Install conan pkgs run: | conan remote add overte https://git.anotherfoxguy.com/api/packages/overte/conan -f conan install . -b missing -pr:b=tools/conan-profiles/vs-19-release-ninja -pr=tools/conan-profiles/vs-19-release-ninja -of build conan cache clean "*" -sbd shell: cmd - name: Enable Developer Command Prompt uses: ilammy/msvc-dev-cmd@v1 - name: Configure run: cmake --preset conan-release shell: cmd - name: Build run: | cd build ninja shell: cmd