1src_inc = include_directories('.')
2
3
4config_h_full_path = join_paths(meson.current_build_dir(), 'config.h')
5
6
7if cc.get_id() in ['gcc', 'clang']
8  add_project_arguments('-include', config_h_full_path, language: ['c', 'cpp'])
9
10  if have_darwin
11    add_project_arguments('-include', config_h_full_path, language: ['objc', 'objcpp'])
12  endif
13else
14  error('Please implement -include handling for your chosen compiler.')
15endif
16
17
18# input plugins
19subdir('metronom')
20subdir('psf')
21subdir('tonegen')
22subdir('vtx')
23subdir('xsf')
24
25if get_option('console')
26  subdir('console')
27endif
28
29
30# effect plugins
31subdir('compressor')
32subdir('crossfade')
33subdir('crystalizer')
34subdir('echo_plugin')
35subdir('mixer')
36subdir('silence-removal')
37subdir('stereo_plugin')
38subdir('voice_removal')
39
40if get_option('bs2b')
41  subdir('bs2b')
42endif
43
44if get_option('resample')
45  subdir('resample')
46endif
47
48if get_option('soxr')
49  subdir('soxr')
50endif
51
52if get_option('speedpitch')
53  subdir('speedpitch')
54endif
55
56
57# transport plugins
58subdir('gio')
59
60if get_option('mms')
61  subdir('mms')
62endif
63
64if get_option('neon')
65  subdir('neon')
66endif
67
68
69# playlist (container) plugins
70subdir('asx')
71subdir('asx3')
72subdir('audpl')
73subdir('m3u')
74subdir('pls')
75subdir('xspf')
76
77if get_option('cue')
78  subdir('cue')
79endif
80
81
82# Qt/GTK-specific plugins
83if conf.has('USE_GTK_OR_QT')
84  subdir('delete-files')
85  subdir('skins-data')
86
87  if get_option('notify')
88    subdir('notify')
89  endif
90endif
91
92
93# Qt-specific plugins
94if conf.has('USE_QT')
95  subdir('albumart-qt')
96  subdir('blur_scope-qt')
97  subdir('lyricwiki-qt')
98  subdir('playlist-manager-qt')
99  subdir('qt-spectrum')
100  subdir('qtui')
101  subdir('search-tool-qt')
102  subdir('skins-qt')
103  subdir('song-info-qt')
104  subdir('statusicon-qt')
105
106  if get_option('ampache')
107    subdir('ampache')
108  endif
109
110  if get_option('gl-spectrum')
111    subdir('qtglspectrum')
112  endif
113
114  if get_option('hotkey')
115    subdir('qthotkey')
116  endif
117
118  if get_option('moonstone')
119    subdir('moonstone')
120  endif
121
122  if get_option('qtaudio')
123    subdir('qtaudio')
124  endif
125
126  if get_option('streamtuner')
127    subdir('streamtuner')
128  endif
129
130  if get_option('vumeter')
131    subdir('vumeter-qt')
132  endif
133endif
134
135
136# GTK-specific plugins
137if conf.has('USE_GTK')
138  subdir('alarm')
139  subdir('albumart')
140  subdir('blur_scope')
141  subdir('cairo-spectrum')
142  subdir('gtkui')
143  subdir('ladspa')
144  subdir('playlist-manager')
145  subdir('search-tool')
146  subdir('skins')
147  subdir('statusicon')
148
149  if get_option('aosd')
150    subdir('aosd')
151  endif
152
153  if get_option('gl-spectrum') and not have_darwin
154    subdir('glspectrum')
155  endif
156
157  if get_option('hotkey')
158    subdir('hotkey')
159  endif
160endif
161
162
163# general plugins
164if have_cdaudio
165  subdir('cd-menu-items')
166endif
167
168if get_option('lirc')
169  subdir('lirc')
170endif
171
172if get_option('mac-media-keys') and have_darwin
173  subdir('mac-media-keys')
174endif
175
176if get_option('mpris2') and not have_windows
177  subdir('mpris2')
178endif
179
180if get_option('scrobbler2')
181  subdir('scrobbler2')
182endif
183
184if get_option('songchange')
185  subdir('songchange')
186endif
187
188
189# input plugins
190if get_option('aac')
191  subdir('aac')
192endif
193
194if get_option('adplug')
195  subdir('adplug')
196endif
197
198if get_option('amidiplug')
199  subdir('amidiplug')
200endif
201
202if have_cdaudio
203  subdir('cdaudio')
204endif
205
206if get_option('ffaudio') in ['ffmpeg', 'libav']
207  subdir('ffaudio')
208endif
209
210if get_option('flac')
211  subdir('flac')
212endif
213
214if get_option('modplug')
215  subdir('modplug')
216endif
217
218if get_option('mpg123')
219  subdir('mpg123')
220endif
221
222if get_option('openmpt')
223  subdir('openmpt')
224endif
225
226if get_option('sid')
227  subdir('sid')
228endif
229
230if get_option('sndfile')
231  subdir('sndfile')
232endif
233
234if get_option('vorbis')
235  subdir('vorbis')
236endif
237
238if get_option('wavpack')
239  subdir('wavpack')
240endif
241
242
243# output plugins
244if get_option('alsa')
245  subdir('alsa')
246endif
247
248if get_option('coreaudio') and have_darwin
249  subdir('coreaudio')
250endif
251
252if get_option('filewriter')
253  subdir('filewriter')
254endif
255
256if get_option('jack')
257  subdir('jack')
258endif
259
260if get_option('oss')
261  subdir('oss4')
262endif
263
264if get_option('pulse')
265  subdir('pulse')
266endif
267
268if get_option('sdlout')
269  subdir('sdlout')
270endif
271
272if get_option('sndio')
273  subdir('sndio')
274endif
275
276if have_windows
277  subdir('waveout')
278endif
279
280
281# config.h stuff
282configure_file(input: 'config.h.meson',
283  output: 'config.h',
284  configuration: conf)
285