Commit Graph

1652 Commits

Author SHA1 Message Date
Vadim Zeitlin
7aedb3f064 Revert to using -stdlib=libc++ as part of CXX under OS X
Putting it in LDFLAGS breaks compilation of plugins using shared-ld-sh script
for linking as it doesn't support this option.
2016-01-29 15:15:14 +01:00
Vadim Zeitlin
e1c7b0fc6a Also add C++11 options to OBJCXXFLAGS in configure
We need these options in both CXXFLAGS and OBJCXXFLAGS, otherwise
Objective-C++ code would fail to compile when including C++11 headers such as
<type_traits>.
2016-01-27 04:22:41 +01:00
Vadim Zeitlin
96522491ad Add -stdlib=libc++ to {CXX,LD}FLAGS and not CXX
This allows things work even if a non-default of CXX is specified on the
command line.
2016-01-27 03:41:16 +01:00
Vadim Zeitlin
b67ca545cc Add --enable-cxx11 configure option
Make it simpler to enable C++11 support when building wxWidgets, in particular
take care of using the correct standard library under OS X in this case.

Notice that currently we still build the library using C++98 if no C++11
compiler is available, even with this option. We may want to change this to
give an error in such case later instead.

Also skip the check for <type_traits> in configure when C++11 is used, we know
that it's available in this case, so don't waste time checking for it (there
are probably several more checks that could be skipped in C++11 mode too...).
2016-01-24 21:22:15 +01:00
Vadim Zeitlin
c3504663ef Set minimal supported OS X version to 10.7 in configure
We don't support anything earlier any more, so it's completely wrong to use
-mmacosx-version-min=10.5 by default.
2016-01-24 21:21:37 +01:00
Vadim Zeitlin
52a4fac626 Add proper support for wxUSE_NATIVE_PROGRESSDLG
This symbol was wrongly added to include/wx/msw/setup0.h directly in
075ef6551e, so it didn't work when
cross-compiling from Unix (which doesn't use this file) and would have been
lost after any future modification of include/wx/setup_inc.h where it should
have been added in the first place.

Do this now and also make the check for this symbol in wx/progdlg.h a bit more
readable.
2015-12-30 18:54:35 +01:00
Bryan Petty
0b2263c25d Updated links and mailing list addresses. 2015-10-30 20:06:09 -06:00
Vadim Zeitlin
5cce48186c Link with shlwapi.lib and version.lib under MSW
These libraries are required now that we don't load the functions from them
dynamically (see e78be14ac1)

Closes #17180
2015-10-07 18:56:33 +02:00
Vadim Zeitlin
cc0a53dc96 Don't use -fno-strict-aliasing for optimized build
There doesn't seem to be any need for it, the library compiles fine without it
and the few warnings generated with -Wstrict-aliasing=2 are harmless (i.e. the
strict aliasing rule is not really broken).
2015-09-19 03:28:50 +02:00
Tobias Taschner
f1abb351af Remove MicroWindows support.
MicroWindows (aka Nano-X) support hasn’t been updated since 2010 and last work for it in wxWidgets happened more than 10 years ago.
2015-08-27 11:00:16 +02:00
Tobias Taschner
5f75b7506f Remove Hildon framework support.
The Hildon framework was used for Nokia 770 and other Maemo devices.
This platform discontinued and hasn't seen a new release since 2011.
2015-08-26 22:49:53 +02:00
Tobias Taschner
26a0a24f38 Remove MS-DOS source files.
Last work on the MS-DOS files was 10 years ago and it's not a viable platform in 2015 any more.
2015-08-26 21:09:41 +02:00
Olly Betts
ecf85bf4cb Remove WXWIN_OS_DESCRIPTION.
This constant wasn't very useful as it contained the description of the OS on
the machine where the library was built, not the one on which the application
using it was running. It also wasn't used anywhere in wxWidgets and apparently
wasn't meant to be used outside of it.

Finally, putting the output of `uname -r` into it created problems with
creating reproducible builds as just a change in the kernel version changed
the build results.

Closes #17002.
2015-05-22 02:29:49 +02:00
Vadim Zeitlin
3f84cb17ca Add wxActivityIndicator control.
This is a simple animated control indicating some program activity.

Provide native GTK+ (for > 2.20) and OS X implementations as well as a generic
one used under MSW.

Update the sample and the documentation.
2015-03-20 00:08:37 +01:00
Vadim Zeitlin
a4f536547b Define __WXGTK220__ in configure and improve checks for GTK+ version.
Use AC_CACHE_CHECK() to avoid recompiling the test program(s) every time
configure runs and also simplify the checks. This required renaming
ac_wxgtkXXX to wx_cv_gtkXXX (cached variables must have "cv" in them).

Also make the checks more logical, by simply setting wx_cv_gtkXXX if
wx_cv_gtkYYY is set with XXX < YYY.

Finally, and the real reason for these changes, add test for __WXGTK220__
which will be used by the upcoming commits to check whether GtkSpinner is
available.
2015-03-08 16:28:22 +01:00
Vadim Zeitlin
453897149f Add wxAddRemoveCtrl class.
This is a simple high level helper combining an arbitrary control showing
multiple items with the buttons allowing to add items to and remove items from
this control, but using the buttons and the layout appropriate for the current
platform.

Add the implementation itself, an example of using it to the dialogs sample
and the documentation.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78462 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2015-02-09 00:26:11 +00:00
Vadim Zeitlin
eeead5ff6d Prettify configure output when checking for backtrace().
The output of "checking for backtrace()" was interspersed with the output of
"checking for library containing backtrace", which was ugly and potentially
confusing, so move AC_SEARCH_LIBS() out of AC_CACHE_CHECK() to fix it.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78430 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2015-02-01 11:33:13 +00:00
Vadim Zeitlin
9a126106a9 Reset wxUSE_LIBNOTIFY if libnotify not detected in configure.
This avoids

WARNING: libnotify not found, wxNotificationMessage will use generic implementation.

followed by

Which GUI toolkit should wxWidgets use?    GTK+ 2 with support for libnotify

at the end.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78421 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2015-01-29 12:25:35 +00:00
Vadim Zeitlin
722057b3a0 Add a new wxUSE_STD_CONTAINERS_COMPATIBLY option.
This option, which is on by default unless the use of STL is disabled,
provides better interoperability with the standard library when it can be done
without breaking backwards compatibility.

The first example of its use is to allow passing std::vector<> of any string
compatible type to wxItemContainer::Append(), Insert() and Set(), allowing to
directly initialize various wxControls deriving from it such as wxChoice,
wxComboBox, wxListBox from a std::vector<> of strings.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78066 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-10-24 21:54:51 +00:00
Vadim Zeitlin
d24f711f88 Only link webview library with libwebkitgtk in wxGTK, not the core one.
Add EXTRALIBS_WEBVIEW similar to the existing EXTRALIBS_MEDIA and such and set
it in configure instead of adding libwebkitgtk and dependent libraries
directly to GUI_TK_LIBRARY.

This ensure that the core library doesn't have any dependencies on
libwebkitgtk which it doesn't need.

Closes #16624.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78026 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-10-16 13:33:08 +00:00
Mariano Reingart
47547703f7 Remove redundant __WXQT__ define, thanks @seandpagnier
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77934 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-29 04:18:49 +00:00
Vadim Zeitlin
fc18330137 Remove obsolete toolkits mentions from configure.
Cocoa, MGL and PM are not supported any more.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77910 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-28 15:14:56 +00:00
Vadim Zeitlin
51d715e46d Add wxPowerResourceBlocker for power management.
Add functions to acquire/release power resources, preventing/allowing back the
system to go to sleep or turn off the screen and a class wrapping them in a
safe way.

This patch implements the functions for MSW and OSX, adds documentation and
updates the sample to demonstrate the new functionality.

Closes #16413.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77511 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-29 23:22:15 +00:00
Vadim Zeitlin
df13791078 Merge wxQT branch into the trunk.
This merges in the latest sources from GSoC 2014 wxQt project with just a few
minor corrections, mostly undoing wrong changes to common files in that branch
(results of a previous bad merge?) and getting rid of whitespace-only changes.
Also remove debug logging from wxGrid.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77455 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-24 01:50:11 +00:00
Vadim Zeitlin
21da20d579 Restore dynamic linking of GDI functions for non-MSVC.
This partially reverts the changes of r77029 and r77039: now functions such as
Set/GetLayout(), AlphaBlend() and GradientFill() are still called (almost)
directly when using MSVC but pass by dynamic loading with the other compilers,
which don't have #pragma comment(lib) and, in MinGW case, also lack some of
these functions in their libraries even if we do link with them.

Closes #16411.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77068 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-14 12:11:39 +00:00
Vadim Zeitlin
afdb989e87 Link wxMSW with msimg32.lib now that AlphaBlend() is used statically.
Implicitly link msimg32.lib in when using MSVC and add it to MinGW (and
Borland) makefiles.

This should have been part of r77029.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77039 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-09 18:03:23 +00:00
Vadim Zeitlin
bdc5c6e628 Add --disable-sys-libs configure option.
This allows to disable the use of all system libraries with a single option
instead of having to use --with-{lib{png,jpeg,tiff},regex,zlib,expat}=builtin
or similar.

This is especially useful under OS X where we want to avoid the dependencies
on any locally installed homebrew or similar libraries.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76948 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-07-24 11:34:14 +00:00
Stefan Csomor
8219223d0e adding CoreText to iOS builds
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76913 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-07-14 10:25:24 +00:00
Stefan Csomor
ef5ab70574 adding libs for ios
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76872 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-07-07 18:03:39 +00:00
Vadim Zeitlin
fb99672f62 Hopefully finish removing the old wxCocoa port.
Get rid of the rest of __WXCOCOA__ tests in the sources.

Drop configure option for using it.

Also remove the documentation for this port.

This should have also been part of r76735.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76815 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-07-03 22:03:21 +00:00
Vadim Zeitlin
161809ef8c Still continue to use QuickTime framework in wxOSX/Carbon builds.
Amend the changes of r76800 to only avoid QuickTime framework when using
Cocoa, under Carbon it's needed by wxSound too, and not only wxMediaCtrl, and
there is no real reason to avoid it in the first place anyhow.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76814 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-07-03 22:03:09 +00:00
Vadim Zeitlin
e154a0a308 Revert "Don't link with OpenGL framework unconditionally under Mac OS X."
OpenGL framework is, in fact, always needed because of the code in
src/osx/core/glgrab.cpp which is currently used to implement
wxScreenDC::GetAsBitmap().

This reverts r76799.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76807 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-07-03 09:57:40 +00:00
Vadim Zeitlin
2cceb4dbc3 Don't link with QuickTime framework unnecessarily under OS X.
Only use QuickTime when wxUSE_MEDIACTRL is true.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76800 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-06-30 12:02:33 +00:00
Vadim Zeitlin
c3405487bb Don't link with OpenGL framework unconditionally under Mac OS X.
"-framework OpenGL" is already added when wxUSE_OPENGL is true, there is no
need to always include it.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76799 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-06-30 12:02:29 +00:00
Vadim Zeitlin
f2ee54fec0 Correct the name of the "preferences" sample in configure.
Fix building (all) samples under Unix.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76740 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-06-19 22:11:33 +00:00
Vadim Zeitlin
a309157a66 Don't include "webview" in "standard" libraries.
This means `wx-config --libs` doesn't include webview in its output by default
any longer, it must be explicitly requested.

Closes #16291.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76616 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-05-27 23:59:10 +00:00
Vadim Zeitlin
0d4ad161d5 Remove support for Win9x from wxMSW.
Most importantly, this allows us to remove all MSLU-related stuff.

Some functions which were previously loaded dynamically can now be just used
directly, too.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76535 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-05-16 02:33:40 +00:00
Vadim Zeitlin
01f9accd19 Remove wxPM, wxWidgets port to OS/2.
This port is not used and is not being worked on, so remove it to reduce the
amount of the code which needs to be updated for every global change.

Also remove tests for VisualAge compiler which isn't used since ages.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76533 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-05-15 23:56:58 +00:00
Paul Cornett
6fc2e956cf Always check for wide char IO functions, they are used regardless of wxUSE_UNICODE setting
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76470 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-05-06 16:34:47 +00:00
Vadim Zeitlin
78de4fe291 Remove configure test for override keyword.
Detect its support in the code by testing __cplusplus value and using specific
checks for MSVC and Clang as configure detects it as being available when
using recent g++ versions in non-C++11 mode, which do support this keyword but
warn when it is used without -std={gnu,c}++11 option, which makes actually
using it a bad idea in this case.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76174 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-20 15:49:07 +00:00
Vadim Zeitlin
33ad33d447 Add wxOVERRIDE and use it in common and wxOSX code.
Make overriding virtual methods more explicit and enable additional checks
provided by C++11 compilers when "override" is used.

Closes #16100.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76173 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-20 13:26:28 +00:00
Vadim Zeitlin
f51dc81c85 Add wxDynamicLibrary::GetModuleFromAddress().
Use dladdr() under Unix, if available, to provide the same functionality as we
get from GetModuleHandleEx() under MSW and export it in a new public function.

Closes #15248.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76114 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-11 16:04:06 +00:00
Vadim Zeitlin
6cf1fc7610 Really fix using install_name_tool with wxrc under OS X.
Don't test for USE_XRC before it is set, correcting the wrong change of
r75845.

See #15946.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76052 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-02 15:51:33 +00:00
Vadim Zeitlin
5b8479e809 Fix build under OS X with --disable-xrc.
Don't try to change the install names in non-existent (in this case) wxrc.

Closes #15946.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75845 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-02-08 14:12:15 +00:00
Vadim Zeitlin
b4acdde8f7 Revert "Define wxUSE_UNICODE on compiler command line in Unix builds too."
This fix only helps with building wxWidgets itself but doesn't help when
building user code using it, so revert it as we need another solution to this
problem anyhow.

This reverts r75536, see #15805.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75553 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-01-05 13:55:54 +00:00
Vadim Zeitlin
169b3be0ee Define wxUSE_UNICODE on compiler command line in Unix builds too.
Under Windows we already define _UNICODE which gets picked up and translated
to wxUSE_UNICODE by wx/platform.h, but under Unix we didn't do it until now.
Do it both for consistency and to fix the build breakage since r75520 which
moved the tests for wxUSE_UNICODE being defined before wx/setup.h.

This seems like the simplest solution because otherwise there doesn't seem to
be any single header order which would work under both Windows and Unix: under
Windows we need to include wx/compiler.h, and hence _mingw.h included from it,
before wx/setup.h, which implies that wxUSE_UNICODE must be set before doing
it, but under Unix wxUSE_UNICODE was only defined in wx/setup.h and so
couldn't be tested before including wx/compiler.h.

And just the explanation above should convincingly show that defining
wxUSE_UNICODE in CPPFLAGS makes things simpler.

Closes #15805.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75536 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-01-04 21:58:51 +00:00
Paul Cornett
967a94c91a remove WXWIN_COMPATIBILITY_2_6, add WXWIN_COMPATIBILITY_3_0
closes #15792

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75532 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-01-04 20:07:33 +00:00
Vadim Zeitlin
2e4dcc645d Don't link with -lm if the check using it failed.
It is useless and can, apparently, result in problems, see #15746.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75403 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-12-20 17:55:30 +00:00
Vadim Zeitlin
50805a002a Work around wrong vsscanf() declaration under HP-UX.
Under this system vsscanf() is declared as taking a non-const char* as first
argument which prevented our code using it from compiling. Wrap it in
wxCRT_VsscanfA() adding the necessary const_cast<> to fix this.

Closes #15638.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75340 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-12-03 13:38:35 +00:00
Vadim Zeitlin
b593863003 Remove never used ALL_WX_LIBS variable from configure.
It wasn't up to date (e.g. aui, ribbon, propgrid, richtext were not included
in it) and wasn't used anywhere anyhow.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75282 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-11-23 16:23:42 +00:00