|
Packit |
8fb625 |
lib_inc = include_directories('.')
|
|
Packit |
8fb625 |
|
|
Packit |
8fb625 |
enum_headers = files('bluetooth-enums.h')
|
|
Packit |
8fb625 |
|
|
Packit |
8fb625 |
headers = enum_headers + files(
|
|
Packit |
8fb625 |
'bluetooth-client.h',
|
|
Packit |
8fb625 |
'bluetooth-chooser.h',
|
|
Packit |
8fb625 |
'bluetooth-chooser-button.h',
|
|
Packit |
8fb625 |
'bluetooth-chooser-combo.h',
|
|
Packit |
8fb625 |
'bluetooth-filter-widget.h',
|
|
Packit |
8fb625 |
'bluetooth-settings-widget.h',
|
|
Packit |
8fb625 |
'bluetooth-utils.h'
|
|
Packit |
8fb625 |
)
|
|
Packit |
8fb625 |
|
|
Packit |
8fb625 |
install_headers(
|
|
Packit |
8fb625 |
headers,
|
|
Packit |
8fb625 |
subdir: meson.project_name()
|
|
Packit |
8fb625 |
)
|
|
Packit |
8fb625 |
|
|
Packit |
8fb625 |
sources = files(
|
|
Packit |
8fb625 |
'bluetooth-agent.c',
|
|
Packit |
8fb625 |
'bluetooth-chooser.c',
|
|
Packit |
8fb625 |
'bluetooth-chooser-button.c',
|
|
Packit |
8fb625 |
'bluetooth-chooser-combo.c',
|
|
Packit |
8fb625 |
'bluetooth-client.c',
|
|
Packit |
8fb625 |
'bluetooth-filter-widget.c',
|
|
Packit |
8fb625 |
'bluetooth-pairing-dialog.c',
|
|
Packit |
8fb625 |
'bluetooth-settings-obexpush.c',
|
|
Packit |
8fb625 |
'bluetooth-settings-row.c',
|
|
Packit |
8fb625 |
'bluetooth-settings-widget.c',
|
|
Packit |
8fb625 |
'bluetooth-utils.c',
|
|
Packit |
8fb625 |
'pin.c'
|
|
Packit |
8fb625 |
)
|
|
Packit |
8fb625 |
|
|
Packit |
8fb625 |
built_sources = []
|
|
Packit |
8fb625 |
|
|
Packit |
8fb625 |
resource_data = files(
|
|
Packit |
8fb625 |
'bluetooth-pairing-dialog.ui',
|
|
Packit |
8fb625 |
'bluetooth-settings.css',
|
|
Packit |
8fb625 |
'bluetooth-settings-row.ui',
|
|
Packit |
8fb625 |
'settings.ui'
|
|
Packit |
8fb625 |
)
|
|
Packit |
8fb625 |
|
|
Packit |
8fb625 |
built_sources += gnome.compile_resources(
|
|
Packit |
8fb625 |
'bluetooth-settings-resources',
|
|
Packit |
8fb625 |
'bluetooth.gresource.xml',
|
|
Packit |
8fb625 |
source_dir: '.',
|
|
Packit |
8fb625 |
c_name: 'bluetooth_settings',
|
|
Packit |
8fb625 |
dependencies: resource_data,
|
|
Packit |
8fb625 |
export: true
|
|
Packit |
8fb625 |
)
|
|
Packit |
8fb625 |
|
|
Packit |
8fb625 |
enum_types = 'gnome-bluetooth-enum-types'
|
|
Packit |
8fb625 |
|
|
Packit |
8fb625 |
built_sources += gnome.mkenums(
|
|
Packit |
8fb625 |
enum_types,
|
|
Packit |
8fb625 |
sources: headers,
|
|
Packit |
8fb625 |
c_template: enum_types + '.c.template',
|
|
Packit |
8fb625 |
h_template: enum_types + '.h.template'
|
|
Packit |
8fb625 |
)
|
|
Packit |
8fb625 |
|
|
Packit |
8fb625 |
client = 'bluetooth-client'
|
|
Packit |
8fb625 |
|
|
Packit |
8fb625 |
built_sources += gnome.gdbus_codegen(
|
|
Packit |
8fb625 |
client + '-glue',
|
|
Packit |
8fb625 |
client + '.xml',
|
|
Packit |
8fb625 |
interface_prefix: 'org.bluez'
|
|
Packit |
8fb625 |
)
|
|
Packit |
8fb625 |
|
|
Packit |
8fb625 |
deps = [
|
|
Packit |
8fb625 |
gtk_dep,
|
|
Packit |
8fb625 |
m_dep,
|
|
Packit |
8fb625 |
libgbt_dep
|
|
Packit |
8fb625 |
]
|
|
Packit |
8fb625 |
|
|
Packit |
8fb625 |
cflags = [
|
|
Packit |
8fb625 |
'-DPKGDATADIR="@0@"'.format(gnomebt_pkgdatadir),
|
|
Packit |
8fb625 |
'-DG_LOG_DOMAIN="Bluetooth"'
|
|
Packit |
8fb625 |
]
|
|
Packit |
8fb625 |
|
|
Packit |
8fb625 |
symbol_map = join_paths(meson.current_source_dir(), meson.project_name() + '.map')
|
|
Packit |
8fb625 |
|
|
Packit |
8fb625 |
test_ldflag = '-Wl,--version-script,' + symbol_map
|
|
Packit |
8fb625 |
ldflags = []
|
|
Packit |
8fb625 |
|
|
Packit |
8fb625 |
if cc.has_argument(test_ldflag)
|
|
Packit |
8fb625 |
ldflags += test_ldflag
|
|
Packit |
8fb625 |
endif
|
|
Packit |
8fb625 |
|
|
Packit |
8fb625 |
libgnome_bluetooth = shared_library(
|
|
Packit |
8fb625 |
meson.project_name(),
|
|
Packit |
8fb625 |
sources: sources + built_sources,
|
|
Packit |
8fb625 |
version: libversion,
|
|
Packit |
8fb625 |
include_directories: top_inc,
|
|
Packit |
8fb625 |
dependencies: deps,
|
|
Packit |
8fb625 |
c_args: cflags,
|
|
Packit |
8fb625 |
link_args: ldflags,
|
|
Packit |
8fb625 |
link_depends: symbol_map,
|
|
Packit |
8fb625 |
install: true,
|
|
Packit |
8fb625 |
install_dir: gnomebt_libdir
|
|
Packit |
8fb625 |
)
|
|
Packit |
8fb625 |
|
|
Packit |
8fb625 |
libgnome_bluetooth_dep = declare_dependency(
|
|
Packit |
8fb625 |
link_with: libgnome_bluetooth,
|
|
Packit |
8fb625 |
include_directories: lib_inc,
|
|
Packit |
8fb625 |
dependencies: deps
|
|
Packit |
8fb625 |
)
|
|
Packit |
8fb625 |
|
|
Packit |
8fb625 |
pkg.generate(
|
|
Packit |
8fb625 |
libraries: libgnome_bluetooth,
|
|
Packit |
8fb625 |
version: gnomebt_version,
|
|
Packit |
8fb625 |
name: gnomebt_api_name,
|
|
Packit |
8fb625 |
description: 'Widgets for Bluetooth device selection',
|
|
Packit |
8fb625 |
filebase: gnomebt_api_name,
|
|
Packit |
8fb625 |
subdirs: meson.project_name(),
|
|
Packit |
8fb625 |
requires: [
|
|
Packit |
8fb625 |
'gio-2.0',
|
|
Packit |
8fb625 |
'gtk+-3.0'
|
|
Packit |
8fb625 |
],
|
|
Packit |
8fb625 |
requires_private: 'libudev',
|
|
Packit |
8fb625 |
variables: 'exec_prefix=' + gnomebt_libexecdir,
|
|
Packit |
8fb625 |
install_dir: join_paths(get_option('libdir'), 'pkgconfig')
|
|
Packit |
8fb625 |
)
|
|
Packit |
8fb625 |
|
|
Packit |
8fb625 |
if enable_gir
|
|
Packit |
8fb625 |
gir_sources = sources + headers
|
|
Packit |
8fb625 |
|
|
Packit |
8fb625 |
gir_incs = [
|
|
Packit |
8fb625 |
'GModule-2.0',
|
|
Packit |
8fb625 |
'GObject-2.0',
|
|
Packit |
8fb625 |
'Gtk-3.0'
|
|
Packit |
8fb625 |
]
|
|
Packit |
8fb625 |
|
|
Packit |
8fb625 |
gir_extra_args = '--warn-all'
|
|
Packit |
8fb625 |
|
|
Packit |
8fb625 |
gir_dir = join_paths(gnomebt_datadir, 'gir-' + gnomebt_gir_version)
|
|
Packit |
8fb625 |
typelib_dir = join_paths(gnomebt_libdir, 'girepository-' + gnomebt_gir_version)
|
|
Packit |
8fb625 |
|
|
Packit |
8fb625 |
gnome.generate_gir(
|
|
Packit |
8fb625 |
libgnome_bluetooth,
|
|
Packit |
8fb625 |
sources: gir_sources,
|
|
Packit |
8fb625 |
nsversion: gnomebt_api_version,
|
|
Packit |
8fb625 |
namespace: gnomebt_gir_ns,
|
|
Packit |
8fb625 |
symbol_prefix: 'bluetooth',
|
|
Packit |
8fb625 |
identifier_prefix: 'Bluetooth',
|
|
Packit |
8fb625 |
export_packages: gnomebt_api_name,
|
|
Packit |
8fb625 |
includes: gir_incs,
|
|
Packit |
8fb625 |
extra_args: gir_extra_args,
|
|
Packit |
8fb625 |
install: true,
|
|
Packit |
8fb625 |
install_dir_gir: gir_dir,
|
|
Packit |
8fb625 |
install_dir_typelib: typelib_dir,
|
|
Packit |
8fb625 |
)
|
|
Packit |
8fb625 |
endif
|
|
Packit |
8fb625 |
|
|
Packit |
8fb625 |
test_names = [
|
|
Packit |
8fb625 |
'test-agent',
|
|
Packit |
8fb625 |
'test-class',
|
|
Packit |
8fb625 |
'test-client',
|
|
Packit |
8fb625 |
'test-deviceselection',
|
|
Packit |
8fb625 |
'test-pairing-dialog',
|
|
Packit |
8fb625 |
'test-pin',
|
|
Packit |
8fb625 |
'test-settings'
|
|
Packit |
8fb625 |
]
|
|
Packit |
8fb625 |
|
|
Packit |
8fb625 |
foreach name: test_names
|
|
Packit |
8fb625 |
executable(
|
|
Packit |
8fb625 |
name,
|
|
Packit |
8fb625 |
[name + '.c'] + built_sources,
|
|
Packit |
8fb625 |
include_directories: top_inc,
|
|
Packit |
8fb625 |
dependencies: deps,
|
|
Packit |
8fb625 |
c_args: cflags,
|
|
Packit |
8fb625 |
link_with: libgnome_bluetooth
|
|
Packit |
8fb625 |
)
|
|
Packit |
8fb625 |
endforeach
|
|
Packit |
8fb625 |
|
|
Packit |
8fb625 |
database = 'pin-code-database.xml'
|
|
Packit |
8fb625 |
|
|
Packit |
8fb625 |
install_data(
|
|
Packit |
8fb625 |
database,
|
|
Packit |
8fb625 |
install_dir: gnomebt_pkgdatadir
|
|
Packit |
8fb625 |
)
|
|
Packit |
8fb625 |
|
|
Packit |
8fb625 |
custom_target(
|
|
Packit |
8fb625 |
database,
|
|
Packit |
8fb625 |
input: database,
|
|
Packit |
8fb625 |
output: database + '.valid',
|
|
Packit |
8fb625 |
command: [find_program('xmllint'), '--output', '@OUTPUT@', '--valid', '@INPUT']
|
|
Packit |
8fb625 |
)
|