
Página do projeto principal: https://emscriptten.org
Status do Github CI:
Status do construtor de cromo: liberações de eMcriptten
O EMSCRIPTEN compila C e C ++ para WebAssembly usando LLVM e Binaryen. A saída EMSCRIPTEN pode ser executada na Web, no Node.js e no WASM RunTimes.
O EMSCRIPTEN fornece suporte à Web para APIs portáteis populares, como OpenGL e SDL2, permitindo que aplicativos nativos gráficos complexos sejam portados, como o Unity Game Engine e o Google Earth. Provavelmente pode portar sua base de código também!
Embora o EMSCRIPTEN se concentre principalmente na compilação de C e C ++ usando o CLANG, ele pode ser integrado a outros compiladores que usam LLVM (por exemplo, a ferrugem tem integração emscripten, com os alvos wasm32-unknown-emscripten e asmjs-unknown-emscripten ).
O EMSCRIPTEN está disponível em 2 licenças, a licença do MIT e a licença de código aberto da Universidade de Illinois/NCSA.
Ambos são licenças de código aberto permissivas, com pouca ou nenhuma diferença prática entre elas.
A razão para oferecer a ambos é que (1) a licença do MIT é bem conhecida e adequada para uma cadeia de ferramentas do compilador, enquanto (2) a licença original da LLVM, a licença de código aberto da Universidade de Illinois/NCSA, também foi oferecida para permitir que o código da EMSCRIPTEN fosse integrado a montante no LLVM. A segunda razão se tornou menos importante depois que o EMSCRIPTEN mudou para o back -end do LLVM WASM, quando não há nenhum código que esperamos ir e voltar entre os projetos; Além disso, LLVM Relicensed to Apache 2.0 + Exceções Enquanto isso. Na prática, você pode considerar o EMSCRIPTEN como o MIT licenciado (o que permite fazer praticamente o que quiser com um compilador, incluindo uso comercial e não comercial).
Consulte LICENSE para o conteúdo completo das licenças.