322 Commits

Author SHA1 Message Date
ali kettab
9d9db6e902 wxQt: Bump the Qt version to 6.10.* in Github Actions
Also, enable running the GUI tests with this version too.

Closes #25975.
2025-11-20 21:53:05 +01:00
Stefan Csomor
c074190501 add a wxGTK on macOS build action (#25924)
Some checks failed
No Response / no-response (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxGTK 3 compatible 3.0 (push) Has been cancelled
Unix builds / Ubuntu 24.04 wxGTK ASAN not compatible (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxGTK UTF-8 (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxQt (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxX11 (push) Has been cancelled
Unix builds / Ubuntu 20.04 wxGTK 3 with clang (push) Has been cancelled
Unix builds / Ubuntu 22.04 wxGTK with wx containers (push) Has been cancelled
Unix builds / Ubuntu 24.04 wxGTK UBSAN (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxDFB (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxGTK 3 static with gcc 4.8 (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxGTK 2 (push) Has been cancelled
CMake builds / Ubuntu 22.04 wxGTK 3 (push) Has been cancelled
CMake builds / MSW/MSVC wxMSW (push) Has been cancelled
CMake builds / MSW/Clang wxMSW (push) Has been cancelled
CMake builds / macOS latest wxOSX Ninja (push) Has been cancelled
CMake builds / macOS 14 wxOSX Xcode (push) Has been cancelled
CMake builds / macOS 14 wxIOS (push) Has been cancelled
CMake builds / MSW/MSVC wxQt 5.15 (push) Has been cancelled
CMake builds / MSW/MSVC wxQt 6.8 (push) Has been cancelled
Mac builds / wxMac ARM ASAN not compatible (push) Has been cancelled
Mac builds / wxMac Universal C++14 (push) Has been cancelled
Mac builds / wxiOS Simulator on Silicon Mac (push) Has been cancelled
Mac builds / wxiOS (push) Has been cancelled
Mac builds / wxMac Intel C++17 (push) Has been cancelled
Mac Xcode builds / iOS Simulator static (push) Has been cancelled
Mac Xcode builds / macOS dynamic Release (push) Has been cancelled
Mac Xcode builds / iOS static Debug (push) Has been cancelled
MSW builds / wxMSW vs2022 DLL Debug x64 (push) Has been cancelled
MSW builds / wxMSW vs2022 DLL Release x64 (push) Has been cancelled
MSW builds / wxMSW vs2022 Debug Win32 (push) Has been cancelled
MSW builds / wxMSW vs2022 Release arm64 (push) Has been cancelled
MSW cross-builds / wxMSW 64 bits not compatible (push) Has been cancelled
MSW cross-builds / wxMSW/Univ (push) Has been cancelled
MSW cross-builds / wxMSW 32 bits (push) Has been cancelled
Code Checks / Check Spelling (push) Has been cancelled
Code Checks / Check Whitespace (push) Has been cancelled
Code Checks / Check Mixed EOL (push) Has been cancelled
Code Checks / Check C++ Style (push) Has been cancelled
Code Checks / Check All Headers In allheaders.h (push) Has been cancelled
* add a wxGTK on macOS build, right now only manually triggered
2025-10-29 15:40:23 +01:00
Robert Roebling
e38fa1c264 Add --with-iphonesimulator configure option
Make it simpler to cross compile wxiOS on Silicon Macs by allowing to
just specify this option and document its use.

Closes #25782.
2025-09-23 14:45:04 +02:00
Maarten Bent
8ca3d109de Ignore tabs in cotire.cmake 2025-09-14 21:51:10 +02:00
Vadim Zeitlin
8efb18de54 Revert "Also exclude wayland-scanner-generated sources from space checks"
This reverts commit 63707e2767 for the
same reason as in the previous commit: the generated sources are not
stored in the repository any longer.
2025-09-08 00:04:34 +02:00
Vadim Zeitlin
5ab553fcbb Revert "Exclude headers generated by wayland-scanner from code checks"
This reverts commit c375a91dd6 as it's
not needed any longer because the files in question are not present in
the repository any more.
2025-09-08 00:03:50 +02:00
Vadim Zeitlin
77ec71a806 Merge branch 'wayland-warp-pointer'
Use Wayland protocol to warp pointer.

See #25721.

Closes #23778.
2025-09-06 20:41:46 +02:00
Vadim Zeitlin
73ce975e18 Revert "Try running iOS CI build under macOS 15 with Xcode 16.4"
Some checks failed
Unix builds / Ubuntu 18.04 wxGTK 3 compatible 3.0 (push) Has been cancelled
Unix builds / Ubuntu 24.04 wxGTK ASAN not compatible (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxGTK UTF-8 (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxQt (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxX11 (push) Has been cancelled
Unix builds / Ubuntu 20.04 wxGTK 3 with clang (push) Has been cancelled
Unix builds / Ubuntu 22.04 wxGTK with wx containers (push) Has been cancelled
Unix builds / Ubuntu 24.04 wxGTK UBSAN (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxDFB (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxGTK 3 static with gcc 4.8 (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxGTK 2 (push) Has been cancelled
CMake builds / Ubuntu 22.04 wxGTK 3 (push) Has been cancelled
CMake builds / MSW/MSVC wxMSW (push) Has been cancelled
CMake builds / MSW/Clang wxMSW (push) Has been cancelled
CMake builds / macOS latest wxOSX Ninja (push) Has been cancelled
CMake builds / macOS 14 wxOSX Xcode (push) Has been cancelled
CMake builds / macOS 14 wxIOS (push) Has been cancelled
CMake builds / MSW/MSVC wxQt 5.15 (push) Has been cancelled
CMake builds / MSW/MSVC wxQt 6.8 (push) Has been cancelled
Mac builds / wxMac ARM ASAN not compatible (push) Has been cancelled
Mac builds / wxMac Universal C++14 (push) Has been cancelled
Mac builds / wxiOS (push) Has been cancelled
Mac builds / wxMac Intel C++17 (push) Has been cancelled
Mac Xcode builds / iOS Simulator static (push) Has been cancelled
Mac Xcode builds / macOS dynamic Release (push) Has been cancelled
Mac Xcode builds / iOS static Debug (push) Has been cancelled
MSW builds / wxMSW vs2022 DLL Debug x64 (push) Has been cancelled
MSW builds / wxMSW vs2022 DLL Release x64 (push) Has been cancelled
MSW builds / wxMSW vs2022 Debug Win32 (push) Has been cancelled
MSW builds / wxMSW vs2022 Release arm64 (push) Has been cancelled
MSW cross-builds / wxMSW 64 bits not compatible (push) Has been cancelled
MSW cross-builds / wxMSW/Univ (push) Has been cancelled
MSW cross-builds / wxMSW 32 bits (push) Has been cancelled
Code Checks / Check Spelling (push) Has been cancelled
Code Checks / Check Whitespace (push) Has been cancelled
Code Checks / Check Mixed EOL (push) Has been cancelled
Code Checks / Check C++ Style (push) Has been cancelled
Code Checks / Check All Headers In allheaders.h (push) Has been cancelled
Update Documentation / Update Online Documentation (push) Has been cancelled
No Response / no-response (push) Has been cancelled
This reverts commit e87cf7c921 as it's
insufficient to fix the builds with macOS 15 images, apparently we also
need to download iOS SDK.

For now just revert to building under macOS 14.
2025-08-27 22:10:46 +02:00
Vadim Zeitlin
e87cf7c921 Try running iOS CI build under macOS 15 with Xcode 16.4
Explicitly select the Xcode version to use.
2025-08-27 12:44:48 +02:00
Vadim Zeitlin
1d51d79045 Try running iOS build under macOS 14
The build doesn't work under macos-latest any more with xcodebuild
complaining about not being to find iOS platform, so try running it
under the previous versions.

See #25727.
2025-08-26 14:41:36 +02:00
Vadim Zeitlin
63707e2767 Also exclude wayland-scanner-generated sources from space checks
We don't care about TABs in the generated code.
2025-08-22 22:19:00 +02:00
Vadim Zeitlin
c375a91dd6 Exclude headers generated by wayland-scanner from code checks
These files contain TABs, and NULLs, but we don't care about them.
2025-08-22 21:27:36 +02:00
Vadim Zeitlin
55fd008650 Restore CI jobs with wxUSE_STD_STRING_CONV_IN_WXSTRING=1
Some checks failed
No Response / no-response (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxGTK 3 compatible 3.0 (push) Has been cancelled
Unix builds / Ubuntu 24.04 wxGTK ASAN not compatible (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxGTK UTF-8 (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxQt (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxX11 (push) Has been cancelled
Unix builds / Ubuntu 20.04 wxGTK 3 with clang (push) Has been cancelled
Unix builds / Ubuntu 22.04 wxGTK with wx containers (push) Has been cancelled
Unix builds / Ubuntu 24.04 wxGTK UBSAN (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxDFB (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxGTK 3 static with gcc 4.8 (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxGTK 2 (push) Has been cancelled
CMake builds / Ubuntu 22.04 wxGTK 3 (push) Has been cancelled
CMake builds / MSW/MSVC wxMSW (push) Has been cancelled
CMake builds / MSW/Clang wxMSW (push) Has been cancelled
CMake builds / macOS latest wxOSX Ninja (push) Has been cancelled
CMake builds / macOS 14 wxOSX Xcode (push) Has been cancelled
CMake builds / macOS 14 wxIOS (push) Has been cancelled
CMake builds / MSW/MSVC wxQt 5.15 (push) Has been cancelled
CMake builds / MSW/MSVC wxQt 6.8 (push) Has been cancelled
Mac builds / wxMac ARM ASAN not compatible (push) Has been cancelled
Mac builds / wxMac Universal C++14 (push) Has been cancelled
Mac builds / wxiOS (push) Has been cancelled
Mac builds / wxMac Intel C++17 (push) Has been cancelled
Mac Xcode builds / iOS Simulator static (push) Has been cancelled
Mac Xcode builds / macOS dynamic Release (push) Has been cancelled
Mac Xcode builds / iOS static Debug (push) Has been cancelled
MSW builds / wxMSW vs2022 DLL Debug x64 (push) Has been cancelled
MSW builds / wxMSW vs2022 DLL Release x64 (push) Has been cancelled
MSW builds / wxMSW vs2022 Debug Win32 (push) Has been cancelled
MSW builds / wxMSW vs2022 Release arm64 (push) Has been cancelled
MSW cross-builds / wxMSW 64 bits not compatible (push) Has been cancelled
MSW cross-builds / wxMSW/Univ (push) Has been cancelled
MSW cross-builds / wxMSW 32 bits (push) Has been cancelled
Code Checks / Check Spelling (push) Has been cancelled
Code Checks / Check Whitespace (push) Has been cancelled
Code Checks / Check Mixed EOL (push) Has been cancelled
Code Checks / Check C++ Style (push) Has been cancelled
Code Checks / Check All Headers In allheaders.h (push) Has been cancelled
After the changes 35c35c235e (Remove wxUSE_STL which is not really used
any longer, 2023-04-15) there were no more CI builds using wxString
without implicit conversion to "char*", so errors like the one fixed in
the parent commit were not detected any more.

Add builds using wxUSE_STD_STRING_CONV_IN_WXSTRING=1 which disables
conversions to "char*" in wxString to ensure this doesn't happen again.
2025-07-28 16:19:47 +02:00
Vadim Zeitlin
b2b8336e15 Move wxQt5 CI job to CMake workflow too
For the same reasons as in the parent commit message, this job belongs
to the workflow in ci_cmake.yml rather than MSBuild one in ci_msw.yml.
2025-06-18 02:17:03 +02:00
Vadim Zeitlin
cd50322165 Move wxMSW/clang CI job to the workflow using CMake
This job uses CMake and not MSBuild, so move it to the appropriate
workflow.
2025-06-18 02:17:03 +02:00
Vadim Zeitlin
e2bbec97c2 Only use "-jN" with make-based CMake generators
Don't use this option with e.g. MSBuild which doesn't understand it.
2025-06-17 21:35:40 +02:00
Vadim Zeitlin
688a95f0c4 Don't install Qt in CMake wxMSW CI job
It's only needed for wxQt, so don't waste time doing it in wxMSW job.
2025-06-17 17:07:15 +02:00
Vadim Zeitlin
73bfa1de15 Use more consistent CMake wxMSW CI job name
wxQt job uses wxQt in its name, so use wxMSW for this one.
2025-06-17 17:07:15 +02:00
Vadim Zeitlin
1cad028f3d Use better names for the other MSW CI jobs
Make them more consistent with wxMSW MSVS job.
2025-06-17 17:07:15 +02:00
Vadim Zeitlin
fccd7f703d Add MSVS wxMSW build using C++20
It seems useful to test the latest support C++ standard version too.

Add cxx20.props which can also be used locally in a similar way, i.e.
after copying it to wx_local.props.
2025-06-17 17:07:15 +02:00
Vadim Zeitlin
8a739c6893 Move wxQt/MSVS CI job from AppVeyor to GitHub Actions
It should run faster there, reducing total CI run time.
2025-06-17 17:07:15 +02:00
Vadim Zeitlin
b9e3dc100d Leave only MSVS 2022 CI jobs
MSVS 2019 is only available in windows-2019 image which is being retired
by GitHub, see https://github.com/actions/runner-images/issues/12045
2025-06-17 17:07:15 +02:00
Vadim Zeitlin
b053b687d1 Stop on warnings in MSVS CI jobs
Somewhat confusingly, using /WX compiler switch doesn't work, but using
MSBuild /WarnAsError one does.
2025-06-17 17:07:15 +02:00
Vadim Zeitlin
74174e7c80 Enable extra warnings if wxENABLE_EXTRA_WARNINGS is defined
Doing this in this way instead of just adding -Wextra and other options
to the compiler command line allows to use more stringent warnings for
our own code, but not for the third party libraries, that would usually
be compiled with the same compiler options as it.
2025-06-02 00:55:59 +02:00
Vadim Zeitlin
2fd894514e Use current upstream version of gh-release action
The problem that had been previously fixed in our fork should be fixed
upstream too by now.
2025-05-25 17:21:53 +02:00
Vadim Zeitlin
45a67caed1 Use node 20-based versions of the actions
Node 16 is not available on GitHub Actions any longer.

(cherry picked from commit c55004dcb2)
2025-05-25 17:20:55 +02:00
Vadim Zeitlin
6e4ed39bdd Install Doxygen in MSW part of make_release workflow
Somehow it's not available by default any longer.

(cherry picked from commit 015e120fa8)
2025-05-25 17:20:05 +02:00
Vadim Zeitlin
28eca2fd38 Add missing new line before the checksums
Just a minor cosmetic fix.

(cherry picked from commit 0f6dfb6369)
2025-05-25 17:20:05 +02:00
Vadim Zeitlin
813d36f024 Try using -Wsuggest-override in the CI builds
This is a useful warning and we want to ensure that wx compiles cleanly
with it.

Note that it can't be used for gcc < 11 (it is supported by it since 5.1
but there are tons of false positives for the macros from wx/rtti.h with
the older versions) and only relatively recent clang supports this
gcc-compatible option.
2025-05-20 17:39:59 +02:00
Maarten Bent
bb4c920fd5 Add CMake CI job for universal macOS build 2025-05-16 18:26:16 +02:00
Vadim Zeitlin
d58ea70b3f Switch Xcode builds to arm64 from x86_64
It doesn't seem necessary to use the non-native arch, perhaps using the
native one can be a bit faster.
2025-05-10 15:13:22 +02:00
Vadim Zeitlin
60a0ff0f8f Remove one wxOSX CI build
We had 2 pretty similar builds running on our own runner and on GitHub
one, leave just one of them.
2025-05-10 15:13:22 +02:00
Vadim Zeitlin
b68a9da592 Use ccache in Mac CI builds
Install it using the same action we use for Unix builds and put the
directory containing its wrappers in the PATH.

Note that we need to do it after adding Homebrew directory to the PATH
because it isn't there by default on our self-hosted runner even if it
is on GitHub Actions ones.
2025-05-10 15:12:47 +02:00
AliKet
9495129c5e wxQt: Fix GitHub Actions failure when downloading Qt 6.8.*
See #25332.
2025-04-22 01:28:00 +02:00
AliKet
7434ba2b65 wxQt: Add Github Actions to run wxQt 6.8 under Windows 2025-03-12 09:11:04 +01:00
Vadim Zeitlin
7637e9d6e6 Run go-httpbin locally for MSW CI jobs on GitHub too
Do it for the same reason as we do it on appveyor: the main/default
endpoint is unreliable and may not accept connections, results in
spurious test failures.
2025-03-02 23:30:22 +01:00
Vadim Zeitlin
87ee0d67ad Leave PCH enabled just for one wxGTK build
Disable it for wxX11, wxDFB and wxQt builds as this helps to catch
errors hidden when using PCH.

See #25176.
2025-02-18 00:54:27 +01:00
Vadim Zeitlin
6a914b99a9 Switch some GitHub Actions builds from Ubuntu 22.04 to 22.04
It makes sense to test the newest Ubuntu version more than ~3 year old
one.
2025-02-15 18:18:43 +01:00
Vadim Zeitlin
5104110746 Run Ubuntu 20.04 CI build using clang in a container
Ubuntu 20.04 will be dropped by GitHub Actions soon, so we can't use it
any more, but switching this build to a newer Ubuntu version doesn't
work because of #25168, so keep running it under 20.04 but use a
container for it.

Fix some check for matrix.container to really test that we're not using
Ubuntu 18.04 container (which is incompatible with the Node.JS version
used by GitHub Actions) instead of testing that we use some container.
2025-02-15 18:17:26 +01:00
Vadim Zeitlin
858e2eddc0 Use ubuntu-latest for checks not relying on any specific version
For the checks running simple shell scripts, any Ubuntu version should
work, so switch them to use the latest one to avoid having to update
them every time when an existing version is dropped by GitHub Actions.
2025-02-12 19:04:51 +01:00
Vadim Zeitlin
9eda29ade3 Revert "Work around ASAN crashes with latest Ubuntu 22.04 image"
This reverts commit ced23e24d6 as the
problem should be fixed on GitHub Actions, see

https://github.com/actions/runner-images/issues/9491#issuecomment-2010912636
2025-02-12 19:01:31 +01:00
Vadim Zeitlin
e37c98b91e Show make version in Unix/Mac CI builds too 2025-02-11 20:43:30 +01:00
Vadim Zeitlin
b5b858637f Add check for self-contained headers to a CI job
It seems wasteful to check this in all of them, so choose one with the
relatively short running-time and do it only there.
2025-02-11 20:43:30 +01:00
Vadim Zeitlin
1984805126 Merge branch 'allheaders-in-allheaders'
Include all headers in tests/allheaders.h and add a check verifying that
all of them are included.

Closes #25126.
2025-01-31 17:32:06 +01:00
Lauri Nurmi
f88a0a933d Add a script and CI action for tests/allheaders.h
Check that all headers are either #included or mentioned
in tests/allheaders.h.
2025-01-31 17:32:00 +01:00
Vadim Zeitlin
c4b58317f0 Disable long path test under Wine
This seems to result in failures in the subsequent tests in some weird
way.
2025-01-18 17:04:50 +01:00
Lauri Nurmi
87c1aae252 Fix double negatives used with 'neither'
Replace most 'neither' words introduced after 2b0ee48ef7
(Fix double negatives used with 'neither', 2023-11-25)
with 'either'.

All changes are to comments only.

Closes #24999.
2024-12-11 17:57:46 +01:00
Vadim Zeitlin
db9adea6e4 Stop using checkout and other actions for Ubuntu 18.04 CI builds
Even actions/checkout@v3 doesn't work in the container any longer,
because none of JS actions can run on Ubuntu 18.04 which doesn't have a
new enough glibc version any longer, so perform the checkout manually.

Disable ccache for the builds using this OS too for the same reason:
even though we could install ccache itself manually too, we don't have
any easy way to save and restore its cache without this action.

Also disable wxWebRequest tests using httpbin which can't be easily
installed.

The diff to httpbin.sh is best viewed ignoring whitespace-only changes.

(cherry picked from commit 9d1c5b108c)

See #24983.
2024-12-02 01:17:07 +01:00
Vadim Zeitlin
9eda19f643 Merge branch 'samples-vcxproj'
Add MSVC projects for all samples.

See #24937.
2024-11-27 01:08:34 +01:00
Ulrich Telle
57e1c9e1ee Update wxWidgets language database and improve locale matching
This commit improves the best locale match algorithm by prioritizing
closer matches and add many new tests verifying that this works as
expected.

In order to do this, new information had to be added to the language
database, which was extended with it and updated to use the latest
Unicode CLDR data and latest Windows 11 locale list.

Further, add a set of scripts for maintaining the language database up
to date and a GitHub workflow `genlangdb.yml` which can be run manually
to regenerate the wxWidgets language-related source and header files
from the underlying Windows and Unicode data. It produces 2 artifacts:

- wxLanguageDatabaseDist.zip allows to easily update the
  language-related files in the wxWidgets repository by simply copying
  all files.
- the normal workflow log and wxLanguageDatabaseLog.zip allow to check
  all temporary files of the regeneration process and to detect
  potential issues, before the language-related files are actually
  replaced by the new ones.

Finally, fix wxUILocaleImplName::GetPreferredUILanguages: Under Windows
10 and above the Windows API function ::GetUserPreferredUILanguages()
returns only the primary UI language plus US English. Additional
preferred UI languages installed by the user are ignored, so instead of
using this function read the list of user preferred languages from the
Windows registry.

Closes #24855.
2024-11-18 16:46:25 +01:00