Skip to content

Commit 220bbf0

Browse files
authored
Merge pull request #86 from yuchanns/audio-patch
feat(build/luamake): support audio
2 parents 1e1f35d + c69c691 commit 220bbf0

4 files changed

Lines changed: 42 additions & 2 deletions

File tree

clibs/soloud/make.lua

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
local lm = require "luamake"
2+
3+
lm.rootdir = lm.basedir .. "/3rd/soloud"
4+
5+
lm:source_set "soloud_src" {
6+
sources = {
7+
lm.basedir .. "/src/soloudone.cpp",
8+
},
9+
includes = {
10+
"include",
11+
"src",
12+
},
13+
windows = {
14+
defines = {
15+
"WITH_WINMM=1",
16+
},
17+
},
18+
macos = {
19+
defines = {
20+
"WITH_COREAUDIO=1",
21+
},
22+
},
23+
linux = {
24+
defines = {
25+
lm.platform == "emcc" and "WITH_SDL2_STATIC=1" or "WITH_ALSA=1",
26+
},
27+
},
28+
}

clibs/soluna/make.lua

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,10 +39,11 @@ lm:source_set "soluna_src" {
3939
includes = {
4040
"build",
4141
"src",
42-
"3rd/lua",
4342
"3rd",
43+
"3rd/lua",
4444
"3rd/yoga",
4545
"3rd/zlib",
46+
"3rd/soloud/include",
4647
},
4748
clang = {
4849
sources = lm.os == "macos" and {
@@ -52,6 +53,7 @@ lm:source_set "soluna_src" {
5253
"-x objective-c",
5354
},
5455
frameworks = lm.os == "macos" and {
56+
"AudioToolbox",
5557
"IOKit",
5658
"CoreText",
5759
"CoreFoundation",

make.lua

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -87,6 +87,7 @@ lm:conf {
8787
"-pthread",
8888
"-fPIC",
8989
"--use-port=emdawnwebgpu",
90+
"-s USE_SDL=2",
9091
},
9192
links = {
9293
"idbfs.js",
@@ -99,6 +100,7 @@ lm:conf {
99100
"-s FORCE_FILESYSTEM=1",
100101
'-s EXPORTED_RUNTIME_METHODS=\'["FS","FS_createPath","FS_createDataFile","IDBFS"]\'',
101102
"-s USE_PTHREADS=1",
103+
"-s USE_SDL=2",
102104
"-s PTHREAD_POOL_SIZE='Math.max(2,navigator.hardwareConcurrency)'",
103105
"-s PTHREAD_POOL_SIZE_STRICT=2",
104106
lm.mode == "debug" and "-s ASSERTIONS=2",

src/soloudone.cpp

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,15 @@
3737

3838
#endif
3939

40+
#if defined(_MSC_VER) || defined(__MINGW32__) || defined(__MINGW64__)
4041
#include "backend/winmm/soloud_winmm.cpp"
42+
#elif defined(__APPLE__)
43+
#include "backend/coreaudio/soloud_coreaudio.cpp"
44+
#elif defined(__linux__)
45+
#include "backend/alsa/soloud_alsa.cpp"
46+
#elif defined(__EMSCRIPTEN__)
47+
#include "backend/sdl2_static/soloud_sdl2_static.cpp"
48+
#endif
4149

4250
extern "C" {
4351
#include "audiosource/wav/stb_vorbis.c"
@@ -60,4 +68,4 @@ extern "C" {
6068
#include "audiosource/speech/tts.cpp"
6169
#endif
6270

63-
#include "soloudcapi.h"
71+
#include "soloudcapi.h"

0 commit comments

Comments
 (0)