Port build system to Meson. Bug 777044.

Some remarks:

* Note that Meson adds a hard dependency on Python 3.

* All dependencies and defines are now listed together.

* Some build files were put in their respective subdirectories, e.g. the Geary
  engine library will be built from the Meson file in `src/engine`.

* `--fatal-warnings` is no longer an explicit flag, as Meson provides
  `-Dwerror=true` for this.

* An explicit resource file needs to be used. The issue to support this from
  Meson itself can be found at https://github.com/mesonbuild/meson/issues/706 .

* The `gnome.yelp()` function parses a LINGUAS file so we no longer need to keep
  track of all languages in our build system.

* There are no Debian scripts defined in the meson.build files to keep them
  clean, but they can be kept as separate scripts in `build-aux`.

* Left out the `dist` target as there is now `ninja dist`

* `geary-docs` is disabled by default, as valadoc-0.38.3 returns errors.

https://bugzilla.gnome.org/show_bug.cgi?id=777044
This commit is contained in:
Niels De Graef 2017-12-09 00:45:29 +01:00
parent b627fd4fc6
commit 01c13f726f
19 changed files with 1137 additions and 0 deletions

33
icons/meson.build Normal file
View file

@ -0,0 +1,33 @@
system_icons_dir = join_paths(datadir, 'icons', 'hicolor')
icon_files = files(
'mail-archive-symbolic.svg',
'close-symbolic.svg',
'detach-symbolic.svg',
'text-x-generic-symbolic.svg',
'edit-symbolic.svg',
'format-text-remove-symbolic.svg',
'mail-drafts-symbolic.svg',
'mail-drafts-symbolic-rtl.svg',
'mail-forward-symbolic.svg',
'mail-forward-symbolic-rtl.svg',
'mail-inbox-symbolic.svg',
'mail-outbox-symbolic.svg',
'mail-reply-all-symbolic.svg',
'mail-reply-all-symbolic-rtl.svg',
'mail-reply-sender-symbolic.svg',
'mail-reply-sender-symbolic-rtl.svg',
'mail-sent-symbolic.svg',
'mail-sent-symbolic-rtl.svg',
'marker-symbolic.svg',
'tag-symbolic.svg',
'tag-symbolic-rtl.svg',
)
install_data(icon_files,
install_dir: join_paths(system_icons_dir, 'scalable', 'actions'),
)
install_subdir('hicolor',
install_dir: system_icons_dir,
)