As it is stated in matrix.cpp wxTransformMatrix was intended to be used
in wxDC to replace the basic system of scaling/translation but actually
it was never used.
Because applying affine transformations can be done with wxAffineMatrix2D
and wxDC::SetTransformMatrix() we can get rid of this dead code.
Closes#13114.
wxWidgets already has a mechanism for locating plugins under
$libdir/wx/*, there's no reason to duplicate it with another
compile-time symbol.
As a consequence, this makes the library relocatable via WXPREFIX again.
Fix the location where the web-extension plugin is installed to be
consistent with the primary bakefile-based build system: i.e. to use
lib/wx/x.y.z for devel versions and lib/wx/x.y for stable.
Add the source files present in the bkl but not CMakeLists.txt to the
latter one too.
Also link with AUI library now that a test file using it is included.
Closes https://github.com/wxWidgets/wxWidgets/pull/2064
And use it to get HiDPI support wherever we use GtkImage. This extends and
consolidates support for custom drawing of images which has already been added
somewhat redundantly in several places.
This reverts commit 8c9ba23eae, reversing
changes made to 5192feb38e.
Upcoming commits will try to work around the issues with art IDs related
to wxNO_IMPLICIT_WXSTRING_ENCODING in a different way.
Make the wxART_* constants const wxStrings to improve compatibility with
pre-3.1.4 code and, in particular, allow taking the address of these
constants.
See https://github.com/wxWidgets/wxWidgets/pull/1996
Memory leaks in the test programs run by configure when using GTK 2
result in configuration failures when using -fsanitize=address in
{CXX,LD}FLAGS, so fix these leaks to allow configuring using
"CXXFLAGS=-fsanitize=address LDFLAGS=-fsanitize=address" together with
--with-gtk=2 (this already worked correctly with the default GTK 3).
Closes https://github.com/wxWidgets/wxWidgets/pull/2001
Add a build option (--disable-pic, wxBUILD_PIC=OFF) to disable it.
Note that it is always enabled for shared libraries and static third party libraries.
The pre-3.1.4 definitions of the constants were just string literals,
while the type were wxString typedefs. To avoid implicit conversion
these were converted to actual wxStrings.
While the interface now matched the implementation, this has several
drawbacks:
- every use of the "constant" now is a string construction at runtime
- the constant now is an rvalue, i.e. it is impossible to take its
address.
The latter breaks its use from wxPython.
The IDs are moved to a separate file which can be included multiple
times, once from the header to have the declarations in place, and once
to instantiate the wxStrings. Using a common file avoids the declaration
and definition going out of sync.
Requires updates of expat and tiff submodules.
Most libraries have their own CMakeLists, add a comment with a suggestion to
use this for implementing build-in support.
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
Use non-standard but convenient AX_SUBDIRS_CONFIGURE() macro instead of
the standard AC_CONFIG_SUBDIRS() for libtiff, in order to allow passing
extra options to this sub-configure script without affecting any other
sub-configure ones and also without wrongly caching these options as
part of the main configure options, as happened before.
This notably fixes the problem with running "config.status", which
complained about unknown "--disable-jbig" and similar options, as they
were cached by the previous configure run.
We could also manually remove these options from ac_configure_args, but
doing it like this seems cleaner and simpler.
Don't output "ok" for all files when running update-setup-h, this was
not very informative and possibly misleading. Only show "ok" for the
actually updated files and "unchanged" otherwise.
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.
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.
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.
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.
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.