mirror of
https://github.com/stedolan/jq.git
synced 2024-05-11 05:55:39 +00:00
Reset options to 0 so can call main() multiple times in a row
This commit is contained in:
committed by
Nico Williams
parent
f1c49473a3
commit
4c25cf3f7c
@ -66,6 +66,13 @@ cross-compilation environment. See also
|
||||
["Cross compilation"](https://github.com/jqlang/jq/wiki/Cross-compilation) on
|
||||
the wiki.
|
||||
|
||||
To compile jq to WebAssembly, install the [Emscripten SDK](https://emscripten.org/docs/getting_started/downloads.html), then:
|
||||
|
||||
git submodule update --init # if building from git to get oniguruma
|
||||
autoreconf -i # if building from git
|
||||
emconfigure ./configure --with-oniguruma=builtin --disable-maintainer-mode
|
||||
emmake make EXEEXT=.js CFLAGS="-O2" LDFLAGS="-s EXPORTED_RUNTIME_METHODS=['callMain']"
|
||||
|
||||
|
||||
# Community
|
||||
|
||||
|
@ -292,6 +292,12 @@ int main(int argc, char* argv[]) {
|
||||
_setmode(fileno(stderr), _O_TEXT | _O_U8TEXT);
|
||||
#endif
|
||||
|
||||
#ifdef __EMSCRIPTEN__
|
||||
/* When compiling to WebAssembly with Emscripten, reset options to ensure we can
|
||||
call main() multiple times without reinitializing the WebAssembly module. */
|
||||
options = 0;
|
||||
#endif
|
||||
|
||||
if (argc) progname = argv[0];
|
||||
|
||||
jq = jq_init();
|
||||
|
Reference in New Issue
Block a user