Building libxml++ with Visual Studio 2017 or later

* You will need Visual Studio 2017 (MSVC 15.7) or later, as C++-17 is required and only 15.7 or later had
  enough C++-17 support
* Install the latest Win32 GTK+ Development files from ftp://ftp.gnome.org/pub/GNOME/binaries/win32/gtk+/
* Install libxml2 from http://xmlsoft.org/.  If building libxml2 from source, using Visual Studio 2015 or
  later is strongly recommended.
* Build libsigc++ 3.0.0 and glibmm from source, with the same compiler version. with building libxml++.  If
  there are strange linker errors, they are likely caused by mising different compiler versions.
* Add GTK+, libsigc++ and glibmm to the include and lib paths in Visual Studio.
* Run `nmake /f Makefile.vc CFG=[debug|release]` to buiild libxml++.  Run `nmake /f Makefile.vc` without the
  `CFG=[debug|release] flag to see which options are supported by the NMake Makefiles

* It is recommended that the dependent items is to be placed like the following, or be placed in paths
  indicated by %INCLUDE% and %LIB% respectively for the headers and .lib's:

<some_dir_1>\include
 |
 -libxml2 (and items in its subdir(s))
 |
 -giomm-2.68 (and items in its subdir(s))
 |
 -glibmm-2.68 (and items in its subdir(s))
 |
 -gio-win32-2.0 (and items in its subdir(s))
 |
 -glib-2.0 (and items in its subdir(s))
 |
 -sigc++-3.0 (and items in its subdir(s))
 |
 -(any dependent headers of libraries enabled by libxml2 and glibmm and glib)

<some_dir_2>\lib
   |
   -giomm-2.68
      |
      -include
        |
        -giommconfig.h
   |
   -glibmm-2.68
      |
      -include
        |
        -glibmmconfig.h
   -sigc++-3.0
      |
      -include
        |
        -sigc++config.h
 -libxml2.lib
 |
 -giomm-vcXXX-2_68.lib
 |
 -glibmm-vcXXX-2_68.lib
 |
 -sigc-vcXXX-3_0.lib
 |
 -gobject-2.0.lib
 |
 -gmodule-2.0.lib
 |
 -glib-2.0.lib

  Fine-tune by passing in PREFIX=..., INCLUDEDIR=... (default:$(PREFIX)\include, example would be
  INCLUDEDIR=<some_dir_1>\include) and LIBDIR=... (default: $(PREFIX)\lib, example would be
  LIBDIR=<some_dir_2>\lib) as needed.  Note that vcXXX denote the Visual Studio version being used,
  where XXX is 141 for VS2017, 142 for VS2019 and 143 for VS2022.

Cedric Gustin
01/26/2005

Armin Burgmeier
10/03/2010

Chun-wei Fan
06/12/2020
