@ -117,13 +117,13 @@ endif
i f e q ( $( PLATFORM ) , P L A T F O R M _ W E B )
# Emscripten required variables
EMSDK_PATH = C:/emsdk
EMSCRIPTEN_VERSION = 1.37.2 8
CLANG_VERSION = e1.37.2 8_64bit
PYTHON_VERSION = 2.7.5.3_64bit
NODE_VERSION = 4.1 .1_64bit
export PATH = $( EMSDK_PATH) ; $( EMSDK_PATH) \c lang\$ ( CLANG_VERSION) ; $( EMSDK_PATH) \n ode\$ ( NODE_VERSION) \b in; $( EMSDK_PATH) \p ython\$ ( PYTHON_VERSION) ; $( EMSDK_PATH) \e mscripten\$ ( EMSCRIPTEN_VERSION) ; C:\r aylib\M inGW\b in:$$ ( PATH)
EMSCRIPTEN = $( EMSDK_PATH) \e mscripten\$ ( EMSCRIPTEN_VERSION)
EMSDK_PATH = C:/emsdk
EMSCRIPTEN_VERSION = 1.38. 8
CLANG_VERSION = e1.38. 8_64bit
PYTHON_VERSION = 2.7.13.1_64bit\p ython-2.7.13.amd64
NODE_VERSION = 8.9 .1_64bit
export PATH = $( EMSDK_PATH) ; $( EMSDK_PATH) \c lang\$ ( CLANG_VERSION) ; $( EMSDK_PATH) \n ode\$ ( NODE_VERSION) \b in; $( EMSDK_PATH) \p ython\$ ( PYTHON_VERSION) ; $( EMSDK_PATH) \e mscripten\$ ( EMSCRIPTEN_VERSION) ; C:\r aylib\M inGW\b in:$$ ( PATH)
EMSCRIPTEN = $( EMSDK_PATH) \e mscripten\$ ( EMSCRIPTEN_VERSION)
e n d i f
# Define raylib release directory for compiled library.
@ -236,14 +236,23 @@ ifeq ($(PLATFORM),PLATFORM_RPI)
CFLAGS += -std= gnu99
e n d i f
i f e q ( $( PLATFORM ) , P L A T F O R M _ W E B )
# -O2 # if used, also set --memory-init-file 0
# -Os # size optimization
# -O2 # optimization level 2, if used, also set --memory-init-file 0
# --memory-init-file 0 # to avoid an external memory initialization code file (.mem)
# -s ALLOW_MEMORY_GROWTH=1 # to allow memory resizing
# -s TOTAL_MEMORY=16777216 # to specify heap memory size (default = 16MB)
# -s USE_PTHREADS=1 # multithreading support
# -s WASM=1 # support Web Assembly (https://github.com/kripken/emscripten/wiki/WebAssembly)
# -s EMTERPRETIFY=1 # enable emscripten code interpreter (very slow)
# -s EMTERPRETIFY_ASYNC=1 # support synchronous loops by emterpreter
# --profiling # include information for code profiling
# --preload-file resources # specify a resources folder for data compilation
CFLAGS += -s USE_GLFW = 3 -s ASSERTIONS = 1 -s WASM = 1 --profiling --preload-file resources
CFLAGS += -Os -s USE_GLFW = 3 -s ASSERTIONS = 1 -s WASM = 1 -s EMTERPRETIFY = 1 -s EMTERPRETIFY_ASYNC = 1
# NOTE: Simple raylib examples are compiled to be interpreter by emterpreter, that way,
# we can compile same code for ALL platforms with no change required, but, working on bigger
# projects, code needs to be refactored to avoid a blocking while() loop, moving Update and Draw
# logic to a self contained function: UpdateDrawFrame(), check core_basic_window_web.c for reference.
# Define a custom shell .html and output extension
CFLAGS += --shell-file $( RAYLIB_PATH) \t emplates\w eb_shell\s hell.html