summaryrefslogtreecommitdiff
path: root/src/s2wasm-main.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/s2wasm-main.cpp')
-rw-r--r--src/s2wasm-main.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/s2wasm-main.cpp b/src/s2wasm-main.cpp
index 2ef8060ac..c3f3d0a2f 100644
--- a/src/s2wasm-main.cpp
+++ b/src/s2wasm-main.cpp
@@ -27,6 +27,7 @@ using namespace cashew;
using namespace wasm;
int main(int argc, const char *argv[]) {
+ bool ignoreUnknownSymbols = false;
Options options("s2wasm", "Link .s file into .wast");
options
.add("--output", "-o", "Output file (stdout if not specified)",
@@ -35,6 +36,11 @@ int main(int argc, const char *argv[]) {
o->extra["output"] = argument;
Colors::disable();
})
+ .add("--ignore-unknown", "", "Ignore unknown symbols",
+ Options::Arguments::Zero,
+ [&ignoreUnknownSymbols](Options *, const std::string &) {
+ ignoreUnknownSymbols = true;
+ })
.add("--global-base", "-g", "Where to start to place globals",
Options::Arguments::One,
[](Options *o, const std::string &argument) {
@@ -54,7 +60,8 @@ int main(int argc, const char *argv[]) {
? std::stoull(options.extra["global-base"])
: 1;
if (options.debug) std::cerr << "Global base " << globalBase << '\n';
- S2WasmBuilder s2wasm(wasm, input.c_str(), options.debug, globalBase);
+ S2WasmBuilder s2wasm(wasm, input.c_str(), options.debug, globalBase,
+ ignoreUnknownSymbols);
if (options.debug) std::cerr << "Emscripten gluing..." << std::endl;
std::stringstream meta;