efl

Форк
0
/
meson.build 
109 строк · 3.0 Кб
1
ecore_audio_deps = [ecore]
2
ecore_audio_pub_deps = [eina, eo]
3
ecore_audio_ext_deps = [m]
4

5
pub_eo_files = [
6
  'ecore_audio.eo',
7
  'ecore_audio_in.eo',
8
  'ecore_audio_out.eo',
9
  'ecore_audio_in_sndfile.eo',
10
  'ecore_audio_out_sndfile.eo',
11
  'ecore_audio_out_pulse.eo',
12
  'ecore_audio_in_tone.eo',
13
  'ecore_audio_out_wasapi.eo'
14
]
15

16
foreach eo_file : pub_eo_files
17
  pub_eo_file_target += custom_target('eolian_gen_' + eo_file,
18
    input : eo_file,
19
    output : [eo_file + '.h'],
20
    depfile : eo_file + '.d',
21
    install : true,
22
    install_dir : dir_package_include,
23
    command : eolian_gen + [ '-I', meson.current_source_dir(), eolian_include_directories,
24
                           '-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
25
                           '-o', 'c:' + join_paths(meson.current_build_dir(), eo_file + '.c'),
26
                           '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.d'),
27
                           '-e', 'ECORE_AUDIO_API',
28
                           '-gchd', '@INPUT@'])
29
endforeach
30

31
pub_eo_types_files = []
32

33
ecore_audio_header_src = [
34
  'Ecore_Audio.h',
35
  'ecore_audio_obj.h',
36
  'ecore_audio_obj_in.h',
37
  'ecore_audio_obj_out.h',
38
  'ecore_audio_obj_in_tone.h',
39
  'ecore_audio_protected.h',
40
  'ecore_audio_obj_out_pulse.h',
41
  'ecore_audio_obj_in_sndfile.h',
42
  'ecore_audio_obj_out_sndfile.h',
43
  'ecore_audio_obj_out_wasapi.h'
44
]
45

46
ecore_audio_src = files([
47
  'ecore_audio.c',
48
  'ecore_audio_obj.c',
49
  'ecore_audio_obj_in.c',
50
  'ecore_audio_obj_out.c',
51
  'ecore_audio_obj_in_tone.c',
52
  'ecore_audio_private.h'
53
])
54

55
ecore_audio_src += files([
56
  'ecore_audio_obj_in_sndfile.c',
57
  'ecore_audio_obj_out_sndfile.c',
58
  'ecore_audio_sndfile_vio.c'
59
])
60

61
ecore_audio_deps += dependency('sndfile')
62
config_h.set('HAVE_SNDFILE', '1')
63

64
if get_option('pulseaudio')
65
  ecore_audio_ext_deps += dependency('libpulse')
66

67
  ecore_audio_src += files([
68
    'ecore_audio_pulse_ml.c',
69
    'ecore_audio_obj_out_pulse.c'
70
  ])
71

72
  config_h.set('HAVE_PULSE', '1')
73
endif
74

75
if sys_windows == true
76
  ecore_audio_src += files([
77
    'ecore_audio_obj_out_wasapi.c'
78
  ])
79
  ecore_audio_ext_deps += [cc.find_library('ksuser', required: true), cc.find_library('winmm', required: true)]
80
endif
81

82
ecore_audio_lib = library('ecore_audio',
83
    ecore_audio_src, pub_eo_file_target,
84
    c_args : [package_c_args, '-DECORE_AUDIO_BUILD'],
85
    dependencies: ecore_audio_pub_deps + ecore_audio_deps + ecore_audio_ext_deps,
86
    include_directories : config_dir,
87
    install: true,
88
    version : meson.project_version()
89
)
90

91
ecore_audio = declare_dependency(
92
  include_directories: [include_directories('.')],
93
  link_with: ecore_audio_lib,
94
  sources : pub_eo_file_target + priv_eo_file_target,
95
  dependencies: ecore_audio_pub_deps,
96
)
97

98
#
99
# Only enable that again when the namespace problems are fixed. ref T8648
100
#
101
#if get_option('install-eo-files')
102
#  install_data(pub_eo_files + pub_eo_types_files,
103
#    install_dir: eolian_ecore_dir
104
#  )
105
#endif
106

107
install_headers(ecore_audio_header_src,
108
  install_dir : dir_package_include,
109
)
110

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.