
Page principale du projet: https://emscripten.org
Statut de github CI:
Statut de Bromium Builder: Emscripten-Reases
Emscripten compile C et C ++ à WebAssembly en utilisant LLVM et Binaryen. La sortie EMScripten peut fonctionner sur le Web, dans Node.js, et dans WasM Runtime.
EMScripten fournit une prise en charge Web pour les API portables populaires telles qu'OpenGL et SDL2, permettant de porter des applications natives graphiques complexes, telles que le moteur Unity Game et Google Earth. Il peut probablement également porter votre base de code!
Alors que Emscripten se concentre principalement sur la compilation de C et C ++ à l'aide de Clang, il peut être intégré à d'autres compilateurs Using LLVM (par exemple, Rust a une intégration EMScripten, avec les cibles wasm32-unknown-emscripten et asmjs-unknown-emscripten ).
Emscripten est disponible en vertu de 2 licences, la licence du MIT et la licence open source de l'Université de l'Illinois / NCSA.
Les deux sont des licences open source permissives, avec peu ou pas de différence pratique entre eux.
La raison pour laquelle les deux est (1) la licence MIT est bien connue et adaptée à une chaîne d'outils de compilateur, tandis que (2) la licence originale de LLVM, la licence open source de l'Université de l'Illinois / NCSA, a également été proposée pour permettre au code d'EMScripten d'être intégré en amont dans LLVM. La deuxième raison est devenue moins importante après que Emscripten est passé au backend LLVM WasM, à quel point il n'y a aucun code que nous nous attendons à faire des allers-retours entre les projets; De plus, LLVM a fait réviser les exceptions Apache 2.0 +. En pratique, vous pouvez simplement considérer Emscripten comme un licence MIT (ce qui vous permet de faire à peu près tout ce que vous voulez avec un compilateur, y compris une utilisation commerciale et non commerciale).
Voir LICENSE pour le contenu complet des licences.