2020-12-19  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  2.48.0

2020-12-18  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Regenerate docs.xml and .defs files

2020-12-11  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Change ABI to pangomm-2.48; Use glibmm-2.68 instead of glibmm-2.66

  So we can use the 2.44-2.46 version numbers for stable releases in
  the pangomm-1.4 ABI series.
  
  We've done similar ABI name changes before.

2020-11-27  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Add Layout::set/get_line_spacing()

  See #9

2020-11-27  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  configure.ac, meson.build: Require pangocairo >= 1.45.1

  Overline support, such as pango_attr_overline_new(), was added in
  pango 1.45.1. The requirement should have been bumped when those
  functions were wrapped.

2020-11-16  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Wrap pango_shape_with_flags()

  * configure.ac:
  * meson.build: Require pangocairo >= 1.44.3
  * pango/src/glyphstring.[ccg|hg]: Add constructor
  GlyphString(const Glib::ustring& item_text,
  const Glib::ustring& paragraph_text, const Analysis& analysis,
  ShapeFlags flags = ShapeFlags::NONE).
  * pango/src/item.[ccg|hg]: Add enum ShapeFlags and
  shape(const Glib::ustring& item_text, const Glib::ustring& paragraph_text,
  ShapeFlags flags = ShapeFlags::NONE).
  * tools/m4/convert_pango.m4: Add conversions for ShapeFlags.
  
  See #9

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

  Bump version to 2.43.3

  Even micro version in released versions, odd micro version in Git.
  See https://wiki.gnome.org/MaintainersCorner/Releasing
  (which says minor version in one sentence where it should
  say micro version)

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

  Meson build: Fix versioning on macOS

  See libsigcplusplus, pull request 65

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-23  Chun-wei Fan  <fanchunwei@src.gnome.org>

  NMake Makefiles: Fix generating pangomm[config.h|.rc]

  The previous additions to generate those files accidentally made the build
  attempt to generate them, even if done from a release tarball that is done by
  the autotools builds.
  
  This will fix this situation, and improve the situation that if pangomm.rc or
  pangommconfig.h needs to be generated, these files will be generated
  automatically

2020-07-22  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  LayoutIter: Fix get_run() and get_line()

  get_run() shall call pango_layout_iter_get_run_readonly() and
  take a copy of the returned PangoLayoutRun.
  Make proper const and non-const versions of get_line().

2020-07-22  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  LayoutRun: Rename to GlyphItem

  PangoLayoutRun was renamed to PangoGlyphItem in the year 2002.
  For backward compatibility PangoLayoutRun is a typedef of PangoGlyphItem.
  No such backward compatibility is needed in this version of pangomm.

2020-07-22  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Renderer: Add vfuncs

  See #9

2020-07-22  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Font, FontFace, FontFamily, FontMetrics: Add new methods

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

  NMake Makefiles: Link with giomm

  ...since we are now using items from giomm since commit 17021092, and ensure
  that we do indeed refer to the glibmm (giomm) master headers
  as we are using items from

2020-07-20  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Attribute: Add Overline and ShowFlags enums and some create*() methods

  Fixes #9

2020-07-20  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Regenerate docs.xml and .defs files

