summaryrefslogtreecommitdiff
path: root/src/meson.build
blob: 60b8c6d13ada6cbbf33977c0155b3e9288d2e8e8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
gnome = import('gnome')
resources = gnome.compile_resources('resources',
  'resources.gresource.xml',
  source_dir: '.',
  c_name: 'resources'
)

pavucontrol_sources = [
  'cardwidget.cc',
  'channelwidget.cc',
  'devicewidget.cc',
  'mainwindow.cc',
  'minimalstreamwidget.cc',
  'pavuapplication.cc',
  'pavucontrol.cc',
  'rolewidget.cc',
  'sinkinputwidget.cc',
  'sinkwidget.cc',
  'sourceoutputwidget.cc',
  'sourcewidget.cc',
  'streamwidget.cc',
  resources
]

pavucontrol_deps = [gtkmm_dep, sigcpp_dep, canberragtk_dep, libpulse_dep, libpulsemlglib_dep]
pavucontrol_defines = ['-DHAVE_CONFIG_H']

if have_pulse_messaging_api
  pavucontrol_deps += [json_glib_dep]
  pavucontrol_defines += ['-DHAVE_PULSE_MESSAGING_API']
endif

executable('pavucontrol',
  pavucontrol_sources,
  install: true,
  cpp_args: pavucontrol_defines,
  include_directories : configinc,
  dependencies : pavucontrol_deps,
)

desktop_file = i18n.merge_file(
  input : 'org.pulseaudio.pavucontrol.desktop.in',
  output : 'org.pulseaudio.pavucontrol.desktop',
  po_dir : po_dir,
  type : 'desktop',
  install : true,
  install_dir : join_paths(datadir, 'applications'),
)

appdata_file = i18n.merge_file(
  input : 'org.pulseaudio.pavucontrol.metainfo.xml.in',
  output : 'org.pulseaudio.pavucontrol.metainfo.xml',
  po_dir : po_dir,
  type : 'xml',
  install : true,
  install_dir : datadir / 'metainfo',
)

# TODO: use the Devel version on beta builds?
icon_filename = 'org.pulseaudio.pavucontrol.svg'
install_data(
  icon_filename,
  install_dir: datadir / 'icons' / 'hicolor' / 'scalable' / 'apps'
)

icon_filename = 'org.pulseaudio.pavucontrol-symbolic.svg'
install_data(
  icon_filename,
  install_dir: datadir / 'icons' / 'hicolor' / 'symbolic' / 'apps'
)