Commit Graph

107 Commits

Author SHA1 Message Date
Vadim Zeitlin
9e303c5a6b Check STL build in wxMSW cross-compile CI workflow
Use --enable-stl for one of the builds (and also --disable-compat30 just
to test it too) to check that wxMSW compiles correctly in STL mode too.
2021-09-22 17:11:32 +02:00
Artur Wieczorek
efb40daf4f Execute Window::SizerErrors test under wxMac 2021-09-11 23:24:22 +02:00
Vadim Zeitlin
0fd138a4e7 Slightly simplify running the GUI tests in the Mac CI workflow
No real changes, just don't use pipefail option when we're not using
pipelines at all -- this was somewhat confusing.
2021-09-11 13:54:24 +02:00
Artur Wieczorek
0381b16bd1 Skip tests that currently fail under wxMac 2021-09-11 09:16:32 +02:00
Artur Wieczorek
301b08b95d Execute GUI tests under wxOSX 2021-09-11 09:16:32 +02:00
Vadim Zeitlin
c835d1afa6 Install locales used in wxUILocale tests on the CI system
Ensure that the tests are run instead of being skipped.

Also merge "Set environment variables" and "Before install" steps into a
single "Set up" step to avoid adding yet another separate step for
locale installation.
2021-09-01 18:11:40 +02:00
Vadim Zeitlin
d81dc9f125 Remove tests for matrix.skip_gui in workflow files
This setting is used, so just remove all the tests for it.
2021-08-28 23:50:55 +02:00
Vadim Zeitlin
dd33dc2d68 Move wxMac and wxiOS builds to Mac CI workflow
Still run them on GitHub runners, but do it using the same steps as for
our own builds, as there should be no reason to have any difference
in the build steps independently of where exactly they run.

Also remove checks for matrix.skip_testing from the Unix CI workflow as
they are not needed there any more because the tests are always run.

This commit is best viewed with --color-moved git option.
2021-08-28 23:50:55 +02:00
Vadim Zeitlin
446268b61c Rename ci_mac_selfhosted.yml to just ci_mac.yml
We are going to have both self- and GitHub-hosted runners in this file
soon, so rename it for clarity.

No changes yet.
2021-08-28 23:50:54 +02:00
Vadim Zeitlin
144816105f Make apt even quieter
Even "-qq" is insufficient to suppress the annoying, and useless for
non-interactive use, "Reading database ... NN%" output, so add the
option suppressing it to all apt commands.

