ci: test fixes for static build on linux #327
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 Linux | |
on: | |
push: | |
branches: [ master, feature/github-actions, ci_linux_static ] | |
pull_request: | |
branches: [ master, feature/github-actions ] | |
release: | |
types: [published] | |
jobs: | |
build: | |
name: "Build: ${{ matrix.os }} - ${{ matrix.qtver }}" | |
runs-on: ${{ matrix.os }} | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [ubuntu-20.04] | |
arch: [x64] | |
config: [Release] | |
statictype: [ON] | |
include: | |
- statictype: ON | |
qtver: Qt6 | |
host_triplet: release | |
release_suffix: static | |
steps: | |
- name: Checkout Git Repo | |
uses: actions/checkout@v3 | |
with: | |
submodules: 'recursive' | |
- name: workaround for default apt mirror connectivity issues | |
run: | | |
sudo sed -i 's/azure\.//' /etc/apt/sources.list | |
- name: Install dependencies | |
run: | | |
set -e | |
sudo apt install -y autoconf automake autoconf-archive '^libxcb.*-dev' libx11-xcb-dev libglu1-mesa-dev libxrender-dev libxi-dev libxkbcommon-dev libxkbcommon-x11-dev libegl1-mesa-dev libbsd-dev | |
- name: Install latest CMake | |
uses: lukka/get-cmake@a70f1cfa1857a3eecfe0d34962269e1b1e8be56c # latest as of 2024-08-08 | |
- name: Restore artifacts, or setup vcpkg (do not install any package) | |
uses: lukka/run-vcpkg@d87e7fac99f22776a4973d7e413921ea254c1fc9 # latest as of 2024-08-08 | |
with: | |
vcpkgJsonGlob: '**/gui/qt/vcpkg.json' | |
- name: Build CEmu ${{ matrix.qtver }} ${{ matrix.config }} on Linux ${{ matrix.arch }} | |
uses: lukka/run-cmake@4b1adc1944be8367be9f4e08303ce49918db8e3c # latest as of 2024-08-08 | |
with: | |
cmakeListsTxtPath: '${{ github.workspace }}/gui/qt/CMakeLists.txt' | |
configurePreset: 'Linux-${{ matrix.arch }}-${{ matrix.qtver }}' | |
configurePresetAdditionalArgs: "['-DDEPS_RELEASE_ONLY=${{ matrix.statictype }}']" | |
buildPreset: 'Linux-${{ matrix.arch }}-${{ matrix.qtver }}-${{ matrix.config }}' | |
env: | |
VCPKG_DEFAULT_HOST_TRIPLET: ${{ matrix.arch }}-linux-${{ matrix.host_triplet }} | |
VCPKG_FORCE_SYSTEM_BINARIES: 1 | |
- name: Upload binary as artifact | |
uses: actions/upload-artifact@v3 | |
with: | |
name: CEmu_linux_${{ matrix.qtver }}_master | |
path: ${{ github.workspace }}/gui/qt/CEmu.build/Linux-${{ matrix.arch }}-${{ matrix.qtver }}/${{ matrix.config }}/CEmu | |
- name: Prepare binary for release upload | |
run: | | |
mv ${{ github.workspace }}/gui/qt/CEmu.build/Linux-${{ matrix.arch }}-${{ matrix.qtver }}/${{ matrix.config }}/CEmu ${{ github.workspace }}/CEmu-nightly_linux64_qt6_${{ matrix.release_suffix }} | |
- name: Update nightly release | |
if: ${{ github.ref == 'refs/heads/master' && github.event_name != 'pull_request' }} | |
uses: softprops/action-gh-release@d4e8205d7e959a9107da6396278b2f1f07af0f9b # latest as of 2023-01-13 | |
with: | |
tag_name: nightly | |
prerelease: true | |
token: ${{secrets.GITHUB_TOKEN}} | |
files: | | |
${{ github.workspace }}/CEmu-nightly_linux64_qt6_${{ matrix.release_suffix }} |