mirror of
https://github.com/jedisct1/libsodium.git
synced 2024-12-19 10:05:05 -07:00
emscripten: create JS-only builds
This commit is contained in:
parent
9703516a5e
commit
7858b58b35
@ -82,7 +82,28 @@ if [ "$DIST" = yes ]; then
|
|||||||
"${PREFIX}/lib/libsodium.a" -o "${outFile}" || exit 1
|
"${PREFIX}/lib/libsodium.a" -o "${outFile}" || exit 1
|
||||||
}
|
}
|
||||||
emmake make $MAKE_FLAGS install || exit 1
|
emmake make $MAKE_FLAGS install || exit 1
|
||||||
emccLibsodium "${PREFIX}/lib/libsodium.asm.tmp.js" -Oz -s WASM=0 $LDFLAGS_JS
|
|
||||||
|
# JS-only build
|
||||||
|
emccLibsodium "${PREFIX}/lib/libsodium.tmp.mjs" -Oz -s WASM=0 $LDFLAGS_JS
|
||||||
|
|
||||||
|
cat >"${PREFIX}/lib/libsodium-jsonly.mjs" <<-EOM
|
||||||
|
$(grep -Fv "export default Module" "${PREFIX}/lib/libsodium.tmp.mjs")
|
||||||
|
|
||||||
|
Module.print = function(what) {
|
||||||
|
typeof(console) !== 'undefined' && console.log(what);
|
||||||
|
}
|
||||||
|
Module.printErr = function(what) {
|
||||||
|
typeof(console) !== 'undefined' && console.warn(what);
|
||||||
|
}
|
||||||
|
Module['getRandomValue'] = undefined;
|
||||||
|
|
||||||
|
export default Module;
|
||||||
|
EOM
|
||||||
|
|
||||||
|
rm "${PREFIX}/lib/libsodium.tmp.mjs"
|
||||||
|
|
||||||
|
# Hybrid JS + WASM build
|
||||||
|
emccLibsodium "${PREFIX}/lib/libsodium.tmp.js" -Oz -s WASM=0 $LDFLAGS_JS
|
||||||
emccLibsodium "${PREFIX}/lib/libsodium.wasm.tmp.js" -O3 -s WASM=1 -s EVAL_CTORS=1 -s INITIAL_MEMORY=${WASM_INITIAL_MEMORY}
|
emccLibsodium "${PREFIX}/lib/libsodium.wasm.tmp.js" -O3 -s WASM=1 -s EVAL_CTORS=1 -s INITIAL_MEMORY=${WASM_INITIAL_MEMORY}
|
||||||
|
|
||||||
cat >"${PREFIX}/lib/libsodium.js" <<-EOM
|
cat >"${PREFIX}/lib/libsodium.js" <<-EOM
|
||||||
@ -134,7 +155,7 @@ if [ "$DIST" = yes ]; then
|
|||||||
resolve();
|
resolve();
|
||||||
};
|
};
|
||||||
|
|
||||||
$(sed "s|use asm||g" "${PREFIX}/lib/libsodium.asm.tmp.js")
|
$(sed "s|use asm||g" "${PREFIX}/lib/libsodium.tmp.js")
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
$(cat "${PREFIX}/lib/libsodium.wasm.tmp.js")
|
$(cat "${PREFIX}/lib/libsodium.wasm.tmp.js")
|
||||||
@ -143,7 +164,7 @@ if [ "$DIST" = yes ]; then
|
|||||||
});
|
});
|
||||||
EOM
|
EOM
|
||||||
|
|
||||||
rm "${PREFIX}/lib/libsodium.asm.tmp.js" "${PREFIX}/lib/libsodium.wasm.tmp.js"
|
rm "${PREFIX}/lib/libsodium.tmp.js" "${PREFIX}/lib/libsodium.wasm.tmp.js"
|
||||||
touch -r "${PREFIX}/lib/libsodium.js" "$DONE_FILE"
|
touch -r "${PREFIX}/lib/libsodium.js" "$DONE_FILE"
|
||||||
ls -l "${PREFIX}/lib/libsodium.js"
|
ls -l "${PREFIX}/lib/libsodium.js"
|
||||||
exit 0
|
exit 0
|
||||||
|
Loading…
Reference in New Issue
Block a user