Commit Graph

209 Commits

Author SHA1 Message Date
Vadim Zeitlin
8e8a86aed0 Fix return code from testing script in case of error
Using type reset %errorlevel% and the errors were not detected any
longer.
2021-01-27 14:56:29 +01:00
Vadim Zeitlin
b394bb1b87 Show httpbin output if the test failed, not if it succeeded
This output is mostly useful for diagnosing errors, so it's not very
useful to show it only after successful test completion in after_test
command.
2021-01-27 10:01:53 +01:00
Vadim Zeitlin
623c4811ab Run httpbin in appveyor.yml to be able to stop it later
There is no way to stop a background task simply and safely with
cmd.exe, but in appveyor.yml we can use PowerShell, so use its job
support to do it instead.

This is important because AppVeyor waits until all jobs launched by the
script terminate, so without stopping the background job all builds
waited for an hour before timing out.
2021-01-26 22:50:43 +01:00
VZ
75b4f5439a
Fix setting WX_TEST_WEBREQUEST_URL in AppVeyor builds
Don't use quotes around the value, they're not special for cmd.exe
and remain part of the actual variable value.

Co-authored-by: Maarten <MaartenBent@users.noreply.github.com>
2021-01-25 18:22:40 +01:00
Vadim Zeitlin
32cdda65bb Use pip for httpbin in Mac Travis CI builds
Docker isn't available under Mac, unfortunately.

Notice that it's still better to use Docker if it is available, rather
than using pip everywhere, as pip has trouble installing httpbin in the
Ubuntu 14.04 build, for example.
2021-01-25 00:25:04 +01:00
Vadim Zeitlin
9307fa6f89 Run httpbin locally for the tests in the CI builds
Run httpbin (either directly or inside a container) and set
WX_TEST_WEBREQUEST_URL to point to localhost.

Note that it is important _not_ to have a trailing slash in the root
URL, otherwise WebRequest::Auth::Digest test would fail.
2021-01-24 19:04:41 +01:00
Maarten Bent
71c4653b94 Enable wxUSE_WEBVIEW_EDGE in an AppVeyor test 2021-01-19 22:43:08 +01:00
Maarten Bent
564f9d6037 Specify tests to exclude in CI CMake builds
Escape the | in AppVeyor bat file to prevent errors.
2021-01-19 19:58:46 +01:00
Maarten Bent
b51d146adf Run ctest in correct directory on Travis CI 2021-01-19 19:58:46 +01:00
Ilya Sinitsyn
67d286d499 Remove build with ASAN from Travis builds 2020-12-30 13:50:59 +07:00
Xaviou
be5b68459d Add scripts used for building MinGW official binaries
Add the scripts themselves and the documentation explaining how to use
them and which compilers are currently supported.

Closes https://github.com/wxWidgets/wxWidgets/pull/2129
2020-12-29 17:41:01 +01:00
Vadim Zeitlin
a3ea09d3e3 Revert "Increase LSAN verbosity in Travis CI builds"
This reverts commit 7ec39330d2 because
enabling verbose ASAN output results in too much output for Travis to
handle (and, to be fair, for it to be useful).
2020-10-20 18:41:40 +02:00
Vadim Zeitlin
7ec39330d2 Increase LSAN verbosity in Travis CI builds
Its own error message recommends using these options if it fails (as it
did in one of the builds with an irreproducible crash), so try doing it.
2020-10-20 15:57:09 +02:00
Vadim Zeitlin
a2923a6fad Select GTK version explicitly when configuring Travis CI builds
Don't rely on just a single GTK version being installed on the system,
as we do now, but select the version we want explicitly, just to avoid
bad surprises in the future (even if it doesn't change anything for
now).
2020-10-19 16:51:36 +02:00
Vadim Zeitlin
7859163e66 Require specifying wxGTK_VERSION for wxGTK builds on Travis CI
This avoids accidentally using a wrong GTK version, as it happened for
e.g. ARM64 build.
2020-10-19 16:50:56 +02:00
Ilya Sinitsyn
0310347dc4 Add wxGTK build with ASAN to Travis CI
Compile and link with `-fsanitize=address` options to find memory related
errors.
2020-10-19 14:03:24 +02:00
Ilya Sinitsyn
fe7230e19c Suppress spurious accessibility bus errors in Travis CI builds
These errors don't matter, so just avoid them in the build logs by
setting NO_AT_BRIDGE environment variable.
2020-10-19 13:54:19 +02:00
Vadim Zeitlin
d1aa3d5663 Update the version to 3.1.5
This was done by running misc/scripts/inc_release, bakefile_gen and
autoconf.
2020-07-23 16:25:39 +02:00
dos
0f7387bc48 Include wxbase DLLs in 64-bit Dev package too
Do it for consistency with the 32-bit package and to ensure that the
provided wxrc.exe binary can be run without downloading any extra files.

