|
Packit |
67b98c |
#
|
|
Packit |
67b98c |
# meson.build
|
|
Packit |
67b98c |
#
|
|
Packit |
67b98c |
# Author: Juan A. Suarez Romero <jasuarez@igalia.com>
|
|
Packit |
67b98c |
#
|
|
Packit |
67b98c |
# Copyright (C) 2016 Igalia S.L. All rights reserved.
|
|
Packit |
67b98c |
|
|
Packit |
67b98c |
project('grilo', 'c',
|
|
Packit |
67b98c |
version: '0.3.6',
|
|
Packit |
67b98c |
default_options: [
|
|
Packit |
67b98c |
'buildtype=debugoptimized',
|
|
Packit |
67b98c |
'c_std=gnu99',
|
|
Packit |
67b98c |
'warning_level=1'
|
|
Packit |
67b98c |
],
|
|
Packit |
67b98c |
license: 'LGPL 2.1',
|
|
Packit |
67b98c |
meson_version: '>= 0.36.0')
|
|
Packit |
67b98c |
|
|
Packit |
67b98c |
grilo_version = meson.project_version()
|
|
Packit |
67b98c |
grlnet_version = meson.project_version()
|
|
Packit |
67b98c |
grlpls_version = meson.project_version()
|
|
Packit |
67b98c |
|
|
Packit |
67b98c |
# maintaining compatibility with the previous libtool versioning
|
|
Packit |
67b98c |
# current = minor * 100 + micro
|
|
Packit |
67b98c |
version_array = grilo_version.split('.')
|
|
Packit |
67b98c |
soversion = version_array[0]
|
|
Packit |
67b98c |
current = version_array[1].to_int() * 100 + version_array[2].to_int()
|
|
Packit |
67b98c |
|
|
Packit |
67b98c |
# Increase the age everytime new API is added
|
|
Packit |
67b98c |
grilo_interface_age = 1
|
|
Packit |
67b98c |
grlnet_interface_age = 0
|
|
Packit |
67b98c |
grlpls_interface_age = 0
|
|
Packit |
67b98c |
|
|
Packit |
67b98c |
grilo_lt_version = '@0@.@1@.@2@'.format(soversion, current, grilo_interface_age)
|
|
Packit |
67b98c |
grlnet_lt_version = '@0@.@1@.@2@'.format(soversion, current, grlnet_interface_age)
|
|
Packit |
67b98c |
grlpls_lt_version = '@0@.@1@.@2@'.format(soversion, current, grlpls_interface_age)
|
|
Packit |
67b98c |
|
|
Packit |
67b98c |
grl_majorminor = '@0@.@1@'.format(version_array[0], version_array[1])
|
|
Packit |
67b98c |
grl_name = '@0@-@1@'.format(meson.project_name(), grl_majorminor)
|
|
Packit |
67b98c |
|
|
Packit |
67b98c |
glib2_required = '2.44'
|
|
Packit |
67b98c |
glib2_required_info = '>= @0@'.format(glib2_required)
|
|
Packit |
67b98c |
|
|
Packit |
67b98c |
gio_dep = dependency('gio-2.0', version: glib2_required_info, required: true)
|
|
Packit |
67b98c |
glib_dep = dependency('glib-2.0', version: glib2_required_info, required: true)
|
|
Packit |
67b98c |
gmodule_dep = dependency('gmodule-2.0', version: glib2_required_info, required: true)
|
|
Packit |
67b98c |
gobject_dep = dependency('gobject-2.0', version: glib2_required_info, required: true)
|
|
Packit |
67b98c |
libxml_dep = dependency('libxml-2.0', required: true)
|
|
Packit |
67b98c |
|
|
Packit |
67b98c |
enable_grlnet = get_option('enable-grl-net')
|
|
Packit |
67b98c |
if enable_grlnet
|
|
Packit |
67b98c |
libsoup_dep = dependency('libsoup-2.4', version: '>= 2.41.3', required: true)
|
|
Packit |
67b98c |
endif
|
|
Packit |
67b98c |
|
|
Packit |
67b98c |
enable_grlpls = get_option('enable-grl-pls')
|
|
Packit |
67b98c |
if enable_grlpls
|
|
Packit |
67b98c |
totem_plparser_dep = dependency('totem-plparser', version: '>= 3.4.1', required: true)
|
|
Packit |
67b98c |
endif
|
|
Packit |
67b98c |
|
|
Packit |
67b98c |
enable_gir = get_option('enable-introspection') or get_option('enable-vala')
|
|
Packit |
67b98c |
if enable_gir
|
|
Packit |
67b98c |
find_program('g-ir-scanner', required: true)
|
|
Packit |
67b98c |
endif
|
|
Packit |
67b98c |
|
|
Packit |
67b98c |
enable_vala = get_option('enable-vala')
|
|
Packit |
67b98c |
if enable_vala
|
|
Packit |
67b98c |
vapigen = find_program('vapigen', required: true)
|
|
Packit |
67b98c |
endif
|
|
Packit |
67b98c |
|
|
Packit |
67b98c |
enable_testui = get_option('enable-test-ui')
|
|
Packit |
67b98c |
if enable_testui
|
|
Packit |
67b98c |
gtk_dep = dependency('gtk+-3.0', version: '>= 3.0', required: true)
|
|
Packit |
67b98c |
oauth_dep = dependency('oauth', required: false)
|
|
Packit |
67b98c |
endif
|
|
Packit |
67b98c |
|
|
Packit |
67b98c |
prefix = get_option('prefix')
|
|
Packit |
67b98c |
libdir = join_paths(prefix, get_option('libdir'))
|
|
Packit |
67b98c |
plugins_dir = join_paths(libdir, grl_name)
|
|
Packit |
67b98c |
localedir = join_paths(prefix, get_option('localedir'))
|
|
Packit |
67b98c |
|
|
Packit |
67b98c |
cdata = configuration_data()
|
|
Packit |
67b98c |
cdata.set_quoted('VERSION', grilo_version)
|
|
Packit |
67b98c |
cdata.set('GRLNET_VERSION', grlnet_version)
|
|
Packit |
67b98c |
cdata.set('GRLPLS_VERSION', grlpls_version)
|
|
Packit |
67b98c |
cdata.set_quoted('GRL_MAJORMINOR', grl_majorminor)
|
|
Packit |
67b98c |
cdata.set_quoted('GETTEXT_PACKAGE', meson.project_name())
|
|
Packit |
67b98c |
cdata.set_quoted('GRL_PLUGINS_DIR', plugins_dir)
|
|
Packit |
67b98c |
cdata.set_quoted('LOCALEDIR', localedir)
|
|
Packit |
67b98c |
if enable_testui
|
|
Packit |
67b98c |
cdata.set('HAVE_OAUTH', oauth_dep.found())
|
|
Packit |
67b98c |
endif
|
|
Packit |
67b98c |
|
|
Packit |
67b98c |
pkgconfig_files = [
|
|
Packit |
67b98c |
'grilo-@0@'.format(grl_majorminor),
|
|
Packit |
67b98c |
'grilo-net-@0@'.format(grl_majorminor),
|
|
Packit |
67b98c |
'grilo-pls-@0@'.format(grl_majorminor),
|
|
Packit |
67b98c |
]
|
|
Packit |
67b98c |
|
|
Packit |
67b98c |
pkgconf = configuration_data()
|
|
Packit |
67b98c |
pkgconf.set('prefix', prefix)
|
|
Packit |
67b98c |
pkgconf.set('exec_prefix', '${prefix}')
|
|
Packit |
67b98c |
pkgconf.set('libdir', libdir)
|
|
Packit |
67b98c |
pkgconf.set('includedir', '${prefix}/@0@'.format(get_option('includedir')))
|
|
Packit |
67b98c |
pkgconf.set('GRL_NAME', grl_name)
|
|
Packit |
67b98c |
pkgconf.set('GRL_PLUGINS_DIR', plugins_dir)
|
|
Packit |
67b98c |
pkgconf.set('INTROSPECTION_GIRDIR', '${datarootdir}/gir-1.0')
|
|
Packit |
67b98c |
pkgconf.set('INTROSPECTION_TYPELIBDIR', '${libdir}/girepository-1.0'.format(get_option('libdir')))
|
|
Packit |
67b98c |
pkgconf.set('VERSION', grilo_version)
|
|
Packit |
67b98c |
pkgconf.set('GRLNET_VERSION', grlnet_version)
|
|
Packit |
67b98c |
pkgconf.set('GRLPLS_VERSION', grlpls_version)
|
|
Packit |
67b98c |
|
|
Packit |
67b98c |
foreach p: pkgconfig_files
|
|
Packit |
67b98c |
infile = p + '.pc.in'
|
|
Packit |
67b98c |
outfile = p + '.pc'
|
|
Packit |
67b98c |
configure_file(input: infile,
|
|
Packit |
67b98c |
output: outfile,
|
|
Packit |
67b98c |
configuration: pkgconf,
|
|
Packit |
67b98c |
install_dir: '@0@/pkgconfig'.format(get_option('libdir')))
|
|
Packit |
67b98c |
endforeach
|
|
Packit |
67b98c |
|
|
Packit |
67b98c |
gnome = import('gnome')
|
|
Packit |
67b98c |
|
|
Packit |
67b98c |
subdir('src')
|
|
Packit |
67b98c |
subdir('libs')
|
|
Packit |
67b98c |
subdir('bindings')
|
|
Packit |
67b98c |
subdir('po')
|
|
Packit |
67b98c |
subdir('tools')
|
|
Packit |
67b98c |
subdir('examples')
|
|
Packit |
67b98c |
subdir('doc')
|