This article provides information that is relevant to people working on Emscripten itself, as opposed to those that use Emscripten in their own projects.
The information will be less relevant if you’re just using Emscripten, but may still be of interest.
As a contributor you will need to build Emscripten from source in order to integrate fixes back into the main repositories.
The Emscripten main repository is https://github.com/emscripten-core/emscripten. There are two main branches:
Emscripten with the LLVM wasm backend can use normal upstream LLVM, at https://github.com/llvm/llvm-project (or, with the older fastcomp backend, it is in https://github.com/emscripten-core/emscripten-fastcomp and https://github.com/emscripten-core/emscripten-fastcomp-clang).
Patches should be submitted as pull requests to the incoming branch.
When submitting patches, please:
@kripken reviews all pull requests before merging.
Exceptions are sub-projects that are ‘owned’ by other people. These owners can push to incoming directly:
The Emscripten Compiler Frontend (emcc) is a python script that manages the entire compilation process:
llvm-optto optimize it,
llvm-linkto link it, etc.