Closes https://github.com/wxWidgets/wxWidgets/pull/1991
2020-07-23 16:20:23 +02:00
dos
5ed09da80c Copy wxwidgets.props to root of *Dev.7z packages; use full source path with fciv command. 2020-07-13 13:34:02 -03:00
dos
050df54930 Add TARGET_CPU=X86 to 32 bit builds. 2020-07-13 13:32:24 -03:00
Vadim Zeitlin
099ea7176d Properly stop Travis CI build after a test failure
Using "pushd tests && test-command && popd" loses the exit code of the
test command, as it's not taken into account by "set -e" when the
command is part of a "&&" list.

Fix this by simply splitting such lists in their individual commands.
2020-07-09 14:08:44 +02:00
Vadim Zeitlin
9fde10f53e Use #!/bin/bash for Travis build script which requires bash
It uses arithmetic expansion and, now, arrays, neither of which exists
in POSIX sh.
2020-07-07 12:43:12 +02:00
Vadim Zeitlin
403884e1d8 Fix quoting of CXXFLAGS passed to make
Use arrays to simplify passing CXXFLAGS and LDFLAGS, both of them may
contain spaces, separately on make command line.

Simpler solution of just using individual variable doesn't work because
of bash/POSIX word splitting behaviour (zsh should be blamed for
spoiling me with its much more reasonable behaviour and allowing me
to forget about this insanity in the first place). In principle, we
could work around this by temporarily resetting IFS, but using arrays is
arguably more clear and this script already uses bashisms, in spite of
its shebang line.
2020-07-07 12:40:22 +02:00
Vadim Zeitlin
a4c1e542aa Use makefile flags when building the samples too
This will notably detect all warnings in them.
2020-07-06 18:01:38 +02:00
Vadim Zeitlin
85ad131adb Fix not handling #warning as errors for clang
clang uses "#warnings" warning category instead of "cpp" as gcc does and
complains about unknown "cpp" warning option if we use it with it.
2020-07-06 18:01:38 +02:00
Vadim Zeitlin
437b8eebec Pass -Werror on make command line
Setting CXXFLAGS=-Werror in the environment wasn't enough, it was still
overridden by the empty CXXFLAGS in the makefile.

Ideal would be to get rid of the empty flags there, but for now override
them on make command line explicitly.
2020-07-06 18:01:38 +02:00
Vadim Zeitlin
c4152869f5 Split wxMAKEFILE_FLAGS in separate CXX/LDFLAGS variables
This will allow appending extra CXXFLAGS to use with make in the
upcoming commit.
2020-07-06 18:01:38 +02:00
Vadim Zeitlin
b91d3e35cf Only use -Werror for building, not configuring
Use of -Werror results in failures of configure tests that should
normally succeed, e.g. testing for va_copy() when cross-compiling for
iOS, so don't do it and just enable -Werror for building our own code.
2020-07-06 13:13:35 +02:00
Vadim Zeitlin
20e385e7bb Do not make explicit #warnings fatal in Travis CI builds
Don't give errors for the intentional warnings from #warning directives.
2020-07-06 12:52:01 +02:00
Vadim Zeitlin
31a1779a86 Keep building libraries/samples/tests in Travis CI tests
This is useful to see all the warnings at once instead of having to run
many builds to see them all.
2020-07-06 12:45:57 +02:00
Vadim Zeitlin
b48515d5cc squash! Treat warnings as errors in Travis CI builds
Add wxALLOW_WARNINGS which can be set to prevent this from happening for
the ports where we don't want to avoids warnings anyhow because they
indicate real problems in the code, such as wxDFB.
2020-07-06 12:44:25 +02:00
Vadim Zeitlin
d2e03dec77 Treat warnings as errors in Travis CI builds
This will allow detecting any new warnings immediately.
2020-07-06 00:30:41 +02:00
Maarten Bent
e4437c4974 Add iOS CMake build to Travis CI
Use the following CMake flags:
-DCMAKE_SYSTEM_NAME=iOS - for specifying it is an iOS build
-DCMAKE_FIND_ROOT_PATH=/usr/local - dir to search for the built wxWidgets libraries
-DCMAKE_XCODE_ATTRIBUTE_CODE_SIGNING_ALLOWED=NO - don't require signing app packages
-DCMAKE_OSX_DEPLOYMENT_TARGET=10.12 - specify a target so both the libraries and sample will use the same architecture

Also use the code signing flag when testing precompiled header support.
Don't build the default samples, widgets sample has features that are not supported by the iOS build.

