2020-10-02  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  2.42.0

2020-10-02  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Meson build: Fix versioning on macOS

  See libsigcplusplus, pull request 65

2020-10-01  From: Murray Cumming  <murrayc@murrayc.com>

  Parser: Replace (deprecated) Glib::Threads::Mutex with std::mutex.

  Added by Kjell Ahlstedt: This patch and the two patches
  * Parser: Correct the SaxParserCallback prototype declaration.
  * C++11: Use of override keyword.
  have been copied from the libxml++-2.42 branch. That branch should
  be avoided in favor of libxml++-2-42.

2020-10-01  Murray Cumming  <murrayc@murrayc.com>

  Parser: Correct the SaxParserCallback prototype declaration.

2020-10-01  Murray Cumming  <murrayc@murrayc.com>

  C++11: Use of override keyword.

  To fix the build with --enable-warnings=fatal.

2020-07-23  Chun-wei Fan  <fanchunwei@src.gnome.org>

  NMake Makefiles: Use Meson-style DLL and .lib naming if requested

  To make things more consistent and less prone to confusion, if 'USE_MESON_LIBS'
  is specified in the NMake command line, build the DLLs and .lib's that are
  named like the Meson counterparts.  Binaries built with Meson+Visual Studio
  and the ones that are built via NMake using 'USE_MESON_LIBS' are
  interchangeable, provided that they are built with the same Visual Studio
  version.

2020-07-22  Chun-wei Fan  <fanchunwei@src.gnome.org>

  NMake Makefiles: Fix build from tarballs

  Update the rules so that we won't attempt to unnecessarily generate
  libxml++config.h and libxml++.rc in our builds, and make sure that we do indeed
  generate them with the version info if generating them becomes necessary.
  
  Also streamline this process so that it will be part of the 'all' target.

2020-07-08  Chun-wei Fan  <fanchunwei@src.gnome.org>

  NMake Makefiles: Fix default include paths

  Fix a typo where we include glibmmconfig.h, and make sure we also look for
  headers in $(PREFIX)\include

2020-07-08  Chun-wei Fan  <fanchunwei@src.gnome.org>

  NMake Makefiles: Support ARM64 Windows builds

  This will make the NMake Makefiles capable of building ARM64 binaries of
  libxml++, which can be used on Windows 10 on ARM systems.

2020-06-30  Chun-wei Fan  <fanchunwei@src.gnome.org>

  NMake Makefiles: Apply toolset version for Meson-built deps

  As the Meson build files for Visual Studio apply the toolset version in the
  .lib filenames by default, apply the toolset version in the Meson-built -mm
  .lib files that we link in, just as we did when we we link in the -mm .lib
  files that was built with NMake, by default.
  
  The option 'USE_COMPAT_LIBS' will also mean that we will use the former
  behavior when we link in the Meson-built -mm .lib's, just as we did when we
  link in the NMake-built -mm .lib's.
  
  Also let people know the resolution to strange linker errors that are caused
  by mixing Visual Studio versions when building the -mm libraries.

2020-06-29  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  README: Update with instructions for building libxml++

2020-06-29  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Add support for building libxml++ with Meson

  libxml++-2.6 can be built with either Autotools or Meson.
  New files have been copied from the libxml++-3-2 branch. Some of them
  have been slightly changed.

2020-06-29  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  docs/reference/Doxyfile.in: Remove PERL_PATH

  Doxygen since version 1.8.0 does not use PERL_PATH and MSCGEN_PATH.

2020-06-19  Chun-wei Fan  <fanchunwei@src.gnome.org>

  Drop gendef.cc

  Since we are now using compiler directives or mechanisms to export symbols from
  our libxml++ DLL for all Windows dynamic builds, it's time to drop gendef.cc,
  as it is no longer used

2020-06-19  Chun-wei Fan  <fanchunwei@src.gnome.org>

  NMake Makefiles: Stop using gendef

  This updates the NMake Makefiles to stop building and using the gendef tool,
  since we are now using compiler directives to export symbols for libxml++
  builds.
  
  Since this branch did not have official and working Visual Studio build files,
  and it is not API/ABI compatible with the libxml++-2.6 series, gendef.cc will
  be dropped in the next commit

2020-06-19  Chun-wei Fan  <fanchunwei@src.gnome.org>

  libxml++config.h.in: Re-organize LIBXMLPP_API

  We want to set LIBXMLPP_API to the following:
  
  * __declspec(dllexport) when building the libxml++ DLL on Windows
  * __declspec(dllimport) when using the libxml++ DLL on Windows
  * <nothing> if building/using a static or a non-Windows libxml++ build

2020-06-19  Chun-wei Fan  <fanchunwei@src.gnome.org>

  libxml++ headers: Mark classes and functions with LIBXMLPP_API

  This prepares us to export and symbols on Visual Studio builds using only
  compiler directives, and to drop the venerable gendef.cc

