Skip to content
Emscripten: An LLVM-to-Web Compiler
C++ C JavaScript Python HTML CMake Other
Branch: incoming
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.circleci Move apt-get dependencies (.circleci/config.yml) to pre-built docker … Oct 14, 2019
.github Reduce stalebot timeout from 2 years to 1 year (#9453) Sep 18, 2019
cmake/Modules cmake: Update to work with cmake 3.15 and later. (#9102) Jul 30, 2019
docs Remove COMPILER_ENGINE config option (#9469) Sep 20, 2019
media remove extraneous eps since we have svg Mar 6, 2014
site Memory growth support for STANDALONE_WASM (#9588) Oct 9, 2019
src Fix pthreads terminate assertion (#9629) Oct 12, 2019
system Implement missing unistd readv() (#9631) Oct 12, 2019
tests Don't send the memory and table to standalone wasms, which do not imp… Oct 14, 2019
third_party Minify the generated HTML file, if building with -o out.html (#8058) Feb 14, 2019
tools Standalone mode code size fixes (#9636) Oct 14, 2019
.clang-format Add .clang-format file (copied from binaryen) (#7164) Sep 21, 2018
.editorconfig Add .editorconfig (#8359) Mar 28, 2019
.flake8 Add libunwind (LLVM 8.0.1) (#9442) Sep 17, 2019
.gitattributes ignore tests/ etc. for purposes of github language computation (#7881) Jan 18, 2019
.gitignore Support for embedded .emscripten config (#9547) Oct 9, 2019
.style.yapf Add .style.yapf for the YAPF python formatter (#6782) Jun 30, 2018
AUTHORS Preallocate web assembly workers (#9394) Oct 1, 2019
CONTRIBUTING.md fix contributing link Sep 25, 2014
ChangeLog.md Add crt1.o which includes _start (#9530) Oct 11, 2019
LICENSE mention third_party in LICENSE Apr 13, 2016
README.md Wrap README.md at 80 columns (#9357) Aug 30, 2019
em++ fix regression in 1.37.37 from 9a5a9b6 : configure scripts should be … Apr 19, 2018
em++.bat Fix python spawn scripts on Windows when the emscripten path contains… Aug 23, 2013
em++.py Add copyright headers to locally authored files (#7116) Sep 14, 2018
em-config test_other: Add helper function to verify expected failing commands. … Apr 30, 2019
em-config.bat Fix python spawn scripts on Windows when the emscripten path contains… Aug 23, 2013
emar fix regression in 1.37.37 from 9a5a9b6 : configure scripts should be … Apr 19, 2018
emar.bat Fix python spawn scripts on Windows when the emscripten path contains… Aug 23, 2013
emar.py Better handling of missing response files (#9458) Sep 19, 2019
embuilder.py Add --force option to embuilder (#9526) Sep 28, 2019
emcc Always run via subprocess in python-selector. (#6795) Jul 11, 2018
emcc.bat Fix python spawn scripts on Windows when the emscripten path contains… Aug 23, 2013
emcc.py Use wasi fd_sync (#9626) Oct 11, 2019
emcmake fix regression in 1.37.37 from 9a5a9b6 : configure scripts should be … Apr 19, 2018
emcmake.bat Redirect emcmake calls to emconfigure. Feb 14, 2014
emcmake.py Enable flake8 by default (#8112) Feb 17, 2019
emconfigure fix regression in 1.37.37 from 9a5a9b6 : configure scripts should be … Apr 19, 2018
emconfigure.bat Fix python spawn scripts on Windows when the emscripten path contains… Aug 23, 2013
emconfigure.py Don't print help message needlessly in emconfigure.py (#9437) Sep 17, 2019
emlink.py Fix all flake8 issues on python 3 (#9209) Aug 12, 2019
emmake fix regression in 1.37.37 from 9a5a9b6 : configure scripts should be … Apr 19, 2018
emmake.bat Fix python spawn scripts on Windows when the emscripten path contains… Aug 23, 2013
emmake.py Don't print help message needlessly in emconfigure.py (#9437) Sep 17, 2019
emranlib Make emranlib, system/bin/sdl-config and system/bin/sdl2-config execu… Jan 11, 2016
emranlib.bat Fix python spawn scripts on Windows when the emscripten path contains… Aug 23, 2013
emrun Fix emrun after recent python_selector change (#6844) Jul 12, 2018
emrun.bat Added emrun utility that allows running .html files in a browser like… Dec 13, 2013
emrun.py Fix all flake8 issues on python 3 (#9209) Aug 12, 2019
emscons Cleanup scons support and remove config file parsing (#7249) Oct 10, 2018
emscons.py Cleanup scons support and remove config file parsing (#7249) Oct 10, 2018
emscripten-version.txt 1.38.48 Oct 11, 2019
emscripten.py Don't send the memory and table to standalone wasms, which do not imp… Oct 14, 2019
package-lock.json Cleanup package.json (#7536) Dec 7, 2018
package.json Cleanup package.json (#7536) Dec 7, 2018

README.md

emscripten logo

CircleCI

Emscripten is an LLVM-to-JavaScript compiler. It takes LLVM bitcode - which can be generated from C/C++, using llvm-gcc (DragonEgg) or clang, or any other language that can be converted into LLVM - and compiles that into JavaScript, which can be run on the web (or anywhere else JavaScript can run).

Links to demos, tutorial, FAQ, etc: https://github.com/emscripten-core/emscripten/wiki

Main project page: http://emscripten.org

License

Emscripten is available under 2 licenses, the MIT license and the University of Illinois/NCSA Open Source License.

Both are permissive open source licenses, with little if any practical difference between them.

The reason for offering both is that (1) the MIT license is well-known, while (2) the University of Illinois/NCSA Open Source License allows Emscripten's code to be integrated upstream into LLVM, which uses that license, should the opportunity arise.

See LICENSE for the full content of the licenses.

You can’t perform that action at this time.