Xcode seems to rebuild the libraries when installing, so call CMake only once.
2020-06-18 21:20:21 +02:00
Maarten Bent
78500e4a3b Improve folding in Travis CI log
Start the fold before echoing the description, so the description is shown when folded.
Combine Xcode checks into one statement.
Add missing '-G' argument when building sample using CMake.
2020-06-18 19:48:03 +02:00
Stefan Csomor
da48b9e45d
adding an iOS build to travis (#1847)
* fixing compilation of tests that cannot build

bracket code with the corresponding wxUSE… macros

* adding directive for iOS

* adding a switch for skipping the run - not the build of tests

right now I don’t know yet, how to run the test binary in the iOS simulator, but building it is still a good test in itself

* adding skipping of tests

* increasing minimum deployment to get proper c++17 support

* using --disable-sys-libs, restoring other targets

even when the zlib in -isysroot is used, due to deployment on lower iOS versions inflateValidate may not be available and crash. The guards are evaluated using macros from the zlib from the SDK, not from the lowest version supported.
2020-05-08 08:01:56 +02:00
Vadim Zeitlin
0397da2a8f Use ld --no-as-needed in Travis Ubuntu 18.04 wxGTK build
This works around a problem in our build system which doesn't set rpath
correctly when linking our own libraries, which means that "qa" library,
for example, doesn't record the path to its "xml" library dependency.

We already worked around this by linking any program using "qa" with
"xml" too, however this doesn't do anything if "--as-needed" flag is in
effect, as is the case by default under Ubuntu 18.04, so make our
workaround work by forcefully disabling this flag.

Real solution would be to use -Wl,-rpath correctly and then stop linking
with "xml" library unnecessarily in e.g. test_gui bakefile.
2020-04-23 02:59:45 +02:00
Vadim Zeitlin
f1ee627736 Update Travis testing script to work for non-GUI builds too
Skip parts that don't work in this case.
2020-04-22 21:00:28 +02:00
Vadim Zeitlin
7cfe4ee9f2 Disable GUI parts build for PPC and S/390 Travis platforms
People are unlikely to use wxGTK on those anyhow, and it takes an
awfully long time to build, especially on PPC.
2020-04-22 18:26:02 +02:00
Vadim Zeitlin
30241e18ba Fix configure success test one more time
Quotes are important.
2020-04-22 18:25:48 +02:00
Vadim Zeitlin
ea11be554c Install libpango1.0-dev for wxX11 build on Travis
Hopefully this is what explains pangoxft pkg-config check failure.
2020-04-22 17:56:45 +02:00
Vadim Zeitlin
a22b9b283d Really fix configure exit code test
Don't compare undefined variable with 0, this is not going to work.
2020-04-22 17:51:55 +02:00
Vadim Zeitlin
3fc119f564 Avoid using undefined variable in Travis CI build script
rc is undefined if configure succeeds, so use "$rc" to expand to
something non-empty even in this case.
2020-04-22 17:27:24 +02:00
Vadim Zeitlin
babf789c54 Don't install unnecessary packages in Travis CI build script
It shouldn't be necessary to install GTK-specific packages when building
non-GTK-based ports.
2020-04-22 17:25:33 +02:00
Vadim Zeitlin
76ac2d8e76 Install Qt OpenGL support when building wxQt on Travis
Somehow this wasn't necessary on the old Ubuntu version, but is needed
under Bionic.

Ideally configure shouldn't refuse to build everything if just Qt5OpenGL
is not found, and just disable OpenGL support, but this enhancement can
be done later.
2020-04-22 17:12:03 +02:00
Vadim Zeitlin
f899a72d45 Show config.log contents if configure failed
This should help understanding why Qt libraries are not found under
Bionic and may also be useful in case of other failures in the future.
2020-04-22 15:24:24 +02:00
Vadim Zeitlin
cd750332d3 Disable debug info generation in Travis CI builds
Debug info is useless in these builds and disabling it should hopefully
speed them up a bit and take less space.
2020-04-22 15:18:14 +02:00
Vadim Zeitlin
c6a4cc80fe Merge branch 'pmdpi-build' of git://github.com/MaartenBent/wxWidgets
Improve DPI aware builds with .vc and .vcproj files.

See https://github.com/wxWidgets/wxWidgets/pull/1769
2020-03-28 14:10:17 +01:00
Maarten Bent
820234340f Remove unnecessary arguments for nmake in AppVeyor script 2020-03-27 23:11:00 +01:00
Vadim Zeitlin
98206975f5 Run compilation failures tests on Travis
"failtest" target is not built by default and it's not trivial to change
this, as it needs to be built before anything else (and not in parallel
with it, as otherwise object files created while building the tests
could be removed), so just build it manually before building the tests
themselves in Travis CI builds (or at least those of them using
configure and make).
2020-03-24 00:02:38 +01:00