aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--AUTHORS5
-rwxr-xr-xemcc498
-rwxr-xr-x[-rw-r--r--]emlink.py0
-rwxr-xr-xemscripten.py33
-rwxr-xr-xscons-tools/emscripten.py5
-rw-r--r--src/deps_info.json7
-rw-r--r--src/embind/emval.js36
-rw-r--r--src/headlessCanvas.js1
-rw-r--r--src/jsifier.js72
-rw-r--r--src/library.js320
-rw-r--r--src/library_browser.js22
-rw-r--r--src/library_egl.js2
-rw-r--r--src/library_fs.js213
-rw-r--r--src/library_gl.js198
-rw-r--r--src/library_glfw.js8
-rw-r--r--src/library_glut.js2
-rw-r--r--src/library_html5.js19
-rw-r--r--src/library_idbfs.js324
-rw-r--r--src/library_openal.js195
-rw-r--r--src/library_sdl.js160
-rw-r--r--src/parseTools.js4
-rw-r--r--src/postamble.js4
-rw-r--r--src/preamble.js9
-rw-r--r--src/runtime.js4
-rw-r--r--src/settings.js16
-rw-r--r--src/struct_info.json4
-rw-r--r--system/include/X11/XKBlib.h1149
-rw-r--r--system/include/X11/Xfuncs.h69
-rw-r--r--system/include/X11/XlibConf.h38
-rw-r--r--system/include/X11/Xlibint.h1387
-rw-r--r--system/include/X11/Xmd.h185
-rw-r--r--system/include/X11/Xproto.h2157
-rw-r--r--system/include/X11/Xprotostr.h77
-rw-r--r--system/include/X11/cursorfont.h111
-rw-r--r--system/include/X11/extensions/XKB.h786
-rw-r--r--system/include/X11/extensions/XKBstr.h613
-rw-r--r--system/include/X11/extensions/XShm.h135
-rw-r--r--system/include/X11/extensions/Xext.h53
-rw-r--r--system/include/X11/extensions/extutil.h190
-rw-r--r--system/include/X11/extensions/shm.h44
-rw-r--r--system/include/emscripten/bind.h52
-rw-r--r--system/include/emscripten/emscripten.h8
-rw-r--r--system/include/emscripten/val.h55
-rw-r--r--system/include/emscripten/wire.h32
-rw-r--r--system/include/libc/unistd.h6
-rw-r--r--system/lib/gl.c1729
-rw-r--r--system/lib/gl.symbols1
-rw-r--r--system/lib/libc.symbols9
-rw-r--r--system/lib/libc/musl/src/locale/strcoll.c15
-rw-r--r--system/lib/libc/musl/src/string/memcmp.c8
-rw-r--r--system/lib/libc/musl/src/string/strcasecmp.c9
-rw-r--r--system/lib/libc/musl/src/string/strcmp.c7
-rw-r--r--system/lib/libc/musl/src/string/strncasecmp.c10
-rw-r--r--system/lib/libc/musl/src/string/strncmp.c9
-rw-r--r--system/lib/sdl.cpp13
-rw-r--r--system/lib/sdl.symbols1
-rw-r--r--tests/cases/bigdouble.ll17
-rw-r--r--tests/cases/bigdouble.txt1
-rw-r--r--tests/cases/fuzz6_ta2.ll3306
-rw-r--r--tests/cases/fuzz6_ta2.txt1
-rw-r--r--tests/cases/i96shiftnon32_ta2.ll44
-rw-r--r--tests/cases/i96shiftnon32_ta2.txt1
-rw-r--r--tests/cases/legalizer_b_ta2.ll179
-rw-r--r--tests/cases/legalizer_b_ta2.txt20
-rw-r--r--tests/cases/longjmp_tiny_keepem.ll40
-rw-r--r--tests/cases/longjmp_tiny_keepem.txt3
-rw-r--r--tests/cases/longjmp_tiny_keepem_cond.ll41
-rw-r--r--tests/cases/longjmp_tiny_keepem_cond.txt3
-rw-r--r--tests/codemods.cpp21
-rw-r--r--tests/core/test_exceptions_alias.c15
-rw-r--r--tests/core/test_exceptions_alias.out2
-rw-r--r--tests/core/test_exceptions_white_list_2.c27
-rw-r--r--tests/core/test_exceptions_white_list_2.out1
-rw-r--r--tests/core/test_memcpy3.c51
-rw-r--r--tests/core/test_memcpy3.out81
-rw-r--r--tests/core/test_memset.c51
-rw-r--r--tests/core/test_memset.out81
-rw-r--r--tests/core/test_sscanf.in1
-rw-r--r--tests/core/test_sscanf_6.in14
-rw-r--r--tests/core/test_sscanf_6.out1
-rw-r--r--tests/core/test_strcmp_uni.out6
-rw-r--r--tests/cubegeom_proc.c331
-rw-r--r--tests/embind/embind.test.js72
-rw-r--r--tests/embind/embind_test.cpp61
-rw-r--r--tests/fs/test_mount.c60
-rw-r--r--tests/fuzz/6.c1313
-rw-r--r--tests/fuzz/6.c.txt1
-rwxr-xr-xtests/fuzz/csmith_driver.py7
-rwxr-xr-xtests/fuzz/test.sh24
-rw-r--r--tests/hello_world_gles_deriv.c1
-rw-r--r--tests/netinet/in.cpp14
-rw-r--r--tests/netinet/in.out1
-rw-r--r--tests/openal_playback.cpp44
-rwxr-xr-xtests/runner.py24
-rw-r--r--tests/sdl_swsurface.c22
-rw-r--r--tests/sdlglshader.c5
-rw-r--r--tests/sockets/test_sockets_echo_client.c25
-rw-r--r--tests/sockets/test_sockets_echo_server.c26
-rw-r--r--tests/test_browser.py89
-rw-r--r--tests/test_core.py191
-rw-r--r--tests/test_egl.c5
-rw-r--r--tests/test_minmax.c89
-rw-r--r--tests/test_other.py24
-rw-r--r--tests/test_sanity.py2
-rw-r--r--tests/test_sockets.py1
-rw-r--r--tools/asm_module.py3
-rw-r--r--tools/file_packager.py31
-rw-r--r--tools/js-optimizer.js164
-rw-r--r--tools/parse_unaligned.py17
-rw-r--r--tools/shared.py4
-rw-r--r--tools/stubify_ll.py28
-rw-r--r--tools/system_libs.py397
-rw-r--r--tools/test-js-optimizer-asm-last-output.js2
-rw-r--r--tools/test-js-optimizer-asm-pre-f32.js17
-rw-r--r--tools/test-js-optimizer-asm-pre-output-f32.js17
-rw-r--r--tools/test-js-optimizer-asm-pre-output.js19
-rw-r--r--tools/test-js-optimizer-asm-pre.js22
-rw-r--r--tools/test-js-optimizer-asm-regs-harder-output.js3
-rw-r--r--tools/test-js-optimizer-asm-regs-harder.js3
119 files changed, 17016 insertions, 1270 deletions
diff --git a/AUTHORS b/AUTHORS
index dca578a2..b41199d6 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -120,4 +120,9 @@ a license to everyone to use it as detailed in LICENSE.)
* Jari Vetoniemi <mailroxas@gmail.com>
* Sindre Sorhus <sindresorhus@gmail.com>
* James S Urquhart <jamesu@gmail.com>
+* Boris Gjenero <boris.gjenero@gmail.com>
+* jonas echterhoff <jonas@unity3d.com>
+* Sami Vaarala <sami.vaarala@iki.fi>
* Jack A. Arrington <jack@epicpineapple.com>
+
+
diff --git a/emcc b/emcc
index 83ce4529..8bcbf636 100755
--- a/emcc
+++ b/emcc
@@ -47,16 +47,18 @@ emcc can be influenced by a few environment variables:
EMMAKEN_COMPILER - The compiler to be used, if you don't want the default clang.
'''
-import os, sys, shutil, tempfile, subprocess, shlex, time, re, logging
+import os, sys, shutil, tempfile, subprocess, shlex, time, re, logging, json
from subprocess import PIPE, STDOUT
-from tools import shared, jsrun
+from tools import shared, jsrun, system_libs
from tools.shared import Compression, execute, suffix, unsuffixed, unsuffixed_basename, WINDOWS
from tools.response_file import read_response_file
# endings = dot + a suffix, safe to test by filename.endswith(endings)
C_ENDINGS = ('.c', '.C')
CXX_ENDINGS = ('.cpp', '.cxx', '.cc', '.CPP', '.CXX', '.CC')
-SOURCE_ENDINGS = C_ENDINGS + CXX_ENDINGS + ('.m', '.mm')
+OBJC_ENDINGS = ('.m',)
+OBJCXX_ENDINGS = ('.mm',)
+SOURCE_ENDINGS = C_ENDINGS + CXX_ENDINGS + OBJC_ENDINGS + OBJCXX_ENDINGS
BITCODE_ENDINGS = ('.bc', '.o', '.obj')
DYNAMICLIB_ENDINGS = ('.dylib', '.so', '.dll')
STATICLIB_ENDINGS = ('.a',)
@@ -311,6 +313,13