Skip to content

Meson port

Eduard requested to merge neduard/dia:meson_port into master

Parent issue: #19 (closed)

Closes #6 (closed) since we have run_with_dia_env with runs the given arguments under a "dia environment". Also meson correctly sets the environment for tests.

Works around #23 (closed): Currently we require pango <= 0.62. The breaking change was introduced in pango vers 0.72.2. We can therefore either require pango vers >= 0.73 and apply !15 (closed), or try to have a temporary wrapper?

Currently learning meson as I go along so I'm expecting a lot of things can be improved, simplified, etc

Current Status

  • lib/meson.build
  • po/meson.build - seems to be working?
  • app/meson.build
  • data/*
  • objects/*
  • {shapes,sheets}/*
  • plug-ins/* - done
  • working dia app (both installing to a local prefix and running it from app/dia using run_with_dia_env app/dia.
  • doc/en/meson.build - compiles dia.pdf & dia.1
  • doc/en/dia_html
  • doc/* - {de,en,eu,fr,pl}/*html generation is good, pdf and man only for 'en'
  • tests/meson.build
  • Compiles & runs on OpenBSD (should imply easy porting on most other *BSDs, including hopefully MacOS?)
  • Compiles & runs on Windows - works with the exception of a few plugins & couple of tests
  • Compiles & runs on Debian - base system for a lot of distros
  • Compiles & runs on Arch - also popular distro
  • Compiles & runs on Fedora - base system for a lot of distros (works, thanks @ZanderBrown for trying it out)

Help wanted

  • confirm working i18n. Currently using meson module for i18n - files get generated.
  • Compiles & runs on OpenSolaris / Illumos

Building and running

Currently running on Ubuntu 18.04, installed to a local prefix:

meson builddir && cd builddir && meson configure -Dprefix=`pwd`/install && ninja install

To run / debug use the run_with_dia_env script:

cd builddir
./run_with_dia_env ./app/dia

# You can also run in GDB:
./run_with_dia_env gdb --args ./app/dia --version

If anybody wants to try it on any other system (especially the ones mentioned above) and comment any build failures / successes that would be very helpful.

Looking forward for feedback!

Thanks,
Ed

Edited by Eduard

Merge request reports