Skip to content
Hamish Willee edited this page Jul 28, 2014 · 271 revisions

logo

This is the wiki for the Emscripten LLVM to JavaScript compiler. This wiki is for documentation about Emscripten that is:

  • Under construction or for features that have not been fully developed
  • informal and unofficial documentation about the product
  • Time sensitive and requires update faster than can get into the main documentation set.

Official documentation can be found on the Emscripten site.

Wiki Migration and Cleanup

The Emscripten site went live on Github pages on Friday 25th July, 2014. Most of the wiki documents that were hosted here on the wiki have been [migrated to the new site](#Migrated wiki articles).

There are instructions on building the site on the About site link on the bottom of every page.

The sections below provide links to the migrated articles and an outline of what has/has not been migrated. Note that these links may break as the documents are reviewed and updated in the main site. If they move and the links break, search for the title in the site.

Migrated wiki articles

Not ported

  • Asyncify (Work in progress, not ready)
  • External Issues - out of date, but still potentially relevant if updated
  • Roadmap - a little out of date. Should be maintained and wiki may well be good place for it.
  • Linking - out of date but a good placeholder for a needed document
  • Using Web Audio API from Cpp with the Embind val class - not clear whether belongs in main doc source. TBD.
  • Synchronous Virtual XHR Backed File System Usage - not clear whether needs to be ported. TBD.

Deleted

  • Compressing Downloads - method no longer recommended.
  • Getting started - manual redirect to the (ported) Tutorial
  • Package Management - idea never really took off (not supported)
  • Using Emscripten from Visual Studio 2010 - manual redirect to ported document

Unit test suite

Note, this still needs to be migrated

Emscripten contains a built-in unit testing facility. A server farm performs continuous testing on the codebase on Windows 8, Ubuntu 12.10 and Mac OSX 10.7.4 systems. See the latest build results in real-time at Emscripten buildbot page. The following targets exist:

  • incoming branch: win-emcc-incoming-tests, ubuntu-emcc-incoming-tests, osx-emcc-incoming-tests.
  • master branch: win-emcc-master-tests, ubuntu-emcc-master-tests, osx-emcc-master-tests.
  • The target win-emcc-incoming-code-test tests the compilation and deployment of a few simple WebGL applications.

The unit tests are run immediately after a commit occurs on incoming or master branches. Reports are logged live to IRC at #emscripten on the Mozilla network.

The OSX and Ubuntu buildbots also run the Emscripten benchmarks after the unit tests (The benchmarks are not supported on Windows at the moment, #729).

Not all tests necessarily pass on all platforms even if the buildbots report "green" status. Some long-standing failing tests have been disabled to be able to focus on new regressions better. To track the current state of recognized failing tests, see the Emscripten bug tracker with label tests.