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
Similar to wxNotebook but even simpler as wxSimplebook doesn't use images.
Also add wxSimplebook::Create() as the version inherited from wxBookCtrlBase
didn't _quite_ work: we need to add wxBK_TOP style to prevent asserts due to
unknown alignment in the base class when creating wxSimplebook.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77010 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Get rid of version-specific MSVS project files, we can reuse the same projects
for all MSBuild-based versions, i.e. 2010, 2011 and 2013.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77008 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Too long labels made some of the buildbot tables quite unreadable, so shorten
them to something more reasonable.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76914 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Update bakefile configuration to include x64 configurations into MSVS 2005 and
2008 projects (2003 doesn't support building in 64 bits, 2010 and later are
manually maintained and already have them) and rebake the projects.
Closes#13675.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76768 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Using git-based scripts seems to work well and the old scripts are not
maintained any more and having several ways of making releases is just
confusing, so leave only one set of scripts, the one actually used since
2.9.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76710 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This partially undoes r32570 which doesn't seem necessary any more as
wx/html/forcelnk.h is only used in wxHTML since the addition of wx/link.h soon
after that revision and having it in wxBase is completely unnecessary and just
looks strange.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76612 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Update the files used in MSVC 10, 11 and 12 projects from the master files
list.
The main change is the removal of all headers from the core project: it
doesn't seem to make sense to have all headers, even for the completely
unrelated projects, in it and it is easier to just have the core own headers.
The only other changes are the addition of a few headers (including the .cpp
files used as headers) to the base project and the removal of the files which
are never built (but still appear in auto-generated by bakefile projects
because they could have been used in wxUniv case) in the core project.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76611 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Start moving away from files.bkl as the primary source for the files -- and
away from bakefile itself as the make/project file generator -- by storing the
list of files in a new build/files file and provide a simple build/upmake
script for updating files.bkl and the manually maintained MSVC10+ projects
from this file contents.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76610 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This file was present in auto-generated VC[789] projects but was forgotten in
the manually maintained ones, add it now.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76609 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Use separate MSW_HDR and MSW_RSC variables instead of putting everything into
MSW_HDR: resources, such as .manifest, .bmp, .ico and .cur files, don't belong
to the headers.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76608 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Make variable definitions consistent for all libraries: previously some of
them were decomposed in FOO_CMN_SRC and FOO_PLATFORM_SRC parts while others
just defined FOO_SRC directly and interpolated FOO_PLATFORM_SRC into it.
Use helper FOO_CMN_SRC for all of them now, as it will make it easier to
update them automatically (and the same thing for headers, i.e. HDR variables).
No changes to the generated project/make files.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76607 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This compiler is not being developed since several years and almost certainly
can't be used to build the current wxWidgets sources anyhow, so remove all
support for it, including a lot of extremely ugly workarounds for its bugs
with template functions.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76546 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Not sure if this file is actually used at all right now, but update it to
avoid discrepancies with the other setup[0].h.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76544 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
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
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
Don't support this compiler any more, this allows to get rid of tons of
MSVC6-specific workarounds, in particular we can now use Bind() and natural
template functions calls in the library code.
Also remove MSVC6 project and solution files and don't generate them when
bakefile_gen is ran any more (removing the remaining occurrences of msvc6prj
from the bakefiles results in weird bake-time errors, so it's simpler to just
leave them there).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76532 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This option is common to all projects and is defined in the global properties
file, so it doesn't need to be present in the projects themselves at all.
See #16236.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76476 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
We want to have debug information even for the release builds as it doesn't
affect the binaries produced but greatly helps when debugging, so create PDB
for all release builds as well in the manually maintained MSVS files (this was
already the case for Win32 release builds but not x64 ones for some reason).
This also fixes the problem with "None" being an invalid value for
DebugInformationFormat with MSVC 10 as a side effect.
Closes#16236.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76475 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
The new projects are easier to customize as the build options can now be
specified in wx_vc10_local.props file. They also have correct dependencies and
avoid sharing violations when copying wx/setup.h.
Finally, they also use the correct names for the webview DLL, see #15820.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76448 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This fixes problems with parallel builds in Visual Studio 2012 or 2013 IDE as
multiple projects may try to copy setup.h file at once, resulting in errors.
Use _custom_build project as a common dependency to ensure that the copy step
is done only once.
Closes#16177.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76419 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This separates the GTK implementation from Unix/X11, except for the wxVideoMode
stuff, and _NET_WORKAREA when GTK < 3.4. wxDisplay and wxClientDisplayRect()
should now work as well as they can with Wayland.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76365 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
We want to generate debug information even in the release builds of the
libraries in order to allow debugging of the programs using them. This is
especially important for the DLLs but do it for the static release build too
for consistency.
This also almost fixes the constant rebuilding of the entire solution which
happened because the PDBs, supposed to be generated by linker, were not found
because they were not actually created as the debug information wasn't there.
See #15780.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76068 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Both trunk builds were using Cocoa, change the one supposed to be Carbon to
use Carbon instead.
Also add Carbon stable branch build as this is probably even more important
than testing Carbon in the trunk.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75358 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This allows to pass extra arguments to windres, which is especially important
when using 64 bit windres for building 32 bit applications as the generated .o
file uses a wrong architecture unless "-F pe-i386" is explicitly specified.
See #15601.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75074 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Assigning __sync_sub_and_fetch() result to an unused variable can result in it
being optimized away and the function support is then not really tested for,
see #4542. So do make sure this variable is kept by making it volatile.
Closes#15555.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74934 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
It was replaced by GTK+ printing several years ago and is almost never used
any longer anyhow, so any problems in this code (and there are some) would
never be found and fixed.
Also update the message catalogs to avoid having the strings not used any
more, as they were only used in Gnome printing code.
Closes#15517.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74912 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
All Debian-based distributions use their own files for creating their
packages, so get rid of our own "debian" subdirectory to avoid confusing
people and to not have to maintain them any more.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74908 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
They were not really used for anything but still had to be updated and
maintained.
Get rid of them as all RPM-based distributions use their own spec files
anyhow.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74907 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This undoes the changes of r72205 and r72249 (see #14517) as using relative
paths for wx-config symlink didn't work correctly if non-default values for
$bindir and/or $libdir were used (i.e. if they were not siblings).
Instead, fix the original problem of lack of symlinks when using MinGW
directly: just use "cp -p" if "ln -s" fails. This should work everywhere and
do the right thing.
Closes#15463.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74758 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
The target names were not specified for the "Release" configuration in some
projects, resulting in (harmless, but annoying) warnings during the build.
Closes#15439.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74719 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This keyword is not expanded by Git which means it's not replaced with the
correct revision value in the releases made using git-based scripts and it's
confusing to have lines with unexpanded "$Id$" in the released files. As
expanding them with Git is not that simple (it could be done with git archive
and export-subst attribute) and there are not many benefits in having them in
the first place, just remove all these lines.
If nothing else, this will make an eventual transition to Git simpler.
Closes#14487.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74602 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
As these configurations are not present in the automatically generated files
any more, remove them from the manually created ones too.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74601 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Some excluded entries were not-existent anyhow (.cvsignore, wxPython, *.pch)
while others could be useful to have (misc).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74565 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
We don't need to handle the documentation files separately when they are
already taken care of together with everything else anyhow.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74562 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Generate the output file in the parent of the sources directory and take care
of copying it to c:\daily in bld_chm_exe.bat itself.
This allows to use wxwidgets.iss without that batch file and also on systems
without c:\ drive at all.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74560 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Just use the sources directory itself if %INNO% is not defined. In fact, I
think we could always use the source directory, actually, but just in case
there was some reason to do it like this, keep using %INNO% if it is defined.
Also check that WXW_VER environment variable that we use is, in fact, defined.
FIX: Use relative path, not %WXWIN% in ISS script.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74559 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
These files were obtained by importing the VC9 files and then setting up the
dependencies correctly in the solution. This is just a temporary solution and
we'll hopefully generate them with bakefile-1 for the 3.0 release but for now
this is better than nothing.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74549 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Updated the Xcode projects to include wakeuppipe.cpp.
Also fixes the wxiphone project which appeared to have 2 source file references concatenated (stattext.mm and slider.mm) since the last commit. This unfortunately happens sometimes when running makeprojects.applescript.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74503 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
"MSW" is used as the name of toolkit using the standard Windows UI while
"Windows" is the name of the OS under which wxGTK can be now used too (in
addition to wxMSW).
This terminology is not perfect but at least let's keep it unambiguous.
Closes#15328.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74502 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This fixes linking of the widgets sample when using wxUniv/X11.
It partially reverts the changes of r73290 which only included this file in
some selected ports instead of all of them for some reason.
Closes#15327.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74499 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This solves the problem with wx/defs.h -> wx/platform.h -> wx/setup.h which
resolves to msvc/wx/setup.h -> wx/version.h -> wx/cpp.h include path which
resulted in __VISUALC__ not being defined in wx/cpp.h.
This problem was not new but went unnoticed for a long time and was only
discovered when wxCHECK_VISUALC_VERSION() started being used in wx/cpp.h too
as now the compiler started warning about wrong #if syntax due to it being
undefined.
Putting the compiler-specific definitions in a separate file allows this file
to be included from wx/cpp.h to ensure that these symbols are always defined
in it and also makes things a little better organized.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74496 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This reverts r74444 and defines XML_STATIC unconditionally in Expat sources
themselves as we always use the built-in Expat as a static library, so this
solution is simpler and more portable.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74446 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
The new Expat assumes it's built as a DLL by default, define XML_STATIC to
indicate that this is not the case as we always build it as a static library.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74444 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Merge with the latest version, mostly discarding our changes to 1.95.6 as they
seem to be unnecessary any longer, keep just bakefile-specific addition to
configure.
Also update our own makefile to define HAVE_EXPAT_CONFIG_H which is now needed
by Unix build.
Closes#11677.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74436 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
The library was already present in the makefiles but came before the
monolithic library itself, which broke the linking of the samples when using
GNU ld as the dependent libraries must come after the libraries using them.
Closes#13837.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74408 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Extract wxModalDialogHook from wx/testing.h into its own wx/modalhook.h,
extend it to allow to be notified not only about showing modal dialogs but
also about dismissing them and document it and show its use in the dialogs
sample.
Also replace all the WX_TESTING_SHOW_MODAL_HOOK macros occurrences with
WX_HOOK_MODAL_DIALOG.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74037 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Use the same debug flag default settings in the build/osx Xcode projects
as are used by all other makefiles and projects - that is,
wxDEBUG_LEVEL=1. This is done automatically by the headers, no need to
define any extra symbols when building.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73773 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Implements native UI for preferences editing. In particular, the API
handles the differences between modal (Windows) and non-modal (OS X) preferences windows and provides platform's native look.
Currently implemented natively for wxOSX/Cocoa, wxGTK and Windows (the latter is used as a fallback generic implementation as well).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73576 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Replace a few more __WXMSW__ tests with __WINDOWS__ ones and modify bakefiles
to allow specifying the toolkit to be built in wxMSW makefiles.
Closes#13902.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73290 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Debian distribution target uses GNU make extensions to make syntax which makes
the entire makefile impossible to use with other make versions, e.g. Solaris
make.
Fix this by prepending IF_GNU_MAKE to all Debian-specific lines, there should
be never any need to use them with non-GNU make.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72730 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Split wxXmlResourceHandler into an ABC and the real implementation to allow
referencing the ABC in the core library itself but without pulling in all of
the XRC into it. This also allows defining XRC handlers, which only depend on
this ABC and not the xrc library, in other libraries, such as richtext, as
demonstrated by the now enabled wxRichTextXMLHandler.
Closes#10996.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72727 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This is a very simple template allowing to remove the reference from the given
type, similar to std::remove_reference<>.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72721 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775