Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Qt5 latest workflow #151

Merged
merged 4 commits into from
Nov 17, 2023
Merged
Show file tree
Hide file tree
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ jobs:
CONFIG+=sanitizer CONFIG+=sanitize_undefined CONFIG+=sanitize_address \
PYTHON_VERSION=$(python3 --version | cut -d " " -f 2 | cut -d "." -f1,2) \
PYTHON_DIR=$(which python3 | xargs dirname | xargs dirname)
make -j 2
make -j $(nproc)
UBSAN_OPTIONS="halt_on_error=1" ASAN_OPTIONS="detect_leaks=0:detect_stack_use_after_return=1:fast_unwind_on_malloc=0" \
make check TESTARGS="-platform offscreen"

Expand Down Expand Up @@ -120,7 +120,7 @@ jobs:
qmake-qt5 -r PythonQt.pro CONFIG+=${{ matrix.configuration }} \
PYTHON_VERSION=$(python${PYTHON_VERSION_SUFFIX} --version | cut -d " " -f 2 | cut -d "." -f1,2) \
PYTHON_DIR=$(which python${PYTHON_VERSION_SUFFIX} | xargs dirname | xargs dirname)
make -j 2 && make check TESTARGS="-platform offscreen"
make -j $(nproc) && make check TESTARGS="-platform offscreen"

- name: Generate Wrappers
run: |
Expand Down Expand Up @@ -203,7 +203,7 @@ jobs:
PYTHON_DIR="$pythonLocation" \
PKGCONFIG+=$PYTHON_PKGCONFIG_NAME \
-r PythonQt.pro
make -j 2
make -j $(nproc)
UBSAN_OPTIONS="halt_on_error=1" ASAN_OPTIONS="detect_leaks=0:detect_stack_use_after_return=1:fast_unwind_on_malloc=0" \
make check TESTARGS="-platform offscreen"

Expand Down
77 changes: 77 additions & 0 deletions .github/workflows/build_latest.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
name: Latest Qt5
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe change the name to something like "Use generated code", as this is certainly not the latest Qt5. There are two othyer workflows (ubuntu 22.04 and WinGW 7.3) with Qt 5.15.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, there is some misunderstanding between "latest qt" and 5.12 :)
I will rename it to the more suitable form


on:
push:
branches:
- master
pull_request:

defaults:
run:
shell: bash

jobs:
ubuntu:
strategy:
fail-fast: false
matrix:
qt-version: [ '5.12.*' ]
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Now that the other branch is merged, you may try to add "5.15.*" to the matrix.

python-version: [ '3.12' ]
runs-on: ubuntu-latest
steps:

- name: Install Qt ${{matrix.qt-version}}
uses: jurplel/install-qt-action@v3
with:
version: ${{ matrix.qt-version }}
archives: 'qtmultimedia qtlinuxextras qtbase qttools icu qtwayland'

- name: Setup Python ${{ matrix.python-version }}
uses: actions/setup-python@v4
with:
python-version: '${{ matrix.python-version }}'

- name: Checkout PythonQt
uses: actions/checkout@v3

- name: Set environment
run: |
QT_VERSION_MAJOR=$(cut -f 1 -d . <<< "${{matrix.qt-version}}")
echo "QT_VERSION_MAJOR=$QT_VERSION_MAJOR" >> $GITHUB_ENV
QTDIR=$(eval echo "\$Qt${QT_VERSION_MAJOR}_DIR")
echo "QTDIR=$QTDIR" >> $GITHUB_ENV
echo "$QTDIR/bin" >> $GITHUB_PATH
echo "$pythonLocation/bin" >> $GITHUB_PATH

- name: Build generator
run: |
cd generator
qmake -r generator.pro CONFIG+=release CONFIG+=force_debug_info \
CONFIG+=sanitizer CONFIG+=sanitize_undefined CONFIG+=sanitize_address
make -j $(nproc)

- name: Generate Wrappers
run: |
cd generator
UBSAN_OPTIONS="halt_on_error=1" \
ASAN_OPTIONS="detect_leaks=0:detect_stack_use_after_return=1:fast_unwind_on_malloc=0" \
./pythonqt_generator

- name: Upload Wrappers
uses: actions/upload-artifact@v3
with:
name: wrappers_ubuntu_5-latest
path: generated_cpp

- name: Build PythonQt
run: |
echo ======= SYSTEM INFO ========
uname -a; gcc --version | grep "gcc"; python3 --version; qmake --version
echo ============================
qmake -r PythonQt.pro CONFIG+=release CONFIG+=force_debug_info \
CONFIG+=sanitizer CONFIG+=sanitize_undefined CONFIG+=sanitize_address \
PYTHON_VERSION=$(python3 --version | cut -d " " -f 2 | cut -d "." -f1,2) \
PYTHON_DIR=$(which python3 | xargs dirname | xargs dirname)
make -j $(nproc)
UBSAN_OPTIONS="halt_on_error=1" ASAN_OPTIONS="detect_leaks=0:detect_stack_use_after_return=1:fast_unwind_on_malloc=0" \
make check TESTARGS="-platform offscreen"
Loading