docs/README-emscripten.txt
author Ryan C. Gordon <icculus@icculus.org>
Thu, 18 Dec 2014 00:19:52 -0500
changeset 9278 8900afb78a19
child 9293 d0667f0e808a
permissions -rw-r--r--
Initial merge of Emscripten port!

With this commit, you can compile SDL2 with Emscripten
( http://emscripten.org/ ), and make your SDL-based C/C++ program
into a web app.

This port was due to the efforts of several people, including: Charlie Birks,
Sathyanarayanan Gunasekaran, Jukka Jylänki, Alon Zakai, Edward Rudd,
Bruce Mitchener, and Martin Gerhardy. (Thanks, everyone!)
icculus@9278
     1
Build:
icculus@9278
     2
$ emconfigure ./configure --host=asmjs-unknown-emscripten --disable-assembly --disable-threads --enable-cpuinfo=false CFLAGS="-O2"
icculus@9278
     3
$ emmake make
icculus@9278
     4
icculus@9278
     5
Or with cmake:
icculus@9278
     6
$ emconfigure cmake ..
icculus@9278
     7
$ make
icculus@9278
     8
icculus@9278
     9
To build one of the tests -
icculus@9278
    10
$ cd test/
icculus@9278
    11
$ emcc -O2 --js-opts 0 -g4 testdraw2.c -I../include ../build/.libs/libSDL2.a ../build/libSDL2_test.a -o a.html
icculus@9278
    12
icculus@9278
    13
Uses GLES2 renderer or software
icculus@9278
    14
icculus@9278
    15
tests: https://dl.dropboxusercontent.com/u/17360362/SDL2-em/index.html
icculus@9278
    16
icculus@9278
    17
Some other SDL2 libraries can be easily built (assuming SDL2 is installed somwhere):
icculus@9278
    18
icculus@9278
    19
SDL_mixer (http://www.libsdl.org/projects/SDL_mixer/)
icculus@9278
    20
    $ EMCONFIGURE_JS=1 emconfigure ../configure
icculus@9278
    21
    build as usual...
icculus@9278
    22
icculus@9278
    23
SDL_gfx (http://cms.ferzkopp.net/index.php/software/13-sdl-gfx):
icculus@9278
    24
    $ EMCONFIGURE_JS=1 emconfigure ../configure --disable-mmx
icculus@9278
    25
    build as usual...
icculus@9278
    26