name: Build inputs: os_name: description: A descriptive name for the operating system (e.g. linux, windows) required: true platform_name: description: A descriptive name for the target platform (e.g. amd64, aarch64, etc.) required: true runs: using: "composite" steps: - name: "Checkout repo" uses: actions/checkout@v2 with: submodules: recursive - name: Install Linux Dependencies for SDL if: ${{ inputs.platform_name }} == 'linux' shell: bash # See Libraries/SDL/docs/README-linux.md run: > sudo apt-get install build-essential git make pkg-config cmake ninja-build gnome-desktop-testing libasound2-dev libpulse-dev libaudio-dev libjack-dev libsndio-dev libx11-dev libxext-dev libxrandr-dev libxcursor-dev libxfixes-dev libxi-dev libxss-dev libxkbcommon-dev libdrm-dev libgbm-dev libgl1-mesa-dev libgles2-mesa-dev libegl1-mesa-dev libdbus-1-dev libibus-1.0-dev libudev-dev fcitx-libs-dev libpipewire-0.3-dev libwayland-dev libdecor-0-dev liburing-dev env: WLR_BACKENDS: headless WLR_LIBINPUT_NO_DEVICES: 1 WAYLAND_DISPLAY: wayland-1 GTK_USE_PORTAL: 0 - name: "Configure Project" uses: threeal/cmake-action@v1.3.0 - name: "Prepare Project" shell: bash run: cmake -S ./ -B buildsim - name: "Build Tests" shell: bash run: cmake --build buildsim --target AppSim - name: 'Release' shell: bash run: Buildscripts/release-simulator.sh buildsim release/Simulator-${{ inputs.os_name }}-${{ inputs.platform_name }} - name: 'Upload Artifact' uses: actions/upload-artifact@v4 with: name: Simulator-${{ inputs.os_name }}-${{ inputs.platform_name }} path: release/Simulator-${{ inputs.os_name }}-${{ inputs.platform_name }} retention-days: 30