Commit Graph

3111 Commits

Author SHA1 Message Date
Maarten Bent
0f806ad96d CMake: use wx prefix in library names
Rename all library targets to start with wx. This way it does not use generic
names like base or core that could interfere with other libraries that add
include the wxWidgets project.
2020-05-17 20:01:02 +02:00
Maarten Bent
0c2d05f52f CMake: add library aliases using wx:: namespace 2020-05-17 20:01:02 +02:00
Maarten Bent
498b79d619 CMake: copy data of widgets sample to correct directory 2020-05-17 20:01:02 +02:00
Maarten Bent
ef741462cd CMake: fix file names in info header 2020-05-17 20:01:02 +02:00
Maarten Bent
e69755c203 CMake: check if the compiler supports using precompiled headers
Build the cotire test project and check if it succeeds. Also check if the
'had text segment at different address' warning does not appear in the build
output. If it does not succeed, disable usage of precompiled headers.

If the PCH option was changed, clean the project and rebuild it again. Do not
clean everytime the project is configured because (re)building the cotire test
project takes some time.
2020-05-17 20:01:01 +02:00
Vadim Zeitlin
7a82a0bbf5 Assume dlerror() function is always available when dlopen() is
Remove separate checks for dlerror() which don't seem to be needed under
any platform any longer.

No real changes, just slim down configure/CMake a tiny bit.
2020-05-15 00:00:06 +02:00
Vadim Zeitlin
fea8c608b1 Remove checks for shl_load() from configure/CMake
This function is not used any more since e289eb07e1 (Get rid of
non-POSIX code for loading dynlibs on *nix, 2020-05-13), so don't check
for it and don't defined the corresponding HAVE_SHL_LOAD symbol.
2020-05-14 23:59:38 +02:00
wangqr
a6e7409888 Rebake after adding imm32.lib to wxSTC 2020-05-11 00:37:56 -04:00
wangqr
f730da3c14 Add imm32.lib to wxStyledTextCtrl 2020-05-11 00:37:56 -04: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
d0fb641498 Merge branch 'cmake-warnings' of https://github.com/MaartenBent/wxWidgets
Enable warnings for CMake builds and fix some warnings that this
exposed.

Also add wxUSE_NATIVE_DATAVIEWCTRL option and change default GTK version
to 3 for CMake too.

See https://github.com/wxWidgets/wxWidgets/pull/1825
2020-05-06 14:34:34 +02:00
Maarten Bent
d3d1a91620 CMake: change default GTK version from 2 to 3 2020-05-06 01:52:27 +02:00
Maarten Bent
b1ddd454f8 CMake: add wxUSE_NATIVE_DATAVIEWCTRL option 2020-05-06 01:52:27 +02:00
Vadim Zeitlin
f5001e728c Rebake with bakefile 0.2.12
No real changes, just synchronize with the bakefile release used now.
2020-05-02 17:02:36 +02:00
Vadim Zeitlin
f83085cff8 Add back the use of INSTALL_SCRIPT correctly
Due to a momentary lapse of reason, the changes of 99cb097f4d (Install
wx-config as a script, not as a binary program, 2018-08-16) were applied
to the generated Makefile.in file and so were promptly lost during the
next rebake.

Reapply them properly now, by modifying the .bkl file from which this
file is generated.

Note that rebaking now requires bakefile v0.2.12, which adds support for
defining INSTALL_SCRIPT.

See #18197.
2020-05-02 15:55:25 +02:00
Maarten Bent
04d82e24cd CMake: enable -Wall for builds using clang or gcc 2020-04-27 00:33:01 +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
c0e1ad6ac0 Remove check for eVC in bakefiles
This compiler is obsolete and doesn't exist since a long time.
2020-04-21 16:27:39 +02:00
Paul Cornett
4d3190c9f7 Revert "Change default GTK version for CMake from 2 to 3"
My attempt to use GTK2 for Travis CI build didn't work
2020-04-20 07:37:12 -07:00
Paul Cornett
6d25b49f95 Change default GTK version for CMake from 2 to 3 2020-04-20 06:55:18 -07:00
Vadim Zeitlin
ab7645e013 Merge branch 'png-sse2' of https://github.com/MaartenBent/wxWidgets
Allow to build libpng on more platforms and enable SSE2 for Intel.

