chore(ci): bump target qt versions: 6.5.x, 6.6.x, 6.7.x and 6.8.0 (#822)

* chore(ci): bump target qt versions

Signed-off-by: Hiroshi Miura <miurahr@linux.com>

* chore(ci): use install-qt subcommand

- Drop backward compat check

Signed-off-by: Hiroshi Miura <miurahr@linux.com>

* chore(ci): wip

Signed-off-by: Hiroshi Miura <miurahr@linux.com>

* chore(ci): wip

Signed-off-by: Hiroshi Miura <miurahr@linux.com>

* chore(ci): fix qmake query checks

Signed-off-by: Hiroshi Miura <miurahr@linux.com>

* chore(ci): fix mingw targets

Signed-off-by: Hiroshi Miura <miurahr@linux.com>

* chore(ci): add target 6.8.0 and drop use of python3.9

Signed-off-by: Hiroshi Miura <miurahr@linux.com>

* chore(ci): add expectation for Qt 6.8

Signed-off-by: Hiroshi Miura <miurahr@linux.com>

* chore(ci): drop tox test from install-qt check

Signed-off-by: Hiroshi Miura <miurahr@linux.com>

* chore(ci): fix expectation for windows/android qt 6.6

Signed-off-by: Hiroshi Miura <miurahr@linux.com>

* chore(ci):  wip

Signed-off-by: Hiroshi Miura <miurahr@linux.com>

* chore(ci):  wip

Signed-off-by: Hiroshi Miura <miurahr@linux.com>

* chore(ci): add taget Qt 6.7.3

Signed-off-by: Hiroshi Miura <miurahr@linux.com>

* chore(ci): bump actions/setup-python@v5

Signed-off-by: Hiroshi Miura <miurahr@linux.com>

* chore(ci): azure-pipelines: drop test target Qt5

Signed-off-by: Hiroshi Miura <miurahr@linux.com>

* chore(ci): azure-pipelines: update triggers

Signed-off-by: Hiroshi Miura <miurahr@linux.com>

* chore(ci): azure-pipelines: disable Linux_ARM64

Signed-off-by: Hiroshi Miura <miurahr@linux.com>

* chore(ci): azure-pipelines: replace list with list-qt

Signed-off-by: Hiroshi Miura <miurahr@linux.com>

* chore(ci): azure-pipelines: no build check if list-qt

Signed-off-by: Hiroshi Miura <miurahr@linux.com>

---------

Signed-off-by: Hiroshi Miura <miurahr@linux.com>
This commit is contained in:
Hiroshi Miura
2024-10-06 08:40:49 +09:00
committed by GitHub
parent 151ca25c34
commit bdf8b4b1f9
11 changed files with 126 additions and 313 deletions

View File

@@ -60,7 +60,7 @@ class BuildJob:
def qt_bindir(self, *, sep='/') -> str:
out_dir = f"$(Build.BinariesDirectory){sep}Qt" if not self.output_dir else self.output_dir
version_dir = "5.9" if self.qt_version == "5.9.0" else self.qt_version
version_dir = self.qt_version
return f"{out_dir}{sep}{version_dir}{sep}{self.archdir}{sep}bin"
def win_qt_bindir(self) -> str:
@@ -68,7 +68,7 @@ class BuildJob:
def autodesk_qt_bindir(self, *, sep='/') -> str:
out_dir = f"$(Build.BinariesDirectory){sep}Qt" if not self.output_dir else self.output_dir
version_dir = "5.9" if self.qt_version == "5.9.0" else self.qt_version
version_dir = self.qt_version
return f"{out_dir}{sep}{version_dir}{sep}{self.autodesk_arch_folder or self.archdir}{sep}bin"
def win_autodesk_qt_bindir(self) -> str:
@@ -87,9 +87,9 @@ class PlatformBuildJobs:
self.build_jobs = build_jobs
python_versions = ["3.9", "3.11", "3.12"]
python_versions = ["3.12"]
qt_versions = ["5.12.12", "5.15.14", "6.5.3"]
qt_versions = ["6.5.3"]
linux_build_jobs = []
linux_arm64_build_jobs = []
@@ -113,107 +113,25 @@ linux_arm64_build_jobs.append(BuildJob("install-qt", "6.7.0", "linux_arm64", "de
# Mac Desktop
for qt_version in qt_versions:
mac_build_jobs.append(
BuildJob("install-qt", qt_version, "mac", "desktop", "clang_64", "clang_64")
BuildJob("install-qt", qt_version, "mac", "desktop", "clang_64", "macos")
)
mac_build_jobs.append(BuildJob(
"install-qt",
"6.2.0",
"mac",
"desktop",
"clang_64",
"macos",
module="qtcharts qtnetworkauth", ))
# Windows Desktop
for qt_version in qt_versions:
windows_build_jobs.append(BuildJob("install-qt", qt_version, "windows", "desktop", "win64_msvc2019_64", "msvc2019_64"))
windows_build_jobs.extend(
[
BuildJob(
"install-qt",
"5.15.2",
"windows",
"desktop",
"win32_msvc2019",
"msvc2019",
mirror=random.choice(MIRRORS),
),
BuildJob(
"install-qt",
"5.14.2",
"windows",
"desktop",
"win32_mingw73",
"mingw73_32",
mingw_variant="win32_mingw730",
mirror=random.choice(MIRRORS),
),
BuildJob(
"install-qt",
"5.11.3",
"windows",
"desktop",
"win32_mingw53",
"mingw53_32",
subarchives="qtwinextras qtmultimedia qtbase qttools",
mingw_variant="win32_mingw530",
mirror=random.choice(MIRRORS),
),
BuildJob(
"install-qt",
"5.13.2",
"windows",
"desktop",
"win64_msvc2015_64",
"msvc2015_64",
mirror=random.choice(MIRRORS),
),
BuildJob(
"install-qt",
"5.15.2",
"windows",
"desktop",
"win64_mingw81",
"mingw81_64",
mingw_variant="win64_mingw810",
mirror=random.choice(MIRRORS),
),
# Known issue with Azure-Pipelines environment: it has a pre-installed mingw81 which cause link error.
# BuildJob('install', '5.15.0', 'windows', 'desktop', 'win32_mingw81', 'mingw81_32', mirror=MIRROR),
BuildJob(
"install-qt",
"5.15.2",
"windows",
"desktop",
"win64_msvc2019_64",
"msvc2019_64",
module="qtcharts qtnetworkauth",
mirror=random.choice(MIRRORS),
),
BuildJob(
"install-qt",
"5.11.3",
"windows",
"desktop",
"win32_msvc2015",
"msvc2015",
subarchives="qtwinextras qtmultimedia qtbase qttools",
mirror=random.choice(MIRRORS),
),
BuildJob(
"install-qt",
"5.9.0",
"windows",
"desktop",
"win64_msvc2015_64",
"msvc2015_64",
module="qtcharts qtnetworkauth",
mirror=random.choice(MIRRORS),
),
BuildJob(
"install-qt",
"5.14.2",
"windows",
"desktop",
"win64_mingw73",
"mingw73_64",
mingw_variant="win64_mingw730",
spec=">1,<5.15", # Don't redirect output! Must be wrapped in quotes!
mirror=random.choice(MIRRORS),
),
BuildJob(
"install-qt",
"6.5.2",
"6.5.3",
"windows",
"desktop",
"win64_msvc2019_arm64",
@@ -232,28 +150,7 @@ windows_build_jobs.extend(
# Extra modules test
linux_build_jobs.extend(
[
BuildJob(
"install-qt",
"5.15.2",
"linux",
"desktop",
"gcc_64",
"gcc_64",
module="qtcharts qtnetworkauth",
),
BuildJob(
"install-qt", "5.14.2", "linux", "desktop", "gcc_64", "gcc_64", module="all"
),
BuildJob(
"install-qt",
"5.15.2",
"linux",
"desktop",
"gcc_64",
"gcc_64",
subarchives="qtbase qttools qt icu qttools",
),
BuildJob(
BuildJob(
# Archives stored as .7z
"install-src", "6.1.0", "linux", "desktop", "gcc_64", "gcc_64", subarchives="qtlottie",
# Fail the job if this path does not exist:
@@ -267,54 +164,25 @@ linux_build_jobs.extend(
),
# Should install the `qtlottie` module, even though the archive `qtlottieanimation` is not specified:
BuildJob(
"install-doc", "6.1.0", "linux", "desktop", "gcc_64", "gcc_64",
"install-doc", "6.1.3", "linux", "desktop", "gcc_64", "gcc_64",
subarchives="qtdoc", module="qtlottie",
# Fail the job if these paths do not exist:
check_output_cmd="ls -lh ./Docs/Qt-6.1.0/qtdoc/ ./Docs/Qt-6.1.0/qtlottieanimation/",
check_output_cmd="ls -lh ./Docs/Qt-6.1.3/qtdoc/ ./Docs/Qt-6.1.3/qtlottieanimation/",
),
# Should install the `qtcharts` module, even though the archive `qtcharts` is not specified:
BuildJob(
"install-example", "6.1.0", "linux", "desktop", "gcc_64", "gcc_64",
"install-example", "6.1.3", "linux", "desktop", "gcc_64", "gcc_64",
subarchives="qtdoc", module="qtcharts",
# Fail the job if these paths do not exist:
check_output_cmd="ls -lh ./Examples/Qt-6.1.0/charts/ ./Examples/Qt-6.1.0/demos/ ./Examples/Qt-6.1.0/tutorials/",
check_output_cmd="ls -lh ./Examples/Qt-6.1.3/charts/ ./Examples/Qt-6.1.3/demos/ ./Examples/Qt-6.1.3/tutorials/",
),
# test for list commands
BuildJob('list', '5.15.2', 'linux', 'desktop', 'gcc_64', '', spec="<6", list_options={'HAS_WASM': "True"}),
BuildJob('list', '6.1.0', 'linux', 'desktop', 'gcc_64', '', spec=">6.0,<6.1.1", list_options={'HAS_WASM': "False"}),
BuildJob('list', '6.1.0', 'linux', 'android', 'android_armv7', '', spec=">6.0,<6.1.1", list_options={}),
# tests run on linux but query data about other platforms
BuildJob('list', '5.14.1', 'mac', 'ios', 'ios', '', spec="<=5.14.1", list_options={}),
BuildJob('list', '5.13.1', 'windows', 'winrt', 'win64_msvc2015_winrt_x64', '', spec=">5.13.0,<5.13.2", list_options={}),
]
)
mac_build_jobs.extend(
[
BuildJob(
"install-qt",
"6.2.0",
"mac",
"desktop",
"clang_64",
"macos",
module="qtcharts qtnetworkauth",
),
BuildJob(
"install-qt",
"5.14.2",
"mac",
"desktop",
"clang_64",
"clang_64",
module="qtcharts qtnetworkauth",
),
BuildJob('list-qt', '6.1.0', 'linux', 'desktop', 'gcc_64', '', spec=">6.0,<6.1.1", list_options={'HAS_WASM': "False"}),
BuildJob('list-qt', '6.1.0', 'linux', 'android', 'android_armv7', '', spec=">6.0,<6.1.1", list_options={}),
]
)
# WASM
linux_build_jobs.append(
BuildJob("install-qt", "5.14.2", "linux", "desktop", "wasm_32", "wasm_32")
)
linux_build_jobs.append(
BuildJob("install-qt", "6.4.0", "linux", "desktop", "wasm_32", "wasm_32",
is_autodesktop=True, emsdk_version="sdk-3.1.14-64bit", autodesk_arch_folder="gcc_64")
@@ -330,17 +198,11 @@ for job_queue, host, desk_arch in (
is_autodesktop=True, emsdk_version="sdk-3.1.25-64bit", autodesk_arch_folder=desk_arch)
)
mac_build_jobs.append(
BuildJob("install-qt", "5.14.2", "mac", "desktop", "wasm_32", "wasm_32")
)
mac_build_jobs.append(
BuildJob("install-qt", "6.4.0", "mac", "desktop", "wasm_32", "wasm_32",
BuildJob("install-qt", "6.4.3", "mac", "desktop", "wasm_32", "wasm_32",
is_autodesktop=True, emsdk_version="sdk-3.1.14-64bit", autodesk_arch_folder="clang_64")
)
windows_build_jobs.append(
BuildJob("install-qt", "5.14.2", "windows", "desktop", "wasm_32", "wasm_32")
)
windows_build_jobs.append(
BuildJob("install-qt", "6.4.0", "windows", "desktop", "wasm_32", "wasm_32",
BuildJob("install-qt", "6.4.3", "windows", "desktop", "wasm_32", "wasm_32",
is_autodesktop=True, emsdk_version="sdk-3.1.14-64bit", autodesk_arch_folder="mingw_64",
mingw_variant="win64_mingw900")
)
@@ -348,16 +210,15 @@ windows_build_jobs.append(
# mobile SDK
mac_build_jobs.extend(
[
BuildJob("install-qt", "6.4.0", "mac", "ios", "ios", "ios", module="qtsensors", is_autodesktop=True),
BuildJob("install-qt", "6.4.3", "mac", "ios", "ios", "ios", module="qtsensors", is_autodesktop=True),
BuildJob("install-qt", "6.2.4", "mac", "ios", "ios", "ios", module="qtsensors", is_autodesktop=False),
BuildJob("install-qt", "6.4.1", "mac", "android", "android_armv7", "android_armv7", is_autodesktop=True),
BuildJob("install-qt", "6.1.0", "mac", "android", "android_armv7", "android_armv7", is_autodesktop=True),
BuildJob("install-qt", "6.4.3", "mac", "android", "android_armv7", "android_armv7", is_autodesktop=True),
]
)
linux_build_jobs.extend(
[
BuildJob("install-qt", "6.1.0", "linux", "android", "android_armv7", "android_armv7", is_autodesktop=True),
BuildJob("install-qt", "6.4.1", "linux", "android", "android_arm64_v8a", "android_arm64_v8a", is_autodesktop=True),
BuildJob("install-qt", "6.1.3", "linux", "android", "android_armv7", "android_armv7", is_autodesktop=True),
BuildJob("install-qt", "6.4.3", "linux", "android", "android_arm64_v8a", "android_arm64_v8a", is_autodesktop=True),
]
)
@@ -365,36 +226,8 @@ linux_build_jobs.extend(
# This will test that the path to mingw is not hardcoded.
windows_build_jobs.extend(
[
BuildJob("install-qt", "6.3.0", "windows", "android", "android_armv7", "android_armv7", is_autodesktop=True),
BuildJob("install-qt", "6.4.1", "windows", "android", "android_x86_64", "android_x86_64", is_autodesktop=True),
]
)
# Test binary patch of qmake
linux_build_jobs.extend(
[
# New output dir is shorter than the default value; qmake could fail to
# locate prefix dir if the value is patched wrong
BuildJob(
"install-qt",
"5.12.11",
"linux",
"desktop",
"gcc_64",
"gcc_64",
output_dir="/t/Q",
),
# New output dir is longer than the default value.
# This case is meant to work without any bugfix; if this fails, the test is setup wrong
BuildJob(
"install-qt",
"5.12.11",
"linux",
"desktop",
"gcc_64",
"gcc_64",
output_dir="/some/super/long/arbitrary/path/to" * 5,
),
BuildJob("install-qt", "6.3.2", "windows", "android", "android_armv7", "android_armv7", is_autodesktop=True),
BuildJob("install-qt", "6.4.3", "windows", "android", "android_x86_64", "android_x86_64", is_autodesktop=True),
]
)