added mouse movement #2010
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, pull_request] | |
jobs: | |
build-msvc: | |
name: Windows | |
env: | |
BUILD_TOOLS_PATH: C:\apps\build-tools\ | |
CONAN_USER_HOME_SHORT: None | |
runs-on: windows-latest | |
steps: | |
- run: echo $env:BUILD_TOOLS_PATH | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append | |
- uses: actions/checkout@v4 | |
with: | |
submodules: true | |
- name: Cache conan | |
uses: actions/cache@v4 | |
with: | |
key: conan-win-${{ hashFiles('conanfile.py') }} | |
path: ~/.conan2/ | |
- name: Install Build tools | |
run: git clone https://git.anotherfoxguy.com/AnotherFoxGuy/build-tools.git %BUILD_TOOLS_PATH% | |
shell: cmd | |
- name: Enable Developer Command Prompt | |
uses: ilammy/msvc-dev-cmd@v1.13.0 | |
- name: Build | |
run: | | |
conan install . -b missing -pr:b=tools/conan-profiles/vs-22-release-ninja -pr=tools/conan-profiles/vs-22-release-ninja | |
cmake --preset conan-release -DBUILD_TEST=ON -DCMAKE_INSTALL_PREFIX=redist | |
ninja | |
- name: Test | |
run: ctest -j2 --output-on-failure | |
- name: Upload build to itch.io | |
env: | |
BUTLER_API_KEY: ${{ secrets.BUTLER_API_KEY }} | |
if: env.BUTLER_API_KEY != null && github.ref == 'refs/heads/master' | |
run: | | |
choco install butler -y | |
ninja install | |
butler push redist cytopia/cytopia:windows-ci --userversion CIBuild-%GITHUB_RUN_NUMBER%-Commit-%GITHUB_SHA% | |
shell: cmd | |
- name: Clean Conan pkgs | |
run: conan cache clean "*" -sbd | |
build-gcc: | |
name: Linux | |
env: | |
CONAN_SYSREQUIRES_MODE: "enabled" | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
submodules: true | |
- name: Cache conan | |
id: cache-conan | |
uses: actions/cache@v4 | |
with: | |
key: conan-linux-${{ hashFiles('conanfile.py') }} | |
path: ~/.conan2/ | |
- name: Install dependencies | |
run: | | |
echo -e 'pcm.!default {\n type plug\n slave.pcm "null"\n}' > ~/.asoundrc | |
sudo apt-get update | |
curl "https://raw.githubusercontent.com/AnotherFoxGuy/ci-scripts/main/install-cmake.sh" | sudo bash | |
curl "https://raw.githubusercontent.com/AnotherFoxGuy/ci-scripts/main/install-conan.sh" | sudo bash | |
sudo apt-get -y install \ | |
ninja-build libgl-dev libegl-dev \ | |
libx11-xcb-dev \ | |
libfontenc-dev \ | |
libxaw7-dev \ | |
libxcomposite-dev \ | |
libxcursor-dev \ | |
libxdamage-dev \ | |
libxfixes-dev \ | |
libxi-dev \ | |
libxinerama-dev \ | |
libxmu-dev \ | |
libxmuu-dev \ | |
libxpm-dev \ | |
libxrandr-dev \ | |
libxres-dev \ | |
libxss-dev \ | |
libxtst-dev \ | |
libxv-dev \ | |
libxvmc-dev \ | |
libxxf86vm-dev \ | |
libxcb-render-util0-dev \ | |
libxcb-xkb-dev \ | |
libxcb-icccm4-dev \ | |
libxcb-image0-dev \ | |
libxcb-keysyms1-dev \ | |
libxcb-randr0-dev \ | |
libxcb-shape0-dev \ | |
libxcb-sync-dev \ | |
libxcb-xfixes0-dev \ | |
libxcb-xinerama0-dev \ | |
libxcb-util-dev \ | |
libxcb-util0-dev \ | |
libxcb-dri3-dev | |
- 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: Configure | |
run: | | |
conan install . -s build_type=Release -b missing -pr:b=default -c tools.cmake.cmaketoolchain:generator="Ninja" | |
cmake --preset conan-release -DCMAKE_INSTALL_PREFIX=redist | |
- name: Build | |
run: | | |
ninja | |
- name: Test | |
env: | |
SDL_VIDEODRIVER: dummy | |
SDL_AUDIODRIVER: dummy | |
run: ctest -j2 --output-on-failure | |
- name: Upload build to itch.io | |
env: | |
BUTLER_API_KEY: ${{ secrets.BUTLER_API_KEY }} | |
if: env.BUTLER_API_KEY != null && github.ref == 'refs/heads/master' | |
run: | | |
curl "https://raw.githubusercontent.com/AnotherFoxGuy/ci-scripts/main/install-butler.sh" | sudo bash | |
ninja install | |
butler push redist cytopia/cytopia:linux-ci --userversion CIBuild-${GITHUB_RUN_NUMBER}-commit-${GITHUB_SHA} | |
- name: Clean Conan pkgs | |
run: conan cache clean "*" -sbd | |
# build-appleclang: | |
# name: MacOS | |
# runs-on: macos-latest | |
# steps: | |
# - uses: actions/checkout@v4 | |
# with: | |
# submodules: true | |
# - name: Cache conan | |
# uses: actions/cache@v4 | |
# with: | |
# key: conan-mac-${{ hashFiles('conanfile.py') }} | |
# path: ~/.conan2/ | |
# - name: Install dependencies | |
# run: brew install conan ninja | |
# - name: Build | |
# run: | | |
# conan profile detect --force | |
# conan install . -s build_type=Release -b missing -pr:b=default -c tools.cmake.cmaketoolchain:generator="Ninja" | |
# cmake --preset conan-release -DCMAKE_INSTALL_PREFIX=redist | |
# ninja | |
# mkdir -p bin/Cytopia.App/Resources/resources | |
# cp -pR data/resources bin/Cytopia.App/Contents/Resources/ | |
# cp -pR data/resources bin/resources | |
# ninja package | |
# rm -rf bin/Cytopia.App/Contents/MacOS/resources | |
# rm -rf bin/Cytopia.App/Resources | |
# shell: bash | |
# - name: Test | |
# run: ctest -j2 --output-on-failure | |
# shell: bash | |
# - name: Upload build to itch.io | |
# env: | |
# BUTLER_API_KEY: ${{ secrets.BUTLER_API_KEY }} | |
# if: env.BUTLER_API_KEY != null && github.ref == 'refs/heads/master' | |
# run: | | |
# curl -JOL https://broth.itch.ovh/butler/darwin-amd64/LATEST/archive/default | |
# mkdir redist | |
# mv bin/Cytopia.app/ redist/ | |
# unzip butler-darwin-amd64.zip | |
# ./butler push redist cytopia/cytopia:osx-ci --userversion CIBuild-${GITHUB_RUN_NUMBER}-commit-${GITHUB_SHA} | |
# shell: bash | |
# - name: Clean Conan pkgs | |
# run: conan cache clean "*" -sbd |