As demonstrated in Chapter 7, Creating an Application from Scratch, WebAssembly is still relatively limited in its current form. Emscripten provides powerful APIs for extending WebAssembly's capabilities to add functionality to your application. Compiling to a WebAssembly module and JavaScript glue code (instead of an executable) can, in some cases, only require minor changes to the existing C or C++ source.
In this chapter, we're going to take a code base written in C++ that gets compiled to a traditional executable, and update the code so that it can be compiled to Wasm/JavaScript. We'll also add some additional features for tighter integration with the browser.
By the end of this chapter, you'll know how to do the following:
- Update a C++ code base to compile to a Wasm module/JavaScript glue code (instead of...