Alon Zakai
68fa40ad92
safely internalize in s_x_x tests too
2012-12-21 10:47:40 -08:00
Alon Zakai
98fda6ea81
do lto before dce, since lto opens up dce opportunities
2012-12-21 10:47:40 -08:00
Alon Zakai
7f1fdbef4c
be careful with internalize in llvm LTO, and mark needed symbols for relooper
2012-12-21 10:47:39 -08:00
Alon Zakai
e9fe31fb2f
llvm 3.2 internalize internalizes even main, so manually keep it and other exports alive
2012-12-21 10:47:39 -08:00
Alan Kligman
a2bc9a30de
Updated to add a PYTHON config option instead of defaulting to python2. This should preserve the default behavior in a way that can be overridden.
2012-12-19 18:06:48 -05:00
Alan Kligman
315f13e5a1
Updated scripts to call python2 directly rather than relying on python symlink pointing to the right place. See PEP394 for details on why this should be OK.
2012-12-19 18:06:48 -05:00
Alon Zakai
1c796635aa
remove --remove-duplicates
2012-12-19 14:02:34 -08:00
Alon Zakai
c83b1d4e9e
Merge branch 'incoming' into asm_js
2012-12-11 14:01:06 -08:00
Alon Zakai
42b03394eb
warni when ignoring libs
2012-12-10 19:01:53 -08:00
Alon Zakai
3ee9d95f98
test fixes and set sign and overflow correction to 1 when in asm mode
2012-12-07 14:23:24 -08:00
Alon Zakai
1189e117b7
improve asm test wrapping
2012-12-07 14:23:22 -08:00
Alon Zakai
ee32a53886
move emcc minify decision to after we potentially modify closure
2012-12-07 14:23:20 -08:00
Alon Zakai
48447d1ece
typo
2012-12-07 14:23:20 -08:00
Alon Zakai
3c642441a9
do registerize in asm.js+reloop mode, as an alternative to closure
2012-12-07 14:23:20 -08:00
Alon Zakai
1b591a0b0c
add eliminator mode for asm
2012-12-07 14:23:19 -08:00
Alon Zakai
a917909969
disable closure when ASM_JS
2012-12-07 14:23:19 -08:00
Alon Zakai
b0b611c9f7
add parts of system bitcode libraries when necessary, and refactor library inclusion decision code
2012-12-07 12:32:49 -08:00
Alon Zakai
4df6589efa
Merge pull request #735 from eclecticdave/emcc_so_fix
...
Fixes to emcc to make autoconf enable shared objs
2012-12-04 16:45:57 -08:00
Alon Zakai
c735bb6469
do not apply -l if not generating an executable or a library
2012-12-03 14:30:09 -08:00
Alon Zakai
30f484d68f
ignore argument after -I -L for purposes of input detection in emcc
2012-12-03 13:36:37 -08:00
David Claughton
5d48629cf0
Fixes to emcc to make autoconf enable shared objs
...
When using emcc as a linker, autoconf disables
shared object support. This is because it expects
the text returned by the -v and --help options to
match certain things that GNU ld prints.
Specifically it expects the output of emcc -v to include
the word 'GNU' and the output of emcc -v to match the
regexp ': supported targets.* elf'
Modified the messages returned by emcc for these options
to make autoconf happy.
2012-11-30 21:56:00 +00:00
Alon Zakai
fc56ff9c04
fix test_failure_error_code
2012-11-23 16:38:47 +01:00
Alon Zakai
453ec4adfa
jcache docs
2012-11-23 14:15:24 +01:00
Alon Zakai
b74207976b
print out total time in emcc in debug mode
2012-11-21 20:47:02 +01:00
Alon Zakai
db65c00f8e
fix missing jcache passing
2012-11-21 20:47:02 +01:00
Alon Zakai
f199880bb1
set up parameter passing for jcache
2012-11-21 20:47:01 +01:00
Alon Zakai
ed6571e237
return error code on no input files
2012-11-15 11:46:01 -08:00
Jukka Jylänki
4ab1c8acec
Python system command line may come with untrimmed items at least on Windows Vista, cmake is bad at producing these, so trim off the excessive spaces before working on the command line. Fixes other.test_cmake on Windows Vista build bot.
2012-11-14 18:44:23 +02:00
Alon Zakai
587a1b3fdf
forward -v to child processes
2012-11-13 17:42:35 -08:00
Jukka Jylänki
4f25d496a1
Don't pass all emcc command line inputs e.g. those of form '-DsomeDefine=1' etc. to shared.Building.is_ar() for testing whether a file by that name is a LLVM archive file.
2012-11-12 21:14:37 +02:00
Alon Zakai
d27357b5fe
cleanup
2012-11-09 16:27:26 -08:00
Alon Zakai
a38333433a
stop doing old-relooper-related js optimizer passes
2012-11-08 18:30:49 -08:00
Alon Zakai
f0c024d982
refactor link time opts code
2012-11-07 11:39:54 -08:00
Alon Zakai
f033c67b5c
split up js optimizer passes only in EMCC_DEBUG=2, not 1
2012-11-07 10:57:41 -08:00
Alon Zakai
466af17eb9
strip debug info in -O1 and above by default, unless -g is specified when converting to JS, since (1) js optimizations strip it anyhow, and (2) it slows down compilation
2012-11-07 10:32:54 -08:00
Alon Zakai
7dee40c6bb
fix temp dir in emcc
2012-11-06 20:59:08 -08:00
Alon Zakai
6f9780c50e
more non-clang configure fixes for configure tests
2012-10-29 18:52:23 -07:00
Alon Zakai
99fb6b9b81
more non-clang configure work and debugging tools
2012-10-29 18:10:35 -07:00
Alon Zakai
83faf34660
configure debugging tools
2012-10-29 17:25:42 -07:00
Alon Zakai
dcc877f3bd
add experimental and non-enabled non-clang configure mode
2012-10-28 15:23:56 -07:00
Alon Zakai
ed88bc7051
memory growth must be manually enabled with ALLOW_MEMORY_GROWTH, in which case the eliminator runs in safe mode
2012-10-27 20:07:07 -07:00
Alon Zakai
d6e695eb2b
comment on -O3
2012-10-26 17:53:46 -07:00
Alon Zakai
94ee68349b
integrate eliminator as js optimizer pass
2012-10-23 17:35:37 -07:00
Alon Zakai
2781c7dca6
report times of passes in EMCC_DEBUG
2012-10-20 17:48:35 -07:00
Alon Zakai
844faf36eb
do not include C library in shared library 2
2012-10-17 12:43:59 -07:00
Alon Zakai
922608f31f
build libcxx and libcxxabi using direct commands, not a makefile, to make this more easily portable to windows where make is not always present
2012-10-13 17:10:01 -07:00
Alon Zakai
3a156a34e8
get almost all of embind test passing
2012-10-12 16:26:22 -05:00
Alon Zakai
217dbc2b3f
embind integration in emcc and work towards a test
2012-10-12 15:40:12 -05:00
Alon Zakai
6a1702024c
Merge branch 'master' into incoming
2012-10-12 14:56:21 -05:00
Alon Zakai
f377f670cc
indentation fix
2012-10-11 14:00:20 -05:00
Alon Zakai
363ce16a89
ignore and warn on -Os
2012-10-03 12:12:22 -07:00
Alon Zakai
8c53160d51
CONFIGURE_CC option to let you define the compiler used when configure-ing
2012-10-01 11:44:18 -07:00
Lars Schneider
0c33345f22
Add emcc option "--split <size>" to split javascript file.
...
Splits the resulting javascript file into pieces to ease debugging.
This option only works if Javascript is generated (target -o <name>.js).
Files with function declarations must be loaded before main file upon execution.
Without "-g" option:
Creates files with function declarations up to the given size with the suffix "_functions.partxxx.js" and a main file with the suffix ".js".
With "-g" option:
Recreates the directory structure of the C source files and stores function declarations in their respective C files with the suffix ".js". If such a file exceeds the given size, files with the suffix ".partxxx.js" are created. The main file resides in the base directory and has the suffix ".js".
2012-09-26 19:30:19 +02:00
Alon Zakai
76c1195061
show warning about absolute paths only once
2012-09-21 17:53:05 -07:00
Alon Zakai
2210898ef5
-s docs in emcc
2012-09-21 17:36:22 -07:00
Janus
b3039131e6
add conftest.c flag passing test and use right indenting
2012-09-20 14:32:26 +02:00
Janus
4b9f7c1c55
don't pass EMCC specific flags on when configuring using clang
2012-09-18 19:52:45 +02:00
Alon Zakai
1c993f99f1
clearer error message when a crucial llvm tool is missing, and force sanity checks in EMCC_DEBUG mode
2012-09-13 17:24:50 -07:00
Alon Zakai
103314ffaf
make all temp files be in TEMP_DIR from ~/.emscripten
2012-09-12 18:59:58 -07:00
Alon Zakai
94a0cb1ccd
--clear-cache option
2012-08-30 16:42:34 -07:00
Alon Zakai
f35fa61a20
disable precise i32 multiplication even in -O0: too slow
2012-08-25 14:10:09 -07:00
Alon Zakai
c14a675125
PRECISE_I32_MUL option for full precision in 32-bit multiply
2012-08-25 11:26:47 -07:00
Alon Zakai
f4b1d25451
remove mentions of obsolete emld
2012-08-22 21:03:07 -07:00
Alon Zakai
1f666759fe
warn on -I and -L to absolute paths, which may be to local system headers/libraries that are not portable
2012-08-18 22:05:23 -07:00
Alon Zakai
b74118f69a
improve emcc help on --embed and --preload
2012-07-29 16:41:51 -07:00
Behdad Esfahbod
e7f8355cff
Look into system/local/include and system/local/lib too
...
Now one can do:
emconfigure ./configure --prefix=/path/to/emscripten/local
And then make install to there, like a real /usr/local. No
manual bitcode moving.
Now if there was a way to change default prefix of configure
using an env var...
2012-07-13 15:37:38 -07:00
Alon Zakai
d1b22871c3
use unique temp names for libraries too
2012-06-25 18:31:27 -07:00
Alon Zakai
9144e4fe1d
minor emcc bugfix
2012-06-25 12:50:30 -07:00
Alon Zakai
27277383aa
emcc --remove-duplicates option
2012-06-22 20:50:21 -07:00
Alon Zakai
956c997255
enable previous assertion, properly
2012-06-22 20:28:03 -07:00
Alon Zakai
ddd0442f97
disable overly permissive assertion in emcc
2012-06-22 17:17:25 -07:00
Alon Zakai
df16a752c4
remove some unneeding emcc printing
2012-06-18 20:07:56 -07:00
Alon Zakai
8140488533
allow multiple pre-js and post-js
2012-06-17 13:24:22 -07:00
Alon Zakai
045eaebb72
move suffix tools to shared
2012-06-16 18:12:02 -07:00
Alon Zakai
52a5e5e9dc
accept .obj files as bitcode
2012-06-13 13:50:15 -07:00
Alon Zakai
4fe6e47928
refactor file packaging into standalone tool
2012-06-11 13:19:25 -07:00
Alon Zakai
3eac624d13
use closure-exported FS API for preloading
2012-06-11 11:33:09 -07:00
Alon Zakai
438cd93067
allow --preload-file when generating .js, which assumes the .js will be used in a web page
2012-06-11 11:13:37 -07:00
Alon Zakai
41a99b2871
remove GENERATING_HTML, it was confusing and gave little or no benefit
2012-06-11 10:32:42 -07:00
Alon Zakai
9d720befae
emcc note on preloading and .data
2012-06-10 21:48:00 -07:00
Alon Zakai
b0b7cee27f
treat -s not before OPT=VALUE as a linker option
2012-05-31 11:59:42 -07:00
Alon Zakai
7b9855c062
update year in emcc
2012-05-24 11:15:06 +02:00
Alon Zakai
d4cfd7a658
support emcc -v with no further arguments
2012-05-18 11:47:41 -07:00
Alon Zakai
d3ed0aeb78
speed up O1 by removing unnecessary eliminator pass
2012-05-12 09:59:46 -07:00
Alon Zakai
dcb1a7a14c
FS.createPreloadedFile
2012-05-11 10:42:53 -07:00
Alon Zakai
a7590b8609
handle absolute paths in file preloading
2012-05-08 20:35:37 -07:00
Alon Zakai
bfc041b6b5
workaround for chromium bug 124926 to prevent hanging when loading audio in chrome
2012-05-04 18:12:53 -07:00
Alon Zakai
f60dc11a02
link files in emcc without leaving a stub
2012-05-02 21:53:08 -07:00
Alon Zakai
ce09542f72
-v in emcc
2012-04-26 11:41:50 -07:00
Alon Zakai
6799e19b3d
add ENV_PREFIX to more places
2012-04-24 17:02:43 -07:00
Alon Zakai
b5e53f4e17
--js-library option to make it easy to add additional library_*.js files
2012-04-13 18:57:41 -07:00
Sigmund Vik
8a93b915fc
Make more browser tests work for Windows.
2012-04-13 15:51:19 +02:00
Alon Zakai
ae1cb6d7ec
handle identical basenames in emcc properly; fixes #287
2012-04-07 20:42:02 -07:00
Alon Zakai
7af9a2d81c
improve fake precompiled header workaround in emcc
2012-04-07 18:32:06 -07:00
Alon Zakai
c677d9e446
Merge pull request #346 from behdad/outgoing
...
Misc fixes
2012-04-04 11:11:43 -07:00
Sigmund Vik
5600f6c264
Fixed shlex.split() problem for Windows.
2012-04-04 18:25:09 +02:00
Behdad Esfahbod
03033b2fee
Look for bitcode for library input files in other places
...
If an input file is not bitcode and looks like a library file, treat it
as library so we can look for it in other places.
In conjuction with the previous change, now we can just drop, eg,
libfreetype.dylib bitcode in emscripten/system/lib and "dynamic" linking
would succeed.
Perhaps this can be changed to only lookup in emscripten/system/lib
instead of all lib_dirs, but this is a good start.
2012-04-04 01:03:43 -04:00
Behdad Esfahbod
67055e2115
Add emscripten/system/lib to lib_dirs
...
So people can just drop bitcode libraries there and be found by emcc.
2012-04-04 01:03:43 -04:00
Behdad Esfahbod
c6e2a28f69
Ignore -install_name argument the way we do for -MT
2012-04-04 01:03:43 -04:00
Alon Zakai
f485a33d65
fix -M -MM to add emcc compiler flags
2012-03-31 13:49:58 -07:00
Alon Zakai
8833fc409c
remove unneeded -MF workaround code
2012-03-29 22:42:04 -07:00
Alon Zakai
62499dc395
comment
2012-03-29 21:15:40 -07:00
Alon Zakai
f3bffe4b06
basic support for -M and -MM
2012-03-29 21:14:53 -07:00
Alon Zakai
2416d19b0b
bundle preloaded files also when not compressing them
2012-03-29 13:39:53 -07:00
Alon Zakai
f88f3af217
do not use blob constructor if not present, and closure workaround
2012-03-27 15:39:35 -07:00
Alon Zakai
7450114c4d
support wav and mp3 audio suffixes too
2012-03-27 13:24:49 -07:00
Alon Zakai
b4dcd8daa2
support for playing audio chunks through SDL mix
2012-03-27 11:59:12 -07:00
Alon Zakai
84d65c025b
show 'Downloading..' when downloading data archive
2012-03-26 20:57:02 -07:00
Alon Zakai
ca18402ba1
show status messages for decompressing and clear status on run
2012-03-26 17:54:44 -07:00
Alon Zakai
b0e285503b
compression docs
2012-03-26 16:46:24 -07:00
Alon Zakai
825407da4f
compress all data files into one big file
2012-03-26 16:42:43 -07:00
Alon Zakai
eb0f4c41bf
use shlex
2012-03-26 10:21:25 -07:00
Alon Zakai
74acbe73a8
--llvm-lto option to disable lto
2012-03-25 14:13:53 -07:00
Alon Zakai
61443c6118
fix webkitURL
2012-03-24 11:57:54 -07:00
Alon Zakai
d7c13abc2d
support window.WebKitURL
2012-03-24 11:44:37 -07:00
Alon Zakai
26f0edbd0c
support both Moz and WebKit BlobBuilders
2012-03-24 10:42:57 -07:00
Alon Zakai
406c106b0c
save the canvas in preloadedImages, and do canvas blits in IMG_Load etc.
2012-03-22 10:40:06 -07:00
Alon Zakai
44e1d4a267
typo on directory generation code
2012-03-21 14:34:49 -07:00
Alon Zakai
e0092a687d
fix some bugs with preloading of entire directories
2012-03-21 14:24:55 -07:00
Alon Zakai
cdc82664d8
Merge pull request #312 from SiggyBar/incoming
...
Misc fixes for Windows.
2012-03-20 16:03:39 -07:00
Alon Zakai
ed9b24c684
emcc help on --pre and --post-js
2012-03-20 13:37:59 -07:00
Sigmund Vik
f829735cc3
Misc fixes for Windows.
...
Most of these changes have to do with how python scripts are invoked.
For Linux, 'Popen([EMCC] + args)' works because the first line in emcc
is '#!/usr/bin/env python'. On Windows, the python interpreter has
to be explicitly invoked, e.g. 'Popen(['python', EMCC] + args)'. Note
that there is no harm in explicitly invoking the python interpreter
on Linux, so this works on both platforms.
For Windows, execvp() behaves differently than on Linux:
http://mail.python.org/pipermail/python-list/2002-July/763863.html
http://msdn.microsoft.com/en-us/library/3xw6zy53.aspx
This causes many strange things to happen as the parent process
terminated before its children. In this change the use of execvp()
has been replaced with subprocess.call().
This change also fixes some code that assumed that the path separator
always is '/', but for Windows it is '\'. And where the path module
can be required, we use path.normalize() and path.resolve() to check
if a filename is absolute in a platform agnostic manner.
2012-03-20 14:26:50 +01:00
Alon Zakai
2a6749efe2
fix test_emcc_multifile
2012-03-19 17:10:36 -07:00
Alon Zakai
f9ef501d57
define -DEMSCRIPTEN even when just configuring, so bundled headers work
2012-03-19 16:52:59 -07:00
Alon Zakai
af8eab2920
nicer debug output in emcc
2012-03-19 16:49:36 -07:00
Alon Zakai
3bb37508db
remove .compress if the compress wasn't worth it
2012-03-19 15:48:21 -07:00
Alon Zakai
e4a926f49b
do compression of downloaded code+datafiles in a worker
2012-03-19 14:52:49 -07:00
Alon Zakai
10cfa9fc93
emcc 'just copy' should do nothing if there is no target
2012-03-19 10:44:16 -07:00
Alon Zakai
bca3596472
fix bug with compressed images
2012-03-17 18:30:09 -07:00
Alon Zakai
163e9c1cf4
unify data and image file preloading
2012-03-17 17:37:15 -07:00
Alon Zakai
105967a256
refactor datafile code
2012-03-17 16:43:49 -07:00
Alon Zakai
c096ac45ee
preload/embed file compression option in emcc
2012-03-16 14:18:30 -07:00
Alon Zakai
1a2df275c5
source code compression option in emcc
2012-03-16 12:39:12 -07:00
Alon Zakai
19520c66ee
rename --compress to --minify in emcc
2012-03-16 11:00:12 -07:00
Alon Zakai
04961832c6
allow preloading/embedding of entire directories using emcc
2012-03-16 10:48:45 -07:00
Alon Zakai
3fc8b5c9b7
preload images for SDL
2012-03-15 18:15:12 -07:00
Alon Zakai
36afa3f0eb
support files in directories in --embed-file and --preload-file
2012-03-15 14:58:22 -07:00
Alon Zakai
be16312325
add file preloading in browsers
2012-03-15 14:07:04 -07:00
Alon Zakai
4f81862d24
add conftest.c workaround in emcc
2012-03-15 10:20:01 -07:00
Alon Zakai
44161f79bd
helpful comment about necessary suffixes for emcc
2012-03-11 13:19:02 -07:00
Alon Zakai
84c9c22525
improve emcc input finding so that it ignores -MT x
2012-03-07 14:28:13 -08:00
Alon Zakai
89642b135f
Merge pull request #294 from LCID-Fire/error_fix
...
Catch and log the errors when calling Processes
2012-03-06 10:16:11 -08:00
LCID Fire
2292b1a9b4
Remove unnecessary accessing of stdout
2012-03-05 13:59:53 +01:00
Alon Zakai
dc769bd62f
.o .bc comment
2012-03-03 12:00:39 -08:00
Alon Zakai
3c71f36c40
don't run optimizeShiftsAggressive without relooping, since it assumes non-switch structures
2012-03-01 16:02:37 -08:00
LCID Fire
16116a352f
Catch and log the errors when calling Processes because users don't get any clue to what failed.
2012-03-01 15:32:24 +01:00
Alon Zakai
40f2ae9e94
EMCC_CFLAGS support
2012-02-27 20:09:09 -08:00
Alon Zakai
c540f3f36a
emcc fix
2012-02-27 15:59:30 -08:00
Alon Zakai
71cccfcf79
--pre-js and --post-js options
2012-02-26 21:30:20 -08:00
Alon Zakai
b649dec410
emcc help
2012-02-26 10:32:39 -08:00