mirror of
https://github.com/mappu/miqt.git
synced 2025-05-07 04:20:22 +00:00
145 lines
3.8 KiB
YAML
145 lines
3.8 KiB
YAML
name: CI
|
|
|
|
on:
|
|
push:
|
|
branches: [ "**" ]
|
|
pull_request:
|
|
branches: [ "**" ]
|
|
|
|
jobs:
|
|
miqt_genbindings:
|
|
runs-on: ubuntu-24.04
|
|
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v4
|
|
|
|
# WARNING: This loads the cache but does not commit back any new changes to
|
|
# it unless the cache is invalidated in GitHub
|
|
# It will help to do that every time a new Qt library is added
|
|
- name: Cache clang ASTs
|
|
uses: actions/cache@v4
|
|
with:
|
|
path: cmd/genbindings/cachedir
|
|
key: linux64-clang-cache
|
|
|
|
- name: Rebuild binding source
|
|
run: make genbindings
|
|
|
|
- name: Assert no changes
|
|
run: git update-index --really-refresh && git diff-index HEAD
|
|
|
|
miqt_buildall:
|
|
runs-on: ubuntu-24.04
|
|
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v4
|
|
|
|
# This uses the `genbindings` container in miqt-docker
|
|
- name: Rebuild all libraries and examples
|
|
run: make build-all
|
|
|
|
- name: Run marshalling test suite
|
|
run: cmd/miqt-docker/miqt-docker genbindings /bin/bash -c 'cd examples/marshalling && env QT_QPA_PLATFORM=offscreen go test -v'
|
|
|
|
miqt_linux64_qt5:
|
|
runs-on: ubuntu-24.04
|
|
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Linux64 bindings compile
|
|
run: |
|
|
make cmd/miqt-docker/miqt-docker
|
|
cd qt && ../cmd/miqt-docker/miqt-docker linux64-go1.19-qt5.15-dynamic go build
|
|
|
|
miqt_linux64_qt6_4:
|
|
runs-on: ubuntu-24.04
|
|
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Linux64 bindings compile
|
|
run: |
|
|
make cmd/miqt-docker/miqt-docker
|
|
cd qt6 && ../cmd/miqt-docker/miqt-docker linux64-go1.19-qt6.4-dynamic go build
|
|
|
|
miqt_linux64_qt6_8:
|
|
runs-on: ubuntu-24.04
|
|
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Linux64 bindings compile
|
|
run: |
|
|
make cmd/miqt-docker/miqt-docker
|
|
cd qt6 && ../cmd/miqt-docker/miqt-docker linux64-go1.23-qt6.8-dynamic go build
|
|
|
|
miqt_win32_qt5:
|
|
runs-on: ubuntu-24.04
|
|
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Win32 bindings compile
|
|
run: |
|
|
make cmd/miqt-docker/miqt-docker
|
|
cmd/miqt-docker/miqt-docker win32-cross-go1.23-qt5.15-static /bin/bash -c 'cd qt && go build && cd ../examples/helloworld && go build'
|
|
|
|
miqt_win64_qt5:
|
|
runs-on: ubuntu-24.04
|
|
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Win64 bindings compile
|
|
run: |
|
|
make cmd/miqt-docker/miqt-docker
|
|
cmd/miqt-docker/miqt-docker win64-cross-go1.23-qt5.15-static /bin/bash -c 'cd qt && go build && cd ../examples/helloworld && go build'
|
|
|
|
miqt_win64_qt68:
|
|
runs-on: ubuntu-24.04
|
|
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Win64 bindings compile
|
|
run: |
|
|
make cmd/miqt-docker/miqt-docker
|
|
cmd/miqt-docker/miqt-docker win64-cross-go1.23-qt6.8-dynamic /bin/bash -c 'cd qt6 && go build && cd ../examples/helloworld6 && go build'
|
|
|
|
miqt_android_qt5:
|
|
runs-on: ubuntu-24.04
|
|
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Android compile
|
|
run: |
|
|
make cmd/miqt-docker/miqt-docker
|
|
cd examples/helloworld
|
|
../../cmd/miqt-docker/miqt-docker android-armv8a-go1.23-qt5.15-dynamic -android-build
|
|
test -f helloworld.apk
|
|
|
|
miqt_android_qt6:
|
|
runs-on: ubuntu-24.04
|
|
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Android compile
|
|
run: |
|
|
make cmd/miqt-docker/miqt-docker
|
|
cd examples/helloworld6
|
|
../../cmd/miqt-docker/miqt-docker android-armv8a-go1.23-qt6.6-dynamic -android-build
|
|
test -f helloworld6.apk
|