commit | bef3bb0a3f113a57edb3b6afca4c79a345453eff | [log] [tgz] |
---|---|---|
author | Sam Clegg <sbc@chromium.org> | Mon Oct 15 15:15:18 2018 |
committer | GitHub <noreply@github.com> | Mon Oct 15 15:15:18 2018 |
tree | 55295fd842d2a6c56610753125a9ca31d0cd6ecd | |
parent | feb5be841fb973f1ac8e29d853e22e04d1cdab26 [diff] |
Implement EMCC_FORCE_STDLIBS using --whole-archive (#7274) Previously when using EMCC_FORCE_STDLIBS we were building a second `.bc` copy of any `.a` libraries. Not that we have --whole-archive/--no-whole-archive we no longer need to do this. This change also refactors a bunch of code in system_libs that includes a couple of fixes: - Libraries can now depend in other libraries that appear earlier in the list. - Libraries that are depended on by forced libraries are not themselves treated as forced.
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/kripken/emscripten/wiki
Main project page: http://emscripten.org
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.