@@ -30,36 +30,6 @@ elif cpp.get_id() == 'clang'
3030 add_project_arguments (' -std=c++2b' , language : ' cpp' )
3131elif cpp.get_id() == ' emscripten'
3232 add_project_arguments (' -std=c++2b' , language : ' cpp' )
33-
34- emscripten_args = [
35- ' USE_PTHREADS' ,
36- ' USE_SDL=2' ,
37- ' USE_SDL_MIXER=2' ,
38- ' USE_VORBIS=1' ,
39- ' USE_LIBPNG' ,
40- ' USE_MPG123=1' ,
41- ' USE_ZLIB=1' ,
42- ' SDL2_MIXER_FORMATS=\' ["wav", "flac", "mp3"]\' ' ,
43- ' USE_SDL_TTF=2'
44- ]
45-
46-
47- foreach emscripten_arg : emscripten_args
48-
49- #setup esmscripten specific beahviour!
50- add_global_arguments (
51- ' -s' ,
52- emscripten_arg,
53- language : [' c' , ' cpp' ],
54- )
55-
56- add_global_arguments (
57- ' -pthread' ,
58- language : [' c' , ' cpp' ],
59- )
60-
61-
62- endforeach
6333else
6434 add_project_arguments (' -std=c++20' , language : ' cpp' )
6535endif
@@ -72,71 +42,65 @@ if meson.is_cross_build()
7242 native = false
7343endif
7444
75- sdl2_mixer_flags = []
76- sdl2_mixer_defines = []
7745
78- if host_machine .system() != ' emscripten'
46+ sdl2_dep = dependency (
47+ ' sdl2' ,
48+ allow_fallback : false ,
49+ required : false ,
50+ native : native,
51+ )
7952
80- sdl2_dep = dependency (
53+ if sdl2_dep.found()
54+ deps += sdl2_dep
55+ else
56+ deps += dependency (
8157 ' sdl2' ,
82- allow_fallback : false ,
83- required : false ,
58+ required : true ,
59+ fallback : ' sdl2 ' ,
8460 native : native,
61+ default_options : [' test=false' ],
8562 )
63+ deps += dependency (
64+ ' sdl2main' ,
65+ required : true ,
66+ fallback : ' sdl2' ,
67+ native : native,
68+ )
69+ endif
8670
87- if sdl2_dep.found()
88- deps += sdl2_dep
89- else
90- deps += dependency (
91- ' sdl2' ,
92- required : true ,
93- fallback : ' sdl2' ,
94- native : native,
95- default_options : [' test=false' ],
96- )
97- deps += dependency (
98- ' sdl2main' ,
99- required : true ,
100- fallback : ' sdl2' ,
101- native : native,
102- )
103- endif
104-
105- deps += dependency (' sdl2_ttf' , ' SDL2_ttf' , required : true , native : native)
71+ deps += dependency (' sdl2_ttf' , ' SDL2_ttf' , required : true , native : native)
10672
10773
108- # a dirty thing atm, until mpg123 is ported to meson (maybe never...)
109- mpg123_dep = dependency (' mgp123' , required : false , native : native)
110- sdl2_mixer_flags += [' flac=enabled' ]
111- sdl2_mixer_defines += [' -DAUDIO_WITH_FLAC_SUPPORT' ]
74+ # a dirty thing atm, until mpg123 is ported to meson (maybe never...)
75+ mpg123_dep = dependency (' mgp123' , required : false , native : native)
76+ sdl2_mixer_flags = [' flac=enabled' ]
77+ sdl2_mixer_defines = [' -DAUDIO_WITH_FLAC_SUPPORT' ]
78+ if mpg123_dep.found()
79+ sdl2_mixer_flags += ' mpg123=enabled'
80+ sdl2_mixer_defines += ' -DAUDIO_WITH_MP3_SUPPORT'
81+ else
82+ cpp = meson .get_compiler(' cpp' )
83+ mpg123_dep = cpp.find_library (' mpg123' , required : false )
11284 if mpg123_dep.found()
11385 sdl2_mixer_flags += ' mpg123=enabled'
11486 sdl2_mixer_defines += ' -DAUDIO_WITH_MP3_SUPPORT'
115- else
116- cpp = meson .get_compiler(' cpp' )
117- mpg123_dep = cpp.find_library (' mpg123' , required : false )
118- if mpg123_dep.found()
119- sdl2_mixer_flags += ' mpg123=enabled'
120- sdl2_mixer_defines += ' -DAUDIO_WITH_MP3_SUPPORT'
121-
122- meson .override_dependency(
123- ' mpg123' ,
124- mpg123_dep,
125- native : native,
126- )
127- endif
128- endif
129-
130- deps += dependency (
131- ' sdl2_mixer' ,
132- ' SDL2_mixer' ,
133- required : true ,
134- native : native,
135- default_options : sdl2_mixer_flags,
136- )
13787
88+ meson .override_dependency(
89+ ' mpg123' ,
90+ mpg123_dep,
91+ native : native,
92+ )
93+ endif
13894endif
13995
96+ deps += dependency (
97+ ' sdl2_mixer' ,
98+ ' SDL2_mixer' ,
99+ required : true ,
100+ native : native,
101+ default_options : sdl2_mixer_flags,
102+ )
103+
140104
141105## HEADER ONLY LIBS
142106deps += dependency (
@@ -192,15 +156,6 @@ if meson.is_cross_build() and host_machine.system() == 'android'
192156 )
193157elif meson .is_cross_build() and host_machine .system() == ' emscripten'
194158
195-
196-
197- sdl2_mixer_defines += [
198- ' -DAUDIO_WITH_FLAC_SUPPORT' ,
199- ' -DAUDIO_WITH_MP3_SUPPORT' ,
200- ]
201-
202-
203- ## TODO
204159 executable (
205160 ' oopetris' ,
206161 src_files,
0 commit comments