Revert "Revert "meson: move all tizen specific dependancy to 'tizen' option""
[platform/upstream/efl.git] / src / lib / ecore_audio / meson.build
1 ecore_audio_deps = [ecore]
2 ecore_audio_pub_deps = [eina, eo]
3
4 pub_eo_files = [
5   'ecore_audio.eo',
6   'ecore_audio_in.eo',
7   'ecore_audio_out.eo',
8   'ecore_audio_in_sndfile.eo',
9   'ecore_audio_out_sndfile.eo',
10   'ecore_audio_out_pulse.eo',
11   'ecore_audio_in_tone.eo',
12   'ecore_audio_out_wasapi.eo'
13 ]
14
15 pub_eo_files += [
16   'ecore_audio_out_tizen.eo',
17 ]
18
19 foreach eo_file : pub_eo_files
20   pub_eo_file_target += custom_target('eolian_gen_' + eo_file,
21     input : eo_file,
22     output : [eo_file + '.h'],
23     depfile : eo_file + '.d',
24     install : true,
25     install_dir : dir_package_include,
26     command : eolian_gen + [ '-I', meson.current_source_dir(), eolian_include_directories,
27                            '-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
28                            '-o', 'c:' + join_paths(meson.current_build_dir(), eo_file + '.c'),
29                            '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.d'),
30                            '-gchd', '@INPUT@'])
31 endforeach
32
33 pub_eo_types_files = []
34
35 ecore_audio_header_src = [
36   'Ecore_Audio.h',
37   'ecore_audio_obj.h',
38   'ecore_audio_obj_in.h',
39   'ecore_audio_obj_out.h',
40   'ecore_audio_obj_in_tone.h',
41   'ecore_audio_protected.h',
42   'ecore_audio_obj_out_pulse.h',
43   'ecore_audio_obj_in_sndfile.h',
44   'ecore_audio_obj_out_sndfile.h',
45   'ecore_audio_obj_out_wasapi.h'
46 ]
47
48 ecore_audio_src = [
49   'ecore_audio.c',
50   'ecore_audio_obj.c',
51   'ecore_audio_obj_in.c',
52   'ecore_audio_obj_out.c',
53   'ecore_audio_obj_in_tone.c',
54   'ecore_audio_private.h'
55 ]
56
57 ecore_audio_src += [
58   'ecore_audio_obj_in_sndfile.c',
59   'ecore_audio_obj_out_sndfile.c',
60   'ecore_audio_sndfile_vio.c'
61 ]
62
63 ecore_audio_deps += dependency('sndfile')
64 config_h.set('HAVE_SNDFILE', '1')
65
66 if get_option('pulseaudio')
67   ecore_audio_deps += dependency('libpulse')
68
69   ecore_audio_src += [
70     'ecore_audio_pulse_ml.c',
71     'ecore_audio_obj_out_pulse.c'
72   ]
73
74   config_h.set('HAVE_PULSE', '1')
75 endif
76
77 if get_option('tizen')
78   ecore_audio_header_src += [
79     'ecore_audio_obj_out_tizen.h'
80   ]
81   ecore_audio_src += [
82     'ecore_audio_obj_out_tizen.c'
83   ]
84   config_h.set('HAVE_TIZENAUDIO', '1')
85 endif
86
87 if sys_windows == true
88   ecore_audio_src += [
89     'ecore_audio_obj_out_wasapi.c'
90   ]
91   ecore_audio_deps += [cc.find_library('ksuser', required: true), cc.find_library('winmm', required: true)]
92 endif
93
94 ecore_audio_lib = library('ecore_audio',
95     ecore_audio_src, pub_eo_file_target,
96     dependencies: ecore_audio_pub_deps + [m] + ecore_audio_deps,
97     include_directories : config_dir,
98     install: true,
99     version : meson.project_version()
100 )
101
102 ecore_audio = declare_dependency(
103   include_directories: [include_directories('.')],
104   link_with: ecore_audio_lib,
105   sources : pub_eo_file_target + priv_eo_file_target,
106   dependencies: ecore_audio_pub_deps,
107 )
108
109 if get_option('install-eo-files')
110   install_data(pub_eo_files + pub_eo_types_files,
111     install_dir: eolian_ecore_dir
112   )
113 endif
114
115 install_headers(ecore_audio_header_src,
116   install_dir : dir_package_include,
117 )