[pangomm/kjellahl/meson-build-1-4] README.win32: Update info on MSVC builds



commit 9ddd6a8494a7cae15eea850d388d9659abff7bbc
Author: Chun-wei Fan <fanchunwei src gnome org>
Date:   Mon Nov 4 18:14:51 2019 +0800

    README.win32: Update info on MSVC builds
    
    C++11 versions of pangomm support Visual Studio 2013 or later, so ensure
    the right info is conveyed here.  Note that Meson does not have a
    project generator backend for Visual Studio 2013, but does have project
    generator backends for 2015, 2017 and 2019.

 README.win32 | 43 ++++++++++++++++++++++++++-----------------
 1 file changed, 26 insertions(+), 17 deletions(-)
---
diff --git a/README.win32 b/README.win32
index 8485cc5..2a0a2a3 100644
--- a/README.win32
+++ b/README.win32
@@ -2,13 +2,14 @@ Building gtkmm on Win32
 ===========================
 
 Currently, both the mingw (native win32) gcc compiler and MS Visual
-Studio 2017 are supported. gtkmm can be built with mingw32-gcc using
-the gnu autotools (automake, autoconf, libtool). As explicitly
-stated in the gtk+ for win32 distribution (http://www.gimp.org/win32/),
-the gcc compiler provided by the cygwin distribution should not be
-used to build gtk+/gtkmm libraries and/or applications (see the
-README.win32 that comes with the gtk+ DLLs). This MIGHT cause
-conflicts between the cygwin and msvcrt runtime environments.
+Studio 2013 or later are supported. gtkmm can be built with
+mingw32-gcc using the gnu autotools (automake, autoconf, libtool).
+As explicitly stated in the gtk+ for win32 distribution
+(http://www.gimp.org/win32/), the gcc compiler provided by the cygwin
+distribution should not be used to build gtk+/gtkmm libraries and/or
+applications (see the README.win32 that comes with the gtk+ DLLs).
+This MIGHT cause conflicts between the cygwin and msvcrt runtime
+environments.
 
 1. Mingw
 
@@ -44,12 +45,13 @@ make
 make check
 make install
 
-2. MS Visual Studio 2017 15.7.0 or later
+2. MS Visual Studio 2013 or later
 
 Open a Visual Studio command prompt suitable for your intended build
 configuration, and change to the MSVC_NMake directory.  Ensure that
 all the depedent libraries could be found in $(PREFIX), which is at
-$(srcroot)\..\vs15\$(Platform) by default.  Run
+$(srcroot)\..\vsX\$(Platform) by default, where X is 12 for Visual
+Studio 2013, and 14 for later versions of Visual Studio.  Run
 'nmake /f Makefile.vc CFG=[release|debug]' to build pangomm.  If a
 different $(PREFIX) is desired rather than the aforementioned default,
 pass in PREFIX=$(PATH) into your command line.
@@ -61,21 +63,27 @@ headers to their appropriate locations under $(PREFIX).
 
 3. Using Meson
 
-3.1 Meson with Visual Studio 2017 15.7.0 or later
+3.1 Meson with Visual Studio 2013 or later
 
 Note that currently it is not possible to build pangomm directly
 from a GIT checkout with Visual Studio using Meson.
 
+Note also that before building, if using Visual Studio 2013,you will
+need to ensure that 'warnings' is not configured to 'fatal' (the
+default), as the C++11 support in Visual Studio 2013 is not complete
+enough to avoid compiler warnings.  Visual Studio 2015 and later
+should be able to build without warnings.
+
 You will need to have Python 3.5.x or later installed with Meson 0.50.0
 or later in order to use this build option, in addition to glibmm,
 cairomm and libsigc++-2.x (built with Visual Studio) and PangoCairo,
 with all of their required dependencies.  The Ninja build tool is
-also required if not using --backend=[vs2017|vs2019] in the Meson
+also required if not using --backend=[vs2015|vs2017|vs2019] in the Meson
 command line, as noted towards the end of this section.
 
 Open a Visual Studio command prompt and ensure these header files can be
 found in the paths indicated by INCLUDE.  The repetitions below are
-necessary so that we reduce the likelihood that pre-C++-11 versions
+necessary so that we reduce the likelihood that C++-17 versions
 of the headers of glibmm, cairomm and libsigc++ are included, which will
 most likely not work.
 
@@ -83,7 +91,7 @@ most likely not work.
 -glibmm-2.4\glibmm.h (the *same* glibmm as the previous line)
 -cairomm (from cairomm-1.13.x or later)
 -cairomm-1.0\cairomm.h (the *same* cairomm as the previous line)
--glibmmconfig.h (from glibmm-2.63.x or later)
+-glibmmconfig.h (from glibmm-2.62.x or later)
 -glibmm-2.4\include\glibmmconfig.h  (the *same* glibmmconfig as the previous line)
 -cairommconfig.h (from cairomm-1.13.x or later)
 -cairomm-1.0\include\cairommconfig.h  (the *same* cairommconfig as the previous line)
@@ -94,7 +102,8 @@ most likely not work.
 
 Ensure that the import libraries of glibmm, cairomm and libsigc++-2.x
 can be found in the paths indicated by LIB.  Note that Visual Studio
-2019 can use 2017-built libraries without problems; but MSVC builds
+2019 can use 2017 and 2015-built libraries without problems, and VS
+2017 can use 2015-built libraries without problems; but MSVC builds
 cannot make use of MinGW-built versions of these dependencies.  Note
 that debug builds require debug builds of these dependencies, but
 all other builds, including debugoptimized require release builds
@@ -106,10 +115,10 @@ and the headers and .lib's of all of its dependencies.
 
 To carry out a build, do this in the same command prompt, with
 the Python interpreter, Meson executable script and Ninja executable
-(if not using --backend=[2017|2019]) in your PATH:
+(if not using --backend=vs[2015|2017|2019]) in your PATH:
 -Create an empty build directory and cd to it.
--Run "meson <path-to-pangomm-sources> --buildtype=<buildtype> --prefix=<prefix> [--backend=[2017|2019]]" 
without the quotes.
--Perform the build using ninja or Visual Studio (if --backend=[2017|2019])
+-Run "meson <path-to-pangomm-sources> --buildtype=<buildtype> --prefix=<prefix> 
[--backend=vs[2015|2017|2019]]" without the quotes.
+-Perform the build using ninja or Visual Studio (if --backend=vs[2015|2017|2019])
  is used.  Install the build results after the build succeeds.
 
 3.2 Meson with MinGW


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]