See https://github.com/wxWidgets/wxWidgets/pull/1806
2020-04-19 21:01:06 +02:00
Maarten Bent
f226fc0c76 Enable SSE2 in libpng build 2020-04-19 16:31:22 +02:00
Maarten Bent
f67a7c08f7 Allow to build libpng on more platforms
Add the hardware-specific source files to the build systems. Do not add MIPS
and PowerPC to MSVC build files, because these include <stdint.h> which is not
available for old MSVC versions.
2020-04-19 16:31:22 +02:00
Vadim Zeitlin
47d881b683 Fix order of -L options in autoconf makefiles
Put linker flags determined by configure after -L$(LIBDIRNAME) option
pointing to the directory containing the libraries being built, to
ensure that we link with these libraries rather than any wx libraries
globally installed in the system, as could be the case since the changes
of ec091c9f2b (Don't override CFLAGS etc in configure-generated
makefile, 2020-02-02).

See #18729.
2020-04-15 02:33:53 +02:00
Konstantin S. Matveyev
4d7000d3d4 Add missing Mac headers to the file list
Add wx/osx/core/dataview.h and wx/osx/core/mimetype.h and reorder the
files alphabetically.

Closes https://github.com/wxWidgets/wxWidgets/pull/1797
2020-04-15 02:15:18 +02:00
Vadim Zeitlin
548d27afd2 Remove unused UNIV_PLATFORM_{SRC,HDR} from build/files too
This should have been part of 2c7924dd2e (Remove the now unused
UNIV_PLATFORM_{SRC,HDR} variables, 2020-03-25) but was forgotten there.
2020-04-15 02:14:16 +02:00
Vadim Zeitlin
413fdfbfa4 Merge branch 'cmake-c++11-stl' of git://github.com/MaartenBent/wxWidgets
CMake: Improve STL checks, improve C++17/20 support.

See https://github.com/wxWidgets/wxWidgets/pull/1782

Closes #18718.
2020-04-12 16:37:57 +02:00
Maarten Bent
c96014db27 CMake: install toucan.png with widgets sample
It is used on the StaticBitmap page.
2020-04-10 00:51:17 +02:00
Paul Cornett
d3c60b9524 Update gtk-3.0.m4 from gtk+-3.24.17 2020-04-09 09:39:32 -07:00
Maarten Bent
4122511e76 CMake: Add c++20 option, enable setting c++ version for MSVC
MSVC supports setting the CMAKE_CXX_STANDARD since VS2015 update 2.
2020-04-08 22:13:52 +02:00
Maarten Bent
3c4c4ee273 CMake: Only test stl for c++ versions before 11 2020-04-07 19:28:46 +02:00
Maarten Bent
5c2d186132 CMake: Add variable to indicate if c++11 or later is enabled
Use it in macOS checks.
2020-04-07 19:28:46 +02:00
Maarten Bent
c8209a5111 CMake: Set wxBUILD_CXX_STANDARD globally instead of only on targets
This way the tests in setup.cmake will use the correct c++ version.
2020-04-07 19:09:58 +02:00
Vadim Zeitlin
706c8e8ad6 Merge branch 'disable-native-animation'
Allow the generic animation classes to be used on all platforms.

See https://github.com/wxWidgets/wxWidgets/pull/1768
2020-04-07 00:40:45 +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
343bd89b63 Rebake after changes 2020-03-27 23:15:03 +01:00
Maarten Bent
3978733a37 CMake: Enable DPI awareness options for demos 2020-03-27 23:11:00 +01:00
Maarten Bent
820234340f Remove unnecessary arguments for nmake in AppVeyor script 2020-03-27 23:11:00 +01:00
Maarten Bent
f1a017539a Generate an error when the CPU parameter is not specified and cannot be determined
See #18640
2020-03-27 23:11:00 +01:00
Maarten Bent
284b25ce02 Automatically detect if target architecture is x64 in .vc file
This allows a successful build even if the user omits specifying CPU=X64.

See #18640
2020-03-27 23:11:00 +01:00