2020-06-19  Chun-wei Fan  <fanchunwei@src.gnome.org>

  libxml++/*.h: Remove check for old _MSC_VER stuff

  They aren't applicable anymore, since the newer Visual Studio versions
  addressed the issues.

2020-06-17  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  docs/Makefile.am: Fix builddir != sourcedir builds

2020-06-17  Chun-wei Fan  <fanchunwei@src.gnome.org>

  Update MSVC_NMake/README

  Update instructions for building since we moved to using NMake
  Makefiles, and let people know that the same compiler version is
  required for building libxml++, glibmm and libsigc++.

2020-06-17  Chun-wei Fan  <fanchunwei@src.gnome.org>

  Drop Visual Studio 2010 projects

  They have been superseded with the NMake Makefiles, so it's time to
  retire them from the source tree.

2020-06-17  Chun-wei Fan  <fanchunwei@src.gnome.org>

  Add NMake Makefiles

  This adds a set of NMake Makefiles that can be used to build libxml++,
  which will replace the Visual Studio 2010(!) projects that reside in the
  repository (which is probably broken and we actually need Visual Studio
  2017+ to build the current code due to a bug in the Visual Studio 2015
  compiler).
  
  The unfortunate fact is that we do need to link to a glibmm that is
  built with the same compiler, otherwise linking will fail and the
  binaries of the dependent glibmm built with other compilers won't work
  well with the builds here if they are built with other Visual Studio
  compilers, so we will need to separate the output filenames
  for the resulting .lib and .dll files for Visual Studio 2015, 2017 and 2019.
  A NMake Makefile build options "USE_COMPAT_LIBS" is added if linking to
  xxxx-vc140-y_z.lib for glibmm is still desired, such as in the case where
  glibmm was actually built with Visual Studio 2017 or 2019.

2020-06-17  Chun-wei Fan  <fanchunwei@src.gnome.org>

  gendef.cc: Skip symbols implemented inline

  Like in the case of gtkmm, some symbols were implemented inline in the CRT on
  Visual Studio 2015+ (UCRT), so we don't want to put them in our .def file,
  otherwise linking will fail.

2020-06-17  Chun-wei Fan  <fanchunwei@src.gnome.org>

  tests: Don't include config.h

  The libxml++config.h should already fulfil our needs here.

2020-06-17  Chun-wei Fan  <fanchunwei@src.gnome.org>

  Rename MSVC_Net2010 to MSVC_NMake

  This initiates the move from the Visual Studio project files to using NMake
  Makefiles, so that we reduce the likelihood of the MSVC build files becoming
  outdated, by sharing the autotools build files' source listings.

2017-05-04  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Document, DomParser: Improve XInclude processing

  * examples/Makefile.am:
  * examples/dom_xinclude/example.xml: Changed due to moved include files.
  * examples/dom_xinclude/include1.txt:
  * examples/dom_xinclude/include2.xml: Moved to examples/dom_xinclude/xinclude/
  * examples/dom_xinclude/main.cc: Test both Document::process_xinclude() and
  Xinclude processing with DomParser::parse_file().
  * libxml++/document.[cc|h]: Add fixup_base_uris parameter to process_xinclude().
  * libxml++/parsers/domparser.[cc|h]: Add set/get_xinclude_options().
  Add optional XInclude processing to the parse methods.
  * libxml++/parsers/parser.[cc|h]: Add set/get_xinclude_options_internal().
  Bug 781566

2016-07-18  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>

  Require mm-common 0.9.10

  Necessary when MM_AX_CXX_COMPILE_STDCXX is used in configure.ac.

2016-07-18  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>

  Fix even more silent 'make check'

  * examples/Makefile.am: Add $(AM_V_GEN) and $(AM_V_at) to 'echo' commands.
  Bug #768797

2016-07-18  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>

  Build: Fix silent builds

  * configure.ac: Pass yes to AM_SILENT_RULES, thus enabling silent builds.
  Replace MM_AX_CXX_COMPILE_STDCXX_11 by MM_AX_CXX_COMPILE_STDCXX (not necessary
  for silent builds).
  * docs/reference/Doxyfile.in: Set QUIET=YES.
  Update for doxygen 1.8.11 (not necessary for silent builds).
  Bug #768797

2016-07-06  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>

  Element::remove_attribute(): Delete the C++ wrapper

  * libxml++/nodes/element.cc: Call Node::free_wrappers() before the call to
  xmlUnsetProp() or xmlUnsetNsProp(). Bug #768404.
  Based on a patch by Harald Schmalzl <h.schmalzl@gekko.at>

2015-11-05  Renu Tyagi  <renu.tyagi@samsung.com>

  Element: Remove redundant null check

  Bug #757515