Also use "-y" as a single "-q" is not enough to suppress the prompts.
2021-08-27 23:33:25 +02:00
Vadim Zeitlin
16ae31b0da Fix setting DEBIAN_FRONTEND for apt-get install
Do it in the command executed by sudo, as sudo doesn't propagate the
environment variable values by default (--preserve-env option could be
used to do it, but it's simpler to avoid it).
2021-08-27 23:02:10 +02:00
Vadim Zeitlin
4328e81dde Install 32 bit OpenGL libraries explicitly in the CI workflow
For some reason 32 bit libgl1 is not pulled in as win32 dependency any
more, resulting in errors when running the test using Direct2D.

Fix this by installing the package explicitly.
2021-08-27 21:46:49 +02:00
Vadim Zeitlin
6e2d6e9bd4 Enable using MSVS prerelease versions in MSVS CI workflow
Without this options (available in 1.0.3 only), MSVS 2022 is not
detected.
2021-08-24 22:07:36 +02:00
Vadim Zeitlin
b48a266c6d Try building with MSVS 2022 too 2021-08-24 22:00:15 +02:00
Vadim Zeitlin
5385c9ced1 Add DLL Release wxMSW CI build
Append the path to the directory containing the DLLs to PATH to allow
the tests to find them.

Also quote the value of the "Configuration" property as it may (and
does) contain spaces.
2021-08-24 19:33:45 +02:00
Vadim Zeitlin
4d465837e0 Disable currently failing DLL Release MSVS CI build
This was merged accidentally, leave only the passing static build until
the DLL build is fixed.
2021-08-24 17:26:22 +02:00
Vadim Zeitlin
0701402737 Add CI workflow for building wxMSW using MSVS natively
This should allow running all the tests faster than it's done by
AppVeyor.

Ignore changes to this workflow file in all the other workflows.
2021-08-24 17:12:06 +02:00
Vadim Zeitlin
6a99b2d9a8 Fix wrong exclusion in MSW cross-build CI workflow
Ignore GTK files, not MSW ones.
2021-08-24 17:12:05 +02:00
Vadim Zeitlin
4c2707d3dc Enable ASAN for the ARM M1 CI build
Run the tests under ASAN to detect potential problems.

Also enable optimizations for the universal build (overriding
--disable-optimise used by default) to check that there are no problems
with building wxWidgets for real production use.
2021-08-21 16:17:26 +02:00
Vadim Zeitlin
1c0258e5d6 Make wxMSW CI builds name more consistent with the other ones
No real changes, this is purely cosmetic.
2021-08-21 15:49:40 +02:00
Vadim Zeitlin
6f3be7ab26 Reduce the number of Mac CI builds and add a universal one
Don't run 8 builds for all combinations of arch/debug/C++ dialect but
just a few of them covering all of the possibilities.

Also add a static universal build which is what is commonly used for
distributing software using wxWidgets under Mac.
2021-08-21 15:05:13 +02:00
Vadim Zeitlin
1a8e22d813 Rename self-hosted Mac CI workflow file for consistency
Call this file consistently with the other CI files and also ignore all
of the other files in each workflow to avoid unnecessary rebuilds.

Finally, remove a leftover mention of Travis file which doesn't exist
any longer.
2021-08-21 14:39:43 +02:00
Stefan Csomor
b3b24e962e Expand self-hosted Mac M1 CI build workflow
See https://github.com/wxWidgets/wxWidgets/pull/2336
2021-08-20 19:42:35 +02:00
Stefan Csomor
28a5fc0e4c
Update MacS-M1-make.yml
deactivating triggers
2021-08-19 20:45:32 +02:00
Stefan Csomor
f704e7504e
Update MacS-M1-make.yml
try manual runs
2021-08-19 20:43:12 +02:00
Vadim Zeitlin
1fbda84306 Exclude Info.plist files from whitespace checks
These files use TABs for indentation, so the standard check doesn't work
for them (and it doesn't seem worth having a special check just for
them neither, so simply don't check them at all).
2021-08-15 18:39:34 +02:00
Vadim Zeitlin
f58af942ef Merge branch 'github-actions-cmake' of https://github.com/MaartenBent/wxWidgets
Add CI workflow using CMake.

See https://github.com/wxWidgets/wxWidgets/pull/2440
2021-07-24 18:22:50 +02:00
Vadim Zeitlin
0b71b8d8eb Use simpler expression for libgcc path in MSW CI workflow
Use the gcc option which outputs this path directly, rather than
constructing it manually from pieces.

No real changes.
2021-07-24 17:21:39 +01:00
Maarten Bent
fcd9b4ba2b Add CMake builds to GitHub Actions 2021-07-24 16:39:19 +02:00
Maarten Bent
7446c64333 Add script to determine proc count in CI 2021-07-24 16:38:28 +02:00
Vadim Zeitlin
f417705e97 Try better workaround for the ASAN CI build failures
Try excluding RichTextCtrlTestCase in the CI build using ASAN, as the
test can still be killed while running the Table sub-test of this test
case even when running only a subset of all tests, so try skipping this
one instead.
2021-07-22 22:01:41 +02:00
Vadim Zeitlin
f982f15a65 Temporary work around for a problem in ProcessEnter() unit test
Running this test on its own doesn't work currently, so run
ButtonTestCase, which uses wxUIActionSimulator::Click(), which somehow
fixes the problem in ProcessEnter test (by giving focus to the correct
window, probably), before it to avoid failures in this test now that we
run "wx*" tests separately.
2021-07-22 17:32:40 +02:00
Vadim Zeitlin
6af7c3da82 Work around GUI tests failure in ASAN build on GitHub CI
It seems like running the full test suite runs out of memory, as the
test is simply killed, without any more details, after running a certain
number of tests.

Split the tests into 2 parts and run them separately to work around this
problem.
2021-07-22 17:31:21 +02:00
Vadim Zeitlin
1154689322 Show the GUI tests being executed in the CI workflow
This is useful to check where the test dies when it does it.
2021-07-22 17:27:43 +02:00
Vadim Zeitlin
d81d7b1563 Exclude .gitmodules from whitespace code style checks
This file uses TABs and can keep using them.
2021-07-17 20:41:18 +02:00
PB
346a31d545 Remove TravisCI mentions from build scripts
Travis CI is not used anymore, remove its mentions from the build scripts.
2021-07-15 13:53:12 +02:00
Vadim Zeitlin
9eea249924 Set locale to C.UTF-8 when running tests under Wine
Using UTF-8 encoding seems to be required for the Unicode file names to
work with Wine.
2021-07-04 17:44:39 +02:00
Vadim Zeitlin
425151d6ba Re-enable most of wxFileName tests under Wine
Exclude just the single test which fails when using Wine, but not all
the rest of them.

This is again similar to the grand-parent commit for the file functions
tests.
2021-07-04 15:09:06 +01:00
Vadim Zeitlin
dde4413f36 Re-enable most of file functions tests under Wine
Exclude just the single test which fails for mysterious reason when
using Wine, but not all the rest of them.
2021-07-04 15:03:12 +01:00
Vadim Zeitlin
7d9d4c9e50 Rename GitHub Unix CI workflow
No real changes, just use a less generic name now that we have wxMSW
cross-building CI workflow too.
2021-07-03 17:57:43 +02:00
Vadim Zeitlin
e28b2d91fc Revert commits trying to fix wxWebRequest tests under Wine
This reverts commits 7d796c6aa6 (Install python3 and pip for httpbin,
2021-06-27) and 3808e6a28d (Install winbind package required for using
wxWebRequest with Wine, 2021-06-28) as we skip wxWebRequest tests anyhow
under Wine because they don't work with its WinHTTP implementation, so
running httpbin is not necessary any longer and so neither is installing
Python.

These commits are still preserved in history and this commit itself
could be reverted later if Wine WinHTTP becomes functional enough to run
wxWebRequest tests successfully.
2021-07-03 17:21:07 +02:00
Vadim Zeitlin
2ac5510551 Skip running currently failing tests under Wine
Ideally these failures ought to be debugged and fixed, but this is not
really critical as the tests pass under native MSW systems, so it seems
like the failures are due to problems in Wine rather than with the tests
themselves, so for now simply skip the failing tests to let the entire
build pass.
2021-07-03 17:21:07 +02:00
Vadim Zeitlin
1051d9f0da Rename WINERUN environment variable to wxTEST_RUNNER
Make the variable name wx-specific before starting to use it in wx tests
too.
2021-07-03 16:45:15 +02:00
Vadim Zeitlin
3808e6a28d Install winbind package required for using wxWebRequest with Wine
This should address

009a:err:winediag:SECUR32_initNTLMSP ntlm_auth was not found or is
outdated. Make sure that ntlm_auth >= 3.0.25 is in your path. Usually,
you can find it in the winbind package of your distribution.

Wine error and the subsequent test failures.
2021-07-03 16:45:14 +02:00
Vadim Zeitlin
3c714de200 Launch Xvfb before running non-GUI tests in GitHub wxMSW workflow
We must be able to create windows even in non-GUI tests for the windows
used internally, e.g. the one created during wxSocket initialization, so
ensure Xvfb is running before the tests start.
2021-07-03 16:45:14 +02:00
Vadim Zeitlin
0eca5b6846 Use wine64 for running 64 bit MSW binaries
Add WINERUN envirionment variable containing the right command to use.
2021-07-03 16:45:14 +02:00
Vadim Zeitlin
b9fb8358b3 Add the directory containing MinGW DLLs to Wine PATH too
These DLLs are required for running any applications built using MinGW.
2021-07-03 16:45:14 +02:00
Vadim Zeitlin
7d796c6aa6 Install python3 and pip for httpbin
We need Python 3 for running httpbin for wxWebRequest tests.
2021-07-03 16:45:14 +02:00
Vadim Zeitlin
3e5cf7a5c7 Fix owner after checkout 2021-07-03 16:45:14 +02:00
Vadim Zeitlin
769cb2e205 Add workflow for cross-building wxMSW on GitHub Actions
Use MinGW to build and Wine to run the GUI tests.
2021-06-27 13:40:10 +02:00