diff options
Diffstat (limited to 'meson.build')
-rw-r--r-- | meson.build | 114 |
1 files changed, 114 insertions, 0 deletions
diff --git a/meson.build b/meson.build new file mode 100644 index 0000000..cdd701a --- /dev/null +++ b/meson.build @@ -0,0 +1,114 @@ +project( + 'mate-desktop', + 'c', + version: '1.22.0', + license: [ 'GPL-2', 'FDL-1.1', 'LGPL-2' ], +) + +matedt_version = meson.project_version() +version_array = matedt_version.split('.') +mate_major_version = version_array[0].to_int() +mate_minor_version = version_array[0].to_int() +mate_micro_version = version_array[0].to_int() +mate_platform = 1 +mate_minor = 22 +mate_micro = 0 + +matedt_api_version = '2.0' +matedt_api_name = '@0@-@1@'.format(meson.project_name(), matedt_api_version) + +matedt_gir_ns = 'MateDesktop' +matedt_gir_version = '2.0' + +matedt_gettext_package = meson.project_name() + +matedt_prefix = get_option('prefix') +matedt_bindir = join_paths(matedt_prefix, get_option('bindir')) +matedt_datadir = join_paths(matedt_prefix, get_option('datadir')) +matedt_includedir = join_paths(matedt_prefix, get_option('includedir')) +matedt_libdir = join_paths(matedt_prefix, get_option('libdir')) +matedt_libexecdir = join_paths(matedt_prefix, get_option('libexecdir')) +matedt_localedir = join_paths(matedt_prefix, get_option('localedir')) +matedt_mandir = join_paths(matedt_prefix, get_option('mandir')) + +matedt_pkgdatadir = join_paths(matedt_datadir, 'libmate-desktop') + +# options +enable_gir = get_option('introspection') +enable_gtk_doc = get_option('gtk-doc') +enable_startup_notification = get_option('startup-notification') + +# Before making a release, the LT_VERSION string should be modified. +# The string is of the form C:R:A. +# - If interfaces have been changed or added, but binary compatibility has +# been preserved, change to C+1:0:A+1 +# - If binary compatibility has been broken (eg removed or changed interfaces) +# change to C+1:0:0 +# - If the interface is the same as the previous version, change to C:R+1:A +current = 17 +revision = 4 +age = 1 + +libversion = '@0@.@1@.@2@'.format(current, age, revision) + +cc = meson.get_compiler('c') + +config_h = configuration_data() + +# i18n +config_h.set_quoted('GETTEXT_PACKAGE', matedt_gettext_package) +config_h.set_quoted('LOCALEDIR', matedt_localedir) + +common_flags = [ + '-DHAVE_CONFIG_H', + '-DPACKAGE_VERSION="@0@"'.format(matedt_version), +] + +add_project_arguments(common_flags, language: 'c') + +gtk_dep = dependency('gtk+-3.0', version: '>= 3.22.0') +m_dep = cc.find_library('m', required: false) +dconf_dep = dependency('dconf', version: '>= 0.13.4') +x11_dep = dependency('x11', required: true) +randr_dep = dependency('xrandr', version: '>= 1.3', required: false) +config_h.set('HAVE_RANDR', randr_dep.found()) +iso_codes = dependency('iso-codes') +iso_codes_prefix = iso_codes.get_pkgconfig_variable('prefix') +libmdt_dep = [ + dependency('gdk-pixbuf-2.0'), + dependency('gobject-2.0'), + dependency('glib-2.0', version: '>= 2.50.0'), + dependency('gio-2.0', version: '>= 2.26.0'), + dependency('libstartup-notification-1.0', version: '>= 0.5', + required: enable_startup_notification ), + randr_dep, + iso_codes, +] + +gnome = import('gnome') +i18n = import('i18n') +pkg = import('pkgconfig') + +po_dir = join_paths(meson.source_root(), 'po') + +top_inc = include_directories('.') + +subdir('icons') +subdir('libmate-desktop') +subdir('man') +if enable_gtk_doc + subdir('docs/reference/mate-desktop') +endif +subdir('po') +subdir('tools') +subdir('schemas') +if get_option('mate-about') + subdir('mate-about') +endif + +configure_file( + output: 'config.h', + configuration: config_h, +) + +meson.add_install_script('utils/post_install.py') |