9 meson_version: '>=0.50.0',
13 cc = meson.get_compiler('c')
15 # dependency definitions
16 dep_jack = dependency('jack')
17 dep_alsa = dependency('alsa')
18 lib_dl = cc.find_library('dl')
19 lib_pthread = cc.find_library('pthread')
20 deps_a2jmidid = [dep_alsa, dep_jack, lib_dl, lib_pthread]
23 src_a2jmidi_bridge = ['a2jmidi_bridge.c']
24 src_j2amidi_bridge = ['j2amidi_bridge.c']
38 conf_data = configuration_data()
39 conf_data.set('version', meson.project_version())
41 git = find_program('git', required : false)
43 git_version = run_command('git', 'describe', '--long', '--tags')
44 if git_version.returncode() == 0
45 conf_data.set('version', git_version.stdout().strip())
49 if get_option('disable-dbus')
50 conf_data.set10('dbus', false)
52 dep_dbus = dependency('dbus-1')
53 deps_a2jmidid += [dep_dbus]
54 dbus_data = configuration_data()
55 dbus_data.set('bindir', join_paths(get_option('prefix'), get_option('bindir')))
56 dbus_data.set('dbus_service_dir', join_paths(get_option('prefix'), 'share', 'dbus-1', 'services'))
58 input: 'org.gna.home.a2jmidid.service.in',
59 output: 'org.gna.home.a2jmidid.service',
61 install_dir: dbus_data.get('dbus_service_dir'),
62 configuration: dbus_data
64 conf_data.set10('dbus', true)
67 'dbus_iface_introspectable.c',
68 'dbus_iface_control.c']
69 install_man('man/a2j.1')
70 install_man('man/a2j_control.1')
76 install_dir: dbus_data.get('bindir'))
79 output: 'a2j_control',
82 install_dir: dbus_data.get('bindir'))
85 config_header = configure_file(
88 configuration: conf_data)
89 src_a2jmidid += [config_header]
91 # executables to compile
94 sources: src_a2jmidi_bridge,
95 dependencies: [dep_alsa, dep_jack],
99 sources: src_j2amidi_bridge,
100 dependencies: [dep_alsa, dep_jack],
104 sources: src_a2jmidid,
105 dependencies: deps_a2jmidid,
108 # installing man pages
109 install_man('man/a2jmidi_bridge.1')
110 install_man('man/a2jmidid.1')
111 install_man('man/j2amidi_bridge.1')