diff options
Diffstat (limited to 'build')
| -rwxr-xr-x | build | 15 |
1 files changed, 9 insertions, 6 deletions
| @@ -118,19 +118,20 @@ parsesanitize() { | |||
| 118 | } | 118 | } |
| 119 | 119 | ||
| 120 | # Build flags | 120 | # Build flags |
| 121 | CFLAGS="-std=c11 -fPIC -D_POSIX_C_SOURCE=199309L -lpthread" | 121 | CFLAGS="-std=c11 -fPIC -D_POSIX_C_SOURCE=199309L -pthread" |
| 122 | [ "$ARCH" = "AVX2" ] && CFLAGS="$CFLAGS -mavx2" | 122 | [ "$ARCH" = "AVX2" ] && CFLAGS="$CFLAGS -mavx2" |
| 123 | WFLAGS="-pedantic -Wall -Wextra -Wno-unused-parameter -Wno-unused-function" | 123 | WFLAGS="-pedantic -Wall -Wextra -Wno-unused-parameter -Wno-unused-function" |
| 124 | OFLAGS="$OPTIMIZE" | 124 | OFLAGS="$OPTIMIZE" |
| 125 | DFLAGS="-DDEBUG -g3 $(parsesanitize "$SANITIZE")" | 125 | DFLAGS="-DDEBUG -g3 $(parsesanitize "$SANITIZE")" |
| 126 | MFLAGS="-DTHREADS=$THREADS -D$ARCH" | 126 | MFLAGS="-DTHREADS=$THREADS -D$ARCH" |
| 127 | CPPFLAGS="-std=c++20" | 127 | CPPFLAGS="-std=c++20 -pthread" |
| 128 | 128 | ||
| 129 | # Build flags for emscripten (WASM target) | 129 | # Build flags for emscripten (WASM target) |
| 130 | WASMCFLAGS="-std=c11 -fPIC -D_POSIX_C_SOURCE=199309L" | 130 | WASMCFLAGS="-std=c11 -fPIC -D_POSIX_C_SOURCE=199309L -pthread" |
| 131 | WASMMFLAGS="-DTHREADS=$THREADS -DWASMSIMD" | 131 | WASMMFLAGS="-DTHREADS=$THREADS -DWASMSIMD" |
| 132 | WASMLINKFLAGS="--no-entry -sEXPORT_NAME='Nissy' -sMODULARIZE \ | 132 | WASMLINKFLAGS="--no-entry -sEXPORT_NAME='Nissy' -sMODULARIZE \ |
| 133 | -sLINKABLE -sEXPORT_ALL -sEXPORTED_RUNTIME_METHODS=cwrap" | 133 | -sALLOW_MEMORY_GROWTH -sSTACK_SIZE=5MB -sPTHREAD_POOL_SIZE=$THREADS \ |
| 134 | -sLINKABLE -sEXPORT_ALL" | ||
| 134 | 135 | ||
| 135 | if (command -v "python3-config" >/dev/null 2>&1) ; then | 136 | if (command -v "python3-config" >/dev/null 2>&1) ; then |
| 136 | PYTHON3_INCLUDES="$(python3-config --includes)" | 137 | PYTHON3_INCLUDES="$(python3-config --includes)" |
| @@ -250,9 +251,11 @@ build_web() { | |||
| 250 | 251 | ||
| 251 | run $EMCC $WASMCFLAGS $WFLAGS $WASMMFLAGS $(odflags) -c \ | 252 | run $EMCC $WASMCFLAGS $WFLAGS $WASMMFLAGS $(odflags) -c \ |
| 252 | -o nissy.o src/nissy.c | 253 | -o nissy.o src/nissy.c |
| 253 | run $EMCC -lembind $CPPFLAGS $(odflags) $WASMLINKFLAGS \ | 254 | run $EMCC -lembind -lidbfs.js -lnodefs.js \ |
| 255 | $CPPFLAGS $(odflags) $WASMLINKFLAGS \ | ||
| 256 | --js-library web/callback.js \ | ||
| 254 | -o web/nissy_web_module.mjs \ | 257 | -o web/nissy_web_module.mjs \ |
| 255 | cpp/nissy.cpp web/wrapper.cpp nissy.o | 258 | cpp/nissy.cpp web/adapter.cpp nissy.o |
| 256 | } | 259 | } |
| 257 | 260 | ||
| 258 | dotest() { | 261 | dotest() { |