2020-07-19  Andreas Persson  <andreasp56@outlook.com>

  Let FontMap and FontFamily implement ListModel

  Let the FontMap and FontFamily classes implement the Gio::ListModel
  interface, just as the C level pango classes do. For this, a dependency
  to giomm was added. Wrap CairoFontMap::get_default().

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

  NMake Makefiles: Fix headers search

  We ought to look in $(PREFIX)\include\harfbuzz and $(PREFIX)\include, as the
  HarfBuzz and Cairo headers can be found in these respective locations.

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
  pangomm, which can be used on Windows 10 on ARM systems.

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

  README.win32: Update Meson build info

  It is now possible to build Pango directly from a GIT checkout on Visual Studio
  builds for a while, so let people know about this.
  
  Also note that glibmm and cairomm should be built with Meson in order to use the
  Meson build files for pangomm, and that it is recommended to use the same compiler
  to build pangomm, glibmm and cairomm.

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

  NMake Makefiles: Use the /utf-8 compiler flag

  This makes it easier to build pangomm on non-Western locales, without requiring
  to change the "Locale settings for non-Unicode programs" to English, which will
  require a restart, since warning (error) C4819 can be otherwise triggered, which
  can indicate broken builds due to Unicode handling issues in the compiler.

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 fix the case also when the 'USE_COMPAT_LIBS' option is used and when
  'USE_MESON_LIBS' is not used on Visual Studio 2017, where the toolset version
  was not correctly applied.

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

  docs/reference/: Update for Doxygen >= 1.8.16

  * docs/reference/meson.build: Doxygen 1.8.16 and later does not store
  tag file names in the html files. This requires changes in meson.build
  and in doc-install.pl (in mm-common). Otherwise references to other modules
  won't be updated in the html files when they are installed.
  * docs/reference/Doxyfile.in: Remove PERL_PATH and MSCGEN_PATH.
  Doxygen since version 1.8.0 does not use them.

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

  Meson/Visual Studio builds: Include toolset version by default

  This makes the built DLL and .lib's contain the toolset version if the build is
  carried out using Visual Studio 2017 or later, unless the
  'msvc14x-parallel-installable' option is set to be false during configuration.
  
  The reasoning behind this change is that there can be subtle problems when, for
  instance, one tries to link to a Visual Studio 2017-built pangomm when building
  items dependening on pangomm with Visual Studio 2019.  This is unfortunate as
  Microsoft did try hard to make interoperating between binaries built with
  Visual Studio 2017 and 2019 as easy as possible in terms of ABI and API, but
  unfortunately this can hit the corner cases where this compatibility does not
  work.
  
  As the name suggests, this attempts to make Visual Studio 2017 and 2019 builds
  share a single set of underlying C DLLs easier, while avoiding breakages caused
  by such subtle differences.

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

  meson.build: Check for /utf-8 on Visual Studio

  Enable this compiler flag on Visual Studio if it is supported, so that building
  under non-English (East Asian) locales is made easier, which helps to avoid the
  C4819 error under such situations, due to a Unicode handling issue in the
  compiler when running under such locales

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

  Meson: Use pkg-config to find glibmm and cairomm for all builds

  Stop manually looking for glibmm and cairomm for better consistency, as:
  
  -Items that depended on glibmm which added Meson build support after glibmm,
   such as gtkmm and libxml++ also required glibmm to be found via pkg-config
   files, and they still had NMake Makefile support for Visual Studio builds.
   For items that use cairomm directly, this will be the case as well.
  -There could be corner cases on the glibmm and cairomm libraries that pangomm
   links to in  terms of ABI compatibility between Visual Studio 2015, 2017 and
   2019.

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

  NMake Makefiles: Use toolset version in DLL/.lib naming

  Instead of using the Visual Studio version ('vc150' for Visual Studio 2017),
  use the toolset version ('vc141' for Visual Studio 2017 and 'vc142' for Visual
  Studio 2019, as defined by Microsoft) so that we are more in-line with what
  is now done in the pangomm-2-42 branch.
  
  If using the old naming convention is desired, an NMake command line option
  'USE_COMPAT_LIBS' have been added-note that this will require glibmm, cairomm,
  and libsigc++ to be built with that option enabled.

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

  meson: Clean up Visual Studio bits

  Streamline how we look for the dependencies manually, by using the
  'has_headers:' attribute of cpp_compiler.find_library(), so that we can
  check for the presence of the headers at the same time as looking for
  the glibmm, cairomm and/or libsigc++ headers.

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

  Meson/Visual Studio: Support cairomm lookup using pkg-config

  cairomm recently received Meson build support, which will generate the
  pkg-config files for us, so try to look for cairomm first using
  pkg-config, before looking for it manually.
  
  Since cairomm's pkg-config file also pulls in libsigc++, we can also
  skip looking for libsigc++ if we found cairomm via pkg-config.

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

  NMake Makefiles: Support Meson-built cairomm

  Allow linking directly to Meson-built cairomm when using the
  USE_MESON_LIBS option when running NMake.

2020-04-28  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  pango/meson.build: Minor fix of pangomm-2.44.pc

  libdir=${exec_prefix}/lib, as when it's generated with Autotools.

2020-04-11  Chun-wei Fan  <fanchunwei@src.gnome.org>

  pango/src/fontdescription.hg: Mark operators with PANGOMM_API

  We are using a _WRAP_EQUAL here which generates operator== and
  operator!= overloads that actually need to be exported.  So, pass in a
  function decorator to _WRAP_EQUAL

2020-04-07  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Meson build: If not maintainer-mode, check that generate-binding.py exists

  Trying to build with maintainer-mode=false from a tarball generated with
  Autotools will fail with a proper error message.
  Fixes #6

2020-03-31  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Meson build: Set default value of the 'warnings' option to 'min'

  And add 'dist-warnings' with default value 'fatal'. It's used when a
  tarball is tested by 'ninja dist' or 'meson dist'.
  https://mail.gnome.org/archives/gtkmm-list/2020-March/msg00025.html
  
  Add a better error message if mm-common-get is required but not found.

2020-03-31  Chun-wei Fan  <fanchunwei@src.gnome.org>

  pango/src/*.hg: Mark _WRAP_ENUM with decl_prefix

  This way, we can use compiler directives to export the symbols for the
  _WRAP_ENUM-generated template<> classes.

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

  NMake Makefiles: Fix build instruction info display

  Make up the missing escape carats...

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

  Meson build: Avoid some recompilations, and other changes

  * MSVC_NMake/filelist.am: Remove pangomm/copy-pangommconfig-h.py.
  * MSVC_NMake/pangomm/copy-pangommconfig-h.py: Removed file.
  * MSVC_NMake/pangomm/meson.build: Copy pangommconfig.h with configure_file().
  * Makefile.am: Distribute tools/dummy-header.py instead of tools/dist-cmd.py.
  * docs/reference/meson.build: Rename a variable.
  * meson.build: Rename some variables. Always set gmmproc_dir.
  In maintainer-mode, show its value in the summary.
  * pango/meson.build: Set pangommconfig_h.
  * pango/pangomm/meson.build: Create dummy_header.h, depending on all
  generated headers. It guarantees that all generated headers are built
  before pangomm_library is built, at the same time avoiding unnecessary
  recompilations.
  * tools/dist-cmd.py: Removed file. It's not necessary in add_dist_script()
  when the first parameter is python3.path().
  * tools/dummy-header.py: New file.