Fix Javascript build.
This commit is contained in:
parent
9dd0d8277d
commit
1d45cd0ff1
3 changed files with 78 additions and 64 deletions
3
.gitignore
vendored
3
.gitignore
vendored
|
@ -23,6 +23,9 @@ tools/editor/editor_icons.cpp
|
||||||
make.bat
|
make.bat
|
||||||
log.txt
|
log.txt
|
||||||
|
|
||||||
|
# Javascript specific
|
||||||
|
*.bc
|
||||||
|
|
||||||
# Android specific
|
# Android specific
|
||||||
platform/android/java/local.properties
|
platform/android/java/local.properties
|
||||||
platform/android/java/project.properties
|
platform/android/java/project.properties
|
||||||
|
|
|
@ -24,6 +24,9 @@
|
||||||
namespace rg_etc1
|
namespace rg_etc1
|
||||||
{
|
{
|
||||||
|
|
||||||
|
inline long labs(long val) {
|
||||||
|
return val < 0 ? -val : val;
|
||||||
|
}
|
||||||
|
|
||||||
inline int intabs(int val) {
|
inline int intabs(int val) {
|
||||||
|
|
||||||
|
@ -1915,7 +1918,11 @@ done:
|
||||||
int v = etc1_decode_value(diff, inten, selector, packed_c);
|
int v = etc1_decode_value(diff, inten, selector, packed_c);
|
||||||
uint err = intabs(v - color);
|
uint err = intabs(v - color);
|
||||||
//printf("err: %d - %u = %u\n",v,color,err);
|
//printf("err: %d - %u = %u\n",v,color,err);
|
||||||
|
#ifdef JAVASCRIPT_ENABLED
|
||||||
|
if (err < best_error || best_error == cUINT32_MAX)
|
||||||
|
#else
|
||||||
if (err < best_error)
|
if (err < best_error)
|
||||||
|
#endif
|
||||||
{
|
{
|
||||||
best_error = err;
|
best_error = err;
|
||||||
best_packed_c = packed_c;
|
best_packed_c = packed_c;
|
||||||
|
|
|
@ -3,91 +3,95 @@ import sys
|
||||||
import string
|
import string
|
||||||
|
|
||||||
def is_active():
|
def is_active():
|
||||||
return True
|
return True
|
||||||
|
|
||||||
def get_name():
|
def get_name():
|
||||||
return "JavaScript"
|
return "JavaScript"
|
||||||
|
|
||||||
def can_build():
|
def can_build():
|
||||||
|
|
||||||
import os
|
import os
|
||||||
if (not os.environ.has_key("EMSCRIPTEN_ROOT")):
|
if (not os.environ.has_key("EMSCRIPTEN_ROOT")):
|
||||||
return False
|
return False
|
||||||
return True
|
return True
|
||||||
|
|
||||||
def get_opts():
|
def get_opts():
|
||||||
|
|
||||||
return [
|
return [
|
||||||
['compress','Compress JS Executable','no']
|
['compress','Compress JS Executable','no']
|
||||||
]
|
]
|
||||||
|
|
||||||
def get_flags():
|
def get_flags():
|
||||||
|
|
||||||
return [
|
return [
|
||||||
('lua', 'no'),
|
('lua', 'no'),
|
||||||
('tools', 'no'),
|
('tools', 'no'),
|
||||||
('nedmalloc', 'no'),
|
('nedmalloc', 'no'),
|
||||||
('theora', 'no'),
|
('theora', 'no'),
|
||||||
('tools', 'no'),
|
('tools', 'no'),
|
||||||
('nedmalloc', 'no'),
|
('nedmalloc', 'no'),
|
||||||
('vorbis', 'no'),
|
('vorbis', 'no'),
|
||||||
('musepack', 'no'),
|
('musepack', 'no'),
|
||||||
('squirrel', 'no'),
|
('squirrel', 'no'),
|
||||||
('squish', 'no'),
|
('squish', 'no'),
|
||||||
('speex', 'no'),
|
('speex', 'no'),
|
||||||
('old_scenes', 'no'),
|
('old_scenes', 'no'),
|
||||||
# ('default_gui_theme', 'no'),
|
# ('default_gui_theme', 'no'),
|
||||||
|
|
||||||
#('builtin_zlib', 'no'),
|
#('builtin_zlib', 'no'),
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
def configure(env):
|
def configure(env):
|
||||||
|
env.Append(CPPPATH=['#platform/javascript'])
|
||||||
|
|
||||||
|
em_path=os.environ["EMSCRIPTEN_ROOT"]
|
||||||
|
|
||||||
env.Append(CPPPATH=['#platform/javascript'])
|
env['ENV']['PATH'] = em_path+":"+env['ENV']['PATH']
|
||||||
|
|
||||||
em_path=os.environ["EMSCRIPTEN_ROOT"]
|
|
||||||
|
|
||||||
env['ENV']['PATH'] = em_path+":"+env['ENV']['PATH']
|
|
||||||
|
|
||||||
env['CC'] = em_path+'/emcc'
|
env['CC'] = em_path+'/emcc'
|
||||||
env['CXX'] = em_path+'/emcc'
|
env['CXX'] = em_path+'/emcc'
|
||||||
env['AR'] = em_path+"/emar"
|
#env['AR'] = em_path+"/emar"
|
||||||
env['RANLIB'] = em_path+"/emranlib"
|
env['AR'] = em_path+"/emcc"
|
||||||
|
env['ARFLAGS'] = "-o"
|
||||||
|
|
||||||
# env.Append(LIBS=['c','m','stdc++','log','GLESv1_CM','GLESv2'])
|
# env['RANLIB'] = em_path+"/emranlib"
|
||||||
|
env['RANLIB'] = em_path + "/emcc"
|
||||||
|
env['OBJSUFFIX'] = '.bc'
|
||||||
|
env['LIBSUFFIX'] = '.bc'
|
||||||
|
env['CCCOM'] = "$CC -o $TARGET $CFLAGS $CCFLAGS $_CCCOMCOM $SOURCES"
|
||||||
|
env['CXXCOM'] = "$CC -o $TARGET $CFLAGS $CCFLAGS $_CCCOMCOM $SOURCES"
|
||||||
|
|
||||||
# env["LINKFLAGS"]= string.split(" -g --sysroot="+ld_sysroot+" -Wl,--no-undefined -Wl,-z,noexecstack ")
|
# env.Append(LIBS=['c','m','stdc++','log','GLESv1_CM','GLESv2'])
|
||||||
|
|
||||||
if (env["target"]=="release"):
|
# env["LINKFLAGS"]= string.split(" -g --sysroot="+ld_sysroot+" -Wl,--no-undefined -Wl,-z,noexecstack ")
|
||||||
|
|
||||||
env.Append(CCFLAGS=['-O2'])
|
if (env["target"]=="release"):
|
||||||
|
env.Append(CCFLAGS=['-O2'])
|
||||||
elif (env["target"]=="release_debug"):
|
elif (env["target"]=="release_debug"):
|
||||||
|
env.Append(CCFLAGS=['-O2','-DDEBUG_ENABLED'])
|
||||||
env.Append(CCFLAGS=['-O2','-DDEBUG_ENABLED'])
|
elif (env["target"]=="debug"):
|
||||||
|
env.Append(CCFLAGS=['-D_DEBUG', '-Wall', '-O2', '-DDEBUG_ENABLED'])
|
||||||
elif (env["target"]=="debug"):
|
#env.Append(CCFLAGS=['-D_DEBUG', '-Wall', '-g4', '-DDEBUG_ENABLED'])
|
||||||
env.Append(CCFLAGS=['-D_DEBUG', '-Wall', '-O2', '-DDEBUG_ENABLED'])
|
env.Append(CPPFLAGS=['-DDEBUG_MEMORY_ALLOC'])
|
||||||
env.Append(CPPFLAGS=['-DDEBUG_MEMORY_ALLOC'])
|
|
||||||
|
|
||||||
env.Append(CPPFLAGS=["-fno-exceptions",'-DNO_SAFE_CAST','-fno-rtti'])
|
|
||||||
env.Append(CPPFLAGS=['-DJAVASCRIPT_ENABLED', '-DUNIX_ENABLED', '-DNO_FCNTL','-DMPC_FIXED_POINT','-DTYPED_METHOD_BIND','-DNO_THREADS'])
|
|
||||||
env.Append(CPPFLAGS=['-DGLES2_ENABLED'])
|
|
||||||
env.Append(CPPFLAGS=['-DGLES_NO_CLIENT_ARRAYS'])
|
|
||||||
env.Append(CPPFLAGS=['-s','ASM_JS=1'])
|
|
||||||
env.Append(CPPFLAGS=['-s','FULL_ES2=1'])
|
|
||||||
# env.Append(CPPFLAGS=['-DANDROID_ENABLED', '-DUNIX_ENABLED','-DMPC_FIXED_POINT'])
|
|
||||||
if (env["compress"]=="yes"):
|
|
||||||
lzma_binpath = em_path+"/third_party/lzma.js/lzma-native"
|
|
||||||
lzma_decoder = em_path+"/third_party/lzma.js/lzma-decoder.js"
|
|
||||||
lzma_dec = "LZMA.decompress"
|
|
||||||
|
|
||||||
env.Append(LINKFLAGS=['--compression',lzma_binpath+","+lzma_decoder+","+lzma_dec])
|
|
||||||
|
|
||||||
env.Append(LINKFLAGS=['-s','ASM_JS=1'])
|
|
||||||
env.Append(LINKFLAGS=['-O2'])
|
|
||||||
|
|
||||||
|
env.Append(CPPFLAGS=["-fno-exceptions",'-DNO_SAFE_CAST','-fno-rtti'])
|
||||||
|
env.Append(CPPFLAGS=['-DJAVASCRIPT_ENABLED', '-DUNIX_ENABLED', '-DNO_FCNTL','-DMPC_FIXED_POINT','-DTYPED_METHOD_BIND','-DNO_THREADS'])
|
||||||
|
env.Append(CPPFLAGS=['-DGLES2_ENABLED'])
|
||||||
|
env.Append(CPPFLAGS=['-DGLES_NO_CLIENT_ARRAYS'])
|
||||||
|
env.Append(CPPFLAGS=['-s','ASM_JS=1'])
|
||||||
|
env.Append(CPPFLAGS=['-s','FULL_ES2=1'])
|
||||||
|
# env.Append(CPPFLAGS=['-DANDROID_ENABLED', '-DUNIX_ENABLED','-DMPC_FIXED_POINT'])
|
||||||
|
if (env["compress"]=="yes"):
|
||||||
|
lzma_binpath = em_path+"/third_party/lzma.js/lzma-native"
|
||||||
|
lzma_decoder = em_path+"/third_party/lzma.js/lzma-decoder.js"
|
||||||
|
lzma_dec = "LZMA.decompress"
|
||||||
|
env.Append(LINKFLAGS=['--compression',lzma_binpath+","+lzma_decoder+","+lzma_dec])
|
||||||
|
|
||||||
|
env.Append(LINKFLAGS=['-s','ASM_JS=1'])
|
||||||
|
env.Append(LINKFLAGS=['-O2'])
|
||||||
|
#env.Append(LINKFLAGS=['-g4'])
|
||||||
|
|
||||||
|
#print "CCCOM is:", env.subst('$CCCOM')
|
||||||
|
#print "P: ", env['p'], " Platofrm: ", env['platform']
|
||||||
|
|
Loading…
Reference in a new issue