Browse Source

style: Start applying PEP8 to Python files, indentation issues

Done with `autopep8 --select=E1`, fixes:

- E101 - Reindent all lines.
- E112 - Fix under-indented comments.
- E113 - Fix over-indented comments.
- E115 - Fix under-indented comments.
- E116 - Fix over-indented comments.
- E121 - Fix a badly indented line.
- E122 - Fix a badly indented line.
- E123 - Fix a badly indented line.
- E124 - Fix a badly indented line.
- E125 - Fix indentation undistinguish from the next logical line.
- E126 - Fix a badly indented line.
- E127 - Fix a badly indented line.
- E128 - Fix a badly indented line.
- E129 - Fix a badly indented line.
Rémi Verschelde 8 years ago
parent
commit
561c1f17a1
84 changed files with 6694 additions and 6694 deletions
  1. 236 236
      SConstruct
  2. 22 22
      core/SCsub
  3. 87 87
      core/make_binders.py
  4. 130 130
      doc/tools/doc_merge.py
  5. 266 266
      doc/tools/doc_status.py
  6. 242 242
      doc/tools/makedoku.py
  7. 541 541
      doc/tools/makehtml.py
  8. 290 290
      doc/tools/makemd.py
  9. 451 451
      doc/tools/makerst.py
  10. 8 8
      drivers/SCsub
  11. 636 636
      drivers/builtin_openssl2/SCsub
  12. 11 11
      drivers/gl_context/SCsub
  13. 5 5
      drivers/gles2/shaders/SCsub
  14. 35 35
      drivers/png/SCsub
  15. 1 1
      drivers/rtaudio/SCsub
  16. 11 11
      drivers/zlib/SCsub
  17. 695 695
      methods.py
  18. 5 5
      modules/SCsub
  19. 2 2
      modules/chibi/config.py
  20. 2 2
      modules/cscript/config.py
  21. 2 2
      modules/dds/config.py
  22. 1 1
      modules/etc1/SCsub
  23. 2 2
      modules/etc1/config.py
  24. 57 57
      modules/freetype/SCsub
  25. 2 2
      modules/freetype/config.py
  26. 2 2
      modules/gdscript/config.py
  27. 2 2
      modules/gridmap/config.py
  28. 7 7
      modules/ik/config.py
  29. 1 1
      modules/jpg/SCsub
  30. 2 2
      modules/jpg/config.py
  31. 14 14
      modules/mpc/SCsub
  32. 2 2
      modules/mpc/config.py
  33. 8 8
      modules/ogg/SCsub
  34. 2 2
      modules/ogg/config.py
  35. 657 657
      modules/openssl/SCsub
  36. 2 2
      modules/openssl/config.py
  37. 196 196
      modules/opus/SCsub
  38. 2 2
      modules/opus/config.py
  39. 2 2
      modules/pbm/config.py
  40. 5 5
      modules/pvr/SCsub
  41. 2 2
      modules/pvr/config.py
  42. 50 50
      modules/speex/SCsub
  43. 2 2
      modules/speex/config.py
  44. 15 15
      modules/squish/SCsub
  45. 6 6
      modules/squish/config.py
  46. 63 63
      modules/theora/SCsub
  47. 2 2
      modules/theora/config.py
  48. 34 34
      modules/vorbis/SCsub
  49. 2 2
      modules/vorbis/config.py
  50. 108 108
      modules/webp/SCsub
  51. 2 2
      modules/webp/config.py
  52. 37 37
      platform/android/SCsub
  53. 212 212
      platform/android/detect.py
  54. 7 7
      platform/bb10/SCsub
  55. 56 56
      platform/bb10/detect.py
  56. 11 11
      platform/haiku/SCsub
  57. 45 45
      platform/haiku/detect.py
  58. 14 14
      platform/iphone/SCsub
  59. 167 167
      platform/iphone/detect.py
  60. 6 6
      platform/javascript/SCsub
  61. 66 66
      platform/javascript/detect.py
  62. 8 8
      platform/osx/SCsub
  63. 59 59
      platform/osx/detect.py
  64. 1 1
      platform/server/SCsub
  65. 38 38
      platform/server/detect.py
  66. 11 11
      platform/windows/SCsub
  67. 298 298
      platform/windows/detect.py
  68. 5 5
      platform/winrt/SCsub
  69. 93 93
      platform/winrt/detect.py
  70. 4 4
      platform/x11/SCsub
  71. 159 159
      platform/x11/detect.py
  72. 3 3
      scene/3d/SCsub
  73. 26 26
      scene/resources/default_theme/make_header.py
  74. 82 82
      tools/SCsub
  75. 63 63
      tools/editor/SCsub
  76. 58 58
      tools/editor/icons/SCsub
  77. 31 31
      tools/scripts/addheader.py
  78. 28 28
      tools/scripts/file-hex-array.py
  79. 32 32
      tools/scripts/make_bmfhdr.py
  80. 50 50
      tools/scripts/make_glwrapper.py
  81. 14 14
      tools/scripts/makeargs.py
  82. 12 12
      tools/scripts/memsort.py
  83. 2 2
      tools/scripts/svgs_2_pngs.py
  84. 66 66
      tools/translations/extract.py

+ 236 - 236
SConstruct

@@ -25,28 +25,28 @@ platform_exporters=[]
 global_defaults=[]
 global_defaults=[]
 
 
 for x in glob.glob("platform/*"):
 for x in glob.glob("platform/*"):
-	if (not os.path.isdir(x) or not os.path.exists(x+"/detect.py")):
-		continue
-	tmppath="./"+x
-
-	sys.path.append(tmppath)
-	import detect
-
-	if (os.path.exists(x+"/export/export.cpp")):
-		platform_exporters.append(x[9:])
-	if (os.path.exists(x+"/globals/global_defaults.cpp")):
-		global_defaults.append(x[9:])
-	if (detect.is_active()):
-		active_platforms.append( detect.get_name() )
-		active_platform_ids.append(x);
-	if (detect.can_build()):
-		x=x.replace("platform/","") # rest of world
-		x=x.replace("platform\\","") # win32
-		platform_list+=[x]
-		platform_opts[x]=detect.get_opts()
-		platform_flags[x]=detect.get_flags()
-	sys.path.remove(tmppath)
-	sys.modules.pop('detect')
+    if (not os.path.isdir(x) or not os.path.exists(x+"/detect.py")):
+        continue
+    tmppath="./"+x
+
+    sys.path.append(tmppath)
+    import detect
+
+    if (os.path.exists(x+"/export/export.cpp")):
+        platform_exporters.append(x[9:])
+    if (os.path.exists(x+"/globals/global_defaults.cpp")):
+        global_defaults.append(x[9:])
+    if (detect.is_active()):
+        active_platforms.append( detect.get_name() )
+        active_platform_ids.append(x);
+    if (detect.can_build()):
+        x=x.replace("platform/","") # rest of world
+        x=x.replace("platform\\","") # win32
+        platform_list+=[x]
+        platform_opts[x]=detect.get_opts()
+        platform_flags[x]=detect.get_flags()
+    sys.path.remove(tmppath)
+    sys.modules.pop('detect')
 
 
 module_list=methods.detect_modules()
 module_list=methods.detect_modules()
 
 
@@ -60,14 +60,14 @@ custom_tools=['default']
 platform_arg = ARGUMENTS.get("platform", ARGUMENTS.get("p", False))
 platform_arg = ARGUMENTS.get("platform", ARGUMENTS.get("p", False))
 
 
 if (os.name=="posix"):
 if (os.name=="posix"):
-	pass
+    pass
 elif (os.name=="nt"):
 elif (os.name=="nt"):
-	if (os.getenv("VSINSTALLDIR")==None or platform_arg=="android"):
-		custom_tools=['mingw']
+    if (os.getenv("VSINSTALLDIR")==None or platform_arg=="android"):
+        custom_tools=['mingw']
 
 
 env_base=Environment(tools=custom_tools);
 env_base=Environment(tools=custom_tools);
 if 'TERM' in os.environ:
 if 'TERM' in os.environ:
-	env_base['ENV']['TERM'] = os.environ['TERM']
+    env_base['ENV']['TERM'] = os.environ['TERM']
 env_base.AppendENVPath('PATH', os.getenv('PATH'))
 env_base.AppendENVPath('PATH', os.getenv('PATH'))
 env_base.AppendENVPath('PKG_CONFIG_PATH', os.getenv('PKG_CONFIG_PATH'))
 env_base.AppendENVPath('PKG_CONFIG_PATH', os.getenv('PKG_CONFIG_PATH'))
 env_base.global_defaults=global_defaults
 env_base.global_defaults=global_defaults
@@ -110,11 +110,11 @@ customs = ['custom.py']
 
 
 profile = ARGUMENTS.get("profile", False)
 profile = ARGUMENTS.get("profile", False)
 if profile:
 if profile:
-	import os.path
-	if os.path.isfile(profile):
-		customs.append(profile)
-	elif os.path.isfile(profile+".py"):
-		customs.append(profile+".py")
+    import os.path
+    if os.path.isfile(profile):
+        customs.append(profile)
+    elif os.path.isfile(profile+".py"):
+        customs.append(profile+".py")
 
 
 opts=Variables(customs, ARGUMENTS)
 opts=Variables(customs, ARGUMENTS)
 opts.Add('target', 'Compile Target (debug/release_debug/release).', "debug")
 opts.Add('target', 'Compile Target (debug/release_debug/release).', "debug")
@@ -157,12 +157,12 @@ opts.Add('vsproj', 'Generate Visual Studio Project. (yes/no)', 'no')
 # add platform specific options
 # add platform specific options
 
 
 for k in platform_opts.keys():
 for k in platform_opts.keys():
-	opt_list = platform_opts[k]
-	for o in opt_list:
-		opts.Add(o[0],o[1],o[2])
+    opt_list = platform_opts[k]
+    for o in opt_list:
+        opts.Add(o[0],o[1],o[2])
 
 
 for x in module_list:
 for x in module_list:
-	opts.Add('module_'+x+'_enabled', "Enable module '"+x+"' (yes/no)", "yes")
+    opts.Add('module_'+x+'_enabled', "Enable module '"+x+"' (yes/no)", "yes")
 
 
 opts.Update(env_base) # update environment
 opts.Update(env_base) # update environment
 Help(opts.GenerateHelpText(env_base)) # generate help
 Help(opts.GenerateHelpText(env_base)) # generate help
@@ -183,11 +183,11 @@ sys.modules.pop('detect')
 """
 """
 
 
 if (env_base['target']=='debug'):
 if (env_base['target']=='debug'):
-	env_base.Append(CPPFLAGS=['-DDEBUG_MEMORY_ALLOC']);
-	env_base.Append(CPPFLAGS=['-DSCI_NAMESPACE'])
+    env_base.Append(CPPFLAGS=['-DDEBUG_MEMORY_ALLOC']);
+    env_base.Append(CPPFLAGS=['-DSCI_NAMESPACE'])
 
 
 if (env_base['deprecated']!='no'):
 if (env_base['deprecated']!='no'):
-	env_base.Append(CPPFLAGS=['-DENABLE_DEPRECATED']);
+    env_base.Append(CPPFLAGS=['-DENABLE_DEPRECATED']);
 
 
 env_base.platforms = {}
 env_base.platforms = {}
 
 
@@ -195,214 +195,214 @@ env_base.platforms = {}
 selected_platform =""
 selected_platform =""
 
 
 if env_base['platform'] != "":
 if env_base['platform'] != "":
-	selected_platform=env_base['platform']
+    selected_platform=env_base['platform']
 elif env_base['p'] != "":
 elif env_base['p'] != "":
-	selected_platform=env_base['p']
-	env_base["platform"]=selected_platform
+    selected_platform=env_base['p']
+    env_base["platform"]=selected_platform
 
 
 
 
 
 
 if selected_platform in platform_list:
 if selected_platform in platform_list:
 
 
-	sys.path.append("./platform/"+selected_platform)
-	import detect
-	if "create" in dir(detect):
-		env = detect.create(env_base)
-	else:
-		env = env_base.Clone()
-
-	if env['vsproj']=="yes":
-		env.vs_incs = []
-		env.vs_srcs = []
-
-		def AddToVSProject( sources ):
-			for x in sources:
-				if type(x) == type(""):
-					fname = env.File(x).path
-				else:
-					fname = env.File(x)[0].path
-				pieces =  fname.split(".")
-				if len(pieces)>0:
-					basename = pieces[0]
-					basename = basename.replace('\\\\','/')
-					env.vs_srcs = env.vs_srcs + [basename + ".cpp"]
-					env.vs_incs = env.vs_incs + [basename + ".h"]
-					#print basename
-		env.AddToVSProject = AddToVSProject
-
-	env.extra_suffix=""
-
-	if env["extra_suffix"] != '' :
-		env.extra_suffix += '.'+env["extra_suffix"]
-
-	CCFLAGS = env.get('CCFLAGS', '')
-	env['CCFLAGS'] = ''
-
-	env.Append(CCFLAGS=string.split(str(CCFLAGS)))
-
-	CFLAGS = env.get('CFLAGS', '')
-	env['CFLAGS'] = ''
-
-	env.Append(CFLAGS=string.split(str(CFLAGS)))
+    sys.path.append("./platform/"+selected_platform)
+    import detect
+    if "create" in dir(detect):
+        env = detect.create(env_base)
+    else:
+        env = env_base.Clone()
+
+    if env['vsproj']=="yes":
+        env.vs_incs = []
+        env.vs_srcs = []
+
+        def AddToVSProject( sources ):
+            for x in sources:
+                if type(x) == type(""):
+                    fname = env.File(x).path
+                else:
+                    fname = env.File(x)[0].path
+                pieces =  fname.split(".")
+                if len(pieces)>0:
+                    basename = pieces[0]
+                    basename = basename.replace('\\\\','/')
+                    env.vs_srcs = env.vs_srcs + [basename + ".cpp"]
+                    env.vs_incs = env.vs_incs + [basename + ".h"]
+                    #print basename
+        env.AddToVSProject = AddToVSProject
+
+    env.extra_suffix=""
+
+    if env["extra_suffix"] != '' :
+        env.extra_suffix += '.'+env["extra_suffix"]
+
+    CCFLAGS = env.get('CCFLAGS', '')
+    env['CCFLAGS'] = ''
+
+    env.Append(CCFLAGS=string.split(str(CCFLAGS)))
+
+    CFLAGS = env.get('CFLAGS', '')
+    env['CFLAGS'] = ''
+
+    env.Append(CFLAGS=string.split(str(CFLAGS)))
 
 
-	LINKFLAGS = env.get('LINKFLAGS', '')
-	env['LINKFLAGS'] = ''
-
-	env.Append(LINKFLAGS=string.split(str(LINKFLAGS)))
-
-	flag_list = platform_flags[selected_platform]
-	for f in flag_list:
-		if not (f[0] in ARGUMENTS): # allow command line to override platform flags
-			env[f[0]] = f[1]
-
-	#must happen after the flags, so when flags are used by configure, stuff happens (ie, ssl on x11)
-	detect.configure(env)
+    LINKFLAGS = env.get('LINKFLAGS', '')
+    env['LINKFLAGS'] = ''
+
+    env.Append(LINKFLAGS=string.split(str(LINKFLAGS)))
+
+    flag_list = platform_flags[selected_platform]
+    for f in flag_list:
+        if not (f[0] in ARGUMENTS): # allow command line to override platform flags
+            env[f[0]] = f[1]
+
+    #must happen after the flags, so when flags are used by configure, stuff happens (ie, ssl on x11)
+    detect.configure(env)
 
 
-	#env['platform_libsuffix'] = env['LIBSUFFIX']
+    #env['platform_libsuffix'] = env['LIBSUFFIX']
 
 
-	suffix="."+selected_platform
+    suffix="."+selected_platform
 
 
-	if (env["target"]=="release"):
-		if (env["tools"]=="yes"):
-			print("Tools can only be built with targets 'debug' and 'release_debug'.")
-			sys.exit(255)
-		suffix+=".opt"
-
-		env.Append(CCFLAGS=['-DNDEBUG']);
-
-	elif (env["target"]=="release_debug"):
-		if (env["tools"]=="yes"):
-			suffix+=".opt.tools"
-		else:
-			suffix+=".opt.debug"
-	else:
-		if (env["tools"]=="yes"):
-			suffix+=".tools"
-		else:
-			suffix+=".debug"
-
-	if env["arch"] != "":
-		suffix += "."+env["arch"]
-	elif (env["bits"]=="32"):
-		suffix+=".32"
-	elif (env["bits"]=="64"):
-		suffix+=".64"
-	elif (env["bits"]=="fat"):
-		suffix+=".fat"
-
-	suffix+=env.extra_suffix
-
-	env["PROGSUFFIX"]=suffix+env["PROGSUFFIX"]
-	env["OBJSUFFIX"]=suffix+env["OBJSUFFIX"]
-	env["LIBSUFFIX"]=suffix+env["LIBSUFFIX"]
-	env["SHLIBSUFFIX"]=suffix+env["SHLIBSUFFIX"]
-
-	sys.path.remove("./platform/"+selected_platform)
-	sys.modules.pop('detect')
-
-
-	env.module_list=[]
-
-	for x in module_list:
-		if env['module_'+x+'_enabled'] != "yes":
-			continue
-		tmppath="./modules/"+x
-		sys.path.append(tmppath)
-		env.current_module=x
-		import config
-		if (config.can_build(selected_platform)):
-			config.configure(env)
-			env.module_list.append(x)
-		sys.path.remove(tmppath)
-		sys.modules.pop('config')
-
-
-	if (env.use_ptrcall):
-		env.Append(CPPFLAGS=['-DPTRCALL_ENABLED']);
-
-	# to test 64 bits compiltion
-	# env.Append(CPPFLAGS=['-m64'])
-
-	if (env['tools']=='yes'):
-		env.Append(CPPFLAGS=['-DTOOLS_ENABLED'])
-	if (env['disable_3d']=='yes'):
-		env.Append(CPPFLAGS=['-D_3D_DISABLED'])
-	if (env['gdscript']=='yes'):
-		env.Append(CPPFLAGS=['-DGDSCRIPT_ENABLED'])
-	if (env['disable_advanced_gui']=='yes'):
-		env.Append(CPPFLAGS=['-DADVANCED_GUI_DISABLED'])
-
-	if (env['minizip'] == 'yes'):
-		env.Append(CPPFLAGS=['-DMINIZIP_ENABLED'])
-
-	if (env['xml']=='yes'):
-		env.Append(CPPFLAGS=['-DXML_ENABLED'])
-
-	if (env['verbose']=='no'):
-		methods.no_verbose(sys,env)
-
-	Export('env')
-
-	#build subdirs, the build order is dependent on link order.
-
-	SConscript("core/SCsub")
-	SConscript("servers/SCsub")
-	SConscript("scene/SCsub")
-	SConscript("tools/SCsub")
-	SConscript("drivers/SCsub")
-	SConscript("bin/SCsub")
-
-	SConscript("modules/SCsub")
-	SConscript("main/SCsub")
-
-	SConscript("platform/"+selected_platform+"/SCsub"); # build selected platform
-
-	# Microsoft Visual Studio Project Generation
-	if (env['vsproj'])=="yes":
-
-		AddToVSProject(env.core_sources)
-		AddToVSProject(env.main_sources)
-		AddToVSProject(env.modules_sources)
-		AddToVSProject(env.scene_sources)
-		AddToVSProject(env.servers_sources)
-		AddToVSProject(env.tool_sources)
-
-		# this env flag won't work, it needs to be set in env_base=Environment(MSVC_VERSION='9.0')
-		# Even then, SCons still seems to ignore it and builds with the latest MSVC...
-		# That said, it's not needed to be set so far but I'm leaving it here so that this comment
-		# has a purpose.
-		#env['MSVS_VERSION']='9.0'
-		
-		
-		# Calls a CMD with /C(lose) and /V(delayed environment variable expansion) options.
-		# And runs vcvarsall bat for the propper arhitecture and scons for propper configuration
-		env['MSVSBUILDCOM'] = 'cmd /V /C set "plat=$(PlatformTarget)" ^& (if "$(PlatformTarget)"=="x64" (set "plat=x86_amd64")) ^& set "tools=yes" ^& (if "$(Configuration)"=="release" (set "tools=no")) ^& call "$(VCInstallDir)vcvarsall.bat" !plat! ^& scons platform=windows target=$(Configuration) tools=!tools! -j2'
-		env['MSVSREBUILDCOM'] = 'cmd /V /C set "plat=$(PlatformTarget)" ^& (if "$(PlatformTarget)"=="x64" (set "plat=x86_amd64")) ^& set "tools=yes" ^& (if "$(Configuration)"=="release" (set "tools=no")) & call "$(VCInstallDir)vcvarsall.bat" !plat! ^& scons platform=windows target=$(Configuration) tools=!tools! vsproj=yes -j2'
-		env['MSVSCLEANCOM'] = 'cmd /V /C set "plat=$(PlatformTarget)" ^& (if "$(PlatformTarget)"=="x64" (set "plat=x86_amd64")) ^& set "tools=yes" ^& (if "$(Configuration)"=="release" (set "tools=no")) ^& call "$(VCInstallDir)vcvarsall.bat" !plat! ^& scons --clean platform=windows target=$(Configuration) tools=!tools! -j2'
-		
-		# This version information (Win32, x64, Debug, Release, Release_Debug seems to be
-		# required for Visual Studio to understand that it needs to generate an NMAKE
-		# project. Do not modify without knowing what you are doing.
-		debug_variants = ['debug|Win32']+['debug|x64']
-		release_variants = ['release|Win32']+['release|x64']
-		release_debug_variants = ['release_debug|Win32']+['release_debug|x64']
-		variants = debug_variants + release_variants + release_debug_variants
-		debug_targets = ['bin\\godot.windows.tools.32.exe']+['bin\\godot.windows.tools.64.exe']
-		release_targets = ['bin\\godot.windows.opt.32.exe']+['bin\\godot.windows.opt.64.exe']
-		release_debug_targets = ['bin\\godot.windows.opt.tools.32.exe']+['bin\\godot.windows.opt.tools.64.exe']
-		targets = debug_targets + release_targets + release_debug_targets
-		msvproj = env.MSVSProject(target = ['#godot' + env['MSVSPROJECTSUFFIX'] ],
-								incs = env.vs_incs,
-								srcs = env.vs_srcs,
-								runfile = targets,
-								buildtarget = targets,
-								auto_build_solution=1,
-								variant = variants)
+    if (env["target"]=="release"):
+        if (env["tools"]=="yes"):
+            print("Tools can only be built with targets 'debug' and 'release_debug'.")
+            sys.exit(255)
+        suffix+=".opt"
+
+        env.Append(CCFLAGS=['-DNDEBUG']);
+
+    elif (env["target"]=="release_debug"):
+        if (env["tools"]=="yes"):
+            suffix+=".opt.tools"
+        else:
+            suffix+=".opt.debug"
+    else:
+        if (env["tools"]=="yes"):
+            suffix+=".tools"
+        else:
+            suffix+=".debug"
+
+    if env["arch"] != "":
+        suffix += "."+env["arch"]
+    elif (env["bits"]=="32"):
+        suffix+=".32"
+    elif (env["bits"]=="64"):
+        suffix+=".64"
+    elif (env["bits"]=="fat"):
+        suffix+=".fat"
+
+    suffix+=env.extra_suffix
+
+    env["PROGSUFFIX"]=suffix+env["PROGSUFFIX"]
+    env["OBJSUFFIX"]=suffix+env["OBJSUFFIX"]
+    env["LIBSUFFIX"]=suffix+env["LIBSUFFIX"]
+    env["SHLIBSUFFIX"]=suffix+env["SHLIBSUFFIX"]
+
+    sys.path.remove("./platform/"+selected_platform)
+    sys.modules.pop('detect')
+
+
+    env.module_list=[]
+
+    for x in module_list:
+        if env['module_'+x+'_enabled'] != "yes":
+            continue
+        tmppath="./modules/"+x
+        sys.path.append(tmppath)
+        env.current_module=x
+        import config
+        if (config.can_build(selected_platform)):
+            config.configure(env)
+            env.module_list.append(x)
+        sys.path.remove(tmppath)
+        sys.modules.pop('config')
+
+
+    if (env.use_ptrcall):
+        env.Append(CPPFLAGS=['-DPTRCALL_ENABLED']);
+
+    # to test 64 bits compiltion
+    # env.Append(CPPFLAGS=['-m64'])
+
+    if (env['tools']=='yes'):
+        env.Append(CPPFLAGS=['-DTOOLS_ENABLED'])
+    if (env['disable_3d']=='yes'):
+        env.Append(CPPFLAGS=['-D_3D_DISABLED'])
+    if (env['gdscript']=='yes'):
+        env.Append(CPPFLAGS=['-DGDSCRIPT_ENABLED'])
+    if (env['disable_advanced_gui']=='yes'):
+        env.Append(CPPFLAGS=['-DADVANCED_GUI_DISABLED'])
+
+    if (env['minizip'] == 'yes'):
+        env.Append(CPPFLAGS=['-DMINIZIP_ENABLED'])
+
+    if (env['xml']=='yes'):
+        env.Append(CPPFLAGS=['-DXML_ENABLED'])
+
+    if (env['verbose']=='no'):
+        methods.no_verbose(sys,env)
+
+    Export('env')
+
+    #build subdirs, the build order is dependent on link order.
+
+    SConscript("core/SCsub")
+    SConscript("servers/SCsub")
+    SConscript("scene/SCsub")
+    SConscript("tools/SCsub")
+    SConscript("drivers/SCsub")
+    SConscript("bin/SCsub")
+
+    SConscript("modules/SCsub")
+    SConscript("main/SCsub")
+
+    SConscript("platform/"+selected_platform+"/SCsub"); # build selected platform
+
+    # Microsoft Visual Studio Project Generation
+    if (env['vsproj'])=="yes":
+
+        AddToVSProject(env.core_sources)
+        AddToVSProject(env.main_sources)
+        AddToVSProject(env.modules_sources)
+        AddToVSProject(env.scene_sources)
+        AddToVSProject(env.servers_sources)
+        AddToVSProject(env.tool_sources)
+
+        # this env flag won't work, it needs to be set in env_base=Environment(MSVC_VERSION='9.0')
+        # Even then, SCons still seems to ignore it and builds with the latest MSVC...
+        # That said, it's not needed to be set so far but I'm leaving it here so that this comment
+        # has a purpose.
+        #env['MSVS_VERSION']='9.0'
+
+
+        # Calls a CMD with /C(lose) and /V(delayed environment variable expansion) options.
+        # And runs vcvarsall bat for the propper arhitecture and scons for propper configuration
+        env['MSVSBUILDCOM'] = 'cmd /V /C set "plat=$(PlatformTarget)" ^& (if "$(PlatformTarget)"=="x64" (set "plat=x86_amd64")) ^& set "tools=yes" ^& (if "$(Configuration)"=="release" (set "tools=no")) ^& call "$(VCInstallDir)vcvarsall.bat" !plat! ^& scons platform=windows target=$(Configuration) tools=!tools! -j2'
+        env['MSVSREBUILDCOM'] = 'cmd /V /C set "plat=$(PlatformTarget)" ^& (if "$(PlatformTarget)"=="x64" (set "plat=x86_amd64")) ^& set "tools=yes" ^& (if "$(Configuration)"=="release" (set "tools=no")) & call "$(VCInstallDir)vcvarsall.bat" !plat! ^& scons platform=windows target=$(Configuration) tools=!tools! vsproj=yes -j2'
+        env['MSVSCLEANCOM'] = 'cmd /V /C set "plat=$(PlatformTarget)" ^& (if "$(PlatformTarget)"=="x64" (set "plat=x86_amd64")) ^& set "tools=yes" ^& (if "$(Configuration)"=="release" (set "tools=no")) ^& call "$(VCInstallDir)vcvarsall.bat" !plat! ^& scons --clean platform=windows target=$(Configuration) tools=!tools! -j2'
+
+        # This version information (Win32, x64, Debug, Release, Release_Debug seems to be
+        # required for Visual Studio to understand that it needs to generate an NMAKE
+        # project. Do not modify without knowing what you are doing.
+        debug_variants = ['debug|Win32']+['debug|x64']
+        release_variants = ['release|Win32']+['release|x64']
+        release_debug_variants = ['release_debug|Win32']+['release_debug|x64']
+        variants = debug_variants + release_variants + release_debug_variants
+        debug_targets = ['bin\\godot.windows.tools.32.exe']+['bin\\godot.windows.tools.64.exe']
+        release_targets = ['bin\\godot.windows.opt.32.exe']+['bin\\godot.windows.opt.64.exe']
+        release_debug_targets = ['bin\\godot.windows.opt.tools.32.exe']+['bin\\godot.windows.opt.tools.64.exe']
+        targets = debug_targets + release_targets + release_debug_targets
+        msvproj = env.MSVSProject(target = ['#godot' + env['MSVSPROJECTSUFFIX'] ],
+                                  incs = env.vs_incs,
+                                  srcs = env.vs_srcs,
+                                  runfile = targets,
+                                  buildtarget = targets,
+                                  auto_build_solution=1,
+                                  variant = variants)
 
 
 else:
 else:
 
 
-	print("No valid target platform selected.")
-	print("The following were detected:")
-	for x in platform_list:
-		print("\t"+x)
-	print("\nPlease run scons again with argument: platform=<string>")
+    print("No valid target platform selected.")
+    print("The following were detected:")
+    for x in platform_list:
+        print("\t"+x)
+    print("\nPlease run scons again with argument: platform=<string>")

+ 22 - 22
core/SCsub

@@ -9,9 +9,9 @@ gd_call=""
 gd_inc=""
 gd_inc=""
 
 
 for x in env.global_defaults:
 for x in env.global_defaults:
-	env.core_sources.append("#platform/"+x+"/globals/global_defaults.cpp")
-	gd_inc+='#include "platform/'+x+'/globals/global_defaults.h"\n'
-	gd_call+="\tregister_"+x+"_global_defaults();\n"
+    env.core_sources.append("#platform/"+x+"/globals/global_defaults.cpp")
+    gd_inc+='#include "platform/'+x+'/globals/global_defaults.h"\n'
+    gd_call+="\tregister_"+x+"_global_defaults();\n"
 
 
 gd_cpp='#include "globals.h"\n'
 gd_cpp='#include "globals.h"\n'
 gd_cpp+=gd_inc
 gd_cpp+=gd_inc
@@ -24,25 +24,25 @@ f.close()
 import os
 import os
 txt = "0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0"
 txt = "0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0"
 if ("SCRIPT_AES256_ENCRYPTION_KEY" in os.environ):
 if ("SCRIPT_AES256_ENCRYPTION_KEY" in os.environ):
-	e=os.environ["SCRIPT_AES256_ENCRYPTION_KEY"]
-	txt = ""
-	ec_valid=True
-	if (len(e)!=64):
-		ec_valid=False
-	else:
-
-		for i in range(len(e)>>1):
-			if (i>0):
-				txt+=","
-			txts="0x"+e[i*2:i*2+2]
-			try:
-				int(txts,16)
-			except:
-				ec_valid=False
-			txt+=txts
-	if (not ec_valid):
-		txt = "0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0"
-		print("Invalid AES256 encryption key, not 64 bits hex: "+e)
+    e=os.environ["SCRIPT_AES256_ENCRYPTION_KEY"]
+    txt = ""
+    ec_valid=True
+    if (len(e)!=64):
+        ec_valid=False
+    else:
+
+        for i in range(len(e)>>1):
+            if (i>0):
+                txt+=","
+            txts="0x"+e[i*2:i*2+2]
+            try:
+                int(txts,16)
+            except:
+                ec_valid=False
+            txt+=txts
+    if (not ec_valid):
+        txt = "0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0"
+        print("Invalid AES256 encryption key, not 64 bits hex: "+e)
 
 
 f = open("script_encryption_key.cpp", "wb")
 f = open("script_encryption_key.cpp", "wb")
 f.write("#include \"globals.h\"\nuint8_t script_encryption_key[32]={" + txt + "};\n")
 f.write("#include \"globals.h\"\nuint8_t script_encryption_key[32]={" + txt + "};\n")

+ 87 - 87
core/make_binders.py

@@ -163,94 +163,94 @@ MethodBind* create_method_bind($ifret R$ $ifnoret void$ (T::*p_method)($arg, P@$
 
 
 def make_version(template,nargs,argmax,const,ret):
 def make_version(template,nargs,argmax,const,ret):
 
 
-	intext=template
-	from_pos=0
-	outtext=""
-
-	while(True):
-		to_pos=intext.find("$",from_pos)
-		if (to_pos==-1):
-			outtext+=intext[from_pos:]
-			break
-		else:
-			outtext+=intext[from_pos:to_pos]
-		end=intext.find("$",to_pos+1)
-		if (end==-1):
-			break # ignore
-		macro=intext[to_pos+1:end]
-		cmd=""
-		data=""
-
-		if (macro.find(" ")!=-1):
-			cmd=macro[0:macro.find(" ")]
-			data=macro[macro.find(" ")+1:]
-		else:
-			cmd=macro
-
-		if (cmd=="argc"):
-			outtext+=str(nargs)
-		if (cmd=="ifret" and ret):
-			outtext+=data
-		if (cmd=="ifargs" and nargs):
-			outtext+=data
-		if (cmd=="ifretargs" and nargs and ret):
-			outtext+=data
-		if (cmd=="ifconst" and const):
-			outtext+=data
-		elif (cmd=="ifnoconst" and not const):
-			outtext+=data
-		elif (cmd=="ifnoret" and not ret):
-			outtext+=data
-		elif (cmd=="iftempl" and (nargs>0 or ret)):
-			outtext+=data
-		elif (cmd=="arg,"):
-			for i in range(1,nargs+1):
-				if (i>1):
-					outtext+=", "
-				outtext+=data.replace("@",str(i))
-		elif (cmd=="arg"):
-			for i in range(1,nargs+1):
-				outtext+=data.replace("@",str(i))
-		elif (cmd=="noarg"):
-			for i in range(nargs+1,argmax+1):
-				outtext+=data.replace("@",str(i))
-		elif (cmd=="noarg"):
-			for i in range(nargs+1,argmax+1):
-				outtext+=data.replace("@",str(i))
-
-		from_pos=end+1
-
-	return outtext
+    intext=template
+    from_pos=0
+    outtext=""
+
+    while(True):
+        to_pos=intext.find("$",from_pos)
+        if (to_pos==-1):
+            outtext+=intext[from_pos:]
+            break
+        else:
+            outtext+=intext[from_pos:to_pos]
+        end=intext.find("$",to_pos+1)
+        if (end==-1):
+            break # ignore
+        macro=intext[to_pos+1:end]
+        cmd=""
+        data=""
+
+        if (macro.find(" ")!=-1):
+            cmd=macro[0:macro.find(" ")]
+            data=macro[macro.find(" ")+1:]
+        else:
+            cmd=macro
+
+        if (cmd=="argc"):
+            outtext+=str(nargs)
+        if (cmd=="ifret" and ret):
+            outtext+=data
+        if (cmd=="ifargs" and nargs):
+            outtext+=data
+        if (cmd=="ifretargs" and nargs and ret):
+            outtext+=data
+        if (cmd=="ifconst" and const):
+            outtext+=data
+        elif (cmd=="ifnoconst" and not const):
+            outtext+=data
+        elif (cmd=="ifnoret" and not ret):
+            outtext+=data
+        elif (cmd=="iftempl" and (nargs>0 or ret)):
+            outtext+=data
+        elif (cmd=="arg,"):
+            for i in range(1,nargs+1):
+                if (i>1):
+                    outtext+=", "
+                outtext+=data.replace("@",str(i))
+        elif (cmd=="arg"):
+            for i in range(1,nargs+1):
+                outtext+=data.replace("@",str(i))
+        elif (cmd=="noarg"):
+            for i in range(nargs+1,argmax+1):
+                outtext+=data.replace("@",str(i))
+        elif (cmd=="noarg"):
+            for i in range(nargs+1,argmax+1):
+                outtext+=data.replace("@",str(i))
+
+        from_pos=end+1
+
+    return outtext
 
 
 
 
 def run(target, source, env):
 def run(target, source, env):
 
 
-	versions=10
-	versions_ext=6
-	text=""
-	text_ext=""
-
-	for i in range(0,versions+1):
-
-		t=""
-		t+=make_version(template,i,versions,False,False)
-		t+=make_version(template_typed,i,versions,False,False)
-		t+=make_version(template,i,versions,False,True)
-		t+=make_version(template_typed,i,versions,False,True)
-		t+=make_version(template,i,versions,True,False)
-		t+=make_version(template_typed,i,versions,True,False)
-		t+=make_version(template,i,versions,True,True)
-		t+=make_version(template_typed,i,versions,True,True)
-		if (i>=versions_ext):
-			text_ext+=t
-		else:
-			text+=t
-
-
-	f=open(target[0].path,"w")
-	f.write(text)
-	f.close()
-
-	f=open(target[1].path,"w")
-	f.write(text_ext)
-	f.close()
+    versions=10
+    versions_ext=6
+    text=""
+    text_ext=""
+
+    for i in range(0,versions+1):
+
+        t=""
+        t+=make_version(template,i,versions,False,False)
+        t+=make_version(template_typed,i,versions,False,False)
+        t+=make_version(template,i,versions,False,True)
+        t+=make_version(template_typed,i,versions,False,True)
+        t+=make_version(template,i,versions,True,False)
+        t+=make_version(template_typed,i,versions,True,False)
+        t+=make_version(template,i,versions,True,True)
+        t+=make_version(template_typed,i,versions,True,True)
+        if (i>=versions_ext):
+            text_ext+=t
+        else:
+            text+=t
+
+
+    f=open(target[0].path,"w")
+    f.write(text)
+    f.close()
+
+    f=open(target[1].path,"w")
+    f.write(text_ext)
+    f.close()

+ 130 - 130
doc/tools/doc_merge.py

@@ -17,195 +17,195 @@ tab=0
 old_classes={}
 old_classes={}
 
 
 def write_string(_f, text,newline=True):
 def write_string(_f, text,newline=True):
-	for t in range(tab):
-		_f.write("\t")
-	_f.write(text)
-	if (newline):
-		_f.write("\n")
+    for t in range(tab):
+        _f.write("\t")
+    _f.write(text)
+    if (newline):
+        _f.write("\n")
 
 
 def escape(ret):
 def escape(ret):
-	ret=ret.replace("&","&amp;");
-	ret=ret.replace("<","&gt;");
-	ret=ret.replace(">","&lt;");
-	ret=ret.replace("'","&apos;");
-	ret=ret.replace("\"","&quot;");
-	return ret
+    ret=ret.replace("&","&amp;");
+    ret=ret.replace("<","&gt;");
+    ret=ret.replace(">","&lt;");
+    ret=ret.replace("'","&apos;");
+    ret=ret.replace("\"","&quot;");
+    return ret
 
 
 
 
 def inc_tab():
 def inc_tab():
-	global tab
-	tab+=1
+    global tab
+    tab+=1
 
 
 def dec_tab():
 def dec_tab():
-	global tab
-	tab-=1
+    global tab
+    tab-=1
 
 
 write_string(f,'<?xml version="1.0" encoding="UTF-8" ?>')
 write_string(f,'<?xml version="1.0" encoding="UTF-8" ?>')
 write_string(f,'<doc version="'+new_doc.attrib["version"]+'">')
 write_string(f,'<doc version="'+new_doc.attrib["version"]+'">')
 
 
 def get_tag(node,name):
 def get_tag(node,name):
-	tag=""
-	if (name in node.attrib):
-		tag=' '+name+'="'+escape(node.attrib[name])+'" '
-	return tag
+    tag=""
+    if (name in node.attrib):
+        tag=' '+name+'="'+escape(node.attrib[name])+'" '
+    return tag
 
 
 def find_method_descr(old_class,name):
 def find_method_descr(old_class,name):
 
 
-	methods = old_class.find("methods")
-	if(methods!=None and len(list(methods))>0):
-		for m in list(methods):
-			if (m.attrib["name"]==name):
-				description=m.find("description")
-				if (description!=None and description.text.strip()!=""):
-					return description.text
+    methods = old_class.find("methods")
+    if(methods!=None and len(list(methods))>0):
+        for m in list(methods):
+            if (m.attrib["name"]==name):
+                description=m.find("description")
+                if (description!=None and description.text.strip()!=""):
+                    return description.text
 
 
-	return None
+    return None
 
 
 def find_signal_descr(old_class,name):
 def find_signal_descr(old_class,name):
 
 
-	signals = old_class.find("signals")
-	if(signals!=None and len(list(signals))>0):
-		for m in list(signals):
-			if (m.attrib["name"]==name):
-				description=m.find("description")
-				if (description!=None and description.text.strip()!=""):
-					return description.text
+    signals = old_class.find("signals")
+    if(signals!=None and len(list(signals))>0):
+        for m in list(signals):
+            if (m.attrib["name"]==name):
+                description=m.find("description")
+                if (description!=None and description.text.strip()!=""):
+                    return description.text
 
 
-	return None
+    return None
 
 
 def find_constant_descr(old_class,name):
 def find_constant_descr(old_class,name):
 
 
-	if (old_class==None):
-		return None
-	constants = old_class.find("constants")
-	if(constants!=None and len(list(constants))>0):
-		for m in list(constants):
-			if (m.attrib["name"]==name):
-				if (m.text.strip()!=""):
-					return m.text
-	return None
+    if (old_class==None):
+        return None
+    constants = old_class.find("constants")
+    if(constants!=None and len(list(constants))>0):
+        for m in list(constants):
+            if (m.attrib["name"]==name):
+                if (m.text.strip()!=""):
+                    return m.text
+    return None
 
 
 def write_class(c):
 def write_class(c):
-	class_name = c.attrib["name"]
-	print("Parsing Class: "+class_name)
-	if (class_name in old_classes):
-		old_class=old_classes[class_name]
-	else:
-		old_class=None
+    class_name = c.attrib["name"]
+    print("Parsing Class: "+class_name)
+    if (class_name in old_classes):
+        old_class=old_classes[class_name]
+    else:
+        old_class=None
 
 
 
 
-	category=get_tag(c,"category")
-	inherits=get_tag(c,"inherits")
-	write_string(f,'<class name="'+class_name+'" '+category+inherits+'>')
-	inc_tab()
+    category=get_tag(c,"category")
+    inherits=get_tag(c,"inherits")
+    write_string(f,'<class name="'+class_name+'" '+category+inherits+'>')
+    inc_tab()
 
 
-	write_string(f,"<brief_description>")
+    write_string(f,"<brief_description>")
 
 
-	if (old_class!=None):
-		old_brief_descr=old_class.find("brief_description")
-		if (old_brief_descr!=None):
-			write_string(f,escape(old_brief_descr.text.strip()))
+    if (old_class!=None):
+        old_brief_descr=old_class.find("brief_description")
+        if (old_brief_descr!=None):
+            write_string(f,escape(old_brief_descr.text.strip()))
 
 
 
 
-	write_string(f,"</brief_description>")
+    write_string(f,"</brief_description>")
 
 
-	write_string(f,"<description>")
-	if (old_class!=None):
-		old_descr=old_class.find("description")
-		if (old_descr!=None):
-			write_string(f,escape(old_descr.text.strip()))
+    write_string(f,"<description>")
+    if (old_class!=None):
+        old_descr=old_class.find("description")
+        if (old_descr!=None):
+            write_string(f,escape(old_descr.text.strip()))
 
 
-	write_string(f,"</description>")
+    write_string(f,"</description>")
 
 
-	methods = c.find("methods")
-	if(methods!=None and len(list(methods))>0):
+    methods = c.find("methods")
+    if(methods!=None and len(list(methods))>0):
 
 
-		write_string(f,"<methods>")
-		inc_tab()
+        write_string(f,"<methods>")
+        inc_tab()
 
 
-		for m in list(methods):
-			qualifiers=get_tag(m,"qualifiers")
+        for m in list(methods):
+            qualifiers=get_tag(m,"qualifiers")
 
 
-			write_string(f,'<method name="'+escape(m.attrib["name"])+'" ' +qualifiers+'>')
-			inc_tab()
+            write_string(f,'<method name="'+escape(m.attrib["name"])+'" ' +qualifiers+'>')
+            inc_tab()
 
 
-			for a in list(m):
-				if (a.tag=="return"):
-					typ=get_tag(a,"type")
-					write_string(f,'<return'+typ+'>');
-					write_string(f,'</return>');
-				elif (a.tag=="argument"):
+            for a in list(m):
+                if (a.tag=="return"):
+                    typ=get_tag(a,"type")
+                    write_string(f,'<return'+typ+'>');
+                    write_string(f,'</return>');
+                elif (a.tag=="argument"):
 
 
-					default=get_tag(a,"default")
+                    default=get_tag(a,"default")
 
 
-					write_string(f,'<argument index="'+a.attrib["index"]+'" name="'+escape(a.attrib["name"])+'" type="'+a.attrib["type"]+'"' +default+'>');
-					write_string(f,'</argument>');
+                    write_string(f,'<argument index="'+a.attrib["index"]+'" name="'+escape(a.attrib["name"])+'" type="'+a.attrib["type"]+'"' +default+'>');
+                    write_string(f,'</argument>');
 
 
-			write_string(f,'<description>');
-			if (old_class!=None):
-				old_method_descr=find_method_descr(old_class,m.attrib["name"])
-				if (old_method_descr):
-					write_string(f,escape(escape(old_method_descr.strip())))
+            write_string(f,'<description>');
+            if (old_class!=None):
+                old_method_descr=find_method_descr(old_class,m.attrib["name"])
+                if (old_method_descr):
+                    write_string(f,escape(escape(old_method_descr.strip())))
 
 
-			write_string(f,'</description>');
-			dec_tab()
-			write_string(f,"</method>")
-		dec_tab()
-		write_string(f,"</methods>")
+            write_string(f,'</description>');
+            dec_tab()
+            write_string(f,"</method>")
+        dec_tab()
+        write_string(f,"</methods>")
 
 
-	signals = c.find("signals")
-	if(signals!=None and len(list(signals))>0):
+    signals = c.find("signals")
+    if(signals!=None and len(list(signals))>0):
 
 
-		write_string(f,"<signals>")
-		inc_tab()
+        write_string(f,"<signals>")
+        inc_tab()
 
 
-		for m in list(signals):
+        for m in list(signals):
 
 
-			write_string(f,'<signal name="'+escape(m.attrib["name"])+'">')
-			inc_tab()
+            write_string(f,'<signal name="'+escape(m.attrib["name"])+'">')
+            inc_tab()
 
 
-			for a in list(m):
-				if (a.tag=="argument"):
+            for a in list(m):
+                if (a.tag=="argument"):
 
 
-					write_string(f,'<argument index="'+a.attrib["index"]+'" name="'+escape(a.attrib["name"])+'" type="'+a.attrib["type"]+'">');
-					write_string(f,'</argument>');
+                    write_string(f,'<argument index="'+a.attrib["index"]+'" name="'+escape(a.attrib["name"])+'" type="'+a.attrib["type"]+'">');
+                    write_string(f,'</argument>');
 
 
-			write_string(f,'<description>');
-			if (old_class!=None):
-				old_signal_descr=find_signal_descr(old_class,m.attrib["name"])
-				if (old_signal_descr):
-					write_string(f,escape(old_signal_descr.strip()))
-			write_string(f,'</description>');
-			dec_tab()
-			write_string(f,"</signal>")
-		dec_tab()
-		write_string(f,"</signals>")
+            write_string(f,'<description>');
+            if (old_class!=None):
+                old_signal_descr=find_signal_descr(old_class,m.attrib["name"])
+                if (old_signal_descr):
+                    write_string(f,escape(old_signal_descr.strip()))
+            write_string(f,'</description>');
+            dec_tab()
+            write_string(f,"</signal>")
+        dec_tab()
+        write_string(f,"</signals>")
 
 
-	constants = c.find("constants")
-	if(constants!=None and len(list(constants))>0):
+    constants = c.find("constants")
+    if(constants!=None and len(list(constants))>0):
 
 
-		write_string(f,"<constants>")
-		inc_tab()
+        write_string(f,"<constants>")
+        inc_tab()
 
 
-		for m in list(constants):
+        for m in list(constants):
 
 
-			write_string(f,'<constant name="'+escape(m.attrib["name"])+'" value="'+m.attrib["value"]+'">')
-			old_constant_descr=find_constant_descr(old_class,m.attrib["name"])
-			if (old_constant_descr):
-				write_string(f,escape(old_constant_descr.strip()))
-			write_string(f,"</constant>")
+            write_string(f,'<constant name="'+escape(m.attrib["name"])+'" value="'+m.attrib["value"]+'">')
+            old_constant_descr=find_constant_descr(old_class,m.attrib["name"])
+            if (old_constant_descr):
+                write_string(f,escape(old_constant_descr.strip()))
+            write_string(f,"</constant>")
 
 
-		dec_tab()
-		write_string(f,"</constants>")
+        dec_tab()
+        write_string(f,"</constants>")
 
 
-	dec_tab()
-	write_string(f,"</class>")
+    dec_tab()
+    write_string(f,"</class>")
 
 
 for c in list(old_doc):
 for c in list(old_doc):
-	old_classes[c.attrib["name"]]=c
+    old_classes[c.attrib["name"]]=c
 
 
 for c in list(new_doc):
 for c in list(new_doc):
-	write_class(c)
+    write_class(c)
 write_string(f,'</doc>\n')
 write_string(f,'</doc>\n')
 
 
 
 

+ 266 - 266
doc/tools/doc_status.py

@@ -11,66 +11,66 @@ import xml.etree.ElementTree as ET
 ################################################################################
 ################################################################################
 
 
 flags = {
 flags = {
-	'c': platform.platform() != 'Windows', # Disable by default on windows, since we use ANSI escape codes
-	'b': False,
-	'g': False,
-	's': False,
-	'u': False,
-	'h': False,
-	'p': False,
-	'o': True,
-	'i': False,
+    'c': platform.platform() != 'Windows', # Disable by default on windows, since we use ANSI escape codes
+    'b': False,
+    'g': False,
+    's': False,
+    'u': False,
+    'h': False,
+    'p': False,
+    'o': True,
+    'i': False,
 }
 }
 flag_descriptions = {
 flag_descriptions = {
-	'c': 'Toggle colors when outputting.',
-	'b': 'Toggle showing only not fully described classes.',
-	'g': 'Toggle showing only completed classes.',
-	's': 'Toggle showing comments about the status.',
-	'u': 'Toggle URLs to docs.',
-	'h': 'Show help and exit.',
-	'p': 'Toggle showing percentage as well as counts.',
-	'o': 'Toggle overall column.',
-	'i': 'Toggle collapse of class items columns.',
+    'c': 'Toggle colors when outputting.',
+    'b': 'Toggle showing only not fully described classes.',
+    'g': 'Toggle showing only completed classes.',
+    's': 'Toggle showing comments about the status.',
+    'u': 'Toggle URLs to docs.',
+    'h': 'Show help and exit.',
+    'p': 'Toggle showing percentage as well as counts.',
+    'o': 'Toggle overall column.',
+    'i': 'Toggle collapse of class items columns.',
 }
 }
 long_flags = {
 long_flags = {
-	'colors': 'c',
-	'use-colors': 'c',
+    'colors': 'c',
+    'use-colors': 'c',
 
 
-	'bad': 'b',
-	'only-bad': 'b',
+    'bad': 'b',
+    'only-bad': 'b',
 
 
-	'good': 'g',
-	'only-good': 'g',
+    'good': 'g',
+    'only-good': 'g',
 
 
-	'comments': 's',
-	'status': 's',
+    'comments': 's',
+    'status': 's',
 
 
-	'urls': 'u',
-	'gen-url': 'u',
+    'urls': 'u',
+    'gen-url': 'u',
 
 
-	'help': 'h',
+    'help': 'h',
 
 
-	'percent': 'p',
-	'use-percentages': 'p',
+    'percent': 'p',
+    'use-percentages': 'p',
 
 
-	'overall': 'o',
-	'use-overall': 'o',
+    'overall': 'o',
+    'use-overall': 'o',
 
 
-	'items': 'i',
-	'collapse': 'i',
+    'items': 'i',
+    'collapse': 'i',
 }
 }
 table_columns = ['name', 'brief_description', 'description', 'methods', 'constants', 'members', 'signals']
 table_columns = ['name', 'brief_description', 'description', 'methods', 'constants', 'members', 'signals']
 table_column_names = ['Name', 'Brief Desc.', 'Desc.', 'Methods', 'Constants', 'Members', 'Signals']
 table_column_names = ['Name', 'Brief Desc.', 'Desc.', 'Methods', 'Constants', 'Members', 'Signals']
 colors = {
 colors = {
-	'name': [36], # cyan
-	'part_big_problem': [4, 31], # underline, red
-	'part_problem': [31], # red
-	'part_mostly_good': [33], # yellow
-	'part_good': [32], # green
-	'url': [4, 34], # underline, blue
-	'section': [1, 4], # bold, underline
-	'state_off': [36], # cyan
-	'state_on': [1, 35], # bold, magenta/plum
+    'name': [36], # cyan
+    'part_big_problem': [4, 31], # underline, red
+    'part_problem': [31], # red
+    'part_mostly_good': [33], # yellow
+    'part_good': [32], # green
+    'url': [4, 34], # underline, blue
+    'section': [1, 4], # bold, underline
+    'state_off': [36], # cyan
+    'state_on': [1, 35], # bold, magenta/plum
 }
 }
 overall_progress_description_weigth = 10
 overall_progress_description_weigth = 10
 
 
@@ -81,22 +81,22 @@ overall_progress_description_weigth = 10
 ################################################################################
 ################################################################################
 
 
 def validate_tag(elem, tag):
 def validate_tag(elem, tag):
-	if elem.tag != tag:
-		print('Tag mismatch, expected "' + tag + '", got ' + elem.tag)
-		sys.exit(255)
+    if elem.tag != tag:
+        print('Tag mismatch, expected "' + tag + '", got ' + elem.tag)
+        sys.exit(255)
 
 
 def color(color, string):
 def color(color, string):
-	if flags['c']:
-		color_format = ''
-		for code in colors[color]:
-			color_format += '\033[' + str(code) + 'm'
-		return color_format + string + '\033[0m'
-	else:
-		return string
+    if flags['c']:
+        color_format = ''
+        for code in colors[color]:
+            color_format += '\033[' + str(code) + 'm'
+        return color_format + string + '\033[0m'
+    else:
+        return string
 
 
 ansi_escape = re.compile(r'\x1b[^m]*m')
 ansi_escape = re.compile(r'\x1b[^m]*m')
 def nonescape_len(s):
 def nonescape_len(s):
-	return len(ansi_escape.sub('', s))
+    return len(ansi_escape.sub('', s))
 
 
 
 
 
 
@@ -105,138 +105,138 @@ def nonescape_len(s):
 ################################################################################
 ################################################################################
 
 
 class ClassStatusProgress:
 class ClassStatusProgress:
-	def __init__(self, described = 0, total = 0):
-		self.described = described
-		self.total = total
-
-	def __add__(self, other):
-		return ClassStatusProgress(self.described + other.described, self.total + other.total)
-
-	def increment(self, described):
-		if described:
-			self.described += 1
-		self.total += 1
-
-	def is_ok(self):
-		return self.described >= self.total
-
-	def to_configured_colored_string(self):
-		if flags['p']:
-			return self.to_colored_string('{percent}% ({has}/{total})', '{pad_percent}{pad_described}{s}{pad_total}')
-		else:
-			return self.to_colored_string()
-
-	def to_colored_string(self, format='{has}/{total}', pad_format='{pad_described}{s}{pad_total}'):
-		ratio = self.described/self.total if self.total != 0 else 1
-		percent = round(100*ratio)
-		s = format.format(has = str(self.described), total = str(self.total), percent = str(percent))
-		if self.described >= self.total:
-			s = color('part_good', s)
-		elif self.described >= self.total/4*3:
-			s = color('part_mostly_good', s)
-		elif self.described > 0:
-			s = color('part_problem', s)
-		else:
-			s = color('part_big_problem', s)
-		pad_size = max(len(str(self.described)), len(str(self.total)))
-		pad_described = ''.ljust(pad_size - len(str(self.described)))
-		pad_percent = ''.ljust(3 - len(str(percent)))
-		pad_total = ''.ljust(pad_size - len(str(self.total)))
-		return pad_format.format(pad_described = pad_described, pad_total = pad_total, pad_percent = pad_percent, s = s)
+    def __init__(self, described = 0, total = 0):
+        self.described = described
+        self.total = total
+
+    def __add__(self, other):
+        return ClassStatusProgress(self.described + other.described, self.total + other.total)
+
+    def increment(self, described):
+        if described:
+            self.described += 1
+        self.total += 1
+
+    def is_ok(self):
+        return self.described >= self.total
+
+    def to_configured_colored_string(self):
+        if flags['p']:
+            return self.to_colored_string('{percent}% ({has}/{total})', '{pad_percent}{pad_described}{s}{pad_total}')
+        else:
+            return self.to_colored_string()
+
+    def to_colored_string(self, format='{has}/{total}', pad_format='{pad_described}{s}{pad_total}'):
+        ratio = self.described/self.total if self.total != 0 else 1
+        percent = round(100*ratio)
+        s = format.format(has = str(self.described), total = str(self.total), percent = str(percent))
+        if self.described >= self.total:
+            s = color('part_good', s)
+        elif self.described >= self.total/4*3:
+            s = color('part_mostly_good', s)
+        elif self.described > 0:
+            s = color('part_problem', s)
+        else:
+            s = color('part_big_problem', s)
+        pad_size = max(len(str(self.described)), len(str(self.total)))
+        pad_described = ''.ljust(pad_size - len(str(self.described)))
+        pad_percent = ''.ljust(3 - len(str(percent)))
+        pad_total = ''.ljust(pad_size - len(str(self.total)))
+        return pad_format.format(pad_described = pad_described, pad_total = pad_total, pad_percent = pad_percent, s = s)
 
 
 
 
 class ClassStatus:
 class ClassStatus:
-	def __init__(self, name=''):
-		self.name = name
-		self.has_brief_description = True
-		self.has_description = True
-		self.progresses = {
-			'methods': ClassStatusProgress(),
-			'constants': ClassStatusProgress(),
-			'members': ClassStatusProgress(),
-			'signals': ClassStatusProgress()
-		}
+    def __init__(self, name=''):
+        self.name = name
+        self.has_brief_description = True
+        self.has_description = True
+        self.progresses = {
+            'methods': ClassStatusProgress(),
+            'constants': ClassStatusProgress(),
+            'members': ClassStatusProgress(),
+            'signals': ClassStatusProgress()
+        }
 
 
-	def __add__(self, other):
-		new_status = ClassStatus()
-		new_status.name = self.name
-		new_status.has_brief_description = self.has_brief_description and other.has_brief_description
-		new_status.has_description = self.has_description and other.has_description
-		for k in self.progresses:
-			new_status.progresses[k] = self.progresses[k] + other.progresses[k]
-		return new_status
+    def __add__(self, other):
+        new_status = ClassStatus()
+        new_status.name = self.name
+        new_status.has_brief_description = self.has_brief_description and other.has_brief_description
+        new_status.has_description = self.has_description and other.has_description
+        for k in self.progresses:
+            new_status.progresses[k] = self.progresses[k] + other.progresses[k]
+        return new_status
 
 
-	def is_ok(self):
-		ok = True
-		ok = ok and self.has_brief_description
-		ok = ok and self.has_description
-		for k in self.progresses:
-			ok = ok and self.progresses[k].is_ok()
-		return ok
+    def is_ok(self):
+        ok = True
+        ok = ok and self.has_brief_description
+        ok = ok and self.has_description
+        for k in self.progresses:
+            ok = ok and self.progresses[k].is_ok()
+        return ok
 
 
-	def make_output(self):
-		output = {}
-		output['name'] = color('name', self.name)
+    def make_output(self):
+        output = {}
+        output['name'] = color('name', self.name)
 
 
-		ok_string = color('part_good', 'OK')
-		missing_string = color('part_big_problem', 'MISSING')
+        ok_string = color('part_good', 'OK')
+        missing_string = color('part_big_problem', 'MISSING')
 
 
-		output['brief_description'] = ok_string if self.has_brief_description else missing_string
-		output['description'] = ok_string if self.has_description else missing_string
+        output['brief_description'] = ok_string if self.has_brief_description else missing_string
+        output['description'] = ok_string if self.has_description else missing_string
 
 
-		description_progress = ClassStatusProgress(
-			(self.has_brief_description + self.has_description) * overall_progress_description_weigth,
-			2 * overall_progress_description_weigth
-		)
-		items_progress = ClassStatusProgress()
+        description_progress = ClassStatusProgress(
+            (self.has_brief_description + self.has_description) * overall_progress_description_weigth,
+            2 * overall_progress_description_weigth
+        )
+        items_progress = ClassStatusProgress()
 
 
-		for k in ['methods', 'constants', 'members', 'signals']:
-			items_progress += self.progresses[k]
-			output[k] = self.progresses[k].to_configured_colored_string()
+        for k in ['methods', 'constants', 'members', 'signals']:
+            items_progress += self.progresses[k]
+            output[k] = self.progresses[k].to_configured_colored_string()
 
 
-		output['items'] = items_progress.to_configured_colored_string()
+        output['items'] = items_progress.to_configured_colored_string()
 
 
-		output['overall'] = (description_progress + items_progress).to_colored_string('{percent}%', '{pad_percent}{s}')
+        output['overall'] = (description_progress + items_progress).to_colored_string('{percent}%', '{pad_percent}{s}')
 
 
-		if self.name.startswith('Total'):
-			output['url'] = color('url', 'http://docs.godotengine.org/en/latest/classes/_classes.html')
-			if flags['s']:
-				output['comment'] = color('part_good', 'ALL OK')
-		else:
-			output['url'] = color('url', 'http://docs.godotengine.org/en/latest/classes/class_{name}.html'.format(name=self.name.lower()))
+        if self.name.startswith('Total'):
+            output['url'] = color('url', 'http://docs.godotengine.org/en/latest/classes/_classes.html')
+            if flags['s']:
+                output['comment'] = color('part_good', 'ALL OK')
+        else:
+            output['url'] = color('url', 'http://docs.godotengine.org/en/latest/classes/class_{name}.html'.format(name=self.name.lower()))
 
 
-			if flags['s'] and not flags['g'] and self.is_ok():
-				output['comment'] = color('part_good', 'ALL OK')
+            if flags['s'] and not flags['g'] and self.is_ok():
+                output['comment'] = color('part_good', 'ALL OK')
 
 
-		return output
+        return output
 
 
-	def generate_for_class(c):
-		status = ClassStatus()
-		status.name = c.attrib['name']
-		for tag in list(c):
+    def generate_for_class(c):
+        status = ClassStatus()
+        status.name = c.attrib['name']
+        for tag in list(c):
 
 
-			if tag.tag == 'brief_description':
-				status.has_brief_description = len(tag.text.strip()) > 0
+            if tag.tag == 'brief_description':
+                status.has_brief_description = len(tag.text.strip()) > 0
 
 
-			elif tag.tag == 'description':
-				status.has_description = len(tag.text.strip()) > 0
+            elif tag.tag == 'description':
+                status.has_description = len(tag.text.strip()) > 0
 
 
-			elif tag.tag in ['methods', 'signals']:
-				for sub_tag in list(tag):
-					descr = sub_tag.find('description')
-					status.progresses[tag.tag].increment(len(descr.text.strip()) > 0)
+            elif tag.tag in ['methods', 'signals']:
+                for sub_tag in list(tag):
+                    descr = sub_tag.find('description')
+                    status.progresses[tag.tag].increment(len(descr.text.strip()) > 0)
 
 
-			elif tag.tag in ['constants', 'members']:
-				for sub_tag in list(tag):
-					status.progresses[tag.tag].increment(len(sub_tag.text.strip()) > 0)
+            elif tag.tag in ['constants', 'members']:
+                for sub_tag in list(tag):
+                    status.progresses[tag.tag].increment(len(sub_tag.text.strip()) > 0)
 
 
-			elif tag.tag in ['theme_items']:
-				pass #Ignore those tags, since they seem to lack description at all
+            elif tag.tag in ['theme_items']:
+                pass #Ignore those tags, since they seem to lack description at all
 
 
-			else:
-				print(tag.tag, tag.attrib)
+            else:
+                print(tag.tag, tag.attrib)
 
 
-		return status
+        return status
 
 
 
 
 
 
@@ -248,31 +248,31 @@ input_file_list = []
 input_class_list = []
 input_class_list = []
 
 
 for arg in sys.argv[1:]:
 for arg in sys.argv[1:]:
-	if arg.startswith('--'):
-		flags[long_flags[arg[2:]]] = not flags[long_flags[arg[2:]]]
-	elif arg.startswith('-'):
-		for f in arg[1:]:
-			flags[f] = not flags[f]
-	elif arg.endswith('.xml'):
-		input_file_list.append(arg)
-	else:
-		input_class_list.append(arg)
+    if arg.startswith('--'):
+        flags[long_flags[arg[2:]]] = not flags[long_flags[arg[2:]]]
+    elif arg.startswith('-'):
+        for f in arg[1:]:
+            flags[f] = not flags[f]
+    elif arg.endswith('.xml'):
+        input_file_list.append(arg)
+    else:
+        input_class_list.append(arg)
 
 
 if flags['i']:
 if flags['i']:
-	for r in ['methods', 'constants', 'members', 'signals']:
-		index = table_columns.index(r)
-		del table_column_names[index]
-		del table_columns[index]
-	table_column_names.append('Items')
-	table_columns.append('items')
+    for r in ['methods', 'constants', 'members', 'signals']:
+        index = table_columns.index(r)
+        del table_column_names[index]
+        del table_columns[index]
+    table_column_names.append('Items')
+    table_columns.append('items')
 
 
 if flags['o'] == (not flags['i']):
 if flags['o'] == (not flags['i']):
-	table_column_names.append('Overall')
-	table_columns.append('overall')
+    table_column_names.append('Overall')
+    table_columns.append('overall')
 
 
 if flags['u']:
 if flags['u']:
-	table_column_names.append('Docs URL')
-	table_columns.append('url')
+    table_column_names.append('Docs URL')
+    table_columns.append('url')
 
 
 
 
 ################################################################################
 ################################################################################
@@ -280,28 +280,28 @@ if flags['u']:
 ################################################################################
 ################################################################################
 
 
 if len(input_file_list) < 1 or flags['h']:
 if len(input_file_list) < 1 or flags['h']:
-	if not flags['h']:
-		print(color('section', 'Invalid usage') + ': At least one classes.xml file is required')
-	print(color('section', 'Usage') + ': doc_status.py [flags] <classes.xml> [class names]')
-	print('\t< and > signify required parameters, while [ and ] signify optional parameters.')
-	print('\tNote that you can give more than one classes file, in which case they will be merged on-the-fly.')
-	print(color('section', 'Available flags') + ':')
-	possible_synonym_list = list(long_flags)
-	possible_synonym_list.sort()
-	flag_list = list(flags)
-	flag_list.sort()
-	for flag in flag_list:
-		synonyms = [color('name', '-' + flag)]
-		for synonym in possible_synonym_list:
-			if long_flags[synonym] == flag:
-				synonyms.append(color('name', '--' + synonym))
-
-		print(('{synonyms} (Currently '+color('state_'+('on' if flags[flag] else 'off'), '{value}')+')\n\t{description}').format(
-			synonyms = ', '.join(synonyms),
-			value = ('on' if flags[flag] else 'off'),
-			description = flag_descriptions[flag]
-		))
-	sys.exit(0)
+    if not flags['h']:
+        print(color('section', 'Invalid usage') + ': At least one classes.xml file is required')
+    print(color('section', 'Usage') + ': doc_status.py [flags] <classes.xml> [class names]')
+    print('\t< and > signify required parameters, while [ and ] signify optional parameters.')
+    print('\tNote that you can give more than one classes file, in which case they will be merged on-the-fly.')
+    print(color('section', 'Available flags') + ':')
+    possible_synonym_list = list(long_flags)
+    possible_synonym_list.sort()
+    flag_list = list(flags)
+    flag_list.sort()
+    for flag in flag_list:
+        synonyms = [color('name', '-' + flag)]
+        for synonym in possible_synonym_list:
+            if long_flags[synonym] == flag:
+                synonyms.append(color('name', '--' + synonym))
+
+        print(('{synonyms} (Currently '+color('state_'+('on' if flags[flag] else 'off'), '{value}')+')\n\t{description}').format(
+            synonyms = ', '.join(synonyms),
+            value = ('on' if flags[flag] else 'off'),
+            description = flag_descriptions[flag]
+        ))
+    sys.exit(0)
 
 
 
 
 
 
@@ -313,25 +313,25 @@ class_names = []
 classes = {}
 classes = {}
 
 
 for file in input_file_list:
 for file in input_file_list:
-	tree = ET.parse(file)
-	doc = tree.getroot()
+    tree = ET.parse(file)
+    doc = tree.getroot()
 
 
-	if 'version' not in doc.attrib:
-		print('Version missing from "doc"')
-		sys.exit(255)
+    if 'version' not in doc.attrib:
+        print('Version missing from "doc"')
+        sys.exit(255)
 
 
-	version = doc.attrib['version']
+    version = doc.attrib['version']
 
 
-	for c in list(doc):
-		if c.attrib['name'] in class_names:
-			continue
-		class_names.append(c.attrib['name'])
-		classes[c.attrib['name']] = c
+    for c in list(doc):
+        if c.attrib['name'] in class_names:
+            continue
+        class_names.append(c.attrib['name'])
+        classes[c.attrib['name']] = c
 
 
 class_names.sort()
 class_names.sort()
 
 
 if len(input_class_list) < 1:
 if len(input_class_list) < 1:
-	input_class_list = class_names
+    input_class_list = class_names
 
 
 
 
 
 
@@ -346,32 +346,32 @@ table_column_chars = '|'
 total_status = ClassStatus('Total')
 total_status = ClassStatus('Total')
 
 
 for cn in input_class_list:
 for cn in input_class_list:
-	if not cn in classes:
-		print('Cannot find class ' + cn + '!')
-		sys.exit(255)
+    if not cn in classes:
+        print('Cannot find class ' + cn + '!')
+        sys.exit(255)
 
 
-	c = classes[cn]
-	validate_tag(c, 'class')
-	status = ClassStatus.generate_for_class(c)
+    c = classes[cn]
+    validate_tag(c, 'class')
+    status = ClassStatus.generate_for_class(c)
 
 
-	if flags['b'] and status.is_ok():
-		continue
-	if flags['g'] and not status.is_ok():
-		continue
+    if flags['b'] and status.is_ok():
+        continue
+    if flags['g'] and not status.is_ok():
+        continue
 
 
-	total_status = total_status + status
-	out = status.make_output()
-	row = []
-	for column in table_columns:
-		if column in out:
-			row.append(out[column])
-		else:
-			row.append('')
+    total_status = total_status + status
+    out = status.make_output()
+    row = []
+    for column in table_columns:
+        if column in out:
+            row.append(out[column])
+        else:
+            row.append('')
 
 
-	if 'comment' in out and out['comment'] != '':
-		row.append(out['comment'])
+    if 'comment' in out and out['comment'] != '':
+        row.append(out['comment'])
 
 
-	table.append(row)
+    table.append(row)
 
 
 
 
 
 
@@ -381,50 +381,50 @@ for cn in input_class_list:
 ################################################################################
 ################################################################################
 
 
 if len(table) == 1:
 if len(table) == 1:
-	print(color('part_big_problem', 'No classes suitable for printing!'))
-	sys.exit(0)
+    print(color('part_big_problem', 'No classes suitable for printing!'))
+    sys.exit(0)
 
 
 if len(table) > 2:
 if len(table) > 2:
-	total_status.name = 'Total = {0}'.format(len(table) - 1)
-	out = total_status.make_output()
-	row = []
-	for column in table_columns:
-		if column in out:
-			row.append(out[column])
-		else:
-			row.append('')
-	table.append(row)
+    total_status.name = 'Total = {0}'.format(len(table) - 1)
+    out = total_status.make_output()
+    row = []
+    for column in table_columns:
+        if column in out:
+            row.append(out[column])
+        else:
+            row.append('')
+    table.append(row)
 
 
 table_column_sizes = []
 table_column_sizes = []
 for row in table:
 for row in table:
-	for cell_i, cell in enumerate(row):
-		if cell_i >= len(table_column_sizes):
-			table_column_sizes.append(0)
+    for cell_i, cell in enumerate(row):
+        if cell_i >= len(table_column_sizes):
+            table_column_sizes.append(0)
 
 
-		table_column_sizes[cell_i] = max(nonescape_len(cell), table_column_sizes[cell_i])
+        table_column_sizes[cell_i] = max(nonescape_len(cell), table_column_sizes[cell_i])
 
 
 divider_string = table_row_chars[0]
 divider_string = table_row_chars[0]
 for cell_i in range(len(table[0])):
 for cell_i in range(len(table[0])):
-	divider_string += table_row_chars[1] * (table_column_sizes[cell_i] + 2) + table_row_chars[0]
+    divider_string += table_row_chars[1] * (table_column_sizes[cell_i] + 2) + table_row_chars[0]
 print(divider_string)
 print(divider_string)
 
 
 for row_i, row in enumerate(table):
 for row_i, row in enumerate(table):
-	row_string = table_column_chars
-	for cell_i, cell in enumerate(row):
-		padding_needed = table_column_sizes[cell_i] - nonescape_len(cell) + 2
-		if cell_i == 0:
-			row_string += table_row_chars[2] + cell + table_row_chars[2]*(padding_needed-1)
-		else:
-			row_string += table_row_chars[2]*math.floor(padding_needed/2) + cell + table_row_chars[2]*math.ceil((padding_needed/2))
-		row_string += table_column_chars
+    row_string = table_column_chars
+    for cell_i, cell in enumerate(row):
+        padding_needed = table_column_sizes[cell_i] - nonescape_len(cell) + 2
+        if cell_i == 0:
+            row_string += table_row_chars[2] + cell + table_row_chars[2]*(padding_needed-1)
+        else:
+            row_string += table_row_chars[2]*math.floor(padding_needed/2) + cell + table_row_chars[2]*math.ceil((padding_needed/2))
+        row_string += table_column_chars
 
 
-	print(row_string)
+    print(row_string)
 
 
-	if row_i == 0 or row_i == len(table) - 2:
-		print(divider_string)
+    if row_i == 0 or row_i == len(table) - 2:
+        print(divider_string)
 
 
 print(divider_string)
 print(divider_string)
 
 
 if total_status.is_ok() and not flags['g']:
 if total_status.is_ok() and not flags['g']:
-	print('All listed classes are ' + color('part_good', 'OK') + '!')
+    print('All listed classes are ' + color('part_good', 'OK') + '!')
 
 

+ 242 - 242
doc/tools/makedoku.py

@@ -8,17 +8,17 @@ input_list = []
 
 
 
 
 for arg in sys.argv[1:]:
 for arg in sys.argv[1:]:
-  input_list.append(arg)
+    input_list.append(arg)
 
 
 if len(input_list) < 1:
 if len(input_list) < 1:
-  print("usage: makedoku.py <classes.xml>")
-  sys.exit(0)
+    print("usage: makedoku.py <classes.xml>")
+    sys.exit(0)
 
 
 
 
 def validate_tag(elem,tag):
 def validate_tag(elem,tag):
-  if (elem.tag != tag):
-    print("Tag mismatch, expected '"+tag+"', got "+elem.tag);
-    sys.exit(255)
+    if (elem.tag != tag):
+        print("Tag mismatch, expected '"+tag+"', got "+elem.tag);
+        sys.exit(255)
 
 
 
 
 class_names=[]
 class_names=[]
@@ -27,289 +27,289 @@ classes={}
 
 
 def make_class_list(class_list,columns):
 def make_class_list(class_list,columns):
 
 
-	f=open("class_list.txt","wb")
-	prev=0
-	col_max = len(class_list) / columns + 1
-	print("col max is ", col_max)
-	col_count = 0
-	row_count = 0
-	last_initial = ""
-	fit_columns=[]
+    f=open("class_list.txt","wb")
+    prev=0
+    col_max = len(class_list) / columns + 1
+    print("col max is ", col_max)
+    col_count = 0
+    row_count = 0
+    last_initial = ""
+    fit_columns=[]
 
 
-	for n in range(0,columns):
-		fit_columns+=[[]]
+    for n in range(0,columns):
+        fit_columns+=[[]]
 
 
-	indexers=[]
-	last_initial=""
+    indexers=[]
+    last_initial=""
 
 
-	idx=0
-	for n in class_list:
-		col = idx/col_max
-		if (col>=columns):
-			col=columns-1
-		fit_columns[col]+=[n]
-		idx+=1
-		if (n[:1]!=last_initial):
-			indexers+=[n]
-		last_initial=n[:1]
+    idx=0
+    for n in class_list:
+        col = idx/col_max
+        if (col>=columns):
+            col=columns-1
+        fit_columns[col]+=[n]
+        idx+=1
+        if (n[:1]!=last_initial):
+            indexers+=[n]
+        last_initial=n[:1]
 
 
 
 
-	row_max=0
+    row_max=0
 
 
-	for n in range(0,columns):
-		if (len(fit_columns[n])>row_max):
-			row_max=len(fit_columns[n])
+    for n in range(0,columns):
+        if (len(fit_columns[n])>row_max):
+            row_max=len(fit_columns[n])
 
 
 
 
-	for r in range(0,row_max):
-		s="|"
-		for c in range(0,columns):
-			if (r>=len(fit_columns[c])):
-				continue
+    for r in range(0,row_max):
+        s="|"
+        for c in range(0,columns):
+            if (r>=len(fit_columns[c])):
+                continue
 
 
-			classname = fit_columns[c][r]
-			initial=classname[0]
-			if (classname in indexers):
-				s+="**"+initial+"**|"
-			else:
-				s+=" |"
+            classname = fit_columns[c][r]
+            initial=classname[0]
+            if (classname in indexers):
+                s+="**"+initial+"**|"
+            else:
+                s+=" |"
 
 
-			s+="[["+classname.lower()+"|"+classname+"]]|"
+            s+="[["+classname.lower()+"|"+classname+"]]|"
 
 
-		s+="\n"
-		f.write(s)
+        s+="\n"
+        f.write(s)
 
 
 
 
 def dokuize_text(txt):
 def dokuize_text(txt):
 
 
-	return txt
+    return txt
 
 
 
 
 def dokuize_text(text):
 def dokuize_text(text):
- pos=0
- while(True):
-  pos = text.find("[",pos)
-  if (pos==-1):
-   break
-
-  endq_pos=text.find("]",pos+1)
-  if (endq_pos==-1):
-   break
-
-  pre_text=text[:pos]
-  post_text=text[endq_pos+1:]
-  tag_text=text[pos+1:endq_pos]
-
-  if (tag_text in class_names):
-    tag_text="[["+tag_text.lower()+"|"+tag_text+"]]"
-  else: #command
-   cmd=tag_text
-   space_pos=tag_text.find(" ")
-   if (cmd.find("html")==0):
-    cmd=tag_text[:space_pos]
-    param=tag_text[space_pos+1:]
-    tag_text="<"+param+">"
-   elif(cmd.find("method")==0):
-    cmd=tag_text[:space_pos]
-    param=tag_text[space_pos+1:]
-
-    if (param.find(".")!=-1):
-     class_param,method_param=param.split(".")
-     tag_text="[["+class_param.lower()+"#"+method_param+"|"+class_param+'.'+method_param+"]]"
-    else:
-     tag_text="[[#"+param+"|"+param+"]]"
-   elif (cmd.find("image=")==0):
-    tag_text="{{"+cmd[6:]+"}}"
-   elif (cmd.find("url=")==0):
-    tag_text="[["+cmd[4:]+"|"
-   elif (cmd=="/url"):
-    tag_text="]]>"
-   elif (cmd=="center"):
-    tag_text=""
-   elif (cmd=="/center"):
-    tag_text=""
-   elif (cmd=="br"):
-    tag_text="\\\\\n"
-   elif (cmd=="i" or cmd=="/i"):
-    tag_text="//"
-   elif (cmd=="b" or cmd=="/b"):
-    tag_text="**"
-   elif (cmd=="u" or cmd=="/u"):
-    tag_text="__"
-   else:
-    tag_text="["+tag_text+"]"
-
-
-  text=pre_text+tag_text+post_text
-  pos=len(pre_text)+len(tag_text)
-
- #tnode = ET.SubElement(parent,"div")
- #tnode.text=text
- return text
+    pos=0
+    while(True):
+        pos = text.find("[",pos)
+        if (pos==-1):
+            break
+
+        endq_pos=text.find("]",pos+1)
+        if (endq_pos==-1):
+            break
+
+        pre_text=text[:pos]
+        post_text=text[endq_pos+1:]
+        tag_text=text[pos+1:endq_pos]
+
+        if (tag_text in class_names):
+            tag_text="[["+tag_text.lower()+"|"+tag_text+"]]"
+        else: #command
+            cmd=tag_text
+            space_pos=tag_text.find(" ")
+            if (cmd.find("html")==0):
+                cmd=tag_text[:space_pos]
+                param=tag_text[space_pos+1:]
+                tag_text="<"+param+">"
+            elif(cmd.find("method")==0):
+                cmd=tag_text[:space_pos]
+                param=tag_text[space_pos+1:]
+
+                if (param.find(".")!=-1):
+                    class_param,method_param=param.split(".")
+                    tag_text="[["+class_param.lower()+"#"+method_param+"|"+class_param+'.'+method_param+"]]"
+                else:
+                    tag_text="[[#"+param+"|"+param+"]]"
+            elif (cmd.find("image=")==0):
+                tag_text="{{"+cmd[6:]+"}}"
+            elif (cmd.find("url=")==0):
+                tag_text="[["+cmd[4:]+"|"
+            elif (cmd=="/url"):
+                tag_text="]]>"
+            elif (cmd=="center"):
+                tag_text=""
+            elif (cmd=="/center"):
+                tag_text=""
+            elif (cmd=="br"):
+                tag_text="\\\\\n"
+            elif (cmd=="i" or cmd=="/i"):
+                tag_text="//"
+            elif (cmd=="b" or cmd=="/b"):
+                tag_text="**"
+            elif (cmd=="u" or cmd=="/u"):
+                tag_text="__"
+            else:
+                tag_text="["+tag_text+"]"
+
+
+        text=pre_text+tag_text+post_text
+        pos=len(pre_text)+len(tag_text)
+
+    #tnode = ET.SubElement(parent,"div")
+    #tnode.text=text
+    return text
 
 
 
 
 def make_type(t):
 def make_type(t):
-	global class_names
-	if (t in class_names):
-		return "[["+t.lower()+"|"+t+"]]"
-	return t
+    global class_names
+    if (t in class_names):
+        return "[["+t.lower()+"|"+t+"]]"
+    return t
 
 
 
 
 def make_method(f,name,m,declare,event=False):
 def make_method(f,name,m,declare,event=False):
 
 
-	s="  * "
-	ret_type="void"
-	args=list(m)
-	mdata={}
-	mdata["argidx"]=[]
-	for a in args:
-		if (a.tag=="return"):
-			idx=-1
-		elif (a.tag=="argument"):
-			idx=int(a.attrib["index"])
-		else:
-			continue
-
-		mdata["argidx"].append(idx)
-		mdata[idx]=a
-
-
-
-	if (not event):
-		if (-1 in mdata["argidx"]):
-			s+=make_type(mdata[-1].attrib["type"])
-		else:
-			s+="void"
-		s+=" "
-
-	if (declare):
-
-		#span.attrib["class"]="funcdecl"
-		#a=ET.SubElement(span,"a")
-		#a.attrib["name"]=name+"_"+m.attrib["name"]
-		#a.text=name+"::"+m.attrib["name"]
-		s+="**"+m.attrib["name"]+"**"
-	else:
-		s+="[[#"+m.attrib["name"]+"|"+m.attrib["name"]+"]]"
+    s="  * "
+    ret_type="void"
+    args=list(m)
+    mdata={}
+    mdata["argidx"]=[]
+    for a in args:
+        if (a.tag=="return"):
+            idx=-1
+        elif (a.tag=="argument"):
+            idx=int(a.attrib["index"])
+        else:
+            continue
+
+        mdata["argidx"].append(idx)
+        mdata[idx]=a
+
+
+
+    if (not event):
+        if (-1 in mdata["argidx"]):
+            s+=make_type(mdata[-1].attrib["type"])
+        else:
+            s+="void"
+        s+=" "
+
+    if (declare):
+
+        #span.attrib["class"]="funcdecl"
+        #a=ET.SubElement(span,"a")
+        #a.attrib["name"]=name+"_"+m.attrib["name"]
+        #a.text=name+"::"+m.attrib["name"]
+        s+="**"+m.attrib["name"]+"**"
+    else:
+        s+="[[#"+m.attrib["name"]+"|"+m.attrib["name"]+"]]"
 
 
-	s+="**(**"
-	argfound=False
-	for a in mdata["argidx"]:
-		arg=mdata[a]
-		if (a<0):
-			continue
-		if (a>0):
-			s+=", "
-		else:
-			s+=" "
+    s+="**(**"
+    argfound=False
+    for a in mdata["argidx"]:
+        arg=mdata[a]
+        if (a<0):
+            continue
+        if (a>0):
+            s+=", "
+        else:
+            s+=" "
 
 
-		s+=make_type(arg.attrib["type"])
-		if ("name" in arg.attrib):
-			s+=" "+arg.attrib["name"]
-		else:
-			s+=" arg"+str(a)
+        s+=make_type(arg.attrib["type"])
+        if ("name" in arg.attrib):
+            s+=" "+arg.attrib["name"]
+        else:
+            s+=" arg"+str(a)
 
 
-		if ("default" in arg.attrib):
-			s+="="+arg.attrib["default"]
+        if ("default" in arg.attrib):
+            s+="="+arg.attrib["default"]
 
 
 
 
-		argfound=True
+        argfound=True
 
 
-	if (argfound):
-		s+=" "
-	s+="**)**"
+    if (argfound):
+        s+=" "
+    s+="**)**"
 
 
-	if ("qualifiers" in m.attrib):
-		s+=" "+m.attrib["qualifiers"]
+    if ("qualifiers" in m.attrib):
+        s+=" "+m.attrib["qualifiers"]
 
 
-	f.write(s+"\n")
+    f.write(s+"\n")
 
 
 
 
 def make_doku_class(node):
 def make_doku_class(node):
 
 
-	name = node.attrib["name"]
+    name = node.attrib["name"]
 
 
-	f=open(name.lower()+".txt","wb")
+    f=open(name.lower()+".txt","wb")
 
 
-	f.write("======  "+name+"  ======\n")
+    f.write("======  "+name+"  ======\n")
 
 
-	if ("inherits" in node.attrib):
-		inh=node.attrib["inherits"].strip()
-		f.write("**Inherits:** [["+inh.lower()+"|"+inh+"]]\\\\\n")
-	if ("category" in node.attrib):
-		f.write("**Category:** "+node.attrib["category"].strip()+"\\\\\n")
+    if ("inherits" in node.attrib):
+        inh=node.attrib["inherits"].strip()
+        f.write("**Inherits:** [["+inh.lower()+"|"+inh+"]]\\\\\n")
+    if ("category" in node.attrib):
+        f.write("**Category:** "+node.attrib["category"].strip()+"\\\\\n")
 
 
-	briefd = node.find("brief_description")
-	if (briefd!=None):
-		f.write("=====  Brief Description  ======\n")
-		f.write( dokuize_text(briefd.text.strip())+"\n" )
+    briefd = node.find("brief_description")
+    if (briefd!=None):
+        f.write("=====  Brief Description  ======\n")
+        f.write( dokuize_text(briefd.text.strip())+"\n" )
 
 
-	methods = node.find("methods")
+    methods = node.find("methods")
 
 
-	if(methods!=None and len(list(methods))>0):
-		f.write("=====  Member Functions  ======\n")
-		for m in list(methods):
-			make_method(f,node.attrib["name"],m,False)
+    if(methods!=None and len(list(methods))>0):
+        f.write("=====  Member Functions  ======\n")
+        for m in list(methods):
+            make_method(f,node.attrib["name"],m,False)
 
 
-	events = node.find("signals")
-	if(events!=None and len(list(events))>0):
-		f.write("=====  Signals  ======\n")
-		for m in list(events):
-			make_method(f,node.attrib["name"],m,True,True)
+    events = node.find("signals")
+    if(events!=None and len(list(events))>0):
+        f.write("=====  Signals  ======\n")
+        for m in list(events):
+            make_method(f,node.attrib["name"],m,True,True)
 
 
-	members = node.find("members")
+    members = node.find("members")
 
 
-	if(members!=None and len(list(members))>0):
-		f.write("=====  Member Variables  ======\n")
+    if(members!=None and len(list(members))>0):
+        f.write("=====  Member Variables  ======\n")
 
 
-		for c in list(members):
-			s = "  * "
-			s+=make_type(c.attrib["type"])+" "
-			s+="**"+c.attrib["name"]+"**"
-			if (c.text.strip()!=""):
-				s+=" - "+c.text.strip()
-			f.write(s+"\n")
+        for c in list(members):
+            s = "  * "
+            s+=make_type(c.attrib["type"])+" "
+            s+="**"+c.attrib["name"]+"**"
+            if (c.text.strip()!=""):
+                s+=" - "+c.text.strip()
+            f.write(s+"\n")
 
 
 
 
 
 
-	constants = node.find("constants")
-	if(constants!=None and len(list(constants))>0):
-		f.write("=====  Numeric Constants  ======\n")
-		for c in list(constants):
-			s = "  * "
-			s+="**"+c.attrib["name"]+"**"
-			if ("value" in c.attrib):
-				s+=" = **"+c.attrib["value"]+"**"
-			if (c.text.strip()!=""):
-				s+=" - "+c.text.strip()
-			f.write(s+"\n")
+    constants = node.find("constants")
+    if(constants!=None and len(list(constants))>0):
+        f.write("=====  Numeric Constants  ======\n")
+        for c in list(constants):
+            s = "  * "
+            s+="**"+c.attrib["name"]+"**"
+            if ("value" in c.attrib):
+                s+=" = **"+c.attrib["value"]+"**"
+            if (c.text.strip()!=""):
+                s+=" - "+c.text.strip()
+            f.write(s+"\n")
 
 
 
 
-	descr=node.find("description")
-	if (descr!=None and descr.text.strip()!=""):
-		f.write("=====  Description  ======\n")
-		f.write(dokuize_text(descr.text.strip())+"\n")
+    descr=node.find("description")
+    if (descr!=None and descr.text.strip()!=""):
+        f.write("=====  Description  ======\n")
+        f.write(dokuize_text(descr.text.strip())+"\n")
 
 
-	methods = node.find("methods")
+    methods = node.find("methods")
 
 
-	if(methods!=None and len(list(methods))>0):
-		f.write("=====  Member Function Description  ======\n")
-		for m in list(methods):
+    if(methods!=None and len(list(methods))>0):
+        f.write("=====  Member Function Description  ======\n")
+        for m in list(methods):
 
 
-			d=m.find("description")
-			if (d==None or d.text.strip()==""):
-				continue
-			f.write("==  "+m.attrib["name"]+"  ==\n")
-			make_method(f,node.attrib["name"],m,False)
-			f.write("\\\\\n")
-			f.write(dokuize_text(d.text.strip()))
-			f.write("\n")
+            d=m.find("description")
+            if (d==None or d.text.strip()==""):
+                continue
+            f.write("==  "+m.attrib["name"]+"  ==\n")
+            make_method(f,node.attrib["name"],m,False)
+            f.write("\\\\\n")
+            f.write(dokuize_text(d.text.strip()))
+            f.write("\n")
 
 
 
 
 
 
 
 
 
 
-	"""
+    """
   div=ET.Element("div")
   div=ET.Element("div")
   div.attrib["class"]="class";
   div.attrib["class"]="class";
 
 
@@ -487,20 +487,20 @@ def make_doku_class(node):
   return div
   return div
 """
 """
 for file in input_list:
 for file in input_list:
-	tree = ET.parse(file)
-	doc=tree.getroot()
+    tree = ET.parse(file)
+    doc=tree.getroot()
 
 
-	if ("version" not in doc.attrib):
-		print("Version missing from 'doc'")
-		sys.exit(255)
+    if ("version" not in doc.attrib):
+        print("Version missing from 'doc'")
+        sys.exit(255)
 
 
-	version=doc.attrib["version"]
+    version=doc.attrib["version"]
 
 
-	for c in list(doc):
-		if (c.attrib["name"] in class_names):
-			continue
-		class_names.append(c.attrib["name"])
-		classes[c.attrib["name"]]=c
+    for c in list(doc):
+        if (c.attrib["name"] in class_names):
+            continue
+        class_names.append(c.attrib["name"])
+        classes[c.attrib["name"]]=c
 
 
 
 
 class_names.sort()
 class_names.sort()
@@ -508,7 +508,7 @@ class_names.sort()
 make_class_list(class_names,4)
 make_class_list(class_names,4)
 
 
 for cn in class_names:
 for cn in class_names:
-	c=classes[cn]
-	make_doku_class(c)
+    c=classes[cn]
+    make_doku_class(c)
 
 
 
 

File diff suppressed because it is too large
+ 541 - 541
doc/tools/makehtml.py


+ 290 - 290
doc/tools/makemd.py

@@ -7,17 +7,17 @@ import xml.etree.ElementTree as ET
 input_list = []
 input_list = []
 
 
 for arg in sys.argv[1:]:
 for arg in sys.argv[1:]:
-	input_list.append(arg)
+    input_list.append(arg)
 
 
 if len(input_list) < 1:
 if len(input_list) < 1:
-	print 'usage: makemd.py <classes.xml>'
-	sys.exit(0)
+    print 'usage: makemd.py <classes.xml>'
+    sys.exit(0)
 
 
 
 
 def validate_tag(elem, tag):
 def validate_tag(elem, tag):
-	if elem.tag != tag:
-		print "Tag mismatch, expected '" + tag + "', got " + elem.tag
-		sys.exit(255)
+    if elem.tag != tag:
+        print "Tag mismatch, expected '" + tag + "', got " + elem.tag
+        sys.exit(255)
 
 
 
 
 class_names = []
 class_names = []
@@ -26,321 +26,321 @@ classes = {}
 
 
 def make_class_list(class_list, columns):
 def make_class_list(class_list, columns):
 
 
-	f = open('class_list.md', 'wb')
-	prev = 0
-	col_max = len(class_list) / columns + 1
-	print ('col max is ', col_max)
-	col_count = 0
-	row_count = 0
-	last_initial = ''
-	fit_columns = []
-
-	for n in range(0, columns):
-		fit_columns += [[]]
-
-	indexers = []
-	last_initial = ''
-
-	idx = 0
-	for n in class_list:
-		col = idx / col_max
-		if col >= columns:
-			col = columns - 1
-		fit_columns[col] += [n]
-		idx += 1
-		if n[:1] != last_initial:
-			indexers += [n]
-		last_initial = n[:1]
-
-	row_max = 0
-	f.write("\n")
-
-	for n in range(0, columns):
-		if len(fit_columns[n]) > row_max:
-			row_max = len(fit_columns[n])
-
-	f.write("| ")
-	for n in range(0, columns):
-		f.write(" | |")
-
-	f.write("\n")
-	f.write("| ")
-	for n in range(0, columns):
-		f.write(" --- | ------- |")
-	f.write("\n")
-
-	for r in range(0, row_max):
-		s = '| '
-		for c in range(0, columns):
-			if r >= len(fit_columns[c]):
-				continue
-
-			classname = fit_columns[c][r]
-			initial = classname[0]
-			if classname in indexers:
-				s += '**' + initial + '** | '
-			else:
-				s += ' | '
-
-			s += '[' + classname + '](class_'+ classname.lower()+') | '
-
-		s += '\n'
-		f.write(s)
+    f = open('class_list.md', 'wb')
+    prev = 0
+    col_max = len(class_list) / columns + 1
+    print ('col max is ', col_max)
+    col_count = 0
+    row_count = 0
+    last_initial = ''
+    fit_columns = []
+
+    for n in range(0, columns):
+        fit_columns += [[]]
+
+    indexers = []
+    last_initial = ''
+
+    idx = 0
+    for n in class_list:
+        col = idx / col_max
+        if col >= columns:
+            col = columns - 1
+        fit_columns[col] += [n]
+        idx += 1
+        if n[:1] != last_initial:
+            indexers += [n]
+        last_initial = n[:1]
+
+    row_max = 0
+    f.write("\n")
+
+    for n in range(0, columns):
+        if len(fit_columns[n]) > row_max:
+            row_max = len(fit_columns[n])
+
+    f.write("| ")
+    for n in range(0, columns):
+        f.write(" | |")
+
+    f.write("\n")
+    f.write("| ")
+    for n in range(0, columns):
+        f.write(" --- | ------- |")
+    f.write("\n")
+
+    for r in range(0, row_max):
+        s = '| '
+        for c in range(0, columns):
+            if r >= len(fit_columns[c]):
+                continue
+
+            classname = fit_columns[c][r]
+            initial = classname[0]
+            if classname in indexers:
+                s += '**' + initial + '** | '
+            else:
+                s += ' | '
+
+            s += '[' + classname + '](class_'+ classname.lower()+') | '
+
+        s += '\n'
+        f.write(s)
 
 
 
 
 def dokuize_text(txt):
 def dokuize_text(txt):
 
 
-	return txt
+    return txt
 
 
 
 
 def dokuize_text(text):
 def dokuize_text(text):
-	pos = 0
-	while True:
-		pos = text.find('[', pos)
-		if pos == -1:
-			break
-
-		endq_pos = text.find(']', pos + 1)
-		if endq_pos == -1:
-			break
-
-		pre_text = text[:pos]
-		post_text = text[endq_pos + 1:]
-		tag_text = text[pos + 1:endq_pos]
-
-		if tag_text in class_names:
-			tag_text = make_type(tag_text)
-		else:
-
-		# command
-
-			cmd = tag_text
-			space_pos = tag_text.find(' ')
-			if cmd.find('html') == 0:
-				cmd = tag_text[:space_pos]
-				param = tag_text[space_pos + 1:]
-				tag_text = '<' + param + '>'
-			elif cmd.find('method') == 0:
-				cmd = tag_text[:space_pos]
-				param = tag_text[space_pos + 1:]
-
-				if param.find('.') != -1:
-					(class_param, method_param) = param.split('.')
-					tag_text = '['+class_param+'.'+method_param.replace("_","&#95;")+'](' + class_param.lower() + '#' \
-						+ method_param + ')'
-				else:
-					tag_text = '[' + param.replace("_","&#95;") + '](#' + param + ')'
-			elif cmd.find('image=') == 0:
-				tag_text = '![](' + cmd[6:] + ')'
-			elif cmd.find('url=') == 0:
-				tag_text = '[' + cmd[4:] + ']('+cmd[4:]
-			elif cmd == '/url':
-				tag_text = ')'
-			elif cmd == 'center':
-				tag_text = ''
-			elif cmd == '/center':
-				tag_text = ''
-			elif cmd == 'br':
-				tag_text = '\n'
-			elif cmd == 'i' or cmd == '/i':
-				tag_text = '_'
-			elif cmd == 'b' or cmd == '/b':
-				tag_text = '**'
-			elif cmd == 'u' or cmd == '/u':
-				tag_text = '__'
-			else:
-				tag_text = '[' + tag_text + ']'
-
-		text = pre_text + tag_text + post_text
-		pos = len(pre_text) + len(tag_text)
+    pos = 0
+    while True:
+        pos = text.find('[', pos)
+        if pos == -1:
+            break
+
+        endq_pos = text.find(']', pos + 1)
+        if endq_pos == -1:
+            break
+
+        pre_text = text[:pos]
+        post_text = text[endq_pos + 1:]
+        tag_text = text[pos + 1:endq_pos]
+
+        if tag_text in class_names:
+            tag_text = make_type(tag_text)
+        else:
+
+            # command
+
+            cmd = tag_text
+            space_pos = tag_text.find(' ')
+            if cmd.find('html') == 0:
+                cmd = tag_text[:space_pos]
+                param = tag_text[space_pos + 1:]
+                tag_text = '<' + param + '>'
+            elif cmd.find('method') == 0:
+                cmd = tag_text[:space_pos]
+                param = tag_text[space_pos + 1:]
+
+                if param.find('.') != -1:
+                    (class_param, method_param) = param.split('.')
+                    tag_text = '['+class_param+'.'+method_param.replace("_","&#95;")+'](' + class_param.lower() + '#' \
+                        + method_param + ')'
+                else:
+                    tag_text = '[' + param.replace("_","&#95;") + '](#' + param + ')'
+            elif cmd.find('image=') == 0:
+                tag_text = '![](' + cmd[6:] + ')'
+            elif cmd.find('url=') == 0:
+                tag_text = '[' + cmd[4:] + ']('+cmd[4:]
+            elif cmd == '/url':
+                tag_text = ')'
+            elif cmd == 'center':
+                tag_text = ''
+            elif cmd == '/center':
+                tag_text = ''
+            elif cmd == 'br':
+                tag_text = '\n'
+            elif cmd == 'i' or cmd == '/i':
+                tag_text = '_'
+            elif cmd == 'b' or cmd == '/b':
+                tag_text = '**'
+            elif cmd == 'u' or cmd == '/u':
+                tag_text = '__'
+            else:
+                tag_text = '[' + tag_text + ']'
+
+        text = pre_text + tag_text + post_text
+        pos = len(pre_text) + len(tag_text)
 
 
  # tnode = ET.SubElement(parent,"div")
  # tnode = ET.SubElement(parent,"div")
  # tnode.text=text
  # tnode.text=text
 
 
-	return text
+    return text
 
 
 
 
 def make_type(t):
 def make_type(t):
-	global class_names
-	if t in class_names:
-		return '[' + t + '](class_' + t.lower() + ')'
-	return t
+    global class_names
+    if t in class_names:
+        return '[' + t + '](class_' + t.lower() + ')'
+    return t
 
 
 
 
 def make_method(
 def make_method(
-	f,
-	name,
-	m,
-	declare,
-	event=False,
-	):
-
-	s = '  * '
-	ret_type = 'void'
-	args = list(m)
-	mdata = {}
-	mdata['argidx'] = []
-	for a in args:
-		if a.tag == 'return':
-			idx = -1
-		elif a.tag == 'argument':
-			idx = int(a.attrib['index'])
-		else:
-			continue
-
-		mdata['argidx'].append(idx)
-		mdata[idx] = a
-
-	if not event:
-		if -1 in mdata['argidx']:
-			s += make_type(mdata[-1].attrib['type'])
-		else:
-			s += 'void'
-		s += ' '
-
-	if declare:
-
-		# span.attrib["class"]="funcdecl"
-		# a=ET.SubElement(span,"a")
-		# a.attrib["name"]=name+"_"+m.attrib["name"]
-		# a.text=name+"::"+m.attrib["name"]
-
-		s += ' **'+m.attrib['name'].replace("_","&#95;")+'** '
-	else:
-		s += ' **['+ m.attrib['name'].replace("_","&#95;")+'](#' + m.attrib['name'] + ')** '
-
-	s += ' **(**'
-	argfound = False
-	for a in mdata['argidx']:
-		arg = mdata[a]
-		if a < 0:
-			continue
-		if a > 0:
-			s += ', '
-		else:
-			s += ' '
-
-		s += make_type(arg.attrib['type'])
-		if 'name' in arg.attrib:
-			s += ' ' + arg.attrib['name']
-		else:
-			s += ' arg' + str(a)
-
-		if 'default' in arg.attrib:
-			s += '=' + arg.attrib['default']
-
-		argfound = True
-
-	if argfound:
-		s += ' '
-	s += ' **)**'
-
-	if 'qualifiers' in m.attrib:
-		s += ' ' + m.attrib['qualifiers']
-
-	f.write(s + '\n')
+        f,
+        name,
+        m,
+        declare,
+        event=False,
+):
+
+    s = '  * '
+    ret_type = 'void'
+    args = list(m)
+    mdata = {}
+    mdata['argidx'] = []
+    for a in args:
+        if a.tag == 'return':
+            idx = -1
+        elif a.tag == 'argument':
+            idx = int(a.attrib['index'])
+        else:
+            continue
+
+        mdata['argidx'].append(idx)
+        mdata[idx] = a
+
+    if not event:
+        if -1 in mdata['argidx']:
+            s += make_type(mdata[-1].attrib['type'])
+        else:
+            s += 'void'
+        s += ' '
+
+    if declare:
+
+        # span.attrib["class"]="funcdecl"
+        # a=ET.SubElement(span,"a")
+        # a.attrib["name"]=name+"_"+m.attrib["name"]
+        # a.text=name+"::"+m.attrib["name"]
+
+        s += ' **'+m.attrib['name'].replace("_","&#95;")+'** '
+    else:
+        s += ' **['+ m.attrib['name'].replace("_","&#95;")+'](#' + m.attrib['name'] + ')** '
+
+    s += ' **(**'
+    argfound = False
+    for a in mdata['argidx']:
+        arg = mdata[a]
+        if a < 0:
+            continue
+        if a > 0:
+            s += ', '
+        else:
+            s += ' '
+
+        s += make_type(arg.attrib['type'])
+        if 'name' in arg.attrib:
+            s += ' ' + arg.attrib['name']
+        else:
+            s += ' arg' + str(a)
+
+        if 'default' in arg.attrib:
+            s += '=' + arg.attrib['default']
+
+        argfound = True
+
+    if argfound:
+        s += ' '
+    s += ' **)**'
+
+    if 'qualifiers' in m.attrib:
+        s += ' ' + m.attrib['qualifiers']
+
+    f.write(s + '\n')
 
 
 
 
 def make_doku_class(node):
 def make_doku_class(node):
 
 
-	name = node.attrib['name']
-
-	f = open("class_"+name.lower() + '.md', 'wb')
-
-	f.write('#  ' + name + '  \n')
-
-	if 'inherits' in node.attrib:
-		inh = node.attrib['inherits'].strip()
-		f.write('####**Inherits:** '+make_type(inh)+'\n')
-	if 'category' in node.attrib:
-		f.write('####**Category:** ' + node.attrib['category'].strip()
-				+ '\n')
-
-	briefd = node.find('brief_description')
-	if briefd != None:
-		f.write('\n###  Brief Description  \n')
-		f.write(dokuize_text(briefd.text.strip()) + '\n')
-
-	methods = node.find('methods')
-
-	if methods != None and len(list(methods)) > 0:
-		f.write('\n###  Member Functions \n')
-		for m in list(methods):
-			make_method(f, node.attrib['name'], m, False)
-
-	events = node.find('signals')
-	if events != None and len(list(events)) > 0:
-		f.write('\n###  Signals  \n')
-		for m in list(events):
-			make_method(f, node.attrib['name'], m, True, True)
-
-	members = node.find('members')
-
-	if members != None and len(list(members)) > 0:
-		f.write('\n###  Member Variables  \n')
-
-		for c in list(members):
-			s = '  * '
-			s += make_type(c.attrib['type']) + ' '
-			s += '**' + c.attrib['name'] + '**'
-			if c.text.strip() != '':
-				s += ' - ' + c.text.strip()
-			f.write(s + '\n')
-
-	constants = node.find('constants')
-	if constants != None and len(list(constants)) > 0:
-		f.write('\n###  Numeric Constants  \n')
-		for c in list(constants):
-			s = '  * '
-			s += '**' + c.attrib['name'] + '**'
-			if 'value' in c.attrib:
-				s += ' = **' + c.attrib['value'] + '**'
-			if c.text.strip() != '':
-				s += ' - ' + c.text.strip()
-			f.write(s + '\n')
-
-	descr = node.find('description')
-	if descr != None and descr.text.strip() != '':
-		f.write('\n###  Description  \n')
-		f.write(dokuize_text(descr.text.strip()) + '\n')
-
-	methods = node.find('methods')
-
-	if methods != None and len(list(methods)) > 0:
-		f.write('\n###  Member Function Description  \n')
-		for m in list(methods):
-
-			d = m.find('description')
-			if d == None or d.text.strip() == '':
-				continue
-			f.write('\n#### <a name="'+m.attrib['name']+'">' + m.attrib['name'] + '</a>\n')
-			make_method(f, node.attrib['name'], m, True)
-			f.write('\n')
-			f.write(dokuize_text(d.text.strip()))
-			f.write('\n')
+    name = node.attrib['name']
+
+    f = open("class_"+name.lower() + '.md', 'wb')
+
+    f.write('#  ' + name + '  \n')
+
+    if 'inherits' in node.attrib:
+        inh = node.attrib['inherits'].strip()
+        f.write('####**Inherits:** '+make_type(inh)+'\n')
+    if 'category' in node.attrib:
+        f.write('####**Category:** ' + node.attrib['category'].strip()
+                + '\n')
+
+    briefd = node.find('brief_description')
+    if briefd != None:
+        f.write('\n###  Brief Description  \n')
+        f.write(dokuize_text(briefd.text.strip()) + '\n')
+
+    methods = node.find('methods')
+
+    if methods != None and len(list(methods)) > 0:
+        f.write('\n###  Member Functions \n')
+        for m in list(methods):
+            make_method(f, node.attrib['name'], m, False)
+
+    events = node.find('signals')
+    if events != None and len(list(events)) > 0:
+        f.write('\n###  Signals  \n')
+        for m in list(events):
+            make_method(f, node.attrib['name'], m, True, True)
+
+    members = node.find('members')
+
+    if members != None and len(list(members)) > 0:
+        f.write('\n###  Member Variables  \n')
+
+        for c in list(members):
+            s = '  * '
+            s += make_type(c.attrib['type']) + ' '
+            s += '**' + c.attrib['name'] + '**'
+            if c.text.strip() != '':
+                s += ' - ' + c.text.strip()
+            f.write(s + '\n')
+
+    constants = node.find('constants')
+    if constants != None and len(list(constants)) > 0:
+        f.write('\n###  Numeric Constants  \n')
+        for c in list(constants):
+            s = '  * '
+            s += '**' + c.attrib['name'] + '**'
+            if 'value' in c.attrib:
+                s += ' = **' + c.attrib['value'] + '**'
+            if c.text.strip() != '':
+                s += ' - ' + c.text.strip()
+            f.write(s + '\n')
+
+    descr = node.find('description')
+    if descr != None and descr.text.strip() != '':
+        f.write('\n###  Description  \n')
+        f.write(dokuize_text(descr.text.strip()) + '\n')
+
+    methods = node.find('methods')
+
+    if methods != None and len(list(methods)) > 0:
+        f.write('\n###  Member Function Description  \n')
+        for m in list(methods):
+
+            d = m.find('description')
+            if d == None or d.text.strip() == '':
+                continue
+            f.write('\n#### <a name="'+m.attrib['name']+'">' + m.attrib['name'] + '</a>\n')
+            make_method(f, node.attrib['name'], m, True)
+            f.write('\n')
+            f.write(dokuize_text(d.text.strip()))
+            f.write('\n')
 
 
 
 
 for file in input_list:
 for file in input_list:
-	tree = ET.parse(file)
-	doc = tree.getroot()
+    tree = ET.parse(file)
+    doc = tree.getroot()
 
 
-	if 'version' not in doc.attrib:
-		print "Version missing from 'doc'"
-		sys.exit(255)
+    if 'version' not in doc.attrib:
+        print "Version missing from 'doc'"
+        sys.exit(255)
 
 
-	version = doc.attrib['version']
+    version = doc.attrib['version']
 
 
-	for c in list(doc):
-		if c.attrib['name'] in class_names:
-			continue
-		class_names.append(c.attrib['name'])
-		classes[c.attrib['name']] = c
+    for c in list(doc):
+        if c.attrib['name'] in class_names:
+            continue
+        class_names.append(c.attrib['name'])
+        classes[c.attrib['name']] = c
 
 
 class_names.sort()
 class_names.sort()
 
 
 make_class_list(class_names, 2)
 make_class_list(class_names, 2)
 
 
 for cn in class_names:
 for cn in class_names:
-	c = classes[cn]
-	make_doku_class(c)
+    c = classes[cn]
+    make_doku_class(c)
 
 

+ 451 - 451
doc/tools/makerst.py

@@ -8,505 +8,505 @@ import xml.etree.ElementTree as ET
 input_list = []
 input_list = []
 
 
 for arg in sys.argv[1:]:
 for arg in sys.argv[1:]:
-	input_list.append(arg)
+    input_list.append(arg)
 
 
 if len(input_list) < 1:
 if len(input_list) < 1:
-	print 'usage: makerst.py <classes.xml>'
-	sys.exit(0)
+    print 'usage: makerst.py <classes.xml>'
+    sys.exit(0)
 
 
 
 
 def validate_tag(elem, tag):
 def validate_tag(elem, tag):
-	if elem.tag != tag:
-		print "Tag mismatch, expected '" + tag + "', got " + elem.tag
-		sys.exit(255)
+    if elem.tag != tag:
+        print "Tag mismatch, expected '" + tag + "', got " + elem.tag
+        sys.exit(255)
 
 
 
 
 class_names = []
 class_names = []
 classes = {}
 classes = {}
 
 
 def ul_string(str,ul):
 def ul_string(str,ul):
-	str+="\n"
-	for i in range(len(str)-1):
-		str+=ul
-	str+="\n"
-	return str
+    str+="\n"
+    for i in range(len(str)-1):
+        str+=ul
+    str+="\n"
+    return str
 
 
 def make_class_list(class_list, columns):
 def make_class_list(class_list, columns):
 
 
-	f = codecs.open('class_list.rst', 'wb', 'utf-8')
-	prev = 0
-	col_max = len(class_list) / columns + 1
-	print ('col max is ', col_max)
-	col_count = 0
-	row_count = 0
-	last_initial = ''
-	fit_columns = []
-
-	for n in range(0, columns):
-		fit_columns += [[]]
-
-	indexers = []
-	last_initial = ''
-
-	idx = 0
-	for n in class_list:
-		col = idx / col_max
-		if col >= columns:
-			col = columns - 1
-		fit_columns[col] += [n]
-		idx += 1
-		if n[:1] != last_initial:
-			indexers += [n]
-		last_initial = n[:1]
-
-	row_max = 0
-	f.write("\n")
-
-	for n in range(0, columns):
-		if len(fit_columns[n]) > row_max:
-			row_max = len(fit_columns[n])
-
-	f.write("| ")
-	for n in range(0, columns):
-		f.write(" | |")
-
-	f.write("\n")
-	f.write("+")
-	for n in range(0, columns):
-		f.write("--+-------+")
-	f.write("\n")
-
-	for r in range(0, row_max):
-		s = '+ '
-		for c in range(0, columns):
-			if r >= len(fit_columns[c]):
-				continue
-
-			classname = fit_columns[c][r]
-			initial = classname[0]
-			if classname in indexers:
-				s += '**' + initial + '** | '
-			else:
-				s += ' | '
-
-			s += '[' + classname + '](class_'+ classname.lower()+') | '
-
-		s += '\n'
-		f.write(s)
-
-	for n in range(0, columns):
-		f.write("--+-------+")
-	f.write("\n")
+    f = codecs.open('class_list.rst', 'wb', 'utf-8')
+    prev = 0
+    col_max = len(class_list) / columns + 1
+    print ('col max is ', col_max)
+    col_count = 0
+    row_count = 0
+    last_initial = ''
+    fit_columns = []
+
+    for n in range(0, columns):
+        fit_columns += [[]]
+
+    indexers = []
+    last_initial = ''
+
+    idx = 0
+    for n in class_list:
+        col = idx / col_max
+        if col >= columns:
+            col = columns - 1
+        fit_columns[col] += [n]
+        idx += 1
+        if n[:1] != last_initial:
+            indexers += [n]
+        last_initial = n[:1]
+
+    row_max = 0
+    f.write("\n")
+
+    for n in range(0, columns):
+        if len(fit_columns[n]) > row_max:
+            row_max = len(fit_columns[n])
+
+    f.write("| ")
+    for n in range(0, columns):
+        f.write(" | |")
+
+    f.write("\n")
+    f.write("+")
+    for n in range(0, columns):
+        f.write("--+-------+")
+    f.write("\n")
+
+    for r in range(0, row_max):
+        s = '+ '
+        for c in range(0, columns):
+            if r >= len(fit_columns[c]):
+                continue
+
+            classname = fit_columns[c][r]
+            initial = classname[0]
+            if classname in indexers:
+                s += '**' + initial + '** | '
+            else:
+                s += ' | '
+
+            s += '[' + classname + '](class_'+ classname.lower()+') | '
+
+        s += '\n'
+        f.write(s)
+
+    for n in range(0, columns):
+        f.write("--+-------+")
+    f.write("\n")
 
 
 
 
 def rstize_text(text,cclass):
 def rstize_text(text,cclass):
 
 
-	# Linebreak + tabs in the XML should become two line breaks unless in a "codeblock"
-	pos = 0
-	while True:
-		pos = text.find('\n', pos)
-		if pos == -1:
-			break
-
-		pre_text = text[:pos]
-		while text[pos+1] == '\t':
-			pos += 1
-		post_text = text[pos+1:]
-
-		# Handle codeblocks
-		if post_text.startswith("[codeblock]"):
-			end_pos = post_text.find("[/codeblock]")
-			if end_pos == -1:
-				sys.exit("ERROR! [codeblock] without a closing tag!")
-
-			code_text = post_text[len("[codeblock]"):end_pos]
-			post_text = post_text[end_pos:]
-
-			# Remove extraneous tabs
-			code_pos = 0
-			while True:
-				code_pos = code_text.find('\n', code_pos)
-				if code_pos == -1:
-					break
-
-				to_skip = 0
-				while code_pos+to_skip+1 < len(code_text) and code_text[code_pos+to_skip+1] == '\t':
-					to_skip += 1
-
-				if len(code_text[code_pos+to_skip+1:])==0:
-					code_text = code_text[:code_pos] + "\n"
-					code_pos += 1
-				else:
-					code_text = code_text[:code_pos] + "\n    " + code_text[code_pos+to_skip+1:]
-					code_pos += 5 - to_skip
-
-			text = pre_text + "\n[codeblock]" + code_text + post_text
-			pos += len("\n[codeblock]" + code_text)
-
-		# Handle normal text
-		else:
-			text = pre_text + "\n\n" + post_text
-			pos += 2
-
-	# Escape * character to avoid interpreting it as emphasis
-	pos = 0
-	while True:
-		pos = text.find('*', pos)
-		if pos == -1:
-			break
-		text = text[:pos] + "\*" + text[pos + 1:]
-		pos += 2
-
-	# Escape _ character at the end of a word to avoid interpreting it as an inline hyperlink
-	pos = 0
-	while True:
-		pos = text.find('_', pos)
-		if pos == -1:
-			break
-		if not text[pos + 1].isalnum(): # don't escape within a snake_case word
-			text = text[:pos] + "\_" + text[pos + 1:]
-			pos += 2
-		else:
-			pos += 1
-
-	# Handle [tags]
-	pos = 0
-	while True:
-		pos = text.find('[', pos)
-		if pos == -1:
-			break
-
-		endq_pos = text.find(']', pos + 1)
-		if endq_pos == -1:
-			break
-
-		pre_text = text[:pos]
-		post_text = text[endq_pos + 1:]
-		tag_text = text[pos + 1:endq_pos]
-
-		if tag_text in class_names:
-			tag_text = make_type(tag_text)
-		else: # command
-			cmd = tag_text
-			space_pos = tag_text.find(' ')
-			if cmd.find('html') == 0:
-				cmd = tag_text[:space_pos]
-				param = tag_text[space_pos + 1:]
-				tag_text = param
-			elif cmd.find('method') == 0:
-				cmd = tag_text[:space_pos]
-				param = tag_text[space_pos + 1:]
-
-				if param.find('.') != -1:
-					(class_param, method_param) = param.split('.')
-					tag_text = ':ref:`'+class_param+'.'+method_param+'<class_' + class_param + '_' + method_param + '>`'
-				else:
-					tag_text = ':ref:`' + param + '<class_' + cclass +"_"+ param + '>`'
-			elif cmd.find('image=') == 0:
-				tag_text = "" #'![](' + cmd[6:] + ')'
-			elif cmd.find('url=') == 0:
-				tag_text = ':ref:`' + cmd[4:] + '<'+cmd[4:]+">`"
-			elif cmd == '/url':
-				tag_text = ')'
-			elif cmd == 'center':
-				tag_text = ''
-			elif cmd == '/center':
-				tag_text = ''
-			elif cmd == 'codeblock':
-				tag_text = '\n::\n'
-			elif cmd == '/codeblock':
-				tag_text = ''
-				# Strip newline if the tag was alone on one
-				if pre_text[-1] == '\n':
-					pre_text = pre_text[:-1]
-			elif cmd == 'br':
-				# Make a new paragraph instead of a linebreak, rst is not so linebreak friendly
-				tag_text = '\n\n'
-				# Strip potential leading spaces
-				while post_text[0] == ' ':
-					post_text = post_text[1:]
-			elif cmd == 'i' or cmd == '/i':
-				tag_text = '*'
-			elif cmd == 'b' or cmd == '/b':
-				tag_text = '**'
-			elif cmd == 'u' or cmd == '/u':
-				tag_text = ''
-			elif cmd == 'code' or cmd == '/code':
-				tag_text = '``'
-			else:
-				tag_text = ':ref:`' + tag_text + '<class_'+tag_text.lower()+'>`'
-
-		text = pre_text + tag_text + post_text
-		pos = len(pre_text) + len(tag_text)
+    # Linebreak + tabs in the XML should become two line breaks unless in a "codeblock"
+    pos = 0
+    while True:
+        pos = text.find('\n', pos)
+        if pos == -1:
+            break
+
+        pre_text = text[:pos]
+        while text[pos+1] == '\t':
+            pos += 1
+        post_text = text[pos+1:]
+
+        # Handle codeblocks
+        if post_text.startswith("[codeblock]"):
+            end_pos = post_text.find("[/codeblock]")
+            if end_pos == -1:
+                sys.exit("ERROR! [codeblock] without a closing tag!")
+
+            code_text = post_text[len("[codeblock]"):end_pos]
+            post_text = post_text[end_pos:]
+
+            # Remove extraneous tabs
+            code_pos = 0
+            while True:
+                code_pos = code_text.find('\n', code_pos)
+                if code_pos == -1:
+                    break
+
+                to_skip = 0
+                while code_pos+to_skip+1 < len(code_text) and code_text[code_pos+to_skip+1] == '\t':
+                    to_skip += 1
+
+                if len(code_text[code_pos+to_skip+1:])==0:
+                    code_text = code_text[:code_pos] + "\n"
+                    code_pos += 1
+                else:
+                    code_text = code_text[:code_pos] + "\n    " + code_text[code_pos+to_skip+1:]
+                    code_pos += 5 - to_skip
+
+            text = pre_text + "\n[codeblock]" + code_text + post_text
+            pos += len("\n[codeblock]" + code_text)
+
+        # Handle normal text
+        else:
+            text = pre_text + "\n\n" + post_text
+            pos += 2
+
+    # Escape * character to avoid interpreting it as emphasis
+    pos = 0
+    while True:
+        pos = text.find('*', pos)
+        if pos == -1:
+            break
+        text = text[:pos] + "\*" + text[pos + 1:]
+        pos += 2
+
+    # Escape _ character at the end of a word to avoid interpreting it as an inline hyperlink
+    pos = 0
+    while True:
+        pos = text.find('_', pos)
+        if pos == -1:
+            break
+        if not text[pos + 1].isalnum(): # don't escape within a snake_case word
+            text = text[:pos] + "\_" + text[pos + 1:]
+            pos += 2
+        else:
+            pos += 1
+
+    # Handle [tags]
+    pos = 0
+    while True:
+        pos = text.find('[', pos)
+        if pos == -1:
+            break
+
+        endq_pos = text.find(']', pos + 1)
+        if endq_pos == -1:
+            break
+
+        pre_text = text[:pos]
+        post_text = text[endq_pos + 1:]
+        tag_text = text[pos + 1:endq_pos]
+
+        if tag_text in class_names:
+            tag_text = make_type(tag_text)
+        else: # command
+            cmd = tag_text
+            space_pos = tag_text.find(' ')
+            if cmd.find('html') == 0:
+                cmd = tag_text[:space_pos]
+                param = tag_text[space_pos + 1:]
+                tag_text = param
+            elif cmd.find('method') == 0:
+                cmd = tag_text[:space_pos]
+                param = tag_text[space_pos + 1:]
+
+                if param.find('.') != -1:
+                    (class_param, method_param) = param.split('.')
+                    tag_text = ':ref:`'+class_param+'.'+method_param+'<class_' + class_param + '_' + method_param + '>`'
+                else:
+                    tag_text = ':ref:`' + param + '<class_' + cclass +"_"+ param + '>`'
+            elif cmd.find('image=') == 0:
+                tag_text = "" #'![](' + cmd[6:] + ')'
+            elif cmd.find('url=') == 0:
+                tag_text = ':ref:`' + cmd[4:] + '<'+cmd[4:]+">`"
+            elif cmd == '/url':
+                tag_text = ')'
+            elif cmd == 'center':
+                tag_text = ''
+            elif cmd == '/center':
+                tag_text = ''
+            elif cmd == 'codeblock':
+                tag_text = '\n::\n'
+            elif cmd == '/codeblock':
+                tag_text = ''
+                # Strip newline if the tag was alone on one
+                if pre_text[-1] == '\n':
+                    pre_text = pre_text[:-1]
+            elif cmd == 'br':
+                # Make a new paragraph instead of a linebreak, rst is not so linebreak friendly
+                tag_text = '\n\n'
+                # Strip potential leading spaces
+                while post_text[0] == ' ':
+                    post_text = post_text[1:]
+            elif cmd == 'i' or cmd == '/i':
+                tag_text = '*'
+            elif cmd == 'b' or cmd == '/b':
+                tag_text = '**'
+            elif cmd == 'u' or cmd == '/u':
+                tag_text = ''
+            elif cmd == 'code' or cmd == '/code':
+                tag_text = '``'
+            else:
+                tag_text = ':ref:`' + tag_text + '<class_'+tag_text.lower()+'>`'
+
+        text = pre_text + tag_text + post_text
+        pos = len(pre_text) + len(tag_text)
 
 
  # tnode = ET.SubElement(parent,"div")
  # tnode = ET.SubElement(parent,"div")
  # tnode.text=text
  # tnode.text=text
 
 
-	return text
+    return text
 
 
 
 
 def make_type(t):
 def make_type(t):
-	global class_names
-	if t in class_names:
-		return ':ref:`'+t+'<class_' + t.lower()+'>`'
-	return t
+    global class_names
+    if t in class_names:
+        return ':ref:`'+t+'<class_' + t.lower()+'>`'
+    return t
 
 
 
 
 def make_method(
 def make_method(
-	f,
-	name,
-	m,
-	declare,
-	cname,
-	event=False,
-	pp=None
-	):
-
-	if (declare or pp==None):
-		t = '- '
-	else:
-		t = ""
-
-	ret_type = 'void'
-	args = list(m)
-	mdata = {}
-	mdata['argidx'] = []
-	for a in args:
-		if a.tag == 'return':
-			idx = -1
-		elif a.tag == 'argument':
-			idx = int(a.attrib['index'])
-		else:
-			continue
-
-		mdata['argidx'].append(idx)
-		mdata[idx] = a
-
-	if not event:
-		if -1 in mdata['argidx']:
-			t += make_type(mdata[-1].attrib['type'])
-		else:
-			t += 'void'
-		t += ' '
-
-	if declare or pp==None:
-
-		# span.attrib["class"]="funcdecl"
-		# a=ET.SubElement(span,"a")
-		# a.attrib["name"]=name+"_"+m.attrib["name"]
-		# a.text=name+"::"+m.attrib["name"]
-
-		s = ' **'+m.attrib['name']+'** '
-	else:
-		s = ':ref:`'+ m.attrib['name']+'<class_' + cname+"_"+m.attrib['name'] + '>` '
-
-	s += ' **(**'
-	argfound = False
-	for a in mdata['argidx']:
-		arg = mdata[a]
-		if a < 0:
-			continue
-		if a > 0:
-			s += ', '
-		else:
-			s += ' '
-
-		s += make_type(arg.attrib['type'])
-		if 'name' in arg.attrib:
-			s += ' ' + arg.attrib['name']
-		else:
-			s += ' arg' + str(a)
-
-		if 'default' in arg.attrib:
-			s += '=' + arg.attrib['default']
-
-		argfound = True
-
-	if argfound:
-		s += ' '
-	s += ' **)**'
-
-	if 'qualifiers' in m.attrib:
-		s += ' ' + m.attrib['qualifiers']
+        f,
+        name,
+        m,
+        declare,
+        cname,
+        event=False,
+        pp=None
+):
+
+    if (declare or pp==None):
+        t = '- '
+    else:
+        t = ""
+
+    ret_type = 'void'
+    args = list(m)
+    mdata = {}
+    mdata['argidx'] = []
+    for a in args:
+        if a.tag == 'return':
+            idx = -1
+        elif a.tag == 'argument':
+            idx = int(a.attrib['index'])
+        else:
+            continue
+
+        mdata['argidx'].append(idx)
+        mdata[idx] = a
+
+    if not event:
+        if -1 in mdata['argidx']:
+            t += make_type(mdata[-1].attrib['type'])
+        else:
+            t += 'void'
+        t += ' '
+
+    if declare or pp==None:
+
+        # span.attrib["class"]="funcdecl"
+        # a=ET.SubElement(span,"a")
+        # a.attrib["name"]=name+"_"+m.attrib["name"]
+        # a.text=name+"::"+m.attrib["name"]
+
+        s = ' **'+m.attrib['name']+'** '
+    else:
+        s = ':ref:`'+ m.attrib['name']+'<class_' + cname+"_"+m.attrib['name'] + '>` '
+
+    s += ' **(**'
+    argfound = False
+    for a in mdata['argidx']:
+        arg = mdata[a]
+        if a < 0:
+            continue
+        if a > 0:
+            s += ', '
+        else:
+            s += ' '
+
+        s += make_type(arg.attrib['type'])
+        if 'name' in arg.attrib:
+            s += ' ' + arg.attrib['name']
+        else:
+            s += ' arg' + str(a)
+
+        if 'default' in arg.attrib:
+            s += '=' + arg.attrib['default']
+
+        argfound = True
+
+    if argfound:
+        s += ' '
+    s += ' **)**'
+
+    if 'qualifiers' in m.attrib:
+        s += ' ' + m.attrib['qualifiers']
 
 
 #	f.write(s)
 #	f.write(s)
-	if (not declare):
-		if (pp!=None):
-			pp.append( (t,s) )
-		else:
-			f.write("- "+t+" "+s+"\n")
-	else:
-		f.write(t+s+"\n")
+    if (not declare):
+        if (pp!=None):
+            pp.append( (t,s) )
+        else:
+            f.write("- "+t+" "+s+"\n")
+    else:
+        f.write(t+s+"\n")
 
 
 
 
 def make_heading(title, underline):
 def make_heading(title, underline):
-	return title + '\n' + underline*len(title) + "\n\n"
+    return title + '\n' + underline*len(title) + "\n\n"
 
 
 
 
 
 
 def make_rst_class(node):
 def make_rst_class(node):
 
 
-	name = node.attrib['name']
+    name = node.attrib['name']
 
 
-	f = codecs.open("class_"+name.lower() + '.rst', 'wb', 'utf-8')
+    f = codecs.open("class_"+name.lower() + '.rst', 'wb', 'utf-8')
 
 
-	# Warn contributors not to edit this file directly
-	f.write(".. Generated automatically by doc/tools/makerst.py in Godot's source tree.\n")
-	f.write(".. DO NOT EDIT THIS FILE, but the doc/base/classes.xml source instead.\n\n")
+    # Warn contributors not to edit this file directly
+    f.write(".. Generated automatically by doc/tools/makerst.py in Godot's source tree.\n")
+    f.write(".. DO NOT EDIT THIS FILE, but the doc/base/classes.xml source instead.\n\n")
 
 
-	f.write(".. _class_"+name+":\n\n")
-	f.write(make_heading(name, '='))
+    f.write(".. _class_"+name+":\n\n")
+    f.write(make_heading(name, '='))
 
 
-	if 'inherits' in node.attrib:
-		inh = node.attrib['inherits'].strip()
+    if 'inherits' in node.attrib:
+        inh = node.attrib['inherits'].strip()
 #		whle inh in classes[cn]
 #		whle inh in classes[cn]
-		f.write('**Inherits:** ')
-		first=True
-		while(inh in classes):
-			if (not first):
-				f.write(" **<** ")
-			else:
-				first=False
-
-			f.write(make_type(inh))
-			inode = classes[inh]
-			if ('inherits' in inode.attrib):
-				inh=inode.attrib['inherits'].strip()
-			else:
-				inh=None
-
-
-		f.write("\n\n")
-
-	inherited=[]
-	for cn in classes:
-		c=classes[cn]
-		if 'inherits' in c.attrib:
-			if (c.attrib['inherits'].strip()==name):
-				inherited.append(c.attrib['name'])
-
-	if (len(inherited)):
-		f.write('**Inherited By:** ')
-		for i in range(len(inherited)):
-			if (i>0):
-				f.write(", ")
-			f.write(make_type(inherited[i]))
-		f.write("\n\n")
-	if 'category' in node.attrib:
-		f.write('**Category:** ' + node.attrib['category'].strip() + "\n\n")
-
-	f.write(make_heading('Brief Description', '-'))
-	briefd = node.find('brief_description')
-	if briefd != None:
-		f.write(rstize_text(briefd.text.strip(),name) + "\n\n")
-
-	methods = node.find('methods')
-
-	if methods != None and len(list(methods)) > 0:
-		f.write(make_heading('Member Functions', '-'))
-		ml=[]
-		for m in list(methods):
-			make_method(f, node.attrib['name'], m, False,name,False,ml)
-		longest_t = 0
-		longest_s = 0
-		for s in ml:
-			sl = len(s[0])
-			if (sl>longest_s):
-				longest_s=sl
-			tl = len(s[1])
-			if (tl>longest_t):
-				longest_t=tl
-
-		sep="+"
-		for i in range(longest_s+2):
-			sep+="-"
-		sep+="+"
-		for i in range(longest_t+2):
-			sep+="-"
-		sep+="+\n"
-		f.write(sep)
-		for s in ml:
-			rt = s[0]
-			while( len(rt) < longest_s ):
-				rt+=" "
-			st = s[1]
-			while( len(st) < longest_t ):
-				st+=" "
-			f.write("| "+rt+" | "+st+" |\n")
-			f.write(sep)
-		f.write('\n')
-
-
-	events = node.find('signals')
-	if events != None and len(list(events)) > 0:
-		f.write(make_heading('Signals', '-'))
-		for m in list(events):
-			make_method(f, node.attrib['name'], m, True,name, True)
-		f.write('\n')
-
-	members = node.find('members')
-	if members != None and len(list(members)) > 0:
-		f.write(make_heading('Member Variables', '-'))
-
-		for c in list(members):
-			s = '- '
-			s += make_type(c.attrib['type']) + ' '
-			s += '**' + c.attrib['name'] + '**'
-			if c.text.strip() != '':
-				s += ' - ' + c.text.strip()
-			f.write(s + '\n')
-		f.write('\n')
-
-	constants = node.find('constants')
-	if constants != None and len(list(constants)) > 0:
-		f.write(make_heading('Numeric Constants', '-'))
-		for c in list(constants):
-			s = '- '
-			s += '**' + c.attrib['name'] + '**'
-			if 'value' in c.attrib:
-				s += ' = **' + c.attrib['value'] + '**'
-			if c.text.strip() != '':
-				s += ' --- ' + rstize_text(c.text.strip(),name)
-			f.write(s + '\n')
-		f.write('\n')
-
-	descr = node.find('description')
-	if descr != None and descr.text.strip() != '':
-		f.write(make_heading('Description', '-'))
-		f.write(rstize_text(descr.text.strip(),name) + "\n\n")
-
-	methods = node.find('methods')
-	if methods != None and len(list(methods)) > 0:
-		f.write(make_heading('Member Function Description', '-'))
-		for m in list(methods):
-			f.write(".. _class_"+name+"_"+m.attrib['name']+":\n\n")
+        f.write('**Inherits:** ')
+        first=True
+        while(inh in classes):
+            if (not first):
+                f.write(" **<** ")
+            else:
+                first=False
+
+            f.write(make_type(inh))
+            inode = classes[inh]
+            if ('inherits' in inode.attrib):
+                inh=inode.attrib['inherits'].strip()
+            else:
+                inh=None
+
+
+        f.write("\n\n")
+
+    inherited=[]
+    for cn in classes:
+        c=classes[cn]
+        if 'inherits' in c.attrib:
+            if (c.attrib['inherits'].strip()==name):
+                inherited.append(c.attrib['name'])
+
+    if (len(inherited)):
+        f.write('**Inherited By:** ')
+        for i in range(len(inherited)):
+            if (i>0):
+                f.write(", ")
+            f.write(make_type(inherited[i]))
+        f.write("\n\n")
+    if 'category' in node.attrib:
+        f.write('**Category:** ' + node.attrib['category'].strip() + "\n\n")
+
+    f.write(make_heading('Brief Description', '-'))
+    briefd = node.find('brief_description')
+    if briefd != None:
+        f.write(rstize_text(briefd.text.strip(),name) + "\n\n")
+
+    methods = node.find('methods')
+
+    if methods != None and len(list(methods)) > 0:
+        f.write(make_heading('Member Functions', '-'))
+        ml=[]
+        for m in list(methods):
+            make_method(f, node.attrib['name'], m, False,name,False,ml)
+        longest_t = 0
+        longest_s = 0
+        for s in ml:
+            sl = len(s[0])
+            if (sl>longest_s):
+                longest_s=sl
+            tl = len(s[1])
+            if (tl>longest_t):
+                longest_t=tl
+
+        sep="+"
+        for i in range(longest_s+2):
+            sep+="-"
+        sep+="+"
+        for i in range(longest_t+2):
+            sep+="-"
+        sep+="+\n"
+        f.write(sep)
+        for s in ml:
+            rt = s[0]
+            while( len(rt) < longest_s ):
+                rt+=" "
+            st = s[1]
+            while( len(st) < longest_t ):
+                st+=" "
+            f.write("| "+rt+" | "+st+" |\n")
+            f.write(sep)
+        f.write('\n')
+
+
+    events = node.find('signals')
+    if events != None and len(list(events)) > 0:
+        f.write(make_heading('Signals', '-'))
+        for m in list(events):
+            make_method(f, node.attrib['name'], m, True,name, True)
+        f.write('\n')
+
+    members = node.find('members')
+    if members != None and len(list(members)) > 0:
+        f.write(make_heading('Member Variables', '-'))
+
+        for c in list(members):
+            s = '- '
+            s += make_type(c.attrib['type']) + ' '
+            s += '**' + c.attrib['name'] + '**'
+            if c.text.strip() != '':
+                s += ' - ' + c.text.strip()
+            f.write(s + '\n')
+        f.write('\n')
+
+    constants = node.find('constants')
+    if constants != None and len(list(constants)) > 0:
+        f.write(make_heading('Numeric Constants', '-'))
+        for c in list(constants):
+            s = '- '
+            s += '**' + c.attrib['name'] + '**'
+            if 'value' in c.attrib:
+                s += ' = **' + c.attrib['value'] + '**'
+            if c.text.strip() != '':
+                s += ' --- ' + rstize_text(c.text.strip(),name)
+            f.write(s + '\n')
+        f.write('\n')
+
+    descr = node.find('description')
+    if descr != None and descr.text.strip() != '':
+        f.write(make_heading('Description', '-'))
+        f.write(rstize_text(descr.text.strip(),name) + "\n\n")
+
+    methods = node.find('methods')
+    if methods != None and len(list(methods)) > 0:
+        f.write(make_heading('Member Function Description', '-'))
+        for m in list(methods):
+            f.write(".. _class_"+name+"_"+m.attrib['name']+":\n\n")
 #			f.write(ul_string(m.attrib['name'],"^"))
 #			f.write(ul_string(m.attrib['name'],"^"))
-			#f.write('\n<a name="'+m.attrib['name']+'">' + m.attrib['name'] + '</a>\n------\n')
-			make_method(f, node.attrib['name'], m, True,name)
-			f.write('\n')
-			d = m.find('description')
-			if d == None or d.text.strip() == '':
-				continue
-			f.write(rstize_text(d.text.strip(),name))
-			f.write("\n\n")
-		f.write('\n')
+            #f.write('\n<a name="'+m.attrib['name']+'">' + m.attrib['name'] + '</a>\n------\n')
+            make_method(f, node.attrib['name'], m, True,name)
+            f.write('\n')
+            d = m.find('description')
+            if d == None or d.text.strip() == '':
+                continue
+            f.write(rstize_text(d.text.strip(),name))
+            f.write("\n\n")
+        f.write('\n')
 
 
 
 
 for file in input_list:
 for file in input_list:
-	tree = ET.parse(file)
-	doc = tree.getroot()
+    tree = ET.parse(file)
+    doc = tree.getroot()
 
 
-	if 'version' not in doc.attrib:
-		print "Version missing from 'doc'"
-		sys.exit(255)
+    if 'version' not in doc.attrib:
+        print "Version missing from 'doc'"
+        sys.exit(255)
 
 
-	version = doc.attrib['version']
+    version = doc.attrib['version']
 
 
-	for c in list(doc):
-		if c.attrib['name'] in class_names:
-			continue
-		class_names.append(c.attrib['name'])
-		classes[c.attrib['name']] = c
+    for c in list(doc):
+        if c.attrib['name'] in class_names:
+            continue
+        class_names.append(c.attrib['name'])
+        classes[c.attrib['name']] = c
 
 
 class_names.sort()
 class_names.sort()
 
 
@@ -514,6 +514,6 @@ class_names.sort()
 #make_class_list(class_names, 2)
 #make_class_list(class_names, 2)
 
 
 for cn in class_names:
 for cn in class_names:
-	c = classes[cn]
-	make_rst_class(c)
+    c = classes[cn]
+    make_rst_class(c)
 
 

+ 8 - 8
drivers/SCsub

@@ -5,7 +5,7 @@ Import('env')
 env.drivers_sources=[]
 env.drivers_sources=[]
 
 
 if ("builtin_zlib" in env and env["builtin_zlib"] == "yes"):
 if ("builtin_zlib" in env and env["builtin_zlib"] == "yes"):
-	SConscript("zlib/SCsub");
+    SConscript("zlib/SCsub");
 
 
 # OS drivers
 # OS drivers
 SConscript('unix/SCsub');
 SConscript('unix/SCsub');
@@ -15,7 +15,7 @@ SConscript('windows/SCsub');
 SConscript('alsa/SCsub');
 SConscript('alsa/SCsub');
 SConscript('pulseaudio/SCsub');
 SConscript('pulseaudio/SCsub');
 if (env["platform"] == "windows"):
 if (env["platform"] == "windows"):
-	SConscript("rtaudio/SCsub");
+    SConscript("rtaudio/SCsub");
 
 
 # Graphics drivers
 # Graphics drivers
 SConscript('gles2/SCsub');
 SConscript('gles2/SCsub');
@@ -28,14 +28,14 @@ SConscript("nrex/SCsub");
 # Tools override
 # Tools override
 # FIXME: Should likely be integrated in the tools/ codebase
 # FIXME: Should likely be integrated in the tools/ codebase
 if (env["tools"]=="yes"):
 if (env["tools"]=="yes"):
-	SConscript("convex_decomp/SCsub");
+    SConscript("convex_decomp/SCsub");
 
 
 if env['vsproj']=="yes":
 if env['vsproj']=="yes":
-	env.AddToVSProject(env.drivers_sources)
+    env.AddToVSProject(env.drivers_sources)
 
 
 if env.split_drivers:
 if env.split_drivers:
-	env.split_lib("drivers")
+    env.split_lib("drivers")
 else:
 else:
-	env.add_source_files(env.drivers_sources,"*.cpp")
-	lib = env.Library("drivers",env.drivers_sources)
-	env.Prepend(LIBS=[lib])
+    env.add_source_files(env.drivers_sources,"*.cpp")
+    lib = env.Library("drivers",env.drivers_sources)
+    env.Prepend(LIBS=[lib])

File diff suppressed because it is too large
+ 636 - 636
drivers/builtin_openssl2/SCsub


+ 11 - 11
drivers/gl_context/SCsub

@@ -3,19 +3,19 @@
 Import('env')
 Import('env')
 
 
 if (env["platform"] in ["haiku","osx","windows","x11"]):
 if (env["platform"] in ["haiku","osx","windows","x11"]):
-	# Thirdparty source files
-	if (env["glew"] != "system"): # builtin
-		thirdparty_dir = "#thirdparty/glew/"
-		thirdparty_sources = [
-			"glew.c",
-		]
-		thirdparty_sources = [thirdparty_dir + file for file in thirdparty_sources]
+    # Thirdparty source files
+    if (env["glew"] != "system"): # builtin
+        thirdparty_dir = "#thirdparty/glew/"
+        thirdparty_sources = [
+            "glew.c",
+        ]
+        thirdparty_sources = [thirdparty_dir + file for file in thirdparty_sources]
 
 
-		env.add_source_files(env.drivers_sources, thirdparty_sources)
-		env.Append(CPPFLAGS = ['-DGLEW_STATIC'])
-		env.Append(CPPPATH = [thirdparty_dir])
+        env.add_source_files(env.drivers_sources, thirdparty_sources)
+        env.Append(CPPFLAGS = ['-DGLEW_STATIC'])
+        env.Append(CPPPATH = [thirdparty_dir])
 
 
-	env.Append(CPPFLAGS = ['-DGLEW_ENABLED'])
+    env.Append(CPPFLAGS = ['-DGLEW_ENABLED'])
 
 
 # Godot source files
 # Godot source files
 env.add_source_files(env.drivers_sources, "*.cpp")
 env.add_source_files(env.drivers_sources, "*.cpp")

+ 5 - 5
drivers/gles2/shaders/SCsub

@@ -3,10 +3,10 @@
 Import('env')
 Import('env')
 
 
 if env['BUILDERS'].has_key('GLSL120GLES'):
 if env['BUILDERS'].has_key('GLSL120GLES'):
-	env.GLSL120GLES('material.glsl');
-	env.GLSL120GLES('canvas.glsl');
-	env.GLSL120GLES('canvas_shadow.glsl');
-	env.GLSL120GLES('blur.glsl');
-	env.GLSL120GLES('copy.glsl');
+    env.GLSL120GLES('material.glsl');
+    env.GLSL120GLES('canvas.glsl');
+    env.GLSL120GLES('canvas_shadow.glsl');
+    env.GLSL120GLES('blur.glsl');
+    env.GLSL120GLES('copy.glsl');
 
 
 Export('env')
 Export('env')

+ 35 - 35
drivers/png/SCsub

@@ -6,43 +6,43 @@ env_png = env.Clone()
 
 
 # Thirdparty source files
 # Thirdparty source files
 if (env["libpng"] == "builtin"):
 if (env["libpng"] == "builtin"):
-	thirdparty_dir = "#thirdparty/libpng/"
-	thirdparty_sources = [
-		"png.c",
-		"pngerror.c",
-		"pngget.c",
-		"pngmem.c",
-		"pngpread.c",
-		"pngread.c",
-		"pngrio.c",
-		"pngrtran.c",
-		"pngrutil.c",
-		"pngset.c",
-		"pngtrans.c",
-		"pngwio.c",
-		"pngwrite.c",
-		"pngwtran.c",
-		"pngwutil.c",
-	]
-	thirdparty_sources = [thirdparty_dir + file for file in thirdparty_sources]
+    thirdparty_dir = "#thirdparty/libpng/"
+    thirdparty_sources = [
+        "png.c",
+        "pngerror.c",
+        "pngget.c",
+        "pngmem.c",
+        "pngpread.c",
+        "pngread.c",
+        "pngrio.c",
+        "pngrtran.c",
+        "pngrutil.c",
+        "pngset.c",
+        "pngtrans.c",
+        "pngwio.c",
+        "pngwrite.c",
+        "pngwtran.c",
+        "pngwutil.c",
+    ]
+    thirdparty_sources = [thirdparty_dir + file for file in thirdparty_sources]
 
 
-	env_png.add_source_files(env.drivers_sources, thirdparty_sources)
-	env_png.Append(CPPPATH = [thirdparty_dir])
+    env_png.add_source_files(env.drivers_sources, thirdparty_sources)
+    env_png.Append(CPPPATH = [thirdparty_dir])
 
 
-	# Currently .ASM filter_neon.S does not compile on NT.
-	import os
-	if ("neon_enabled" in env and env["neon_enabled"]) and os.name!="nt":
-		env_png.Append(CPPFLAGS = ["-DPNG_ARM_NEON_OPT=2"])
-		env_neon = env_png.Clone();
-		if "S_compiler" in env:
-			env_neon['CC'] = env['S_compiler']
-		neon_sources = []
-		neon_sources.append(env_neon.Object(thirdparty_dir + "/arm/arm_init.c"))
-		neon_sources.append(env_neon.Object(thirdparty_dir + "/arm/filter_neon_intrinsics.c"))
-		neon_sources.append(env_neon.Object(thirdparty_dir + "/arm/filter_neon.S"))
-		env.drivers_sources += neon_sources
-	else:
-		env_png.Append(CPPFLAGS = ["-DPNG_ARM_NEON_OPT=0"])
+    # Currently .ASM filter_neon.S does not compile on NT.
+    import os
+    if ("neon_enabled" in env and env["neon_enabled"]) and os.name!="nt":
+        env_png.Append(CPPFLAGS = ["-DPNG_ARM_NEON_OPT=2"])
+        env_neon = env_png.Clone();
+        if "S_compiler" in env:
+            env_neon['CC'] = env['S_compiler']
+        neon_sources = []
+        neon_sources.append(env_neon.Object(thirdparty_dir + "/arm/arm_init.c"))
+        neon_sources.append(env_neon.Object(thirdparty_dir + "/arm/filter_neon_intrinsics.c"))
+        neon_sources.append(env_neon.Object(thirdparty_dir + "/arm/filter_neon.S"))
+        env.drivers_sources += neon_sources
+    else:
+        env_png.Append(CPPFLAGS = ["-DPNG_ARM_NEON_OPT=0"])
 
 
 # Godot source files
 # Godot source files
 env_png.add_source_files(env.drivers_sources, "*.cpp")
 env_png.add_source_files(env.drivers_sources, "*.cpp")

+ 1 - 1
drivers/rtaudio/SCsub

@@ -7,7 +7,7 @@ Import('env')
 # Thirdparty source files
 # Thirdparty source files
 thirdparty_dir = "#thirdparty/rtaudio/"
 thirdparty_dir = "#thirdparty/rtaudio/"
 thirdparty_sources = [
 thirdparty_sources = [
-	"RtAudio.cpp",
+    "RtAudio.cpp",
 ]
 ]
 thirdparty_sources = [thirdparty_dir + file for file in thirdparty_sources]
 thirdparty_sources = [thirdparty_dir + file for file in thirdparty_sources]
 
 

+ 11 - 11
drivers/zlib/SCsub

@@ -8,17 +8,17 @@ Import('env')
 # No check here as already done in drivers/SCsub
 # No check here as already done in drivers/SCsub
 thirdparty_dir = "#thirdparty/zlib/"
 thirdparty_dir = "#thirdparty/zlib/"
 thirdparty_sources = [
 thirdparty_sources = [
-	"adler32.c",
-	"compress.c",
-	"crc32.c",
-	"deflate.c",
-	"infback.c",
-	"inffast.c",
-	"inflate.c",
-	"inftrees.c",
-	"trees.c",
-	"uncompr.c",
-	"zutil.c",
+    "adler32.c",
+    "compress.c",
+    "crc32.c",
+    "deflate.c",
+    "infback.c",
+    "inffast.c",
+    "inflate.c",
+    "inftrees.c",
+    "trees.c",
+    "uncompr.c",
+    "zutil.c",
 ]
 ]
 thirdparty_sources = [thirdparty_dir + file for file in thirdparty_sources]
 thirdparty_sources = [thirdparty_dir + file for file in thirdparty_sources]
 
 

File diff suppressed because it is too large
+ 695 - 695
methods.py


+ 5 - 5
modules/SCsub

@@ -7,16 +7,16 @@ env_modules = env.Clone()
 Export('env_modules')
 Export('env_modules')
 
 
 env.modules_sources=[
 env.modules_sources=[
-	"register_module_types.cpp",
+    "register_module_types.cpp",
 ]
 ]
 #env.add_source_files(env.modules_sources,"*.cpp")
 #env.add_source_files(env.modules_sources,"*.cpp")
 Export('env')
 Export('env')
 
 
 for x in env.module_list:
 for x in env.module_list:
-	if (x in env.disabled_modules):
-		continue
-	env_modules.Append(CPPFLAGS=["-DMODULE_"+x.upper()+"_ENABLED"])
-	SConscript(x+"/SCsub")
+    if (x in env.disabled_modules):
+        continue
+    env_modules.Append(CPPFLAGS=["-DMODULE_"+x.upper()+"_ENABLED"])
+    SConscript(x+"/SCsub")
 
 
 lib = env_modules.Library("modules",env.modules_sources)
 lib = env_modules.Library("modules",env.modules_sources)
 
 

+ 2 - 2
modules/chibi/config.py

@@ -1,6 +1,6 @@
 
 
 def can_build(platform):
 def can_build(platform):
-	return True
+    return True
 
 
 def configure(env):
 def configure(env):
-	pass
+    pass

+ 2 - 2
modules/cscript/config.py

@@ -1,11 +1,11 @@
 
 
 
 
 def can_build(platform):
 def can_build(platform):
-  return True
+    return True
 
 
 
 
 def configure(env):
 def configure(env):
-	pass
+    pass
 
 
 
 
 
 

+ 2 - 2
modules/dds/config.py

@@ -1,6 +1,6 @@
 
 
 def can_build(platform):
 def can_build(platform):
-	return True
+    return True
 
 
 def configure(env):
 def configure(env):
-	pass
+    pass

+ 1 - 1
modules/etc1/SCsub

@@ -9,7 +9,7 @@ env_etc1 = env_modules.Clone()
 # Not unbundled so far since not widespread as shared library
 # Not unbundled so far since not widespread as shared library
 thirdparty_dir = "#thirdparty/rg-etc1/"
 thirdparty_dir = "#thirdparty/rg-etc1/"
 thirdparty_sources = [
 thirdparty_sources = [
-	"rg_etc1.cpp",
+    "rg_etc1.cpp",
 ]
 ]
 thirdparty_sources = [thirdparty_dir + file for file in thirdparty_sources]
 thirdparty_sources = [thirdparty_dir + file for file in thirdparty_sources]
 
 

+ 2 - 2
modules/etc1/config.py

@@ -1,6 +1,6 @@
 
 
 def can_build(platform):
 def can_build(platform):
-	return True
+    return True
 
 
 def configure(env):
 def configure(env):
-	pass
+    pass

+ 57 - 57
modules/freetype/SCsub

@@ -6,65 +6,65 @@ Import('env')
 
 
 # Thirdparty source files
 # Thirdparty source files
 if (env["freetype"] != "system"): # builtin
 if (env["freetype"] != "system"): # builtin
-	thirdparty_dir = "#thirdparty/freetype/"
-	thirdparty_sources = [
-		"src/autofit/autofit.c",
-		"src/base/ftapi.c",
-		"src/base/ftbase.c",
-		"src/base/ftbbox.c",
-		"src/base/ftbdf.c",
-		"src/base/ftbitmap.c",
-		"src/base/ftcid.c",
-		"src/base/ftdebug.c",
-		"src/base/ftfntfmt.c",
-		"src/base/ftfstype.c",
-		"src/base/ftgasp.c",
-		"src/base/ftglyph.c",
-		"src/base/ftgxval.c",
-		"src/base/ftinit.c",
-		"src/base/ftlcdfil.c",
-		"src/base/ftmm.c",
-		"src/base/ftotval.c",
-		"src/base/ftpatent.c",
-		"src/base/ftpfr.c",
-		"src/base/ftpic.c",
-		"src/base/ftstroke.c",
-		"src/base/ftsynth.c",
-		"src/base/ftsystem.c",
-		"src/base/fttype1.c",
-		"src/base/ftwinfnt.c",
-		"src/bdf/bdf.c",
-		"src/cache/ftcache.c",
-		"src/cff/cff.c",
-		"src/cid/type1cid.c",
-		"src/gxvalid/gxvalid.c",
-		"src/otvalid/otvalid.c",
-		"src/pcf/pcf.c",
-		"src/pfr/pfr.c",
-		"src/psaux/psaux.c",
-		"src/pshinter/pshinter.c",
-		"src/psnames/psnames.c",
-		"src/raster/raster.c",
-		"src/sfnt/sfnt.c",
-		"src/smooth/smooth.c",
-		"src/truetype/truetype.c",
-		"src/type1/type1.c",
-		"src/type42/type42.c",
-		"src/winfonts/winfnt.c",
-	]
-	thirdparty_sources = [thirdparty_dir + file for file in thirdparty_sources]
+    thirdparty_dir = "#thirdparty/freetype/"
+    thirdparty_sources = [
+        "src/autofit/autofit.c",
+        "src/base/ftapi.c",
+        "src/base/ftbase.c",
+        "src/base/ftbbox.c",
+        "src/base/ftbdf.c",
+        "src/base/ftbitmap.c",
+        "src/base/ftcid.c",
+        "src/base/ftdebug.c",
+        "src/base/ftfntfmt.c",
+        "src/base/ftfstype.c",
+        "src/base/ftgasp.c",
+        "src/base/ftglyph.c",
+        "src/base/ftgxval.c",
+        "src/base/ftinit.c",
+        "src/base/ftlcdfil.c",
+        "src/base/ftmm.c",
+        "src/base/ftotval.c",
+        "src/base/ftpatent.c",
+        "src/base/ftpfr.c",
+        "src/base/ftpic.c",
+        "src/base/ftstroke.c",
+        "src/base/ftsynth.c",
+        "src/base/ftsystem.c",
+        "src/base/fttype1.c",
+        "src/base/ftwinfnt.c",
+        "src/bdf/bdf.c",
+        "src/cache/ftcache.c",
+        "src/cff/cff.c",
+        "src/cid/type1cid.c",
+        "src/gxvalid/gxvalid.c",
+        "src/otvalid/otvalid.c",
+        "src/pcf/pcf.c",
+        "src/pfr/pfr.c",
+        "src/psaux/psaux.c",
+        "src/pshinter/pshinter.c",
+        "src/psnames/psnames.c",
+        "src/raster/raster.c",
+        "src/sfnt/sfnt.c",
+        "src/smooth/smooth.c",
+        "src/truetype/truetype.c",
+        "src/type1/type1.c",
+        "src/type42/type42.c",
+        "src/winfonts/winfnt.c",
+    ]
+    thirdparty_sources = [thirdparty_dir + file for file in thirdparty_sources]
 
 
-	# Include header for WinRT to fix build issues
-	if "platform" in env and env["platform"] == "winrt":
-		env.Append(CCFLAGS = ['/FI', '"modules/freetype/winrtdef.h"'])
+    # Include header for WinRT to fix build issues
+    if "platform" in env and env["platform"] == "winrt":
+        env.Append(CCFLAGS = ['/FI', '"modules/freetype/winrtdef.h"'])
 
 
-	env.Append(CPPPATH = [thirdparty_dir, thirdparty_dir + "/include"])
+    env.Append(CPPPATH = [thirdparty_dir, thirdparty_dir + "/include"])
 
 
-	# also requires libpng headers
-	if (env["libpng"] != "system"): # builtin
-		env.Append(CPPPATH = ["#thirdparty/libpng"])
+    # also requires libpng headers
+    if (env["libpng"] != "system"): # builtin
+        env.Append(CPPPATH = ["#thirdparty/libpng"])
 
 
-	""" FIXME: Remove this commented code if Windows can handle the monolithic lib
+    """ FIXME: Remove this commented code if Windows can handle the monolithic lib
 	# fix for Windows' shell miserably failing on long lines, split in two libraries
 	# fix for Windows' shell miserably failing on long lines, split in two libraries
 	half1 = []
 	half1 = []
 	half2 = []
 	half2 = []
@@ -80,8 +80,8 @@ if (env["freetype"] != "system"): # builtin
 	env.Append(LIBS = [lib])
 	env.Append(LIBS = [lib])
 	"""
 	"""
 
 
-	lib = env.Library("freetype_builtin", thirdparty_sources)
-	env.Append(LIBS = [lib])
+    lib = env.Library("freetype_builtin", thirdparty_sources)
+    env.Append(LIBS = [lib])
 
 
 # Godot source files
 # Godot source files
 env.add_source_files(env.modules_sources, "*.cpp")
 env.add_source_files(env.modules_sources, "*.cpp")

+ 2 - 2
modules/freetype/config.py

@@ -1,6 +1,6 @@
 
 
 def can_build(platform):
 def can_build(platform):
-	return True
+    return True
 
 
 def configure(env):
 def configure(env):
-	pass
+    pass

+ 2 - 2
modules/gdscript/config.py

@@ -1,11 +1,11 @@
 
 
 
 
 def can_build(platform):
 def can_build(platform):
-  return True
+    return True
 
 
 
 
 def configure(env):
 def configure(env):
-	pass
+    pass
 
 
 
 
 
 

+ 2 - 2
modules/gridmap/config.py

@@ -1,11 +1,11 @@
 
 
 
 
 def can_build(platform):
 def can_build(platform):
-  return True
+    return True
 
 
 
 
 def configure(env):
 def configure(env):
-	pass
+    pass
 
 
 
 
 
 

+ 7 - 7
modules/ik/config.py

@@ -1,11 +1,11 @@
 
 
 
 
 def can_build(platform):
 def can_build(platform):
-  return True
-  
-  
+    return True
+
+
 def configure(env):
 def configure(env):
-	pass
-  
-  
-  
+    pass
+
+
+

+ 1 - 1
modules/jpg/SCsub

@@ -9,7 +9,7 @@ env_jpg = env_modules.Clone()
 # Not unbundled for now as they are not commonly available as shared library
 # Not unbundled for now as they are not commonly available as shared library
 thirdparty_dir = "#thirdparty/jpeg-compressor/"
 thirdparty_dir = "#thirdparty/jpeg-compressor/"
 thirdparty_sources = [
 thirdparty_sources = [
-	"jpgd.cpp",
+    "jpgd.cpp",
 ]
 ]
 thirdparty_sources = [thirdparty_dir + file for file in thirdparty_sources]
 thirdparty_sources = [thirdparty_dir + file for file in thirdparty_sources]
 
 

+ 2 - 2
modules/jpg/config.py

@@ -1,6 +1,6 @@
 
 
 def can_build(platform):
 def can_build(platform):
-	return True
+    return True
 
 
 def configure(env):
 def configure(env):
-	pass
+    pass

+ 14 - 14
modules/mpc/SCsub

@@ -7,22 +7,22 @@ env_mpc = env_modules.Clone()
 
 
 # Thirdparty source files
 # Thirdparty source files
 if (env["libmpcdec"] != "system"): # builtin
 if (env["libmpcdec"] != "system"): # builtin
-	thirdparty_dir = "#thirdparty/libmpcdec/"
-	thirdparty_sources = [
-		"huffman.c",
-		"mpc_bits_reader.c",
-		"mpc_decoder.c",
-		"mpc_demux.c",
-		"mpc_reader.c",
-		"requant.c",
-		"streaminfo.c",
-		"synth_filter.c",
-	]
+    thirdparty_dir = "#thirdparty/libmpcdec/"
+    thirdparty_sources = [
+        "huffman.c",
+        "mpc_bits_reader.c",
+        "mpc_decoder.c",
+        "mpc_demux.c",
+        "mpc_reader.c",
+        "requant.c",
+        "streaminfo.c",
+        "synth_filter.c",
+    ]
 
 
-	thirdparty_sources = [thirdparty_dir + file for file in thirdparty_sources]
+    thirdparty_sources = [thirdparty_dir + file for file in thirdparty_sources]
 
 
-	env_mpc.add_source_files(env.modules_sources, thirdparty_sources)
-	env_mpc.Append(CPPPATH = [thirdparty_dir])
+    env_mpc.add_source_files(env.modules_sources, thirdparty_sources)
+    env_mpc.Append(CPPPATH = [thirdparty_dir])
 
 
 # Godot source files
 # Godot source files
 env_mpc.add_source_files(env.modules_sources, "*.cpp")
 env_mpc.add_source_files(env.modules_sources, "*.cpp")

+ 2 - 2
modules/mpc/config.py

@@ -1,6 +1,6 @@
 
 
 def can_build(platform):
 def can_build(platform):
-	return True
+    return True
 
 
 def configure(env):
 def configure(env):
-	pass
+    pass

+ 8 - 8
modules/ogg/SCsub

@@ -7,15 +7,15 @@ env_ogg = env_modules.Clone()
 
 
 # Thirdparty source files
 # Thirdparty source files
 if (env["libogg"] != "system"): # builtin
 if (env["libogg"] != "system"): # builtin
-	thirdparty_dir = "#thirdparty/libogg/"
-	thirdparty_sources = [
-		"bitwise.c",
-		"framing.c",
-	]
-	thirdparty_sources = [thirdparty_dir + file for file in thirdparty_sources]
+    thirdparty_dir = "#thirdparty/libogg/"
+    thirdparty_sources = [
+        "bitwise.c",
+        "framing.c",
+    ]
+    thirdparty_sources = [thirdparty_dir + file for file in thirdparty_sources]
 
 
-	env_ogg.add_source_files(env.modules_sources, thirdparty_sources)
-	env_ogg.Append(CPPPATH = [thirdparty_dir])
+    env_ogg.add_source_files(env.modules_sources, thirdparty_sources)
+    env_ogg.Append(CPPPATH = [thirdparty_dir])
 
 
 # Godot source files
 # Godot source files
 env_ogg.add_source_files(env.modules_sources, "*.cpp")
 env_ogg.add_source_files(env.modules_sources, "*.cpp")

+ 2 - 2
modules/ogg/config.py

@@ -1,6 +1,6 @@
 
 
 def can_build(platform):
 def can_build(platform):
-	return True
+    return True
 
 
 def configure(env):
 def configure(env):
-	pass
+    pass

+ 657 - 657
modules/openssl/SCsub

@@ -7,669 +7,669 @@ env_openssl = env_modules.Clone()
 
 
 # Thirdparty source files
 # Thirdparty source files
 if (env["openssl"] != "system"): # builtin
 if (env["openssl"] != "system"): # builtin
-	thirdparty_dir = "#thirdparty/openssl/"
+    thirdparty_dir = "#thirdparty/openssl/"
 
 
-	thirdparty_sources = [
-		"ssl/t1_lib.c",
-		"ssl/t1_ext.c",
-		"ssl/s3_srvr.c",
-		"ssl/t1_enc.c",
-		"ssl/t1_meth.c",
-		"ssl/s23_clnt.c",
-		"ssl/ssl_asn1.c",
-		"ssl/tls_srp.c",
-		"ssl/kssl.c",
-		"ssl/d1_both.c",
-		"ssl/t1_clnt.c",
-		"ssl/bio_ssl.c",
-		"ssl/d1_srtp.c",
-		"ssl/t1_reneg.c",
-		"ssl/ssl_cert.c",
-		"ssl/s3_lib.c",
-		"ssl/d1_srvr.c",
-		"ssl/s23_meth.c",
-		"ssl/ssl_stat.c",
-		"ssl/ssl_err.c",
-		"ssl/ssl_algs.c",
-		"ssl/s3_cbc.c",
-		"ssl/d1_clnt.c",
-		"ssl/s3_pkt.c",
-		"ssl/d1_meth.c",
-		"ssl/s3_both.c",
-		"ssl/s2_enc.c",
-		"ssl/s3_meth.c",
-		"ssl/s3_enc.c",
-		"ssl/s23_pkt.c",
-		"ssl/s2_pkt.c",
-		"ssl/d1_pkt.c",
-		"ssl/ssl_rsa.c",
-		"ssl/s23_srvr.c",
-		"ssl/s2_meth.c",
-		"ssl/s3_clnt.c",
-		"ssl/s23_lib.c",
-		"ssl/t1_srvr.c",
-		"ssl/ssl_lib.c",
-		"ssl/ssl_txt.c",
-		"ssl/s2_srvr.c",
-		"ssl/ssl_sess.c",
-		"ssl/s2_clnt.c",
-		"ssl/d1_lib.c",
-		"ssl/s2_lib.c",
-		"ssl/ssl_err2.c",
-		"ssl/ssl_ciph.c",
-		"crypto/dsa/dsa_lib.c",
-		"crypto/dsa/dsa_pmeth.c",
-		"crypto/dsa/dsa_ossl.c",
-		"crypto/dsa/dsa_gen.c",
-		"crypto/dsa/dsa_asn1.c",
-		"crypto/dsa/dsa_prn.c",
-		"crypto/dsa/dsa_sign.c",
-		"crypto/dsa/dsa_key.c",
-		"crypto/dsa/dsa_vrf.c",
-		"crypto/dsa/dsa_err.c",
-		"crypto/dsa/dsa_ameth.c",
-		"crypto/dsa/dsa_depr.c",
-		"crypto/x509/x509_lu.c",
-		"crypto/x509/x509cset.c",
-		"crypto/x509/x509_set.c",
-		"crypto/x509/x509_d2.c",
-		"crypto/x509/x509_txt.c",
-		"crypto/x509/x509rset.c",
-		"crypto/x509/by_dir.c",
-		"crypto/x509/x509_vpm.c",
-		"crypto/x509/x509_vfy.c",
-		"crypto/x509/x509_trs.c",
-		"crypto/x509/by_file.c",
-		"crypto/x509/x509_obj.c",
-		"crypto/x509/x509spki.c",
-		"crypto/x509/x509_v3.c",
-		"crypto/x509/x509_req.c",
-		"crypto/x509/x509_att.c",
-		"crypto/x509/x_all.c",
-		"crypto/x509/x509_ext.c",
-		"crypto/x509/x509type.c",
-		"crypto/x509/x509_def.c",
-		"crypto/x509/x509_err.c",
-		"crypto/x509/x509name.c",
-		"crypto/x509/x509_r2x.c",
-		"crypto/x509/x509_cmp.c",
-		"crypto/asn1/x_pkey.c",
-		"crypto/asn1/a_gentm.c",
-		"crypto/asn1/x_sig.c",
-		"crypto/asn1/t_req.c",
-		"crypto/asn1/t_pkey.c",
-		"crypto/asn1/p8_pkey.c",
-		"crypto/asn1/a_i2d_fp.c",
-		"crypto/asn1/x_val.c",
-		"crypto/asn1/f_string.c",
-		"crypto/asn1/p5_pbe.c",
-		"crypto/asn1/bio_ndef.c",
-		"crypto/asn1/a_bool.c",
-		"crypto/asn1/asn1_gen.c",
-		"crypto/asn1/x_algor.c",
-		"crypto/asn1/bio_asn1.c",
-		"crypto/asn1/asn_mime.c",
-		"crypto/asn1/t_x509.c",
-		"crypto/asn1/a_strex.c",
-		"crypto/asn1/x_nx509.c",
-		"crypto/asn1/asn1_err.c",
-		"crypto/asn1/x_crl.c",
-		"crypto/asn1/a_print.c",
-		"crypto/asn1/a_type.c",
-		"crypto/asn1/tasn_new.c",
-		"crypto/asn1/n_pkey.c",
-		"crypto/asn1/x_bignum.c",
-		"crypto/asn1/asn_pack.c",
-		"crypto/asn1/evp_asn1.c",
-		"crypto/asn1/t_bitst.c",
-		"crypto/asn1/x_req.c",
-		"crypto/asn1/a_time.c",
-		"crypto/asn1/x_name.c",
-		"crypto/asn1/x_pubkey.c",
-		"crypto/asn1/tasn_typ.c",
-		"crypto/asn1/asn_moid.c",
-		"crypto/asn1/a_utctm.c",
-		"crypto/asn1/asn1_lib.c",
-		"crypto/asn1/x_x509a.c",
-		"crypto/asn1/a_set.c",
-		"crypto/asn1/t_crl.c",
-		"crypto/asn1/p5_pbev2.c",
-		"crypto/asn1/tasn_enc.c",
-		"crypto/asn1/a_mbstr.c",
-		"crypto/asn1/tasn_dec.c",
-		"crypto/asn1/x_x509.c",
-		"crypto/asn1/a_octet.c",
-		"crypto/asn1/x_long.c",
-		"crypto/asn1/a_bytes.c",
-		"crypto/asn1/t_x509a.c",
-		"crypto/asn1/a_enum.c",
-		"crypto/asn1/a_int.c",
-		"crypto/asn1/tasn_prn.c",
-		"crypto/asn1/i2d_pr.c",
-		"crypto/asn1/a_utf8.c",
-		"crypto/asn1/t_spki.c",
-		"crypto/asn1/a_digest.c",
-		"crypto/asn1/a_dup.c",
-		"crypto/asn1/i2d_pu.c",
-		"crypto/asn1/a_verify.c",
-		"crypto/asn1/f_enum.c",
-		"crypto/asn1/a_sign.c",
-		"crypto/asn1/d2i_pr.c",
-		"crypto/asn1/asn1_par.c",
-		"crypto/asn1/x_spki.c",
-		"crypto/asn1/a_d2i_fp.c",
-		"crypto/asn1/f_int.c",
-		"crypto/asn1/x_exten.c",
-		"crypto/asn1/tasn_utl.c",
-		"crypto/asn1/nsseq.c",
-		"crypto/asn1/a_bitstr.c",
-		"crypto/asn1/x_info.c",
-		"crypto/asn1/a_strnid.c",
-		"crypto/asn1/a_object.c",
-		"crypto/asn1/tasn_fre.c",
-		"crypto/asn1/d2i_pu.c",
-		"crypto/asn1/ameth_lib.c",
-		"crypto/asn1/x_attrib.c",
-		"crypto/evp/m_sha.c",
-		"crypto/evp/e_camellia.c",
-		"crypto/evp/e_aes.c",
-		"crypto/evp/bio_b64.c",
-		"crypto/evp/m_sigver.c",
-		"crypto/evp/m_wp.c",
-		"crypto/evp/m_sha1.c",
-		"crypto/evp/p_seal.c",
-		"crypto/evp/c_alld.c",
-		"crypto/evp/p5_crpt.c",
-		"crypto/evp/e_rc4.c",
-		"crypto/evp/m_ecdsa.c",
-		"crypto/evp/bio_enc.c",
-		"crypto/evp/e_des3.c",
-		"crypto/evp/m_null.c",
-		"crypto/evp/bio_ok.c",
-		"crypto/evp/pmeth_gn.c",
-		"crypto/evp/e_rc5.c",
-		"crypto/evp/e_rc2.c",
-		"crypto/evp/p_dec.c",
-		"crypto/evp/p_verify.c",
-		"crypto/evp/e_rc4_hmac_md5.c",
-		"crypto/evp/pmeth_lib.c",
-		"crypto/evp/m_ripemd.c",
-		"crypto/evp/m_md5.c",
-		"crypto/evp/e_bf.c",
-		"crypto/evp/p_enc.c",
-		"crypto/evp/m_dss.c",
-		"crypto/evp/bio_md.c",
-		"crypto/evp/evp_pbe.c",
-		"crypto/evp/e_seed.c",
-		"crypto/evp/e_cast.c",
-		"crypto/evp/p_open.c",
-		"crypto/evp/p5_crpt2.c",
-		"crypto/evp/m_dss1.c",
-		"crypto/evp/names.c",
-		"crypto/evp/evp_acnf.c",
-		"crypto/evp/e_des.c",
-		"crypto/evp/evp_cnf.c",
-		"crypto/evp/evp_lib.c",
-		"crypto/evp/digest.c",
-		"crypto/evp/evp_err.c",
-		"crypto/evp/evp_enc.c",
-		"crypto/evp/e_old.c",
-		"crypto/evp/c_all.c",
-		"crypto/evp/m_md2.c",
-		"crypto/evp/e_xcbc_d.c",
-		"crypto/evp/pmeth_fn.c",
-		"crypto/evp/p_lib.c",
-		"crypto/evp/evp_key.c",
-		"crypto/evp/encode.c",
-		"crypto/evp/e_aes_cbc_hmac_sha1.c",
-		"crypto/evp/e_aes_cbc_hmac_sha256.c",
-		"crypto/evp/m_mdc2.c",
-		"crypto/evp/e_null.c",
-		"crypto/evp/p_sign.c",
-		"crypto/evp/e_idea.c",
-		"crypto/evp/c_allc.c",
-		"crypto/evp/evp_pkey.c",
-		"crypto/evp/m_md4.c",
-		"crypto/ex_data.c",
-		"crypto/pkcs12/p12_p8e.c",
-		"crypto/pkcs12/p12_crt.c",
-		"crypto/pkcs12/p12_utl.c",
-		"crypto/pkcs12/p12_attr.c",
-		"crypto/pkcs12/p12_npas.c",
-		"crypto/pkcs12/p12_decr.c",
-		"crypto/pkcs12/p12_init.c",
-		"crypto/pkcs12/p12_kiss.c",
-		"crypto/pkcs12/p12_add.c",
-		"crypto/pkcs12/p12_p8d.c",
-		"crypto/pkcs12/p12_mutl.c",
-		"crypto/pkcs12/p12_crpt.c",
-		"crypto/pkcs12/pk12err.c",
-		"crypto/pkcs12/p12_asn.c",
-		"crypto/pkcs12/p12_key.c",
-		"crypto/ecdh/ech_key.c",
-		"crypto/ecdh/ech_ossl.c",
-		"crypto/ecdh/ech_lib.c",
-		"crypto/ecdh/ech_err.c",
-		"crypto/ecdh/ech_kdf.c",
-		"crypto/o_str.c",
-		"crypto/conf/conf_api.c",
-		"crypto/conf/conf_err.c",
-		"crypto/conf/conf_def.c",
-		"crypto/conf/conf_lib.c",
-		"crypto/conf/conf_mall.c",
-		"crypto/conf/conf_sap.c",
-		"crypto/conf/conf_mod.c",
-		"crypto/ebcdic.c",
-		"crypto/ecdsa/ecs_lib.c",
-		"crypto/ecdsa/ecs_asn1.c",
-		"crypto/ecdsa/ecs_ossl.c",
-		"crypto/ecdsa/ecs_vrf.c",
-		"crypto/ecdsa/ecs_sign.c",
-		"crypto/ecdsa/ecs_err.c",
-		"crypto/dso/dso_win32.c",
-		"crypto/dso/dso_lib.c",
-		"crypto/dso/dso_dlfcn.c",
-		"crypto/dso/dso_dl.c",
-		"crypto/dso/dso_beos.c",
-		"crypto/dso/dso_null.c",
-		"crypto/dso/dso_vms.c",
-		"crypto/dso/dso_err.c",
-		"crypto/dso/dso_openssl.c",
-		"crypto/cryptlib.c",
-		"crypto/md5/md5_one.c",
-		"crypto/md5/md5_dgst.c",
-		"crypto/pkcs7/pkcs7err.c",
-		"crypto/pkcs7/pk7_smime.c",
-		"crypto/pkcs7/bio_pk7.c",
-		"crypto/pkcs7/pk7_mime.c",
-		"crypto/pkcs7/pk7_lib.c",
-		"crypto/pkcs7/pk7_asn1.c",
-		"crypto/pkcs7/pk7_doit.c",
-		"crypto/pkcs7/pk7_attr.c",
-		"crypto/md4/md4_one.c",
-		"crypto/md4/md4_dgst.c",
-		"crypto/o_dir.c",
-		"crypto/buffer/buf_err.c",
-		"crypto/buffer/buf_str.c",
-		"crypto/buffer/buffer.c",
-		"crypto/cms/cms_lib.c",
-		"crypto/cms/cms_io.c",
-		"crypto/cms/cms_err.c",
-		"crypto/cms/cms_dd.c",
-		"crypto/cms/cms_smime.c",
-		"crypto/cms/cms_att.c",
-		"crypto/cms/cms_pwri.c",
-		"crypto/cms/cms_cd.c",
-		"crypto/cms/cms_sd.c",
-		"crypto/cms/cms_asn1.c",
-		"crypto/cms/cms_env.c",
-		"crypto/cms/cms_enc.c",
-		"crypto/cms/cms_ess.c",
-		"crypto/cms/cms_kari.c",
-		"crypto/mem_dbg.c",
-		"crypto/uid.c",
-		"crypto/stack/stack.c",
-		"crypto/ec/ec_ameth.c",
-		"crypto/ec/ec_err.c",
-		"crypto/ec/ec_lib.c",
-		"crypto/ec/ec_curve.c",
-		"crypto/ec/ec_oct.c",
-		"crypto/ec/ec_asn1.c",
-		"crypto/ec/ecp_oct.c",
-		"crypto/ec/ec_print.c",
-		"crypto/ec/ec2_smpl.c",
-		"crypto/ec/ecp_nistp224.c",
-		"crypto/ec/ec2_oct.c",
-		"crypto/ec/eck_prn.c",
-		"crypto/ec/ec_key.c",
-		"crypto/ec/ecp_nist.c",
-		"crypto/ec/ec_check.c",
-		"crypto/ec/ecp_smpl.c",
-		"crypto/ec/ec2_mult.c",
-		"crypto/ec/ecp_mont.c",
-		"crypto/ec/ecp_nistp521.c",
-		"crypto/ec/ec_mult.c",
-		"crypto/ec/ecp_nistputil.c",
-		"crypto/ec/ec_pmeth.c",
-		"crypto/ec/ec_cvt.c",
-		"crypto/ec/ecp_nistp256.c",
-		"crypto/krb5/krb5_asn.c",
-		"crypto/hmac/hmac.c",
-		"crypto/hmac/hm_ameth.c",
-		"crypto/hmac/hm_pmeth.c",
-		"crypto/comp/c_rle.c",
-		"crypto/comp/c_zlib.c",
-		"crypto/comp/comp_lib.c",
-		"crypto/comp/comp_err.c",
-		"crypto/des/fcrypt.c",
-		"crypto/des/str2key.c",
-		"crypto/des/cbc_cksm.c",
-		"crypto/des/des_enc.c",
-		"crypto/des/ofb_enc.c",
-		"crypto/des/read2pwd.c",
-		"crypto/des/ecb3_enc.c",
-		"crypto/des/rand_key.c",
-		"crypto/des/cfb64ede.c",
-		"crypto/des/rpc_enc.c",
-		"crypto/des/ofb64ede.c",
-		"crypto/des/qud_cksm.c",
-		"crypto/des/enc_writ.c",
-		"crypto/des/set_key.c",
-		"crypto/des/xcbc_enc.c",
-		"crypto/des/fcrypt_b.c",
-		"crypto/des/ede_cbcm_enc.c",
-		"crypto/des/des_old2.c",
-		"crypto/des/cfb_enc.c",
-		"crypto/des/ecb_enc.c",
-		"crypto/des/enc_read.c",
-		"crypto/des/des_old.c",
-		"crypto/des/ofb64enc.c",
-		"crypto/des/pcbc_enc.c",
-		"crypto/des/cbc_enc.c",
-		"crypto/des/cfb64enc.c",
-		"crypto/lhash/lh_stats.c",
-		"crypto/lhash/lhash.c",
-		"crypto/x509v3/v3_genn.c",
-		"crypto/x509v3/pcy_cache.c",
-		"crypto/x509v3/v3_sxnet.c",
-		"crypto/x509v3/v3_scts.c",
-		"crypto/x509v3/v3err.c",
-		"crypto/x509v3/v3_conf.c",
-		"crypto/x509v3/v3_utl.c",
-		"crypto/x509v3/v3_akeya.c",
-		"crypto/x509v3/v3_lib.c",
-		"crypto/x509v3/pcy_lib.c",
-		"crypto/x509v3/v3_cpols.c",
-		"crypto/x509v3/v3_ia5.c",
-		"crypto/x509v3/v3_bitst.c",
-		"crypto/x509v3/v3_skey.c",
-		"crypto/x509v3/v3_info.c",
-		"crypto/x509v3/v3_asid.c",
-		"crypto/x509v3/pcy_tree.c",
-		"crypto/x509v3/v3_pcons.c",
-		"crypto/x509v3/v3_bcons.c",
-		"crypto/x509v3/v3_pku.c",
-		"crypto/x509v3/v3_ocsp.c",
-		"crypto/x509v3/pcy_map.c",
-		"crypto/x509v3/v3_ncons.c",
-		"crypto/x509v3/v3_purp.c",
-		"crypto/x509v3/v3_enum.c",
-		"crypto/x509v3/v3_pmaps.c",
-		"crypto/x509v3/pcy_node.c",
-		"crypto/x509v3/v3_pcia.c",
-		"crypto/x509v3/v3_crld.c",
-		"crypto/x509v3/v3_pci.c",
-		"crypto/x509v3/v3_akey.c",
-		"crypto/x509v3/v3_addr.c",
-		"crypto/x509v3/v3_int.c",
-		"crypto/x509v3/v3_alt.c",
-		"crypto/x509v3/v3_extku.c",
-		"crypto/x509v3/v3_prn.c",
-		"crypto/x509v3/pcy_data.c",
-		"crypto/aes/aes_ofb.c",
-		"crypto/aes/aes_ctr.c",
-		"crypto/aes/aes_ecb.c",
-		"crypto/aes/aes_cfb.c",
-		"crypto/aes/aes_wrap.c",
-		"crypto/aes/aes_ige.c",
-		"crypto/aes/aes_misc.c",
-		"crypto/pqueue/pqueue.c",
-		"crypto/sha/sha_one.c",
-		"crypto/sha/sha_dgst.c",
-		"crypto/sha/sha512.c",
-		"crypto/sha/sha1_one.c",
-		"crypto/sha/sha1dgst.c",
-		"crypto/sha/sha256.c",
-		"crypto/whrlpool/wp_dgst.c",
-		"crypto/objects/obj_xref.c",
-		"crypto/objects/o_names.c",
-		"crypto/objects/obj_err.c",
-		"crypto/objects/obj_dat.c",
-		"crypto/objects/obj_lib.c",
-		"crypto/mem.c",
-		"crypto/fips_ers.c",
-		"crypto/o_fips.c",
-		"crypto/engine/eng_rdrand.c",
-		"crypto/engine/eng_err.c",
-		"crypto/engine/tb_ecdsa.c",
-		"crypto/engine/tb_rsa.c",
-		"crypto/engine/tb_cipher.c",
-		"crypto/engine/tb_dsa.c",
-		"crypto/engine/eng_lib.c",
-		"crypto/engine/tb_asnmth.c",
-		"crypto/engine/tb_ecdh.c",
-		"crypto/engine/tb_dh.c",
-		"crypto/engine/tb_store.c",
-		"crypto/engine/eng_init.c",
-		"crypto/engine/eng_cnf.c",
-		"crypto/engine/eng_all.c",
-		"crypto/engine/tb_digest.c",
-		"crypto/engine/tb_pkmeth.c",
-		"crypto/engine/eng_table.c",
-		"crypto/engine/eng_ctrl.c",
-		"crypto/engine/eng_list.c",
-		"crypto/engine/eng_cryptodev.c",
-		"crypto/engine/eng_pkey.c",
-		"crypto/engine/tb_rand.c",
-		"crypto/engine/eng_openssl.c",
-		"crypto/engine/eng_fat.c",
-		"crypto/engine/eng_dyn.c",
-		"crypto/ts/ts_rsp_verify.c",
-		"crypto/ts/ts_req_print.c",
-		"crypto/ts/ts_verify_ctx.c",
-		"crypto/ts/ts_req_utils.c",
-		"crypto/ts/ts_err.c",
-		"crypto/ts/ts_rsp_print.c",
-		"crypto/ts/ts_rsp_utils.c",
-		"crypto/ts/ts_lib.c",
-		"crypto/ts/ts_conf.c",
-		"crypto/ts/ts_asn1.c",
-		"crypto/ts/ts_rsp_sign.c",
-		"crypto/ocsp/ocsp_ext.c",
-		"crypto/ocsp/ocsp_cl.c",
-		"crypto/ocsp/ocsp_ht.c",
-		"crypto/ocsp/ocsp_lib.c",
-		"crypto/ocsp/ocsp_srv.c",
-		"crypto/ocsp/ocsp_vfy.c",
-		"crypto/ocsp/ocsp_err.c",
-		"crypto/ocsp/ocsp_prn.c",
-		"crypto/ocsp/ocsp_asn.c",
-		"crypto/bf/bf_cfb64.c",
-		"crypto/bf/bf_ecb.c",
-		"crypto/bf/bf_enc.c",
-		"crypto/bf/bf_skey.c",
-		"crypto/bf/bf_ofb64.c",
-		"crypto/idea/i_skey.c",
-		"crypto/idea/i_ofb64.c",
-		"crypto/idea/i_cbc.c",
-		"crypto/idea/i_ecb.c",
-		"crypto/idea/i_cfb64.c",
-		"crypto/cmac/cm_ameth.c",
-		"crypto/cmac/cmac.c",
-		"crypto/cmac/cm_pmeth.c",
-		"crypto/dh/dh_lib.c",
-		"crypto/dh/dh_key.c",
-		"crypto/dh/dh_asn1.c",
-		"crypto/dh/dh_depr.c",
-		"crypto/dh/dh_pmeth.c",
-		"crypto/dh/dh_prn.c",
-		"crypto/dh/dh_gen.c",
-		"crypto/dh/dh_ameth.c",
-		"crypto/dh/dh_check.c",
-		"crypto/dh/dh_err.c",
-		"crypto/dh/dh_kdf.c",
-		"crypto/dh/dh_rfc5114.c",
-		"crypto/modes/ccm128.c",
-		"crypto/modes/ofb128.c",
-		"crypto/modes/cts128.c",
-		"crypto/modes/ctr128.c",
-		"crypto/modes/gcm128.c",
-		"crypto/modes/cbc128.c",
-		"crypto/modes/cfb128.c",
-		"crypto/modes/xts128.c",
-		"crypto/modes/wrap128.c",
-		"crypto/camellia/cmll_cfb.c",
-		"crypto/camellia/cmll_ecb.c",
-		"crypto/camellia/cmll_utl.c",
-		"crypto/camellia/cmll_misc.c",
-		"crypto/camellia/cmll_ofb.c",
-		"crypto/camellia/cmll_ctr.c",
-		"crypto/seed/seed_ecb.c",
-		"crypto/seed/seed_cbc.c",
-		"crypto/seed/seed.c",
-		"crypto/seed/seed_ofb.c",
-		"crypto/seed/seed_cfb.c",
-		"crypto/txt_db/txt_db.c",
-		"crypto/cpt_err.c",
-		"crypto/pem/pem_pk8.c",
-		"crypto/pem/pem_lib.c",
-		"crypto/pem/pem_sign.c",
-		"crypto/pem/pem_all.c",
-		"crypto/pem/pem_info.c",
-		"crypto/pem/pem_pkey.c",
-		"crypto/pem/pem_seal.c",
-		"crypto/pem/pem_err.c",
-		"crypto/pem/pem_xaux.c",
-		"crypto/pem/pvkfmt.c",
-		"crypto/pem/pem_x509.c",
-		"crypto/pem/pem_oth.c",
-		"crypto/rand/rand_lib.c",
-		"crypto/rand/randfile.c",
-		"crypto/rand/rand_os2.c",
-		"crypto/rand/rand_unix.c",
-		"crypto/rand/rand_nw.c",
-		"crypto/rand/md_rand.c",
-		"crypto/rand/rand_err.c",
-		"crypto/rand/rand_win.c",
-		"crypto/rand/rand_egd.c",
-		"crypto/cversion.c",
-		"crypto/cast/c_ecb.c",
-		"crypto/cast/c_skey.c",
-		"crypto/cast/c_ofb64.c",
-		"crypto/cast/c_enc.c",
-		"crypto/cast/c_cfb64.c",
-		"crypto/o_time.c",
-		"crypto/mdc2/mdc2dgst.c",
-		"crypto/mdc2/mdc2_one.c",
-		"crypto/rc4/rc4_utl.c",
-		"crypto/ui/ui_compat.c",
-		"crypto/ui/ui_util.c",
-		"crypto/ui/ui_lib.c",
-		"crypto/ui/ui_err.c",
-		"crypto/ui/ui_openssl.c",
-		"crypto/bio/bf_buff.c",
-		"crypto/bio/bss_null.c",
-		"crypto/bio/bss_acpt.c",
-		"crypto/bio/bss_conn.c",
-		"crypto/bio/bss_fd.c",
-		"crypto/bio/bf_null.c",
-		"crypto/bio/bio_err.c",
-		"crypto/bio/bss_sock.c",
-		"crypto/bio/bss_mem.c",
-		"crypto/bio/b_dump.c",
-		"crypto/bio/b_print.c",
-		"crypto/bio/b_sock.c",
-		"crypto/bio/bss_dgram.c",
-		"crypto/bio/bf_nbio.c",
-		"crypto/bio/bio_lib.c",
-		"crypto/bio/bss_file.c",
-		"crypto/bio/bss_bio.c",
-		"crypto/bio/bss_log.c",
-		"crypto/bio/bio_cb.c",
-		"crypto/o_init.c",
-		"crypto/rc2/rc2_skey.c",
-		"crypto/rc2/rc2_cbc.c",
-		"crypto/rc2/rc2cfb64.c",
-		"crypto/rc2/rc2_ecb.c",
-		"crypto/rc2/rc2ofb64.c",
-		"crypto/bn/bn_x931p.c",
-		"crypto/bn/bn_blind.c",
-		"crypto/bn/bn_gf2m.c",
-		"crypto/bn/bn_const.c",
-		"crypto/bn/bn_sqr.c",
-		"crypto/bn/bn_nist.c",
-		"crypto/bn/bn_rand.c",
-		"crypto/bn/bn_err.c",
-		"crypto/bn/bn_div.c",
-		"crypto/bn/bn_kron.c",
-		"crypto/bn/bn_ctx.c",
-		"crypto/bn/bn_shift.c",
-		"crypto/bn/bn_mod.c",
-		"crypto/bn/bn_exp2.c",
-		"crypto/bn/bn_word.c",
-		"crypto/bn/bn_add.c",
-		"crypto/bn/bn_exp.c",
-		"crypto/bn/bn_mont.c",
-		"crypto/bn/bn_print.c",
-		"crypto/bn/bn_mul.c",
-		"crypto/bn/bn_prime.c",
-		"crypto/bn/bn_depr.c",
-		"crypto/bn/bn_gcd.c",
-		"crypto/bn/bn_mpi.c",
-		"crypto/bn/bn_sqrt.c",
-		"crypto/bn/bn_recp.c",
-		"crypto/bn/bn_lib.c",
-		"crypto/ripemd/rmd_dgst.c",
-		"crypto/ripemd/rmd_one.c",
-		"crypto/rsa/rsa_x931.c",
-		"crypto/rsa/rsa_depr.c",
-		"crypto/rsa/rsa_saos.c",
-		"crypto/rsa/rsa_crpt.c",
-		"crypto/rsa/rsa_pss.c",
-		"crypto/rsa/rsa_oaep.c",
-		"crypto/rsa/rsa_null.c",
-		"crypto/rsa/rsa_gen.c",
-		"crypto/rsa/rsa_prn.c",
-		"crypto/rsa/rsa_pmeth.c",
-		"crypto/rsa/rsa_asn1.c",
-		"crypto/rsa/rsa_ssl.c",
-		"crypto/rsa/rsa_ameth.c",
-		"crypto/rsa/rsa_pk1.c",
-		"crypto/rsa/rsa_err.c",
-		"crypto/rsa/rsa_lib.c",
-		"crypto/rsa/rsa_none.c",
-		"crypto/rsa/rsa_chk.c",
-		"crypto/rsa/rsa_eay.c",
-		"crypto/rsa/rsa_sign.c",
-		"crypto/srp/srp_lib.c",
-		"crypto/srp/srp_vfy.c",
-		"crypto/err/err.c",
-		"crypto/err/err_prn.c",
-		"crypto/err/err_all.c",
-		"crypto/mem_clr.c",
-		"crypto/rc4/rc4_skey.c",
-		"crypto/rc4/rc4_enc.c",
-		"crypto/camellia/camellia.c",
-		"crypto/camellia/cmll_cbc.c",
-		#"crypto/aes/aes_x86core.c",
-		"crypto/aes/aes_core.c",
-		"crypto/aes/aes_cbc.c",
-		"crypto/whrlpool/wp_block.c",
-		"crypto/bn/bn_asm.c",
-	]
+    thirdparty_sources = [
+        "ssl/t1_lib.c",
+        "ssl/t1_ext.c",
+        "ssl/s3_srvr.c",
+        "ssl/t1_enc.c",
+        "ssl/t1_meth.c",
+        "ssl/s23_clnt.c",
+        "ssl/ssl_asn1.c",
+        "ssl/tls_srp.c",
+        "ssl/kssl.c",
+        "ssl/d1_both.c",
+        "ssl/t1_clnt.c",
+        "ssl/bio_ssl.c",
+        "ssl/d1_srtp.c",
+        "ssl/t1_reneg.c",
+        "ssl/ssl_cert.c",
+        "ssl/s3_lib.c",
+        "ssl/d1_srvr.c",
+        "ssl/s23_meth.c",
+        "ssl/ssl_stat.c",
+        "ssl/ssl_err.c",
+        "ssl/ssl_algs.c",
+        "ssl/s3_cbc.c",
+        "ssl/d1_clnt.c",
+        "ssl/s3_pkt.c",
+        "ssl/d1_meth.c",
+        "ssl/s3_both.c",
+        "ssl/s2_enc.c",
+        "ssl/s3_meth.c",
+        "ssl/s3_enc.c",
+        "ssl/s23_pkt.c",
+        "ssl/s2_pkt.c",
+        "ssl/d1_pkt.c",
+        "ssl/ssl_rsa.c",
+        "ssl/s23_srvr.c",
+        "ssl/s2_meth.c",
+        "ssl/s3_clnt.c",
+        "ssl/s23_lib.c",
+        "ssl/t1_srvr.c",
+        "ssl/ssl_lib.c",
+        "ssl/ssl_txt.c",
+        "ssl/s2_srvr.c",
+        "ssl/ssl_sess.c",
+        "ssl/s2_clnt.c",
+        "ssl/d1_lib.c",
+        "ssl/s2_lib.c",
+        "ssl/ssl_err2.c",
+        "ssl/ssl_ciph.c",
+        "crypto/dsa/dsa_lib.c",
+        "crypto/dsa/dsa_pmeth.c",
+        "crypto/dsa/dsa_ossl.c",
+        "crypto/dsa/dsa_gen.c",
+        "crypto/dsa/dsa_asn1.c",
+        "crypto/dsa/dsa_prn.c",
+        "crypto/dsa/dsa_sign.c",
+        "crypto/dsa/dsa_key.c",
+        "crypto/dsa/dsa_vrf.c",
+        "crypto/dsa/dsa_err.c",
+        "crypto/dsa/dsa_ameth.c",
+        "crypto/dsa/dsa_depr.c",
+        "crypto/x509/x509_lu.c",
+        "crypto/x509/x509cset.c",
+        "crypto/x509/x509_set.c",
+        "crypto/x509/x509_d2.c",
+        "crypto/x509/x509_txt.c",
+        "crypto/x509/x509rset.c",
+        "crypto/x509/by_dir.c",
+        "crypto/x509/x509_vpm.c",
+        "crypto/x509/x509_vfy.c",
+        "crypto/x509/x509_trs.c",
+        "crypto/x509/by_file.c",
+        "crypto/x509/x509_obj.c",
+        "crypto/x509/x509spki.c",
+        "crypto/x509/x509_v3.c",
+        "crypto/x509/x509_req.c",
+        "crypto/x509/x509_att.c",
+        "crypto/x509/x_all.c",
+        "crypto/x509/x509_ext.c",
+        "crypto/x509/x509type.c",
+        "crypto/x509/x509_def.c",
+        "crypto/x509/x509_err.c",
+        "crypto/x509/x509name.c",
+        "crypto/x509/x509_r2x.c",
+        "crypto/x509/x509_cmp.c",
+        "crypto/asn1/x_pkey.c",
+        "crypto/asn1/a_gentm.c",
+        "crypto/asn1/x_sig.c",
+        "crypto/asn1/t_req.c",
+        "crypto/asn1/t_pkey.c",
+        "crypto/asn1/p8_pkey.c",
+        "crypto/asn1/a_i2d_fp.c",
+        "crypto/asn1/x_val.c",
+        "crypto/asn1/f_string.c",
+        "crypto/asn1/p5_pbe.c",
+        "crypto/asn1/bio_ndef.c",
+        "crypto/asn1/a_bool.c",
+        "crypto/asn1/asn1_gen.c",
+        "crypto/asn1/x_algor.c",
+        "crypto/asn1/bio_asn1.c",
+        "crypto/asn1/asn_mime.c",
+        "crypto/asn1/t_x509.c",
+        "crypto/asn1/a_strex.c",
+        "crypto/asn1/x_nx509.c",
+        "crypto/asn1/asn1_err.c",
+        "crypto/asn1/x_crl.c",
+        "crypto/asn1/a_print.c",
+        "crypto/asn1/a_type.c",
+        "crypto/asn1/tasn_new.c",
+        "crypto/asn1/n_pkey.c",
+        "crypto/asn1/x_bignum.c",
+        "crypto/asn1/asn_pack.c",
+        "crypto/asn1/evp_asn1.c",
+        "crypto/asn1/t_bitst.c",
+        "crypto/asn1/x_req.c",
+        "crypto/asn1/a_time.c",
+        "crypto/asn1/x_name.c",
+        "crypto/asn1/x_pubkey.c",
+        "crypto/asn1/tasn_typ.c",
+        "crypto/asn1/asn_moid.c",
+        "crypto/asn1/a_utctm.c",
+        "crypto/asn1/asn1_lib.c",
+        "crypto/asn1/x_x509a.c",
+        "crypto/asn1/a_set.c",
+        "crypto/asn1/t_crl.c",
+        "crypto/asn1/p5_pbev2.c",
+        "crypto/asn1/tasn_enc.c",
+        "crypto/asn1/a_mbstr.c",
+        "crypto/asn1/tasn_dec.c",
+        "crypto/asn1/x_x509.c",
+        "crypto/asn1/a_octet.c",
+        "crypto/asn1/x_long.c",
+        "crypto/asn1/a_bytes.c",
+        "crypto/asn1/t_x509a.c",
+        "crypto/asn1/a_enum.c",
+        "crypto/asn1/a_int.c",
+        "crypto/asn1/tasn_prn.c",
+        "crypto/asn1/i2d_pr.c",
+        "crypto/asn1/a_utf8.c",
+        "crypto/asn1/t_spki.c",
+        "crypto/asn1/a_digest.c",
+        "crypto/asn1/a_dup.c",
+        "crypto/asn1/i2d_pu.c",
+        "crypto/asn1/a_verify.c",
+        "crypto/asn1/f_enum.c",
+        "crypto/asn1/a_sign.c",
+        "crypto/asn1/d2i_pr.c",
+        "crypto/asn1/asn1_par.c",
+        "crypto/asn1/x_spki.c",
+        "crypto/asn1/a_d2i_fp.c",
+        "crypto/asn1/f_int.c",
+        "crypto/asn1/x_exten.c",
+        "crypto/asn1/tasn_utl.c",
+        "crypto/asn1/nsseq.c",
+        "crypto/asn1/a_bitstr.c",
+        "crypto/asn1/x_info.c",
+        "crypto/asn1/a_strnid.c",
+        "crypto/asn1/a_object.c",
+        "crypto/asn1/tasn_fre.c",
+        "crypto/asn1/d2i_pu.c",
+        "crypto/asn1/ameth_lib.c",
+        "crypto/asn1/x_attrib.c",
+        "crypto/evp/m_sha.c",
+        "crypto/evp/e_camellia.c",
+        "crypto/evp/e_aes.c",
+        "crypto/evp/bio_b64.c",
+        "crypto/evp/m_sigver.c",
+        "crypto/evp/m_wp.c",
+        "crypto/evp/m_sha1.c",
+        "crypto/evp/p_seal.c",
+        "crypto/evp/c_alld.c",
+        "crypto/evp/p5_crpt.c",
+        "crypto/evp/e_rc4.c",
+        "crypto/evp/m_ecdsa.c",
+        "crypto/evp/bio_enc.c",
+        "crypto/evp/e_des3.c",
+        "crypto/evp/m_null.c",
+        "crypto/evp/bio_ok.c",
+        "crypto/evp/pmeth_gn.c",
+        "crypto/evp/e_rc5.c",
+        "crypto/evp/e_rc2.c",
+        "crypto/evp/p_dec.c",
+        "crypto/evp/p_verify.c",
+        "crypto/evp/e_rc4_hmac_md5.c",
+        "crypto/evp/pmeth_lib.c",
+        "crypto/evp/m_ripemd.c",
+        "crypto/evp/m_md5.c",
+        "crypto/evp/e_bf.c",
+        "crypto/evp/p_enc.c",
+        "crypto/evp/m_dss.c",
+        "crypto/evp/bio_md.c",
+        "crypto/evp/evp_pbe.c",
+        "crypto/evp/e_seed.c",
+        "crypto/evp/e_cast.c",
+        "crypto/evp/p_open.c",
+        "crypto/evp/p5_crpt2.c",
+        "crypto/evp/m_dss1.c",
+        "crypto/evp/names.c",
+        "crypto/evp/evp_acnf.c",
+        "crypto/evp/e_des.c",
+        "crypto/evp/evp_cnf.c",
+        "crypto/evp/evp_lib.c",
+        "crypto/evp/digest.c",
+        "crypto/evp/evp_err.c",
+        "crypto/evp/evp_enc.c",
+        "crypto/evp/e_old.c",
+        "crypto/evp/c_all.c",
+        "crypto/evp/m_md2.c",
+        "crypto/evp/e_xcbc_d.c",
+        "crypto/evp/pmeth_fn.c",
+        "crypto/evp/p_lib.c",
+        "crypto/evp/evp_key.c",
+        "crypto/evp/encode.c",
+        "crypto/evp/e_aes_cbc_hmac_sha1.c",
+        "crypto/evp/e_aes_cbc_hmac_sha256.c",
+        "crypto/evp/m_mdc2.c",
+        "crypto/evp/e_null.c",
+        "crypto/evp/p_sign.c",
+        "crypto/evp/e_idea.c",
+        "crypto/evp/c_allc.c",
+        "crypto/evp/evp_pkey.c",
+        "crypto/evp/m_md4.c",
+        "crypto/ex_data.c",
+        "crypto/pkcs12/p12_p8e.c",
+        "crypto/pkcs12/p12_crt.c",
+        "crypto/pkcs12/p12_utl.c",
+        "crypto/pkcs12/p12_attr.c",
+        "crypto/pkcs12/p12_npas.c",
+        "crypto/pkcs12/p12_decr.c",
+        "crypto/pkcs12/p12_init.c",
+        "crypto/pkcs12/p12_kiss.c",
+        "crypto/pkcs12/p12_add.c",
+        "crypto/pkcs12/p12_p8d.c",
+        "crypto/pkcs12/p12_mutl.c",
+        "crypto/pkcs12/p12_crpt.c",
+        "crypto/pkcs12/pk12err.c",
+        "crypto/pkcs12/p12_asn.c",
+        "crypto/pkcs12/p12_key.c",
+        "crypto/ecdh/ech_key.c",
+        "crypto/ecdh/ech_ossl.c",
+        "crypto/ecdh/ech_lib.c",
+        "crypto/ecdh/ech_err.c",
+        "crypto/ecdh/ech_kdf.c",
+        "crypto/o_str.c",
+        "crypto/conf/conf_api.c",
+        "crypto/conf/conf_err.c",
+        "crypto/conf/conf_def.c",
+        "crypto/conf/conf_lib.c",
+        "crypto/conf/conf_mall.c",
+        "crypto/conf/conf_sap.c",
+        "crypto/conf/conf_mod.c",
+        "crypto/ebcdic.c",
+        "crypto/ecdsa/ecs_lib.c",
+        "crypto/ecdsa/ecs_asn1.c",
+        "crypto/ecdsa/ecs_ossl.c",
+        "crypto/ecdsa/ecs_vrf.c",
+        "crypto/ecdsa/ecs_sign.c",
+        "crypto/ecdsa/ecs_err.c",
+        "crypto/dso/dso_win32.c",
+        "crypto/dso/dso_lib.c",
+        "crypto/dso/dso_dlfcn.c",
+        "crypto/dso/dso_dl.c",
+        "crypto/dso/dso_beos.c",
+        "crypto/dso/dso_null.c",
+        "crypto/dso/dso_vms.c",
+        "crypto/dso/dso_err.c",
+        "crypto/dso/dso_openssl.c",
+        "crypto/cryptlib.c",
+        "crypto/md5/md5_one.c",
+        "crypto/md5/md5_dgst.c",
+        "crypto/pkcs7/pkcs7err.c",
+        "crypto/pkcs7/pk7_smime.c",
+        "crypto/pkcs7/bio_pk7.c",
+        "crypto/pkcs7/pk7_mime.c",
+        "crypto/pkcs7/pk7_lib.c",
+        "crypto/pkcs7/pk7_asn1.c",
+        "crypto/pkcs7/pk7_doit.c",
+        "crypto/pkcs7/pk7_attr.c",
+        "crypto/md4/md4_one.c",
+        "crypto/md4/md4_dgst.c",
+        "crypto/o_dir.c",
+        "crypto/buffer/buf_err.c",
+        "crypto/buffer/buf_str.c",
+        "crypto/buffer/buffer.c",
+        "crypto/cms/cms_lib.c",
+        "crypto/cms/cms_io.c",
+        "crypto/cms/cms_err.c",
+        "crypto/cms/cms_dd.c",
+        "crypto/cms/cms_smime.c",
+        "crypto/cms/cms_att.c",
+        "crypto/cms/cms_pwri.c",
+        "crypto/cms/cms_cd.c",
+        "crypto/cms/cms_sd.c",
+        "crypto/cms/cms_asn1.c",
+        "crypto/cms/cms_env.c",
+        "crypto/cms/cms_enc.c",
+        "crypto/cms/cms_ess.c",
+        "crypto/cms/cms_kari.c",
+        "crypto/mem_dbg.c",
+        "crypto/uid.c",
+        "crypto/stack/stack.c",
+        "crypto/ec/ec_ameth.c",
+        "crypto/ec/ec_err.c",
+        "crypto/ec/ec_lib.c",
+        "crypto/ec/ec_curve.c",
+        "crypto/ec/ec_oct.c",
+        "crypto/ec/ec_asn1.c",
+        "crypto/ec/ecp_oct.c",
+        "crypto/ec/ec_print.c",
+        "crypto/ec/ec2_smpl.c",
+        "crypto/ec/ecp_nistp224.c",
+        "crypto/ec/ec2_oct.c",
+        "crypto/ec/eck_prn.c",
+        "crypto/ec/ec_key.c",
+        "crypto/ec/ecp_nist.c",
+        "crypto/ec/ec_check.c",
+        "crypto/ec/ecp_smpl.c",
+        "crypto/ec/ec2_mult.c",
+        "crypto/ec/ecp_mont.c",
+        "crypto/ec/ecp_nistp521.c",
+        "crypto/ec/ec_mult.c",
+        "crypto/ec/ecp_nistputil.c",
+        "crypto/ec/ec_pmeth.c",
+        "crypto/ec/ec_cvt.c",
+        "crypto/ec/ecp_nistp256.c",
+        "crypto/krb5/krb5_asn.c",
+        "crypto/hmac/hmac.c",
+        "crypto/hmac/hm_ameth.c",
+        "crypto/hmac/hm_pmeth.c",
+        "crypto/comp/c_rle.c",
+        "crypto/comp/c_zlib.c",
+        "crypto/comp/comp_lib.c",
+        "crypto/comp/comp_err.c",
+        "crypto/des/fcrypt.c",
+        "crypto/des/str2key.c",
+        "crypto/des/cbc_cksm.c",
+        "crypto/des/des_enc.c",
+        "crypto/des/ofb_enc.c",
+        "crypto/des/read2pwd.c",
+        "crypto/des/ecb3_enc.c",
+        "crypto/des/rand_key.c",
+        "crypto/des/cfb64ede.c",
+        "crypto/des/rpc_enc.c",
+        "crypto/des/ofb64ede.c",
+        "crypto/des/qud_cksm.c",
+        "crypto/des/enc_writ.c",
+        "crypto/des/set_key.c",
+        "crypto/des/xcbc_enc.c",
+        "crypto/des/fcrypt_b.c",
+        "crypto/des/ede_cbcm_enc.c",
+        "crypto/des/des_old2.c",
+        "crypto/des/cfb_enc.c",
+        "crypto/des/ecb_enc.c",
+        "crypto/des/enc_read.c",
+        "crypto/des/des_old.c",
+        "crypto/des/ofb64enc.c",
+        "crypto/des/pcbc_enc.c",
+        "crypto/des/cbc_enc.c",
+        "crypto/des/cfb64enc.c",
+        "crypto/lhash/lh_stats.c",
+        "crypto/lhash/lhash.c",
+        "crypto/x509v3/v3_genn.c",
+        "crypto/x509v3/pcy_cache.c",
+        "crypto/x509v3/v3_sxnet.c",
+        "crypto/x509v3/v3_scts.c",
+        "crypto/x509v3/v3err.c",
+        "crypto/x509v3/v3_conf.c",
+        "crypto/x509v3/v3_utl.c",
+        "crypto/x509v3/v3_akeya.c",
+        "crypto/x509v3/v3_lib.c",
+        "crypto/x509v3/pcy_lib.c",
+        "crypto/x509v3/v3_cpols.c",
+        "crypto/x509v3/v3_ia5.c",
+        "crypto/x509v3/v3_bitst.c",
+        "crypto/x509v3/v3_skey.c",
+        "crypto/x509v3/v3_info.c",
+        "crypto/x509v3/v3_asid.c",
+        "crypto/x509v3/pcy_tree.c",
+        "crypto/x509v3/v3_pcons.c",
+        "crypto/x509v3/v3_bcons.c",
+        "crypto/x509v3/v3_pku.c",
+        "crypto/x509v3/v3_ocsp.c",
+        "crypto/x509v3/pcy_map.c",
+        "crypto/x509v3/v3_ncons.c",
+        "crypto/x509v3/v3_purp.c",
+        "crypto/x509v3/v3_enum.c",
+        "crypto/x509v3/v3_pmaps.c",
+        "crypto/x509v3/pcy_node.c",
+        "crypto/x509v3/v3_pcia.c",
+        "crypto/x509v3/v3_crld.c",
+        "crypto/x509v3/v3_pci.c",
+        "crypto/x509v3/v3_akey.c",
+        "crypto/x509v3/v3_addr.c",
+        "crypto/x509v3/v3_int.c",
+        "crypto/x509v3/v3_alt.c",
+        "crypto/x509v3/v3_extku.c",
+        "crypto/x509v3/v3_prn.c",
+        "crypto/x509v3/pcy_data.c",
+        "crypto/aes/aes_ofb.c",
+        "crypto/aes/aes_ctr.c",
+        "crypto/aes/aes_ecb.c",
+        "crypto/aes/aes_cfb.c",
+        "crypto/aes/aes_wrap.c",
+        "crypto/aes/aes_ige.c",
+        "crypto/aes/aes_misc.c",
+        "crypto/pqueue/pqueue.c",
+        "crypto/sha/sha_one.c",
+        "crypto/sha/sha_dgst.c",
+        "crypto/sha/sha512.c",
+        "crypto/sha/sha1_one.c",
+        "crypto/sha/sha1dgst.c",
+        "crypto/sha/sha256.c",
+        "crypto/whrlpool/wp_dgst.c",
+        "crypto/objects/obj_xref.c",
+        "crypto/objects/o_names.c",
+        "crypto/objects/obj_err.c",
+        "crypto/objects/obj_dat.c",
+        "crypto/objects/obj_lib.c",
+        "crypto/mem.c",
+        "crypto/fips_ers.c",
+        "crypto/o_fips.c",
+        "crypto/engine/eng_rdrand.c",
+        "crypto/engine/eng_err.c",
+        "crypto/engine/tb_ecdsa.c",
+        "crypto/engine/tb_rsa.c",
+        "crypto/engine/tb_cipher.c",
+        "crypto/engine/tb_dsa.c",
+        "crypto/engine/eng_lib.c",
+        "crypto/engine/tb_asnmth.c",
+        "crypto/engine/tb_ecdh.c",
+        "crypto/engine/tb_dh.c",
+        "crypto/engine/tb_store.c",
+        "crypto/engine/eng_init.c",
+        "crypto/engine/eng_cnf.c",
+        "crypto/engine/eng_all.c",
+        "crypto/engine/tb_digest.c",
+        "crypto/engine/tb_pkmeth.c",
+        "crypto/engine/eng_table.c",
+        "crypto/engine/eng_ctrl.c",
+        "crypto/engine/eng_list.c",
+        "crypto/engine/eng_cryptodev.c",
+        "crypto/engine/eng_pkey.c",
+        "crypto/engine/tb_rand.c",
+        "crypto/engine/eng_openssl.c",
+        "crypto/engine/eng_fat.c",
+        "crypto/engine/eng_dyn.c",
+        "crypto/ts/ts_rsp_verify.c",
+        "crypto/ts/ts_req_print.c",
+        "crypto/ts/ts_verify_ctx.c",
+        "crypto/ts/ts_req_utils.c",
+        "crypto/ts/ts_err.c",
+        "crypto/ts/ts_rsp_print.c",
+        "crypto/ts/ts_rsp_utils.c",
+        "crypto/ts/ts_lib.c",
+        "crypto/ts/ts_conf.c",
+        "crypto/ts/ts_asn1.c",
+        "crypto/ts/ts_rsp_sign.c",
+        "crypto/ocsp/ocsp_ext.c",
+        "crypto/ocsp/ocsp_cl.c",
+        "crypto/ocsp/ocsp_ht.c",
+        "crypto/ocsp/ocsp_lib.c",
+        "crypto/ocsp/ocsp_srv.c",
+        "crypto/ocsp/ocsp_vfy.c",
+        "crypto/ocsp/ocsp_err.c",
+        "crypto/ocsp/ocsp_prn.c",
+        "crypto/ocsp/ocsp_asn.c",
+        "crypto/bf/bf_cfb64.c",
+        "crypto/bf/bf_ecb.c",
+        "crypto/bf/bf_enc.c",
+        "crypto/bf/bf_skey.c",
+        "crypto/bf/bf_ofb64.c",
+        "crypto/idea/i_skey.c",
+        "crypto/idea/i_ofb64.c",
+        "crypto/idea/i_cbc.c",
+        "crypto/idea/i_ecb.c",
+        "crypto/idea/i_cfb64.c",
+        "crypto/cmac/cm_ameth.c",
+        "crypto/cmac/cmac.c",
+        "crypto/cmac/cm_pmeth.c",
+        "crypto/dh/dh_lib.c",
+        "crypto/dh/dh_key.c",
+        "crypto/dh/dh_asn1.c",
+        "crypto/dh/dh_depr.c",
+        "crypto/dh/dh_pmeth.c",
+        "crypto/dh/dh_prn.c",
+        "crypto/dh/dh_gen.c",
+        "crypto/dh/dh_ameth.c",
+        "crypto/dh/dh_check.c",
+        "crypto/dh/dh_err.c",
+        "crypto/dh/dh_kdf.c",
+        "crypto/dh/dh_rfc5114.c",
+        "crypto/modes/ccm128.c",
+        "crypto/modes/ofb128.c",
+        "crypto/modes/cts128.c",
+        "crypto/modes/ctr128.c",
+        "crypto/modes/gcm128.c",
+        "crypto/modes/cbc128.c",
+        "crypto/modes/cfb128.c",
+        "crypto/modes/xts128.c",
+        "crypto/modes/wrap128.c",
+        "crypto/camellia/cmll_cfb.c",
+        "crypto/camellia/cmll_ecb.c",
+        "crypto/camellia/cmll_utl.c",
+        "crypto/camellia/cmll_misc.c",
+        "crypto/camellia/cmll_ofb.c",
+        "crypto/camellia/cmll_ctr.c",
+        "crypto/seed/seed_ecb.c",
+        "crypto/seed/seed_cbc.c",
+        "crypto/seed/seed.c",
+        "crypto/seed/seed_ofb.c",
+        "crypto/seed/seed_cfb.c",
+        "crypto/txt_db/txt_db.c",
+        "crypto/cpt_err.c",
+        "crypto/pem/pem_pk8.c",
+        "crypto/pem/pem_lib.c",
+        "crypto/pem/pem_sign.c",
+        "crypto/pem/pem_all.c",
+        "crypto/pem/pem_info.c",
+        "crypto/pem/pem_pkey.c",
+        "crypto/pem/pem_seal.c",
+        "crypto/pem/pem_err.c",
+        "crypto/pem/pem_xaux.c",
+        "crypto/pem/pvkfmt.c",
+        "crypto/pem/pem_x509.c",
+        "crypto/pem/pem_oth.c",
+        "crypto/rand/rand_lib.c",
+        "crypto/rand/randfile.c",
+        "crypto/rand/rand_os2.c",
+        "crypto/rand/rand_unix.c",
+        "crypto/rand/rand_nw.c",
+        "crypto/rand/md_rand.c",
+        "crypto/rand/rand_err.c",
+        "crypto/rand/rand_win.c",
+        "crypto/rand/rand_egd.c",
+        "crypto/cversion.c",
+        "crypto/cast/c_ecb.c",
+        "crypto/cast/c_skey.c",
+        "crypto/cast/c_ofb64.c",
+        "crypto/cast/c_enc.c",
+        "crypto/cast/c_cfb64.c",
+        "crypto/o_time.c",
+        "crypto/mdc2/mdc2dgst.c",
+        "crypto/mdc2/mdc2_one.c",
+        "crypto/rc4/rc4_utl.c",
+        "crypto/ui/ui_compat.c",
+        "crypto/ui/ui_util.c",
+        "crypto/ui/ui_lib.c",
+        "crypto/ui/ui_err.c",
+        "crypto/ui/ui_openssl.c",
+        "crypto/bio/bf_buff.c",
+        "crypto/bio/bss_null.c",
+        "crypto/bio/bss_acpt.c",
+        "crypto/bio/bss_conn.c",
+        "crypto/bio/bss_fd.c",
+        "crypto/bio/bf_null.c",
+        "crypto/bio/bio_err.c",
+        "crypto/bio/bss_sock.c",
+        "crypto/bio/bss_mem.c",
+        "crypto/bio/b_dump.c",
+        "crypto/bio/b_print.c",
+        "crypto/bio/b_sock.c",
+        "crypto/bio/bss_dgram.c",
+        "crypto/bio/bf_nbio.c",
+        "crypto/bio/bio_lib.c",
+        "crypto/bio/bss_file.c",
+        "crypto/bio/bss_bio.c",
+        "crypto/bio/bss_log.c",
+        "crypto/bio/bio_cb.c",
+        "crypto/o_init.c",
+        "crypto/rc2/rc2_skey.c",
+        "crypto/rc2/rc2_cbc.c",
+        "crypto/rc2/rc2cfb64.c",
+        "crypto/rc2/rc2_ecb.c",
+        "crypto/rc2/rc2ofb64.c",
+        "crypto/bn/bn_x931p.c",
+        "crypto/bn/bn_blind.c",
+        "crypto/bn/bn_gf2m.c",
+        "crypto/bn/bn_const.c",
+        "crypto/bn/bn_sqr.c",
+        "crypto/bn/bn_nist.c",
+        "crypto/bn/bn_rand.c",
+        "crypto/bn/bn_err.c",
+        "crypto/bn/bn_div.c",
+        "crypto/bn/bn_kron.c",
+        "crypto/bn/bn_ctx.c",
+        "crypto/bn/bn_shift.c",
+        "crypto/bn/bn_mod.c",
+        "crypto/bn/bn_exp2.c",
+        "crypto/bn/bn_word.c",
+        "crypto/bn/bn_add.c",
+        "crypto/bn/bn_exp.c",
+        "crypto/bn/bn_mont.c",
+        "crypto/bn/bn_print.c",
+        "crypto/bn/bn_mul.c",
+        "crypto/bn/bn_prime.c",
+        "crypto/bn/bn_depr.c",
+        "crypto/bn/bn_gcd.c",
+        "crypto/bn/bn_mpi.c",
+        "crypto/bn/bn_sqrt.c",
+        "crypto/bn/bn_recp.c",
+        "crypto/bn/bn_lib.c",
+        "crypto/ripemd/rmd_dgst.c",
+        "crypto/ripemd/rmd_one.c",
+        "crypto/rsa/rsa_x931.c",
+        "crypto/rsa/rsa_depr.c",
+        "crypto/rsa/rsa_saos.c",
+        "crypto/rsa/rsa_crpt.c",
+        "crypto/rsa/rsa_pss.c",
+        "crypto/rsa/rsa_oaep.c",
+        "crypto/rsa/rsa_null.c",
+        "crypto/rsa/rsa_gen.c",
+        "crypto/rsa/rsa_prn.c",
+        "crypto/rsa/rsa_pmeth.c",
+        "crypto/rsa/rsa_asn1.c",
+        "crypto/rsa/rsa_ssl.c",
+        "crypto/rsa/rsa_ameth.c",
+        "crypto/rsa/rsa_pk1.c",
+        "crypto/rsa/rsa_err.c",
+        "crypto/rsa/rsa_lib.c",
+        "crypto/rsa/rsa_none.c",
+        "crypto/rsa/rsa_chk.c",
+        "crypto/rsa/rsa_eay.c",
+        "crypto/rsa/rsa_sign.c",
+        "crypto/srp/srp_lib.c",
+        "crypto/srp/srp_vfy.c",
+        "crypto/err/err.c",
+        "crypto/err/err_prn.c",
+        "crypto/err/err_all.c",
+        "crypto/mem_clr.c",
+        "crypto/rc4/rc4_skey.c",
+        "crypto/rc4/rc4_enc.c",
+        "crypto/camellia/camellia.c",
+        "crypto/camellia/cmll_cbc.c",
+        #"crypto/aes/aes_x86core.c",
+        "crypto/aes/aes_core.c",
+        "crypto/aes/aes_cbc.c",
+        "crypto/whrlpool/wp_block.c",
+        "crypto/bn/bn_asm.c",
+    ]
 
 
-	thirdparty_sources = [thirdparty_dir + file for file in thirdparty_sources]
+    thirdparty_sources = [thirdparty_dir + file for file in thirdparty_sources]
 
 
-	env_openssl.add_source_files(env.modules_sources, thirdparty_sources)
+    env_openssl.add_source_files(env.modules_sources, thirdparty_sources)
 
 
-	# FIXME: Clone the environment to make a env_openssl and not pollute the modules env
-	thirdparty_include_paths = [
-		"",
-		"crypto",
-		"crypto/asn1",
-		"crypto/evp",
-		"crypto/modes",
-		"openssl",
-	]
-	env_openssl.Append(CPPPATH = [thirdparty_dir + "/" + dir for dir in thirdparty_include_paths])
+    # FIXME: Clone the environment to make a env_openssl and not pollute the modules env
+    thirdparty_include_paths = [
+        "",
+        "crypto",
+        "crypto/asn1",
+        "crypto/evp",
+        "crypto/modes",
+        "openssl",
+    ]
+    env_openssl.Append(CPPPATH = [thirdparty_dir + "/" + dir for dir in thirdparty_include_paths])
 
 
-	env_openssl.Append(CPPFLAGS = ["-DOPENSSL_NO_ASM", "-DOPENSSL_THREADS", "-DL_ENDIAN"])
+    env_openssl.Append(CPPFLAGS = ["-DOPENSSL_NO_ASM", "-DOPENSSL_THREADS", "-DL_ENDIAN"])
 
 
-	# Workaround for compilation error with GCC/Clang when -Werror is too greedy (GH-4517)
-	import os
-	import methods
-	if not (os.name=="nt" and os.getenv("VSINSTALLDIR") != None): # not Windows and not MSVC
-		env_openssl.Append(CFLAGS = ["-Wno-error=implicit-function-declaration"])
+    # Workaround for compilation error with GCC/Clang when -Werror is too greedy (GH-4517)
+    import os
+    import methods
+    if not (os.name=="nt" and os.getenv("VSINSTALLDIR") != None): # not Windows and not MSVC
+        env_openssl.Append(CFLAGS = ["-Wno-error=implicit-function-declaration"])
 
 
 
 
 # Module sources
 # Module sources

+ 2 - 2
modules/openssl/config.py

@@ -1,6 +1,6 @@
 
 
 def can_build(platform):
 def can_build(platform):
-	return True
+    return True
 
 
 def configure(env):
 def configure(env):
-	pass
+    pass

+ 196 - 196
modules/opus/SCsub

@@ -7,209 +7,209 @@ env_opus = env_modules.Clone()
 
 
 # Thirdparty source files
 # Thirdparty source files
 if (env["opus"] != "system"): # builtin
 if (env["opus"] != "system"): # builtin
-	thirdparty_dir = "#thirdparty/opus/"
+    thirdparty_dir = "#thirdparty/opus/"
 
 
-	thirdparty_sources = [
-		"silk/tables_other.c",
-		"silk/sum_sqr_shift.c",
-		"silk/PLC.c",
-		"silk/dec_API.c",
-		"silk/decode_pulses.c",
-		"silk/inner_prod_aligned.c",
-		"silk/init_encoder.c",
-		"silk/interpolate.c",
-		"silk/stereo_encode_pred.c",
-		"silk/decode_frame.c",
-		"silk/NLSF_del_dec_quant.c",
-		"silk/VAD.c",
-		"silk/resampler_private_AR2.c",
-		"silk/NLSF_unpack.c",
-		"silk/resampler_down2.c",
-		"silk/sort.c",
-		"silk/resampler_private_IIR_FIR.c",
-		"silk/resampler_down2_3.c",
-		"silk/resampler_private_up2_HQ.c",
-		"silk/tables_gain.c",
-		"silk/stereo_find_predictor.c",
-		"silk/stereo_quant_pred.c",
-		"silk/NLSF_stabilize.c",
-		"silk/ana_filt_bank_1.c",
-		"silk/check_control_input.c",
-		"silk/bwexpander.c",
-		"silk/A2NLSF.c",
-		"silk/LPC_inv_pred_gain.c",
-		"silk/log2lin.c",
-		"silk/process_NLSFs.c",
-		"silk/sigm_Q15.c",
-		"silk/VQ_WMat_EC.c",
-		"silk/quant_LTP_gains.c",
-		"silk/resampler_private_down_FIR.c",
-		"silk/NLSF_decode.c",
-		"silk/control_codec.c",
-		"silk/NLSF_VQ_weights_laroia.c",
-		"silk/decode_pitch.c",
-		"silk/stereo_decode_pred.c",
-		"silk/tables_pulses_per_block.c",
-		"silk/init_decoder.c",
-		"silk/table_LSF_cos.c",
-		"silk/decode_core.c",
-		"silk/code_signs.c",
-		"silk/enc_API.c",
-		"silk/tables_LTP.c",
-		"silk/pitch_est_tables.c",
-		"silk/biquad_alt.c",
-		"silk/encode_indices.c",
-		"silk/tables_NLSF_CB_WB.c",
-		"silk/debug.c",
-		"silk/decode_parameters.c",
-		"silk/tables_pitch_lag.c",
-		"silk/NLSF2A.c",
-		"silk/resampler.c",
-		"silk/decode_indices.c",
-		"silk/NLSF_VQ.c",
-		"silk/bwexpander_32.c",
-		"silk/tables_NLSF_CB_NB_MB.c",
-		"silk/encode_pulses.c",
-		"silk/NSQ_del_dec.c",
-		"silk/control_SNR.c",
-		"silk/shell_coder.c",
-		"silk/NLSF_encode.c",
-		"silk/stereo_MS_to_LR.c",
-		"silk/stereo_LR_to_MS.c",
-		"silk/HP_variable_cutoff.c",
-		"silk/LPC_analysis_filter.c",
-		"silk/CNG.c",
-		"silk/decoder_set_fs.c",
-		"silk/resampler_rom.c",
-		"silk/control_audio_bandwidth.c",
-		"silk/lin2log.c",
-		"silk/LP_variable_cutoff.c",
-		"silk/NSQ.c",
-		"silk/gain_quant.c",
-		"celt/laplace.c",
-		"celt/vq.c",
-		"celt/quant_bands.c",
-		"celt/kiss_fft.c",
-		"celt/entcode.c",
-		"celt/entenc.c",
-		"celt/celt_lpc.c",
-		"celt/pitch.c",
-		"celt/rate.c",
-		"celt/mathops.c",
-		#"celt/arm/armcpu.c",
-		#"celt/arm/celt_neon_intr.c",
-		#"celt/arm/celt_ne10_mdct.c",
-		#"celt/arm/celt_ne10_fft.c",
-		#"celt/arm/arm_celt_map.c",
-		"celt/celt_encoder.c",
-		"celt/celt.c",
-		"celt/bands.c",
-		"celt/cwrs.c",
-		"celt/entdec.c",
-		"celt/celt_decoder.c",
-		"celt/mdct.c",
-		"celt/modes.c",
-		"repacketizer.c",
-		"mlp_data.c",
-		"opus_multistream.c",
-		"opusfile.c",
-		"opus_encoder.c",
-		"analysis.c",
-		"mlp.c",
-		"info.c",
-		"stream.c",
-		"opus_decoder.c",
-		"internal.c",
-		"wincerts.c",
-		"opus.c",
-		"opus_multistream_encoder.c",
-		"http.c",
-		"opus_multistream_decoder.c"
-	]
+    thirdparty_sources = [
+        "silk/tables_other.c",
+        "silk/sum_sqr_shift.c",
+        "silk/PLC.c",
+        "silk/dec_API.c",
+        "silk/decode_pulses.c",
+        "silk/inner_prod_aligned.c",
+        "silk/init_encoder.c",
+        "silk/interpolate.c",
+        "silk/stereo_encode_pred.c",
+        "silk/decode_frame.c",
+        "silk/NLSF_del_dec_quant.c",
+        "silk/VAD.c",
+        "silk/resampler_private_AR2.c",
+        "silk/NLSF_unpack.c",
+        "silk/resampler_down2.c",
+        "silk/sort.c",
+        "silk/resampler_private_IIR_FIR.c",
+        "silk/resampler_down2_3.c",
+        "silk/resampler_private_up2_HQ.c",
+        "silk/tables_gain.c",
+        "silk/stereo_find_predictor.c",
+        "silk/stereo_quant_pred.c",
+        "silk/NLSF_stabilize.c",
+        "silk/ana_filt_bank_1.c",
+        "silk/check_control_input.c",
+        "silk/bwexpander.c",
+        "silk/A2NLSF.c",
+        "silk/LPC_inv_pred_gain.c",
+        "silk/log2lin.c",
+        "silk/process_NLSFs.c",
+        "silk/sigm_Q15.c",
+        "silk/VQ_WMat_EC.c",
+        "silk/quant_LTP_gains.c",
+        "silk/resampler_private_down_FIR.c",
+        "silk/NLSF_decode.c",
+        "silk/control_codec.c",
+        "silk/NLSF_VQ_weights_laroia.c",
+        "silk/decode_pitch.c",
+        "silk/stereo_decode_pred.c",
+        "silk/tables_pulses_per_block.c",
+        "silk/init_decoder.c",
+        "silk/table_LSF_cos.c",
+        "silk/decode_core.c",
+        "silk/code_signs.c",
+        "silk/enc_API.c",
+        "silk/tables_LTP.c",
+        "silk/pitch_est_tables.c",
+        "silk/biquad_alt.c",
+        "silk/encode_indices.c",
+        "silk/tables_NLSF_CB_WB.c",
+        "silk/debug.c",
+        "silk/decode_parameters.c",
+        "silk/tables_pitch_lag.c",
+        "silk/NLSF2A.c",
+        "silk/resampler.c",
+        "silk/decode_indices.c",
+        "silk/NLSF_VQ.c",
+        "silk/bwexpander_32.c",
+        "silk/tables_NLSF_CB_NB_MB.c",
+        "silk/encode_pulses.c",
+        "silk/NSQ_del_dec.c",
+        "silk/control_SNR.c",
+        "silk/shell_coder.c",
+        "silk/NLSF_encode.c",
+        "silk/stereo_MS_to_LR.c",
+        "silk/stereo_LR_to_MS.c",
+        "silk/HP_variable_cutoff.c",
+        "silk/LPC_analysis_filter.c",
+        "silk/CNG.c",
+        "silk/decoder_set_fs.c",
+        "silk/resampler_rom.c",
+        "silk/control_audio_bandwidth.c",
+        "silk/lin2log.c",
+        "silk/LP_variable_cutoff.c",
+        "silk/NSQ.c",
+        "silk/gain_quant.c",
+        "celt/laplace.c",
+        "celt/vq.c",
+        "celt/quant_bands.c",
+        "celt/kiss_fft.c",
+        "celt/entcode.c",
+        "celt/entenc.c",
+        "celt/celt_lpc.c",
+        "celt/pitch.c",
+        "celt/rate.c",
+        "celt/mathops.c",
+        #"celt/arm/armcpu.c",
+        #"celt/arm/celt_neon_intr.c",
+        #"celt/arm/celt_ne10_mdct.c",
+        #"celt/arm/celt_ne10_fft.c",
+        #"celt/arm/arm_celt_map.c",
+        "celt/celt_encoder.c",
+        "celt/celt.c",
+        "celt/bands.c",
+        "celt/cwrs.c",
+        "celt/entdec.c",
+        "celt/celt_decoder.c",
+        "celt/mdct.c",
+        "celt/modes.c",
+        "repacketizer.c",
+        "mlp_data.c",
+        "opus_multistream.c",
+        "opusfile.c",
+        "opus_encoder.c",
+        "analysis.c",
+        "mlp.c",
+        "info.c",
+        "stream.c",
+        "opus_decoder.c",
+        "internal.c",
+        "wincerts.c",
+        "opus.c",
+        "opus_multistream_encoder.c",
+        "http.c",
+        "opus_multistream_decoder.c"
+    ]
 
 
-	opus_sources_silk = []
+    opus_sources_silk = []
 
 
-	if("opus_fixed_point" in env and env.opus_fixed_point=="yes"):
-		env_opus.Append(CFLAGS = ["-DFIXED_POINT"])
-		opus_sources_silk = [
-			"silk/fixed/schur64_FIX.c",
-			"silk/fixed/residual_energy16_FIX.c",
-			"silk/fixed/encode_frame_FIX.c",
-			"silk/fixed/regularize_correlations_FIX.c",
-			"silk/fixed/apply_sine_window_FIX.c",
-			"silk/fixed/solve_LS_FIX.c",
-			"silk/fixed/schur_FIX.c",
-			"silk/fixed/pitch_analysis_core_FIX.c",
-			"silk/fixed/noise_shape_analysis_FIX.c",
-			"silk/fixed/find_LTP_FIX.c",
-			"silk/fixed/vector_ops_FIX.c",
-			"silk/fixed/autocorr_FIX.c",
-			"silk/fixed/warped_autocorrelation_FIX.c",
-			"silk/fixed/find_pitch_lags_FIX.c",
-			"silk/fixed/k2a_Q16_FIX.c",
-			"silk/fixed/LTP_scale_ctrl_FIX.c",
-			"silk/fixed/corrMatrix_FIX.c",
-			"silk/fixed/prefilter_FIX.c",
-			"silk/fixed/find_LPC_FIX.c",
-			"silk/fixed/residual_energy_FIX.c",
-			"silk/fixed/process_gains_FIX.c",
-			"silk/fixed/LTP_analysis_filter_FIX.c",
-			"silk/fixed/k2a_FIX.c",
-			"silk/fixed/burg_modified_FIX.c",
-			"silk/fixed/find_pred_coefs_FIX.c"
-		]
-	else:
-		opus_sources_silk = [
-			"silk/float/LTP_scale_ctrl_FLP.c",
-			"silk/float/regularize_correlations_FLP.c",
-			"silk/float/corrMatrix_FLP.c",
-			"silk/float/LPC_analysis_filter_FLP.c",
-			"silk/float/levinsondurbin_FLP.c",
-			"silk/float/schur_FLP.c",
-			"silk/float/scale_vector_FLP.c",
-			"silk/float/apply_sine_window_FLP.c",
-			"silk/float/pitch_analysis_core_FLP.c",
-			"silk/float/wrappers_FLP.c",
-			"silk/float/bwexpander_FLP.c",
-			"silk/float/warped_autocorrelation_FLP.c",
-			"silk/float/solve_LS_FLP.c",
-			"silk/float/find_LPC_FLP.c",
-			"silk/float/autocorrelation_FLP.c",
-			"silk/float/find_pred_coefs_FLP.c",
-			"silk/float/find_pitch_lags_FLP.c",
-			"silk/float/burg_modified_FLP.c",
-			"silk/float/find_LTP_FLP.c",
-			"silk/float/energy_FLP.c",
-			"silk/float/sort_FLP.c",
-			"silk/float/LPC_inv_pred_gain_FLP.c",
-			"silk/float/k2a_FLP.c",
-			"silk/float/noise_shape_analysis_FLP.c",
-			"silk/float/inner_product_FLP.c",
-			"silk/float/process_gains_FLP.c",
-			"silk/float/encode_frame_FLP.c",
-			"silk/float/scale_copy_vector_FLP.c",
-			"silk/float/residual_energy_FLP.c",
-			"silk/float/LTP_analysis_filter_FLP.c",
-			"silk/float/prefilter_FLP.c"
-	]
+    if("opus_fixed_point" in env and env.opus_fixed_point=="yes"):
+        env_opus.Append(CFLAGS = ["-DFIXED_POINT"])
+        opus_sources_silk = [
+            "silk/fixed/schur64_FIX.c",
+            "silk/fixed/residual_energy16_FIX.c",
+            "silk/fixed/encode_frame_FIX.c",
+            "silk/fixed/regularize_correlations_FIX.c",
+            "silk/fixed/apply_sine_window_FIX.c",
+            "silk/fixed/solve_LS_FIX.c",
+            "silk/fixed/schur_FIX.c",
+            "silk/fixed/pitch_analysis_core_FIX.c",
+            "silk/fixed/noise_shape_analysis_FIX.c",
+            "silk/fixed/find_LTP_FIX.c",
+            "silk/fixed/vector_ops_FIX.c",
+            "silk/fixed/autocorr_FIX.c",
+            "silk/fixed/warped_autocorrelation_FIX.c",
+            "silk/fixed/find_pitch_lags_FIX.c",
+            "silk/fixed/k2a_Q16_FIX.c",
+            "silk/fixed/LTP_scale_ctrl_FIX.c",
+            "silk/fixed/corrMatrix_FIX.c",
+            "silk/fixed/prefilter_FIX.c",
+            "silk/fixed/find_LPC_FIX.c",
+            "silk/fixed/residual_energy_FIX.c",
+            "silk/fixed/process_gains_FIX.c",
+            "silk/fixed/LTP_analysis_filter_FIX.c",
+            "silk/fixed/k2a_FIX.c",
+            "silk/fixed/burg_modified_FIX.c",
+            "silk/fixed/find_pred_coefs_FIX.c"
+        ]
+    else:
+        opus_sources_silk = [
+            "silk/float/LTP_scale_ctrl_FLP.c",
+            "silk/float/regularize_correlations_FLP.c",
+            "silk/float/corrMatrix_FLP.c",
+            "silk/float/LPC_analysis_filter_FLP.c",
+            "silk/float/levinsondurbin_FLP.c",
+            "silk/float/schur_FLP.c",
+            "silk/float/scale_vector_FLP.c",
+            "silk/float/apply_sine_window_FLP.c",
+            "silk/float/pitch_analysis_core_FLP.c",
+            "silk/float/wrappers_FLP.c",
+            "silk/float/bwexpander_FLP.c",
+            "silk/float/warped_autocorrelation_FLP.c",
+            "silk/float/solve_LS_FLP.c",
+            "silk/float/find_LPC_FLP.c",
+            "silk/float/autocorrelation_FLP.c",
+            "silk/float/find_pred_coefs_FLP.c",
+            "silk/float/find_pitch_lags_FLP.c",
+            "silk/float/burg_modified_FLP.c",
+            "silk/float/find_LTP_FLP.c",
+            "silk/float/energy_FLP.c",
+            "silk/float/sort_FLP.c",
+            "silk/float/LPC_inv_pred_gain_FLP.c",
+            "silk/float/k2a_FLP.c",
+            "silk/float/noise_shape_analysis_FLP.c",
+            "silk/float/inner_product_FLP.c",
+            "silk/float/process_gains_FLP.c",
+            "silk/float/encode_frame_FLP.c",
+            "silk/float/scale_copy_vector_FLP.c",
+            "silk/float/residual_energy_FLP.c",
+            "silk/float/LTP_analysis_filter_FLP.c",
+            "silk/float/prefilter_FLP.c"
+        ]
 
 
-	thirdparty_sources = [thirdparty_dir + file for file in thirdparty_sources + opus_sources_silk]
+    thirdparty_sources = [thirdparty_dir + file for file in thirdparty_sources + opus_sources_silk]
 
 
-	env_opus.add_source_files(env.modules_sources, thirdparty_sources)
-	env_opus.Append(CFLAGS=["-DHAVE_CONFIG_H"])
+    env_opus.add_source_files(env.modules_sources, thirdparty_sources)
+    env_opus.Append(CFLAGS=["-DHAVE_CONFIG_H"])
 
 
-	thirdparty_include_paths = [
-		"",
-		"celt",
-		"silk",
-		"silk/fixed",
-		"silk/float",
-	]
-	env_opus.Append(CPPPATH = [thirdparty_dir + "/" + dir for dir in thirdparty_include_paths])
+    thirdparty_include_paths = [
+        "",
+        "celt",
+        "silk",
+        "silk/fixed",
+        "silk/float",
+    ]
+    env_opus.Append(CPPPATH = [thirdparty_dir + "/" + dir for dir in thirdparty_include_paths])
 
 
-	# also requires libogg
-	if (env["libogg"] != "system"): # builtin
-		env_opus.Append(CPPPATH = ["#thirdparty/libogg"])
+    # also requires libogg
+    if (env["libogg"] != "system"): # builtin
+        env_opus.Append(CPPPATH = ["#thirdparty/libogg"])
 
 
 # Module files
 # Module files
 env_opus.add_source_files(env.modules_sources, "*.cpp")
 env_opus.add_source_files(env.modules_sources, "*.cpp")

+ 2 - 2
modules/opus/config.py

@@ -1,6 +1,6 @@
 
 
 def can_build(platform):
 def can_build(platform):
-	return True
+    return True
 
 
 def configure(env):
 def configure(env):
-	pass
+    pass

+ 2 - 2
modules/pbm/config.py

@@ -1,6 +1,6 @@
 
 
 def can_build(platform):
 def can_build(platform):
-	return True
+    return True
 
 
 def configure(env):
 def configure(env):
-	pass
+    pass

+ 5 - 5
modules/pvr/SCsub

@@ -9,11 +9,11 @@ env_pvr = env_modules.Clone()
 # Not unbundled so far since not widespread as shared library
 # Not unbundled so far since not widespread as shared library
 thirdparty_dir = "#thirdparty/pvrtccompressor/"
 thirdparty_dir = "#thirdparty/pvrtccompressor/"
 thirdparty_sources = [
 thirdparty_sources = [
-	"BitScale.cpp",
-	"MortonTable.cpp",
-	"PvrTcDecoder.cpp",
-	"PvrTcEncoder.cpp",
-	"PvrTcPacket.cpp",
+    "BitScale.cpp",
+    "MortonTable.cpp",
+    "PvrTcDecoder.cpp",
+    "PvrTcEncoder.cpp",
+    "PvrTcPacket.cpp",
 ]
 ]
 thirdparty_sources = [thirdparty_dir + file for file in thirdparty_sources]
 thirdparty_sources = [thirdparty_dir + file for file in thirdparty_sources]
 
 

+ 2 - 2
modules/pvr/config.py

@@ -1,6 +1,6 @@
 
 
 def can_build(platform):
 def can_build(platform):
-	return True
+    return True
 
 
 def configure(env):
 def configure(env):
-	pass
+    pass

+ 50 - 50
modules/speex/SCsub

@@ -7,60 +7,60 @@ env_speex = env_modules.Clone()
 
 
 # Thirdparty source files
 # Thirdparty source files
 if (env["speex"] != "system"): # builtin
 if (env["speex"] != "system"): # builtin
-	thirdparty_dir = "#thirdparty/speex/"
+    thirdparty_dir = "#thirdparty/speex/"
 
 
-	thirdparty_sources = [
-		"bits.c",
-		"buffer.c",
-		"cb_search.c",
-		"exc_10_16_table.c",
-		"exc_10_32_table.c",
-		"exc_20_32_table.c",
-		"exc_5_256_table.c",
-		"exc_5_64_table.c",
-		"exc_8_128_table.c",
-		"fftwrap.c",
-		"filterbank.c",
-		"filters.c",
-		"gain_table.c",
-		"gain_table_lbr.c",
-		"hexc_10_32_table.c",
-		"hexc_table.c",
-		"high_lsp_tables.c",
-		"jitter.c",
-		"kiss_fft.c",
-		"kiss_fftr.c",
-		"lpc.c",
-		"lsp.c",
-		"lsp_tables_nb.c",
-		"ltp.c",
-		"mdf.c",
-		"modes.c",
-		"modes_wb.c",
-		"nb_celp.c",
-		"preprocess.c",
-		"quant_lsp.c",
-		"resample.c",
-		"sb_celp.c",
-		"scal.c",
-		"smallft.c",
-		"speex.c",
-		"speex_callbacks.c",
-		"speex_header.c",
-		"stereo.c",
-		"vbr.c",
-		"vq.c",
-		"window.c",
-	]
+    thirdparty_sources = [
+        "bits.c",
+        "buffer.c",
+        "cb_search.c",
+        "exc_10_16_table.c",
+        "exc_10_32_table.c",
+        "exc_20_32_table.c",
+        "exc_5_256_table.c",
+        "exc_5_64_table.c",
+        "exc_8_128_table.c",
+        "fftwrap.c",
+        "filterbank.c",
+        "filters.c",
+        "gain_table.c",
+        "gain_table_lbr.c",
+        "hexc_10_32_table.c",
+        "hexc_table.c",
+        "high_lsp_tables.c",
+        "jitter.c",
+        "kiss_fft.c",
+        "kiss_fftr.c",
+        "lpc.c",
+        "lsp.c",
+        "lsp_tables_nb.c",
+        "ltp.c",
+        "mdf.c",
+        "modes.c",
+        "modes_wb.c",
+        "nb_celp.c",
+        "preprocess.c",
+        "quant_lsp.c",
+        "resample.c",
+        "sb_celp.c",
+        "scal.c",
+        "smallft.c",
+        "speex.c",
+        "speex_callbacks.c",
+        "speex_header.c",
+        "stereo.c",
+        "vbr.c",
+        "vq.c",
+        "window.c",
+    ]
 
 
-	thirdparty_sources = [thirdparty_dir + file for file in thirdparty_sources]
+    thirdparty_sources = [thirdparty_dir + file for file in thirdparty_sources]
 
 
-	env_speex.add_source_files(env.modules_sources, thirdparty_sources)
-	env_speex.Append(CPPPATH = [thirdparty_dir])
+    env_speex.add_source_files(env.modules_sources, thirdparty_sources)
+    env_speex.Append(CPPPATH = [thirdparty_dir])
 
 
-	# also requires libogg
-	if (env["libogg"] != "system"): # builtin
-		env_speex.Append(CPPPATH = ["#thirdparty/libogg"])
+    # also requires libogg
+    if (env["libogg"] != "system"): # builtin
+        env_speex.Append(CPPPATH = ["#thirdparty/libogg"])
 
 
 # Module files
 # Module files
 env_speex.add_source_files(env.modules_sources, "*.cpp")
 env_speex.add_source_files(env.modules_sources, "*.cpp")

+ 2 - 2
modules/speex/config.py

@@ -1,6 +1,6 @@
 
 
 def can_build(platform):
 def can_build(platform):
-	return True
+    return True
 
 
 def configure(env):
 def configure(env):
-	pass
+    pass

+ 15 - 15
modules/squish/SCsub

@@ -7,23 +7,23 @@ env_squish = env_modules.Clone()
 
 
 # Thirdparty source files
 # Thirdparty source files
 if (env["squish"] != "system"): # builtin
 if (env["squish"] != "system"): # builtin
-	thirdparty_dir = "#thirdparty/squish/"
-	thirdparty_sources = [
-		"alpha.cpp",
-		"clusterfit.cpp",
-		"colourblock.cpp",
-		"colourfit.cpp",
-		"colourset.cpp",
-		"maths.cpp",
-		"rangefit.cpp",
-		"singlecolourfit.cpp",
-		"squish.cpp",
-	]
+    thirdparty_dir = "#thirdparty/squish/"
+    thirdparty_sources = [
+        "alpha.cpp",
+        "clusterfit.cpp",
+        "colourblock.cpp",
+        "colourfit.cpp",
+        "colourset.cpp",
+        "maths.cpp",
+        "rangefit.cpp",
+        "singlecolourfit.cpp",
+        "squish.cpp",
+    ]
 
 
-	thirdparty_sources = [thirdparty_dir + file for file in thirdparty_sources]
+    thirdparty_sources = [thirdparty_dir + file for file in thirdparty_sources]
 
 
-	env_squish.add_source_files(env.modules_sources, thirdparty_sources)
-	env_squish.Append(CPPPATH = [thirdparty_dir])
+    env_squish.add_source_files(env.modules_sources, thirdparty_sources)
+    env_squish.Append(CPPPATH = [thirdparty_dir])
 
 
 # Godot source files
 # Godot source files
 env_squish.add_source_files(env.modules_sources, "*.cpp")
 env_squish.add_source_files(env.modules_sources, "*.cpp")

+ 6 - 6
modules/squish/config.py

@@ -1,10 +1,10 @@
 
 
 def can_build(platform):
 def can_build(platform):
-	return True
+    return True
 
 
 def configure(env):
 def configure(env):
-	# Tools only, disabled for non-tools
-	# TODO: Find a cleaner way to achieve that
-	if (env["tools"] == "no"):
-		env["module_squish_enabled"] = "no"
-		env.disabled_modules.append("squish")
+    # Tools only, disabled for non-tools
+    # TODO: Find a cleaner way to achieve that
+    if (env["tools"] == "no"):
+        env["module_squish_enabled"] = "no"
+        env.disabled_modules.append("squish")

+ 63 - 63
modules/theora/SCsub

@@ -7,77 +7,77 @@ env_theora = env_modules.Clone()
 
 
 # Thirdparty source files
 # Thirdparty source files
 if (env["libtheora"] != "system"): # builtin
 if (env["libtheora"] != "system"): # builtin
-	thirdparty_dir = "#thirdparty/libtheora/"
-	thirdparty_sources = [
-		#"analyze.c",
-		#"apiwrapper.c",
-		"bitpack.c",
-		"cpu.c",
-		#"decapiwrapper.c",
-		"decinfo.c",
-		"decode.c",
-		"dequant.c",
-		#"encapiwrapper.c",
-		#"encfrag.c",
-		#"encinfo.c",
-		#"encode.c",
-		#"encoder_disabled.c",
-		#"enquant.c",
-		#"fdct.c",
-		"fragment.c",
-		"huffdec.c",
-		#"huffenc.c",
-		"idct.c",
-		"info.c",
-		"internal.c",
-		#"mathops.c",
-		#"mcenc.c",
-		"quant.c",
-		#"rate.c",
-		"state.c",
-		#"tokenize.c",
-	]
+    thirdparty_dir = "#thirdparty/libtheora/"
+    thirdparty_sources = [
+        #"analyze.c",
+        #"apiwrapper.c",
+        "bitpack.c",
+        "cpu.c",
+        #"decapiwrapper.c",
+        "decinfo.c",
+        "decode.c",
+        "dequant.c",
+        #"encapiwrapper.c",
+        #"encfrag.c",
+        #"encinfo.c",
+        #"encode.c",
+        #"encoder_disabled.c",
+        #"enquant.c",
+        #"fdct.c",
+        "fragment.c",
+        "huffdec.c",
+        #"huffenc.c",
+        "idct.c",
+        "info.c",
+        "internal.c",
+        #"mathops.c",
+        #"mcenc.c",
+        "quant.c",
+        #"rate.c",
+        "state.c",
+        #"tokenize.c",
+    ]
 
 
-	thirdparty_sources_x86 = [
-		#"x86/mmxencfrag.c",
-		#"x86/mmxfdct.c",
-		"x86/mmxfrag.c",
-		"x86/mmxidct.c",
-		"x86/mmxstate.c",
-		#"x86/sse2fdct.c",
-		#"x86/x86enc.c",
-		"x86/x86state.c",
-	]
+    thirdparty_sources_x86 = [
+        #"x86/mmxencfrag.c",
+        #"x86/mmxfdct.c",
+        "x86/mmxfrag.c",
+        "x86/mmxidct.c",
+        "x86/mmxstate.c",
+        #"x86/sse2fdct.c",
+        #"x86/x86enc.c",
+        "x86/x86state.c",
+    ]
 
 
-	thirdparty_sources_x86_vc = [
-		#"x86_vc/mmxencfrag.c",
-		#"x86_vc/mmxfdct.c",
-		"x86_vc/mmxfrag.c",
-		"x86_vc/mmxidct.c",
-		"x86_vc/mmxstate.c",
-		#"x86_vc/x86enc.c",
-		"x86_vc/x86state.c",
-	]
+    thirdparty_sources_x86_vc = [
+        #"x86_vc/mmxencfrag.c",
+        #"x86_vc/mmxfdct.c",
+        "x86_vc/mmxfrag.c",
+        "x86_vc/mmxidct.c",
+        "x86_vc/mmxstate.c",
+        #"x86_vc/x86enc.c",
+        "x86_vc/x86state.c",
+    ]
 
 
-	if (env["x86_libtheora_opt_gcc"]):
-		thirdparty_sources += thirdparty_sources_x86
+    if (env["x86_libtheora_opt_gcc"]):
+        thirdparty_sources += thirdparty_sources_x86
 
 
-	if (env["x86_libtheora_opt_vc"]):
-		thirdparty_sources += thirdparty_sources_x86_vc
+    if (env["x86_libtheora_opt_vc"]):
+        thirdparty_sources += thirdparty_sources_x86_vc
 
 
-	if (env["x86_libtheora_opt_gcc"] or env["x86_libtheora_opt_vc"]):
-		env_theora.Append(CCFLAGS = ["-DOC_X86_ASM"])
+    if (env["x86_libtheora_opt_gcc"] or env["x86_libtheora_opt_vc"]):
+        env_theora.Append(CCFLAGS = ["-DOC_X86_ASM"])
 
 
-	thirdparty_sources = [thirdparty_dir + file for file in thirdparty_sources]
+    thirdparty_sources = [thirdparty_dir + file for file in thirdparty_sources]
 
 
-	env_theora.add_source_files(env.modules_sources, thirdparty_sources)
-	env_theora.Append(CPPPATH = [thirdparty_dir])
+    env_theora.add_source_files(env.modules_sources, thirdparty_sources)
+    env_theora.Append(CPPPATH = [thirdparty_dir])
 
 
-	# also requires libogg and libvorbis
-	if (env["libogg"] != "system"): # builtin
-		env_theora.Append(CPPPATH = ["#thirdparty/libogg"])
-	if (env["libvorbis"] != "system"): # builtin
-		env_theora.Append(CPPPATH = ["#thirdparty/libvorbis"])
+    # also requires libogg and libvorbis
+    if (env["libogg"] != "system"): # builtin
+        env_theora.Append(CPPPATH = ["#thirdparty/libogg"])
+    if (env["libvorbis"] != "system"): # builtin
+        env_theora.Append(CPPPATH = ["#thirdparty/libvorbis"])
 
 
 # Godot source files
 # Godot source files
 env_theora.add_source_files(env.modules_sources, "*.cpp")
 env_theora.add_source_files(env.modules_sources, "*.cpp")

+ 2 - 2
modules/theora/config.py

@@ -1,6 +1,6 @@
 
 
 def can_build(platform):
 def can_build(platform):
-	return True
+    return True
 
 
 def configure(env):
 def configure(env):
-	pass
+    pass

+ 34 - 34
modules/vorbis/SCsub

@@ -7,43 +7,43 @@ env_vorbis = env_modules.Clone()
 
 
 # Thirdparty source files
 # Thirdparty source files
 if (env["libvorbis"] != "system"): # builtin
 if (env["libvorbis"] != "system"): # builtin
-	thirdparty_dir = "#thirdparty/libvorbis/"
-	thirdparty_sources = [
-		#"analysis.c",
-		#"barkmel.c",
-		"bitrate.c",
-		"block.c",
-		"codebook.c",
-		"envelope.c",
-		"floor0.c",
-		"floor1.c",
-		"info.c",
-		"lookup.c",
-		"lpc.c",
-		"lsp.c",
-		"mapping0.c",
-		"mdct.c",
-		"psy.c",
-		#"psytune.c",
-		"registry.c",
-		"res0.c",
-		"sharedbook.c",
-		"smallft.c",
-		"synthesis.c",
-		#"tone.c",
-		#"vorbisenc.c",
-		"vorbisfile.c",
-		"window.c",
-	]
+    thirdparty_dir = "#thirdparty/libvorbis/"
+    thirdparty_sources = [
+        #"analysis.c",
+        #"barkmel.c",
+        "bitrate.c",
+        "block.c",
+        "codebook.c",
+        "envelope.c",
+        "floor0.c",
+        "floor1.c",
+        "info.c",
+        "lookup.c",
+        "lpc.c",
+        "lsp.c",
+        "mapping0.c",
+        "mdct.c",
+        "psy.c",
+        #"psytune.c",
+        "registry.c",
+        "res0.c",
+        "sharedbook.c",
+        "smallft.c",
+        "synthesis.c",
+        #"tone.c",
+        #"vorbisenc.c",
+        "vorbisfile.c",
+        "window.c",
+    ]
 
 
-	thirdparty_sources = [thirdparty_dir + file for file in thirdparty_sources]
+    thirdparty_sources = [thirdparty_dir + file for file in thirdparty_sources]
 
 
-	env_vorbis.add_source_files(env.modules_sources, thirdparty_sources)
-	env_vorbis.Append(CPPPATH = [thirdparty_dir])
+    env_vorbis.add_source_files(env.modules_sources, thirdparty_sources)
+    env_vorbis.Append(CPPPATH = [thirdparty_dir])
 
 
-	# also requires libogg
-	if (env["libogg"] != "system"): # builtin
-		env_vorbis.Append(CPPPATH = ["#thirdparty/libogg"])
+    # also requires libogg
+    if (env["libogg"] != "system"): # builtin
+        env_vorbis.Append(CPPPATH = ["#thirdparty/libogg"])
 
 
 # Godot source files
 # Godot source files
 env_vorbis.add_source_files(env.modules_sources, "*.cpp")
 env_vorbis.add_source_files(env.modules_sources, "*.cpp")

+ 2 - 2
modules/vorbis/config.py

@@ -1,6 +1,6 @@
 
 
 def can_build(platform):
 def can_build(platform):
-	return True
+    return True
 
 
 def configure(env):
 def configure(env):
-	pass
+    pass

+ 108 - 108
modules/webp/SCsub

@@ -7,115 +7,115 @@ env_webp = env_modules.Clone()
 
 
 # Thirdparty source files
 # Thirdparty source files
 if (env["libwebp"] != "system"): # builtin
 if (env["libwebp"] != "system"): # builtin
-	thirdparty_dir = "#thirdparty/libwebp/"
-	thirdparty_sources = [
-		"enc/webpenc.c",
-		"enc/near_lossless.c",
-		"enc/frame.c",
-		"enc/alpha.c",
-		"enc/picture_csp.c",
-		"enc/vp8l.c",
-		"enc/picture_psnr.c",
-		"enc/delta_palettization.c",
-		"enc/syntax.c",
-		"enc/backward_references.c",
-		"enc/token.c",
-		"enc/analysis.c",
-		"enc/iterator.c",
-		"enc/picture_tools.c",
-		"enc/picture_rescale.c",
-		"enc/config.c",
-		"enc/tree.c",
-		"enc/cost.c",
-		"enc/picture.c",
-		"enc/quant.c",
-		"enc/filter.c",
-		"enc/histogram.c",
-		"utils/rescaler.c",
-		"utils/filters.c",
-		"utils/quant_levels_dec.c",
-		"utils/huffman.c",
-		"utils/thread.c",
-		"utils/quant_levels.c",
-		"utils/bit_writer.c",
-		"utils/bit_reader.c",
-		"utils/random.c",
-		"utils/utils.c",
-		"utils/huffman_encode.c",
-		"utils/color_cache.c",
-		"mux/muxinternal.c",
-		"mux/muxread.c",
-		"mux/anim_encode.c",
-		"mux/muxedit.c",
-		"dec/webp.c",
-		"dec/frame.c",
-		"dec/alpha.c",
-		"dec/vp8l.c",
-		"dec/io.c",
-		"dec/vp8.c",
-		"dec/idec.c",
-		"dec/tree.c",
-		"dec/buffer.c",
-		"dec/quant.c",
-		"demux/demux.c",
-		"demux/anim_decode.c",
-		"dsp/yuv.c",
-		"dsp/filters_sse2.c",
-		"dsp/dec_sse41.c",
-		"dsp/rescaler.c",
-		"dsp/lossless_sse2.c",
-		"dsp/alpha_processing_sse41.c",
-		"dsp/alpha_processing_sse2.c",
-		"dsp/filters.c",
-		"dsp/upsampling_mips_dsp_r2.c",
-		"dsp/dec_neon.c",
-		"dsp/enc_neon.c",
-		"dsp/lossless_enc_mips32.c",
-		"dsp/lossless_enc_sse2.c",
-		"dsp/upsampling.c",
-		"dsp/lossless_enc_neon.c",
-		"dsp/alpha_processing.c",
-		"dsp/cost_sse2.c",
-		"dsp/dec_mips32.c",
-		"dsp/enc_avx2.c",
-		"dsp/rescaler_mips32.c",
-		"dsp/enc.c",
-		"dsp/lossless_enc_sse41.c",
-		"dsp/cost_mips32.c",
-		"dsp/lossless_mips_dsp_r2.c",
-		"dsp/filters_mips_dsp_r2.c",
-		"dsp/upsampling_neon.c",
-		"dsp/alpha_processing_mips_dsp_r2.c",
-		"dsp/enc_mips_dsp_r2.c",
-		"dsp/lossless.c",
-		"dsp/yuv_mips_dsp_r2.c",
-		"dsp/cost_mips_dsp_r2.c",
-		"dsp/argb.c",
-		"dsp/dec_sse2.c",
-		"dsp/rescaler_sse2.c",
-		"dsp/enc_sse41.c",
-		"dsp/argb_mips_dsp_r2.c",
-		"dsp/lossless_enc_mips_dsp_r2.c",
-		"dsp/dec_clip_tables.c",
-		"dsp/yuv_mips32.c",
-		"dsp/cpu.c",
-		"dsp/dec.c",
-		"dsp/argb_sse2.c",
-		"dsp/lossless_neon.c",
-		"dsp/lossless_enc.c",
-		"dsp/enc_mips32.c",
-		"dsp/cost.c",
-		"dsp/rescaler_mips_dsp_r2.c",
-		"dsp/dec_mips_dsp_r2.c",
-		"dsp/rescaler_neon.c",
-		"dsp/yuv_sse2.c",
-		"dsp/enc_sse2.c",
-		"dsp/upsampling_sse2.c",
-	]
-	thirdparty_sources = [thirdparty_dir + file for file in thirdparty_sources]
+    thirdparty_dir = "#thirdparty/libwebp/"
+    thirdparty_sources = [
+        "enc/webpenc.c",
+        "enc/near_lossless.c",
+        "enc/frame.c",
+        "enc/alpha.c",
+        "enc/picture_csp.c",
+        "enc/vp8l.c",
+        "enc/picture_psnr.c",
+        "enc/delta_palettization.c",
+        "enc/syntax.c",
+        "enc/backward_references.c",
+        "enc/token.c",
+        "enc/analysis.c",
+        "enc/iterator.c",
+        "enc/picture_tools.c",
+        "enc/picture_rescale.c",
+        "enc/config.c",
+        "enc/tree.c",
+        "enc/cost.c",
+        "enc/picture.c",
+        "enc/quant.c",
+        "enc/filter.c",
+        "enc/histogram.c",
+        "utils/rescaler.c",
+        "utils/filters.c",
+        "utils/quant_levels_dec.c",
+        "utils/huffman.c",
+        "utils/thread.c",
+        "utils/quant_levels.c",
+        "utils/bit_writer.c",
+        "utils/bit_reader.c",
+        "utils/random.c",
+        "utils/utils.c",
+        "utils/huffman_encode.c",
+        "utils/color_cache.c",
+        "mux/muxinternal.c",
+        "mux/muxread.c",
+        "mux/anim_encode.c",
+        "mux/muxedit.c",
+        "dec/webp.c",
+        "dec/frame.c",
+        "dec/alpha.c",
+        "dec/vp8l.c",
+        "dec/io.c",
+        "dec/vp8.c",
+        "dec/idec.c",
+        "dec/tree.c",
+        "dec/buffer.c",
+        "dec/quant.c",
+        "demux/demux.c",
+        "demux/anim_decode.c",
+        "dsp/yuv.c",
+        "dsp/filters_sse2.c",
+        "dsp/dec_sse41.c",
+        "dsp/rescaler.c",
+        "dsp/lossless_sse2.c",
+        "dsp/alpha_processing_sse41.c",
+        "dsp/alpha_processing_sse2.c",
+        "dsp/filters.c",
+        "dsp/upsampling_mips_dsp_r2.c",
+        "dsp/dec_neon.c",
+        "dsp/enc_neon.c",
+        "dsp/lossless_enc_mips32.c",
+        "dsp/lossless_enc_sse2.c",
+        "dsp/upsampling.c",
+        "dsp/lossless_enc_neon.c",
+        "dsp/alpha_processing.c",
+        "dsp/cost_sse2.c",
+        "dsp/dec_mips32.c",
+        "dsp/enc_avx2.c",
+        "dsp/rescaler_mips32.c",
+        "dsp/enc.c",
+        "dsp/lossless_enc_sse41.c",
+        "dsp/cost_mips32.c",
+        "dsp/lossless_mips_dsp_r2.c",
+        "dsp/filters_mips_dsp_r2.c",
+        "dsp/upsampling_neon.c",
+        "dsp/alpha_processing_mips_dsp_r2.c",
+        "dsp/enc_mips_dsp_r2.c",
+        "dsp/lossless.c",
+        "dsp/yuv_mips_dsp_r2.c",
+        "dsp/cost_mips_dsp_r2.c",
+        "dsp/argb.c",
+        "dsp/dec_sse2.c",
+        "dsp/rescaler_sse2.c",
+        "dsp/enc_sse41.c",
+        "dsp/argb_mips_dsp_r2.c",
+        "dsp/lossless_enc_mips_dsp_r2.c",
+        "dsp/dec_clip_tables.c",
+        "dsp/yuv_mips32.c",
+        "dsp/cpu.c",
+        "dsp/dec.c",
+        "dsp/argb_sse2.c",
+        "dsp/lossless_neon.c",
+        "dsp/lossless_enc.c",
+        "dsp/enc_mips32.c",
+        "dsp/cost.c",
+        "dsp/rescaler_mips_dsp_r2.c",
+        "dsp/dec_mips_dsp_r2.c",
+        "dsp/rescaler_neon.c",
+        "dsp/yuv_sse2.c",
+        "dsp/enc_sse2.c",
+        "dsp/upsampling_sse2.c",
+    ]
+    thirdparty_sources = [thirdparty_dir + file for file in thirdparty_sources]
 
 
-	env_webp.add_source_files(env.modules_sources, thirdparty_sources)
-	env_webp.Append(CPPPATH = [thirdparty_dir])
+    env_webp.add_source_files(env.modules_sources, thirdparty_sources)
+    env_webp.Append(CPPPATH = [thirdparty_dir])
 
 
 # Godot source files
 # Godot source files
 env_webp.add_source_files(env.modules_sources, "*.cpp")
 env_webp.add_source_files(env.modules_sources, "*.cpp")

+ 2 - 2
modules/webp/config.py

@@ -1,6 +1,6 @@
 
 
 def can_build(platform):
 def can_build(platform):
-	return True
+    return True
 
 
 def configure(env):
 def configure(env):
-	pass
+    pass

+ 37 - 37
platform/android/SCsub

@@ -6,20 +6,20 @@ Import('env')
 
 
 android_files = [
 android_files = [
 
 
-	'os_android.cpp',
-	'godot_android.cpp',
-	'file_access_android.cpp',
-	'dir_access_android.cpp',
-	'audio_driver_opensl.cpp',
-	'file_access_jandroid.cpp',
-	'dir_access_jandroid.cpp',
-	'thread_jandroid.cpp',
-	'audio_driver_jandroid.cpp',
-	'ifaddrs_android.cpp',
-	'android_native_app_glue.c',
-	'java_glue.cpp',
-	'cpu-features.c',
-	'java_class_wrapper.cpp'
+    'os_android.cpp',
+    'godot_android.cpp',
+    'file_access_android.cpp',
+    'dir_access_android.cpp',
+    'audio_driver_opensl.cpp',
+    'file_access_jandroid.cpp',
+    'dir_access_jandroid.cpp',
+    'thread_jandroid.cpp',
+    'audio_driver_jandroid.cpp',
+    'ifaddrs_android.cpp',
+    'android_native_app_glue.c',
+    'java_glue.cpp',
+    'cpu-features.c',
+    'java_class_wrapper.cpp'
 ]
 ]
 
 
 #env.Depends('#core/math/vector3.h', 'vector3_psp.h')
 #env.Depends('#core/math/vector3.h', 'vector3_psp.h')
@@ -28,11 +28,11 @@ android_files = [
 
 
 env_android = env.Clone()
 env_android = env.Clone()
 if env['target'] == "profile":
 if env['target'] == "profile":
-	env_android.Append(CPPFLAGS=['-DPROFILER_ENABLED'])
+    env_android.Append(CPPFLAGS=['-DPROFILER_ENABLED'])
 
 
 android_objects=[]
 android_objects=[]
 for x in android_files:
 for x in android_files:
-	android_objects.append( env_android.SharedObject( x ) )
+    android_objects.append( env_android.SharedObject( x ) )
 
 
 prog = None
 prog = None
 
 
@@ -48,43 +48,43 @@ gradle_text = gradle_basein.read()
 gradle_maven_repos_text=""
 gradle_maven_repos_text=""
 
 
 if len(env.android_maven_repos) > 0:
 if len(env.android_maven_repos) > 0:
-	gradle_maven_repos_text+="maven {\n"
-	for x in env.android_maven_repos:
-		gradle_maven_repos_text+="\t\t"+x+"\n"
-	gradle_maven_repos_text+="\t}\n"
+    gradle_maven_repos_text+="maven {\n"
+    for x in env.android_maven_repos:
+        gradle_maven_repos_text+="\t\t"+x+"\n"
+    gradle_maven_repos_text+="\t}\n"
 
 
 gradle_maven_dependencies_text=""
 gradle_maven_dependencies_text=""
 
 
 for x in env.android_dependencies:
 for x in env.android_dependencies:
-	gradle_maven_dependencies_text+=x+"\n"
+    gradle_maven_dependencies_text+=x+"\n"
 
 
 gradle_java_dirs_text=""
 gradle_java_dirs_text=""
 
 
 for x in env.android_java_dirs:
 for x in env.android_java_dirs:
-	gradle_java_dirs_text+=",'"+x.replace("\\","/")+"'"
+    gradle_java_dirs_text+=",'"+x.replace("\\","/")+"'"
 
 
 
 
 gradle_res_dirs_text=""
 gradle_res_dirs_text=""
 
 
 for x in env.android_res_dirs:
 for x in env.android_res_dirs:
-	gradle_res_dirs_text+=",'"+x.replace("\\","/")+"'"
+    gradle_res_dirs_text+=",'"+x.replace("\\","/")+"'"
 
 
 gradle_aidl_dirs_text=""
 gradle_aidl_dirs_text=""
 
 
 for x in env.android_aidl_dirs:
 for x in env.android_aidl_dirs:
-	gradle_aidl_dirs_text+=",'"+x.replace("\\","/")+"'"
+    gradle_aidl_dirs_text+=",'"+x.replace("\\","/")+"'"
 
 
 gradle_jni_dirs_text=""
 gradle_jni_dirs_text=""
 
 
 for x in env.android_jni_dirs:
 for x in env.android_jni_dirs:
-	gradle_jni_dirs_text+=",'"+x.replace("\\","/")+"'"
+    gradle_jni_dirs_text+=",'"+x.replace("\\","/")+"'"
 
 
 gradle_asset_dirs_text=""
 gradle_asset_dirs_text=""
 
 
 gradle_default_config_text=""
 gradle_default_config_text=""
 
 
 for x in env.android_default_config:
 for x in env.android_default_config:
-	gradle_default_config_text+=x+"\n\t\t"
+    gradle_default_config_text+=x+"\n\t\t"
 
 
 gradle_text = gradle_text.replace("$$GRADLE_REPOSITORY_URLS$$",gradle_maven_repos_text)
 gradle_text = gradle_text.replace("$$GRADLE_REPOSITORY_URLS$$",gradle_maven_repos_text)
 gradle_text = gradle_text.replace("$$GRADLE_DEPENDENCIES$$",gradle_maven_dependencies_text)
 gradle_text = gradle_text.replace("$$GRADLE_DEPENDENCIES$$",gradle_maven_dependencies_text)
@@ -114,19 +114,19 @@ env_android.SharedLibrary("#bin/libgodot",[android_objects],SHLIBSUFFIX=env["SHL
 
 
 lib_arch_dir = ''
 lib_arch_dir = ''
 if env['android_arch'] == 'armv6':
 if env['android_arch'] == 'armv6':
-	lib_arch_dir = 'armeabi'
+    lib_arch_dir = 'armeabi'
 elif env['android_arch'] == 'armv7':
 elif env['android_arch'] == 'armv7':
-	lib_arch_dir = 'armeabi-v7a'
+    lib_arch_dir = 'armeabi-v7a'
 elif env['android_arch'] == 'x86':
 elif env['android_arch'] == 'x86':
-	lib_arch_dir = 'x86'
+    lib_arch_dir = 'x86'
 else:
 else:
-	print 'WARN: Architecture not suitable for embedding into APK; keeping .so at \\bin'
+    print 'WARN: Architecture not suitable for embedding into APK; keeping .so at \\bin'
 
 
 if lib_arch_dir != '':
 if lib_arch_dir != '':
-	if env['target'] == 'release':
-		lib_type_dir = 'release'
-	else: # release_debug, debug
-		lib_type_dir = 'debug'
-		
-	out_dir = '#platform/android/java/libs/'+lib_type_dir+'/'+lib_arch_dir
-	env_android.Command(out_dir+'/libgodot_android.so', '#bin/libgodot'+env['SHLIBSUFFIX'], Move("$TARGET", "$SOURCE"))
+    if env['target'] == 'release':
+        lib_type_dir = 'release'
+    else: # release_debug, debug
+        lib_type_dir = 'debug'
+
+    out_dir = '#platform/android/java/libs/'+lib_type_dir+'/'+lib_arch_dir
+    env_android.Command(out_dir+'/libgodot_android.so', '#bin/libgodot'+env['SHLIBSUFFIX'], Move("$TARGET", "$SOURCE"))

+ 212 - 212
platform/android/detect.py

@@ -4,247 +4,247 @@ import string
 import platform
 import platform
 
 
 def is_active():
 def is_active():
-	return True
+    return True
 
 
 def get_name():
 def get_name():
-	return "Android"
+    return "Android"
 
 
 def can_build():
 def can_build():
 
 
-        import os
-        if (not os.environ.has_key("ANDROID_NDK_ROOT")):
-        	return False
+    import os
+    if (not os.environ.has_key("ANDROID_NDK_ROOT")):
+        return False
 
 
-	return True
+    return True
 
 
 def get_opts():
 def get_opts():
 
 
-	return [
-			('ANDROID_NDK_ROOT', 'the path to Android NDK', os.environ.get("ANDROID_NDK_ROOT", 0)),
-			('NDK_TARGET', 'toolchain to use for the NDK',os.environ.get("NDK_TARGET", "arm-linux-androideabi-4.9")),
-			('NDK_TARGET_X86', 'toolchain to use for the NDK x86',os.environ.get("NDK_TARGET_X86", "x86-4.9")),
-			('ndk_platform', 'compile for platform: (android-<api> , example: android-14)',"android-14"),
-			('android_arch', 'select compiler architecture: (armv7/armv6/x86)',"armv7"),
-			('android_neon','enable neon (armv7 only)',"yes"),
-			('android_stl','enable STL support in android port (for modules)',"no")
-	]
+    return [
+        ('ANDROID_NDK_ROOT', 'the path to Android NDK', os.environ.get("ANDROID_NDK_ROOT", 0)),
+        ('NDK_TARGET', 'toolchain to use for the NDK',os.environ.get("NDK_TARGET", "arm-linux-androideabi-4.9")),
+        ('NDK_TARGET_X86', 'toolchain to use for the NDK x86',os.environ.get("NDK_TARGET_X86", "x86-4.9")),
+        ('ndk_platform', 'compile for platform: (android-<api> , example: android-14)',"android-14"),
+        ('android_arch', 'select compiler architecture: (armv7/armv6/x86)',"armv7"),
+        ('android_neon','enable neon (armv7 only)',"yes"),
+        ('android_stl','enable STL support in android port (for modules)',"no")
+    ]
 
 
 
 
 def get_flags():
 def get_flags():
 
 
-	return [
-		('tools', 'no'),
-		('openssl', 'builtin'), #use builtin openssl
-	]
+    return [
+        ('tools', 'no'),
+        ('openssl', 'builtin'), #use builtin openssl
+    ]
 
 
 
 
 def create(env):
 def create(env):
-	tools = env['TOOLS']
-	if "mingw" in tools:
-		tools.remove('mingw')
-	if "applelink" in tools:
-		tools.remove("applelink")
-		env.Tool('gcc')
-	return env.Clone(tools=tools);
+    tools = env['TOOLS']
+    if "mingw" in tools:
+        tools.remove('mingw')
+    if "applelink" in tools:
+        tools.remove("applelink")
+        env.Tool('gcc')
+    return env.Clone(tools=tools);
 
 
 def configure(env):
 def configure(env):
 
 
-	# Workaround for MinGW. See:
-	# http://www.scons.org/wiki/LongCmdLinesOnWin32
-	import os
-	if (os.name=="nt"):
-
-		import subprocess
-
-		def mySubProcess(cmdline,env):
-			#print "SPAWNED : " + cmdline
-			startupinfo = subprocess.STARTUPINFO()
-			startupinfo.dwFlags |= subprocess.STARTF_USESHOWWINDOW
-			proc = subprocess.Popen(cmdline, stdin=subprocess.PIPE, stdout=subprocess.PIPE,
-				stderr=subprocess.PIPE, startupinfo=startupinfo, shell = False, env = env)
-			data, err = proc.communicate()
-			rv = proc.wait()
-			if rv:
-				print "====="
-				print err
-				print "====="
-			return rv
-
-		def mySpawn(sh, escape, cmd, args, env):
-
-			newargs = ' '.join(args[1:])
-			cmdline = cmd + " " + newargs
-
-			rv=0
-			if len(cmdline) > 32000 and cmd.endswith("ar") :
-				cmdline = cmd + " " + args[1] + " " + args[2] + " "
-				for i in range(3,len(args)) :
-					rv = mySubProcess( cmdline + args[i], env )
-					if rv :
-						break
-			else:
-				rv = mySubProcess( cmdline, env )
-
-			return rv
-
-		env['SPAWN'] = mySpawn
-
-	ndk_platform=env['ndk_platform']
-
-	if env['android_arch'] not in ['armv7','armv6','x86']:
-		env['android_arch']='armv7'
-
-	if env['android_arch']=='x86':
-		env['NDK_TARGET']=env['NDK_TARGET_X86']
-		env["x86_libtheora_opt_gcc"]=True
-
-	if env['PLATFORM'] == 'win32':
-		env.Tool('gcc')
-		env['SHLIBSUFFIX'] = '.so'
-
-
-	neon_text=""
-	if env["android_arch"]=="armv7" and env['android_neon']=='yes':
-		neon_text=" (with neon)"
-	print("Godot Android!!!!! ("+env['android_arch']+")"+neon_text)
-
-	env.Append(CPPPATH=['#platform/android'])
-
-	if env['android_arch']=='x86':
-		env.extra_suffix=".x86"+env.extra_suffix
-	elif env['android_arch']=='armv6':
-		env.extra_suffix=".armv6"+env.extra_suffix
-	elif env["android_arch"]=="armv7":
-		if env['android_neon']=='yes':
-			env.extra_suffix=".armv7.neon"+env.extra_suffix
-		else:
-			env.extra_suffix=".armv7"+env.extra_suffix
-
-	gcc_path=env["ANDROID_NDK_ROOT"]+"/toolchains/"+env["NDK_TARGET"]+"/prebuilt/";
-
-	if (sys.platform.startswith("linux")):
-		if (platform.machine().endswith('64')):
-			gcc_path=gcc_path+"/linux-x86_64/bin"
-		else:
-			gcc_path=gcc_path+"/linux-x86/bin"
-	elif (sys.platform.startswith("darwin")):
-		gcc_path=gcc_path+"/darwin-x86_64/bin"
-		env['SHLINKFLAGS'][1] = '-shared'
-		env['SHLIBSUFFIX'] = '.so'
-	elif (sys.platform.startswith('win')):
-                if (platform.machine().endswith('64')):
-			gcc_path=gcc_path+"/windows-x86_64/bin"
-                else:
-			gcc_path=gcc_path+"/windows-x86/bin"
-
-	env['ENV']['PATH'] = gcc_path+":"+env['ENV']['PATH']
-	if env['android_arch']=='x86':
-		env['CC'] = gcc_path+'/i686-linux-android-gcc'
-		env['CXX'] = gcc_path+'/i686-linux-android-g++'
-		env['AR'] = gcc_path+"/i686-linux-android-ar"
-		env['RANLIB'] = gcc_path+"/i686-linux-android-ranlib"
-		env['AS'] = gcc_path+"/i686-linux-android-as"
-	else:
-		env['CC'] = gcc_path+'/arm-linux-androideabi-gcc'
-		env['CXX'] = gcc_path+'/arm-linux-androideabi-g++'
-		env['AR'] = gcc_path+"/arm-linux-androideabi-ar"
-		env['RANLIB'] = gcc_path+"/arm-linux-androideabi-ranlib"
-		env['AS'] = gcc_path+"/arm-linux-androideabi-as"
-
-	if env['android_arch']=='x86':
-		env['ARCH'] = 'arch-x86'
-	else:
-		env['ARCH'] = 'arch-arm'
-
-	import string
-	#include path
-	gcc_include=env["ANDROID_NDK_ROOT"]+"/platforms/"+ndk_platform+"/"+env['ARCH'] +"/usr/include"
-	ld_sysroot=env["ANDROID_NDK_ROOT"]+"/platforms/"+ndk_platform+"/"+env['ARCH']
-	#glue_include=env["ANDROID_NDK_ROOT"]+"/sources/android/native_app_glue"
-	ld_path=env["ANDROID_NDK_ROOT"]+"/platforms/"+ndk_platform+"/"+env['ARCH']+"/usr/lib"
-	env.Append(CPPPATH=[gcc_include])
+    # Workaround for MinGW. See:
+    # http://www.scons.org/wiki/LongCmdLinesOnWin32
+    import os
+    if (os.name=="nt"):
+
+        import subprocess
+
+        def mySubProcess(cmdline,env):
+            #print "SPAWNED : " + cmdline
+            startupinfo = subprocess.STARTUPINFO()
+            startupinfo.dwFlags |= subprocess.STARTF_USESHOWWINDOW
+            proc = subprocess.Popen(cmdline, stdin=subprocess.PIPE, stdout=subprocess.PIPE,
+                                    stderr=subprocess.PIPE, startupinfo=startupinfo, shell = False, env = env)
+            data, err = proc.communicate()
+            rv = proc.wait()
+            if rv:
+                print "====="
+                print err
+                print "====="
+            return rv
+
+        def mySpawn(sh, escape, cmd, args, env):
+
+            newargs = ' '.join(args[1:])
+            cmdline = cmd + " " + newargs
+
+            rv=0
+            if len(cmdline) > 32000 and cmd.endswith("ar") :
+                cmdline = cmd + " " + args[1] + " " + args[2] + " "
+                for i in range(3,len(args)) :
+                    rv = mySubProcess( cmdline + args[i], env )
+                    if rv :
+                        break
+            else:
+                rv = mySubProcess( cmdline, env )
+
+            return rv
+
+        env['SPAWN'] = mySpawn
+
+    ndk_platform=env['ndk_platform']
+
+    if env['android_arch'] not in ['armv7','armv6','x86']:
+        env['android_arch']='armv7'
+
+    if env['android_arch']=='x86':
+        env['NDK_TARGET']=env['NDK_TARGET_X86']
+        env["x86_libtheora_opt_gcc"]=True
+
+    if env['PLATFORM'] == 'win32':
+        env.Tool('gcc')
+        env['SHLIBSUFFIX'] = '.so'
+
+
+    neon_text=""
+    if env["android_arch"]=="armv7" and env['android_neon']=='yes':
+        neon_text=" (with neon)"
+    print("Godot Android!!!!! ("+env['android_arch']+")"+neon_text)
+
+    env.Append(CPPPATH=['#platform/android'])
+
+    if env['android_arch']=='x86':
+        env.extra_suffix=".x86"+env.extra_suffix
+    elif env['android_arch']=='armv6':
+        env.extra_suffix=".armv6"+env.extra_suffix
+    elif env["android_arch"]=="armv7":
+        if env['android_neon']=='yes':
+            env.extra_suffix=".armv7.neon"+env.extra_suffix
+        else:
+            env.extra_suffix=".armv7"+env.extra_suffix
+
+    gcc_path=env["ANDROID_NDK_ROOT"]+"/toolchains/"+env["NDK_TARGET"]+"/prebuilt/";
+
+    if (sys.platform.startswith("linux")):
+        if (platform.machine().endswith('64')):
+            gcc_path=gcc_path+"/linux-x86_64/bin"
+        else:
+            gcc_path=gcc_path+"/linux-x86/bin"
+    elif (sys.platform.startswith("darwin")):
+        gcc_path=gcc_path+"/darwin-x86_64/bin"
+        env['SHLINKFLAGS'][1] = '-shared'
+        env['SHLIBSUFFIX'] = '.so'
+    elif (sys.platform.startswith('win')):
+        if (platform.machine().endswith('64')):
+            gcc_path=gcc_path+"/windows-x86_64/bin"
+        else:
+            gcc_path=gcc_path+"/windows-x86/bin"
+
+    env['ENV']['PATH'] = gcc_path+":"+env['ENV']['PATH']
+    if env['android_arch']=='x86':
+        env['CC'] = gcc_path+'/i686-linux-android-gcc'
+        env['CXX'] = gcc_path+'/i686-linux-android-g++'
+        env['AR'] = gcc_path+"/i686-linux-android-ar"
+        env['RANLIB'] = gcc_path+"/i686-linux-android-ranlib"
+        env['AS'] = gcc_path+"/i686-linux-android-as"
+    else:
+        env['CC'] = gcc_path+'/arm-linux-androideabi-gcc'
+        env['CXX'] = gcc_path+'/arm-linux-androideabi-g++'
+        env['AR'] = gcc_path+"/arm-linux-androideabi-ar"
+        env['RANLIB'] = gcc_path+"/arm-linux-androideabi-ranlib"
+        env['AS'] = gcc_path+"/arm-linux-androideabi-as"
+
+    if env['android_arch']=='x86':
+        env['ARCH'] = 'arch-x86'
+    else:
+        env['ARCH'] = 'arch-arm'
+
+    import string
+    #include path
+    gcc_include=env["ANDROID_NDK_ROOT"]+"/platforms/"+ndk_platform+"/"+env['ARCH'] +"/usr/include"
+    ld_sysroot=env["ANDROID_NDK_ROOT"]+"/platforms/"+ndk_platform+"/"+env['ARCH']
+    #glue_include=env["ANDROID_NDK_ROOT"]+"/sources/android/native_app_glue"
+    ld_path=env["ANDROID_NDK_ROOT"]+"/platforms/"+ndk_platform+"/"+env['ARCH']+"/usr/lib"
+    env.Append(CPPPATH=[gcc_include])
 #	env['CCFLAGS'] = string.split('-DNO_THREADS -MMD -MP -MF -fpic -ffunction-sections -funwind-tables -fstack-protector -D__ARM_ARCH_5__ -D__ARM_ARCH_5T__ -D__ARM_ARCH_5E__ -D__ARM_ARCH_5TE__  -Wno-psabi -march=armv5te -mtune=xscale -msoft-float  -fno-exceptions -mthumb -fno-strict-aliasing -DANDROID -Wa,--noexecstack -DGLES2_ENABLED ')
 #	env['CCFLAGS'] = string.split('-DNO_THREADS -MMD -MP -MF -fpic -ffunction-sections -funwind-tables -fstack-protector -D__ARM_ARCH_5__ -D__ARM_ARCH_5T__ -D__ARM_ARCH_5E__ -D__ARM_ARCH_5TE__  -Wno-psabi -march=armv5te -mtune=xscale -msoft-float  -fno-exceptions -mthumb -fno-strict-aliasing -DANDROID -Wa,--noexecstack -DGLES2_ENABLED ')
 
 
-	env['neon_enabled']=False
-	if env['android_arch']=='x86':
-		env.Append(CCFLAGS=string.split('-DNO_STATVFS -fpic -ffunction-sections -funwind-tables -fstack-protector -fvisibility=hidden -D__GLIBC__  -Wno-psabi -ftree-vectorize -funsafe-math-optimizations -fno-strict-aliasing -DANDROID -Wa,--noexecstack -DGLES2_ENABLED'))
-	elif env["android_arch"]=="armv6":
-		env.Append(CCFLAGS=string.split('-DNO_STATVFS -fpic -ffunction-sections -funwind-tables -fstack-protector -fvisibility=hidden -D__ARM_ARCH_6__ -D__GLIBC__  -Wno-psabi -march=armv6 -mfpu=vfp -mfloat-abi=softfp -funsafe-math-optimizations -fno-strict-aliasing -DANDROID -Wa,--noexecstack -DGLES2_ENABLED'))
-	elif env["android_arch"]=="armv7":
-		env.Append(CCFLAGS=string.split('-DNO_STATVFS -fpic -ffunction-sections -funwind-tables -fstack-protector -fvisibility=hidden -D__ARM_ARCH_7__ -D__ARM_ARCH_7A__ -D__GLIBC__  -Wno-psabi -march=armv7-a -mfloat-abi=softfp -ftree-vectorize -funsafe-math-optimizations -fno-strict-aliasing -DANDROID -Wa,--noexecstack -DGLES2_ENABLED'))
-		if env['android_neon']=='yes':
-			env['neon_enabled']=True
-			env.Append(CCFLAGS=['-mfpu=neon','-D__ARM_NEON__'])
-		else:
-			env.Append(CCFLAGS=['-mfpu=vfpv3-d16'])
-
-	env.Append(LDPATH=[ld_path])
-	env.Append(LIBS=['OpenSLES'])
+    env['neon_enabled']=False
+    if env['android_arch']=='x86':
+        env.Append(CCFLAGS=string.split('-DNO_STATVFS -fpic -ffunction-sections -funwind-tables -fstack-protector -fvisibility=hidden -D__GLIBC__  -Wno-psabi -ftree-vectorize -funsafe-math-optimizations -fno-strict-aliasing -DANDROID -Wa,--noexecstack -DGLES2_ENABLED'))
+    elif env["android_arch"]=="armv6":
+        env.Append(CCFLAGS=string.split('-DNO_STATVFS -fpic -ffunction-sections -funwind-tables -fstack-protector -fvisibility=hidden -D__ARM_ARCH_6__ -D__GLIBC__  -Wno-psabi -march=armv6 -mfpu=vfp -mfloat-abi=softfp -funsafe-math-optimizations -fno-strict-aliasing -DANDROID -Wa,--noexecstack -DGLES2_ENABLED'))
+    elif env["android_arch"]=="armv7":
+        env.Append(CCFLAGS=string.split('-DNO_STATVFS -fpic -ffunction-sections -funwind-tables -fstack-protector -fvisibility=hidden -D__ARM_ARCH_7__ -D__ARM_ARCH_7A__ -D__GLIBC__  -Wno-psabi -march=armv7-a -mfloat-abi=softfp -ftree-vectorize -funsafe-math-optimizations -fno-strict-aliasing -DANDROID -Wa,--noexecstack -DGLES2_ENABLED'))
+        if env['android_neon']=='yes':
+            env['neon_enabled']=True
+            env.Append(CCFLAGS=['-mfpu=neon','-D__ARM_NEON__'])
+        else:
+            env.Append(CCFLAGS=['-mfpu=vfpv3-d16'])
+
+    env.Append(LDPATH=[ld_path])
+    env.Append(LIBS=['OpenSLES'])
 #	env.Append(LIBS=['c','m','stdc++','log','EGL','GLESv1_CM','GLESv2','OpenSLES','supc++','android'])
 #	env.Append(LIBS=['c','m','stdc++','log','EGL','GLESv1_CM','GLESv2','OpenSLES','supc++','android'])
-	env.Append(LIBS=['EGL','OpenSLES','android'])
-	env.Append(LIBS=['c','m','stdc++','log','GLESv1_CM','GLESv2', 'z'])
+    env.Append(LIBS=['EGL','OpenSLES','android'])
+    env.Append(LIBS=['c','m','stdc++','log','GLESv1_CM','GLESv2', 'z'])
 
 
-	env["LINKFLAGS"]= string.split(" -g --sysroot="+ld_sysroot+" -Wl,--no-undefined -Wl,-z,noexecstack ")
-	env.Append(LINKFLAGS=["-Wl,-soname,libgodot_android.so"])
+    env["LINKFLAGS"]= string.split(" -g --sysroot="+ld_sysroot+" -Wl,--no-undefined -Wl,-z,noexecstack ")
+    env.Append(LINKFLAGS=["-Wl,-soname,libgodot_android.so"])
 
 
-	if (env["target"]=="release"):
+    if (env["target"]=="release"):
 
 
-		env.Append(CCFLAGS=['-O2', '-ffast-math','-fomit-frame-pointer'])
+        env.Append(CCFLAGS=['-O2', '-ffast-math','-fomit-frame-pointer'])
 
 
-	elif (env["target"]=="release_debug"):
+    elif (env["target"]=="release_debug"):
 
 
-		env.Append(CCFLAGS=['-O2', '-ffast-math','-DDEBUG_ENABLED'])
+        env.Append(CCFLAGS=['-O2', '-ffast-math','-DDEBUG_ENABLED'])
 
 
-	elif (env["target"]=="debug"):
+    elif (env["target"]=="debug"):
 
 
-		env.Append(CCFLAGS=['-D_DEBUG', '-g1', '-Wall', '-O0', '-DDEBUG_ENABLED'])
-		env.Append(CPPFLAGS=['-DDEBUG_MEMORY_ALLOC'])
+        env.Append(CCFLAGS=['-D_DEBUG', '-g1', '-Wall', '-O0', '-DDEBUG_ENABLED'])
+        env.Append(CPPFLAGS=['-DDEBUG_MEMORY_ALLOC'])
 
 
-	env.Append(CPPFLAGS=['-DANDROID_ENABLED', '-DUNIX_ENABLED', '-DNO_FCNTL','-DMPC_FIXED_POINT'])
+    env.Append(CPPFLAGS=['-DANDROID_ENABLED', '-DUNIX_ENABLED', '-DNO_FCNTL','-DMPC_FIXED_POINT'])
 #	env.Append(CPPFLAGS=['-DANDROID_ENABLED', '-DUNIX_ENABLED','-DMPC_FIXED_POINT'])
 #	env.Append(CPPFLAGS=['-DANDROID_ENABLED', '-DUNIX_ENABLED','-DMPC_FIXED_POINT'])
 
 
-	# TODO: Move that to opus module's config
-	if("module_opus_enabled" in env and env["module_opus_enabled"] != "no"):
-		if (env["android_arch"]=="armv6" or env["android_arch"]=="armv7"):
-			env.Append(CFLAGS=["-DOPUS_ARM_OPT"])
-		env.opus_fixed_point="yes"
-
-	if (env['android_stl']=='yes'):
-		#env.Append(CCFLAGS=[env["ANDROID_NDK_ROOT"]+"/sources/cxx-stl/system/include"])
-		env.Append(CPPPATH=[env["ANDROID_NDK_ROOT"]+"/sources/cxx-stl/gnu-libstdc++/4.9/include"])
-		if env['android_arch']=='x86':
-			env.Append(CPPPATH=[env["ANDROID_NDK_ROOT"]+"/sources/cxx-stl/gnu-libstdc++/4.9/libs/x86/include"])
-			env.Append(LIBPATH=[env["ANDROID_NDK_ROOT"]+"/sources/cxx-stl/gnu-libstdc++/4.9/libs/x86"])
-		elif env['android_arch']=='armv6':
-			env.Append(CPPPATH=[env["ANDROID_NDK_ROOT"]+"/sources/cxx-stl/gnu-libstdc++/4.9/libs/armeabi/include"])
-			env.Append(LIBPATH=[env["ANDROID_NDK_ROOT"]+"/sources/cxx-stl/gnu-libstdc++/4.9/libs/armeabi"])
-		elif env["android_arch"]=="armv7":
-			env.Append(CPPPATH=[env["ANDROID_NDK_ROOT"]+"/sources/cxx-stl/gnu-libstdc++/4.9/libs/armeabi-v7a/include"])
-			env.Append(LIBPATH=[env["ANDROID_NDK_ROOT"]+"/sources/cxx-stl/gnu-libstdc++/4.9/libs/armeabi-v7a"])
-
-		env.Append(LIBS=["gnustl_static","supc++"])
-		env.Append(CPPPATH=[env["ANDROID_NDK_ROOT"]+"/sources/cpufeatures"])
-
-		#env.Append(CCFLAGS=["-I"+env["ANDROID_NDK_ROOT"]+"/sources/cxx-stl/stlport/stlport"])
-		#env.Append(CCFLAGS=["-I"+env["ANDROID_NDK_ROOT"]+"/sources/cxx-stl/gnu-libstdc++/libs/armeabi/include"])
-		#env.Append(LINKFLAGS=[env["ANDROID_NDK_ROOT"]+"/sources/cxx-stl/gnu-libstdc++/libs/armeabi/libstdc++.a"])
-	else:
-
-		env.Append(CPPPATH=[env["ANDROID_NDK_ROOT"]+"/sources/cxx-stl/gnu-libstdc++/4.9/include"])
-		env.Append(CPPPATH=[env["ANDROID_NDK_ROOT"]+"/sources/cpufeatures"])
-		if env['android_arch']=='x86':
-			env.Append(LIBPATH=[env["ANDROID_NDK_ROOT"]+"/sources/cxx-stl/gnu-libstdc++/4.9/libs/x86"])
-		elif env["android_arch"]=="armv6":
-			env.Append(LIBPATH=[env["ANDROID_NDK_ROOT"]+"/sources/cxx-stl/gnu-libstdc++/4.9/libs/armeabi"])
-		elif env["android_arch"]=="armv7":
-			env.Append(LIBPATH=[env["ANDROID_NDK_ROOT"]+"/sources/cxx-stl/gnu-libstdc++/4.9/libs/armeabi-v7a"])
-		env.Append(LIBS=['gnustl_static'])
-		env.Append(CCFLAGS=["-fno-exceptions",'-DNO_SAFE_CAST'])
-
-
-	import methods
-	env.Append( BUILDERS = { 'GLSL120' : env.Builder(action = methods.build_legacygl_headers, suffix = 'glsl.h',src_suffix = '.glsl') } )
-	env.Append( BUILDERS = { 'GLSL' : env.Builder(action = methods.build_glsl_headers, suffix = 'glsl.h',src_suffix = '.glsl') } )
-	env.Append( BUILDERS = { 'GLSL120GLES' : env.Builder(action = methods.build_gles2_headers, suffix = 'glsl.h',src_suffix = '.glsl') } )
-
-	env.use_windows_spawn_fix()
+    # TODO: Move that to opus module's config
+    if("module_opus_enabled" in env and env["module_opus_enabled"] != "no"):
+        if (env["android_arch"]=="armv6" or env["android_arch"]=="armv7"):
+            env.Append(CFLAGS=["-DOPUS_ARM_OPT"])
+        env.opus_fixed_point="yes"
+
+    if (env['android_stl']=='yes'):
+        #env.Append(CCFLAGS=[env["ANDROID_NDK_ROOT"]+"/sources/cxx-stl/system/include"])
+        env.Append(CPPPATH=[env["ANDROID_NDK_ROOT"]+"/sources/cxx-stl/gnu-libstdc++/4.9/include"])
+        if env['android_arch']=='x86':
+            env.Append(CPPPATH=[env["ANDROID_NDK_ROOT"]+"/sources/cxx-stl/gnu-libstdc++/4.9/libs/x86/include"])
+            env.Append(LIBPATH=[env["ANDROID_NDK_ROOT"]+"/sources/cxx-stl/gnu-libstdc++/4.9/libs/x86"])
+        elif env['android_arch']=='armv6':
+            env.Append(CPPPATH=[env["ANDROID_NDK_ROOT"]+"/sources/cxx-stl/gnu-libstdc++/4.9/libs/armeabi/include"])
+            env.Append(LIBPATH=[env["ANDROID_NDK_ROOT"]+"/sources/cxx-stl/gnu-libstdc++/4.9/libs/armeabi"])
+        elif env["android_arch"]=="armv7":
+            env.Append(CPPPATH=[env["ANDROID_NDK_ROOT"]+"/sources/cxx-stl/gnu-libstdc++/4.9/libs/armeabi-v7a/include"])
+            env.Append(LIBPATH=[env["ANDROID_NDK_ROOT"]+"/sources/cxx-stl/gnu-libstdc++/4.9/libs/armeabi-v7a"])
+
+        env.Append(LIBS=["gnustl_static","supc++"])
+        env.Append(CPPPATH=[env["ANDROID_NDK_ROOT"]+"/sources/cpufeatures"])
+
+        #env.Append(CCFLAGS=["-I"+env["ANDROID_NDK_ROOT"]+"/sources/cxx-stl/stlport/stlport"])
+        #env.Append(CCFLAGS=["-I"+env["ANDROID_NDK_ROOT"]+"/sources/cxx-stl/gnu-libstdc++/libs/armeabi/include"])
+        #env.Append(LINKFLAGS=[env["ANDROID_NDK_ROOT"]+"/sources/cxx-stl/gnu-libstdc++/libs/armeabi/libstdc++.a"])
+    else:
+
+        env.Append(CPPPATH=[env["ANDROID_NDK_ROOT"]+"/sources/cxx-stl/gnu-libstdc++/4.9/include"])
+        env.Append(CPPPATH=[env["ANDROID_NDK_ROOT"]+"/sources/cpufeatures"])
+        if env['android_arch']=='x86':
+            env.Append(LIBPATH=[env["ANDROID_NDK_ROOT"]+"/sources/cxx-stl/gnu-libstdc++/4.9/libs/x86"])
+        elif env["android_arch"]=="armv6":
+            env.Append(LIBPATH=[env["ANDROID_NDK_ROOT"]+"/sources/cxx-stl/gnu-libstdc++/4.9/libs/armeabi"])
+        elif env["android_arch"]=="armv7":
+            env.Append(LIBPATH=[env["ANDROID_NDK_ROOT"]+"/sources/cxx-stl/gnu-libstdc++/4.9/libs/armeabi-v7a"])
+        env.Append(LIBS=['gnustl_static'])
+        env.Append(CCFLAGS=["-fno-exceptions",'-DNO_SAFE_CAST'])
+
+
+    import methods
+    env.Append( BUILDERS = { 'GLSL120' : env.Builder(action = methods.build_legacygl_headers, suffix = 'glsl.h',src_suffix = '.glsl') } )
+    env.Append( BUILDERS = { 'GLSL' : env.Builder(action = methods.build_glsl_headers, suffix = 'glsl.h',src_suffix = '.glsl') } )
+    env.Append( BUILDERS = { 'GLSL120GLES' : env.Builder(action = methods.build_gles2_headers, suffix = 'glsl.h',src_suffix = '.glsl') } )
+
+    env.use_windows_spawn_fix()

+ 7 - 7
platform/bb10/SCsub

@@ -4,19 +4,19 @@ Import('env')
 
 
 bb10_lib = [
 bb10_lib = [
 
 
-	'bbutil.c',
-	'os_bb10.cpp',
-	'audio_driver_bb10.cpp',
-	'godot_bb10.cpp',
-	'payment_service.cpp',
+    'bbutil.c',
+    'os_bb10.cpp',
+    'audio_driver_bb10.cpp',
+    'godot_bb10.cpp',
+    'payment_service.cpp',
 ]
 ]
 
 
 env_bps = env.Clone()
 env_bps = env.Clone()
 if env['bb10_payment_service'] == "yes":
 if env['bb10_payment_service'] == "yes":
-	env_bps.Append(CPPFLAGS=['-DPAYMENT_SERVICE_ENABLED'])
+    env_bps.Append(CPPFLAGS=['-DPAYMENT_SERVICE_ENABLED'])
 
 
 if env['bb10_lgles_override'] == "yes":
 if env['bb10_lgles_override'] == "yes":
-	env_bps.Append(CPPFLAGS=['-DBB10_LGLES_OVERRIDE'])
+    env_bps.Append(CPPFLAGS=['-DBB10_LGLES_OVERRIDE'])
 
 
 
 
 prog = None
 prog = None

+ 56 - 56
platform/bb10/detect.py

@@ -5,85 +5,85 @@ import methods
 
 
 
 
 def is_active():
 def is_active():
-	return True
+    return True
 
 
 def get_name():
 def get_name():
-	return "BlackBerry 10"
+    return "BlackBerry 10"
 
 
 def can_build():
 def can_build():
 
 
-	import os
-	if (not os.environ.has_key("QNX_TARGET")):
-		return False
-	return True
+    import os
+    if (not os.environ.has_key("QNX_TARGET")):
+        return False
+    return True
 
 
 def get_opts():
 def get_opts():
 
 
-	return [
-		('QNX_HOST', 'path to qnx host', os.environ.get("QNX_HOST", 0)),
-		('QNX_TARGET', 'path to qnx target', os.environ.get("QNX_TARGET", 0)),
-		('QNX_CONFIGURATION', 'path to qnx configuration', os.environ.get("QNX_CONFIGURATION", 0)),
-		('qnx_target', 'Qnx target (armle or x86', 'armle'),
-		('bb10_payment_service', 'Enable Payment Service for BlackBerry10', 'yes'),
-		('bb10_lgles_override', 'Force legacy GLES (1.1) on iOS', 'no'),
-		('bb10_exceptions', 'Use exceptions when compiling on bb10', 'no'),
-	]
+    return [
+        ('QNX_HOST', 'path to qnx host', os.environ.get("QNX_HOST", 0)),
+        ('QNX_TARGET', 'path to qnx target', os.environ.get("QNX_TARGET", 0)),
+        ('QNX_CONFIGURATION', 'path to qnx configuration', os.environ.get("QNX_CONFIGURATION", 0)),
+        ('qnx_target', 'Qnx target (armle or x86', 'armle'),
+        ('bb10_payment_service', 'Enable Payment Service for BlackBerry10', 'yes'),
+        ('bb10_lgles_override', 'Force legacy GLES (1.1) on iOS', 'no'),
+        ('bb10_exceptions', 'Use exceptions when compiling on bb10', 'no'),
+    ]
 
 
 def get_flags():
 def get_flags():
 
 
-	return [
-		('tools', 'no'),
-		('builtin_zlib', 'yes'),
-		('module_theora_enabled', 'no'),
-	]
+    return [
+        ('tools', 'no'),
+        ('builtin_zlib', 'yes'),
+        ('module_theora_enabled', 'no'),
+    ]
 
 
 def configure(env):
 def configure(env):
 
 
-	if env['PLATFORM'] == 'win32':
-		env.Tool('mingw')
-		env['SPAWN'] = methods.win32_spawn
+    if env['PLATFORM'] == 'win32':
+        env.Tool('mingw')
+        env['SPAWN'] = methods.win32_spawn
 
 
-	env['qnx_target_ver'] = env['qnx_target']
-	if env['qnx_target'] == "armle":
-		env['qnx_prefix'] = 'ntoarmv7'
-		env['qnx_target_ver'] = 'armle-v7'
-	else:
-		env['qnx_prefix'] = 'ntox86'
+    env['qnx_target_ver'] = env['qnx_target']
+    if env['qnx_target'] == "armle":
+        env['qnx_prefix'] = 'ntoarmv7'
+        env['qnx_target_ver'] = 'armle-v7'
+    else:
+        env['qnx_prefix'] = 'ntox86'
 
 
-	env['OBJSUFFIX'] = ".qnx.${qnx_target}.o"
-	env['LIBSUFFIX'] = ".qnx.${qnx_target}.a"
-	env['PROGSUFFIX'] = ".qnx.${qnx_target}"
-	print("PROGSUFFIX: "+env['PROGSUFFIX']+" target: "+env['qnx_target'])
+    env['OBJSUFFIX'] = ".qnx.${qnx_target}.o"
+    env['LIBSUFFIX'] = ".qnx.${qnx_target}.a"
+    env['PROGSUFFIX'] = ".qnx.${qnx_target}"
+    print("PROGSUFFIX: "+env['PROGSUFFIX']+" target: "+env['qnx_target'])
 
 
-	env.PrependENVPath('PATH', env['QNX_CONFIGURATION'] + '/bin')
-	env.PrependENVPath('PATH', env['QNX_CONFIGURATION'] + '/usr/bin')
-	env['ENV']['QNX_HOST'] = env['QNX_HOST']
-	env['ENV']['QNX_TARGET'] = env['QNX_TARGET']
-	env['ENV']['QNX_CONFIGURATION'] = env['QNX_CONFIGURATION']
+    env.PrependENVPath('PATH', env['QNX_CONFIGURATION'] + '/bin')
+    env.PrependENVPath('PATH', env['QNX_CONFIGURATION'] + '/usr/bin')
+    env['ENV']['QNX_HOST'] = env['QNX_HOST']
+    env['ENV']['QNX_TARGET'] = env['QNX_TARGET']
+    env['ENV']['QNX_CONFIGURATION'] = env['QNX_CONFIGURATION']
 
 
-	env['CC'] = '$qnx_prefix-gcc'
-	env['CXX'] = '$qnx_prefix-g++'
-	env['AR'] = '$qnx_prefix-ar'
-	env['RANLIB'] = '$qnx_prefix-ranlib'
+    env['CC'] = '$qnx_prefix-gcc'
+    env['CXX'] = '$qnx_prefix-g++'
+    env['AR'] = '$qnx_prefix-ar'
+    env['RANLIB'] = '$qnx_prefix-ranlib'
 
 
-	env.Append(CPPPATH = ['#platform/bb10'])
-	env.Append(LIBPATH = ['#platform/bb10/lib/$qnx_target', '#platform/bb10/lib/$qnx_target_ver'])
-	env.Append(CCFLAGS = string.split('-DBB10_ENABLED -DUNIX_ENABLED -DGLES2_ENABLED -DGLES1_ENABLED -D_LITTLE_ENDIAN -DNO_THREADS -DNO_FCNTL'))
-	if env['bb10_exceptions']=="yes":
-		env.Append(CCFLAGS = ['-fexceptions'])
-	else:
-		env.Append(CCFLAGS = ['-fno-exceptions'])
+    env.Append(CPPPATH = ['#platform/bb10'])
+    env.Append(LIBPATH = ['#platform/bb10/lib/$qnx_target', '#platform/bb10/lib/$qnx_target_ver'])
+    env.Append(CCFLAGS = string.split('-DBB10_ENABLED -DUNIX_ENABLED -DGLES2_ENABLED -DGLES1_ENABLED -D_LITTLE_ENDIAN -DNO_THREADS -DNO_FCNTL'))
+    if env['bb10_exceptions']=="yes":
+        env.Append(CCFLAGS = ['-fexceptions'])
+    else:
+        env.Append(CCFLAGS = ['-fno-exceptions'])
 
 
-	#env.Append(LINKFLAGS = string.split()
+    #env.Append(LINKFLAGS = string.split()
 
 
-	if (env["target"]=="release"):
+    if (env["target"]=="release"):
 
 
-		env.Append(CCFLAGS=['-O3','-DRELEASE_BUILD'])
+        env.Append(CCFLAGS=['-O3','-DRELEASE_BUILD'])
 
 
-	elif (env["target"]=="debug"):
+    elif (env["target"]=="debug"):
 
 
-		env.Append(CCFLAGS=['-g', '-O0','-DDEBUG_ENABLED', '-D_DEBUG'])
-		env.Append(LINKFLAGS=['-g'])
+        env.Append(CCFLAGS=['-g', '-O0','-DDEBUG_ENABLED', '-D_DEBUG'])
+        env.Append(LINKFLAGS=['-g'])
 
 
-	env.Append(LIBS=['bps', 'pps', 'screen', 'socket', 'EGL', 'GLESv2', 'GLESv1_CM', 'm', 'asound'])
+    env.Append(LIBS=['bps', 'pps', 'screen', 'socket', 'EGL', 'GLESv2', 'GLESv1_CM', 'm', 'asound'])
 
 

+ 11 - 11
platform/haiku/SCsub

@@ -3,25 +3,25 @@
 Import('env')
 Import('env')
 
 
 common_haiku = [
 common_haiku = [
-	'os_haiku.cpp',
-	'context_gl_haiku.cpp',
-	'haiku_application.cpp',
-	'haiku_direct_window.cpp',
-	'haiku_gl_view.cpp',
-	'key_mapping_haiku.cpp',
-	'audio_driver_media_kit.cpp'
+    'os_haiku.cpp',
+    'context_gl_haiku.cpp',
+    'haiku_application.cpp',
+    'haiku_direct_window.cpp',
+    'haiku_gl_view.cpp',
+    'key_mapping_haiku.cpp',
+    'audio_driver_media_kit.cpp'
 ]
 ]
 
 
 target = env.Program(
 target = env.Program(
-	'#bin/godot',
-	['godot_haiku.cpp'] + common_haiku
+    '#bin/godot',
+    ['godot_haiku.cpp'] + common_haiku
 )
 )
 
 
 command = env.Command('#bin/godot.rsrc', '#platform/haiku/godot.rdef',
 command = env.Command('#bin/godot.rsrc', '#platform/haiku/godot.rdef',
-		['rc -o $TARGET $SOURCE'])
+                      ['rc -o $TARGET $SOURCE'])
 
 
 def addResourcesAction(target = None, source = None, env = None):
 def addResourcesAction(target = None, source = None, env = None):
-	return env.Execute('xres -o ' + File(target)[0].path + ' bin/godot.rsrc')
+    return env.Execute('xres -o ' + File(target)[0].path + ' bin/godot.rsrc')
 
 
 env.AddPostAction(target, addResourcesAction)
 env.AddPostAction(target, addResourcesAction)
 env.Depends(target, command)
 env.Depends(target, command)

+ 45 - 45
platform/haiku/detect.py

@@ -2,60 +2,60 @@ import os
 import sys
 import sys
 
 
 def is_active():
 def is_active():
-	return True
+    return True
 
 
 def get_name():
 def get_name():
-	return "Haiku"
+    return "Haiku"
 
 
 def can_build():
 def can_build():
-	if (os.name != "posix"):
-		return False
+    if (os.name != "posix"):
+        return False
 
 
-	if (sys.platform == "darwin"):
-		return False
+    if (sys.platform == "darwin"):
+        return False
 
 
-	return True
+    return True
 
 
 def get_opts():
 def get_opts():
-	return [
-		('debug_release', 'Add debug symbols to release version','no')
-	]
+    return [
+        ('debug_release', 'Add debug symbols to release version','no')
+    ]
 
 
 def get_flags():
 def get_flags():
-	return [
-	]
+    return [
+    ]
 
 
 def configure(env):
 def configure(env):
-	is64 = sys.maxsize > 2**32
-
-	if (env["bits"]=="default"):
-		if (is64):
-			env["bits"]="64"
-		else:
-			env["bits"]="32"
-
-	env.Append(CPPPATH = ['#platform/haiku'])
-
-	env["CC"] = "gcc-x86"
-	env["CXX"] = "g++-x86"
-
-	if (env["target"]=="release"):
-		if (env["debug_release"]=="yes"):
-			env.Append(CCFLAGS=['-g2'])
-		else:
-			env.Append(CCFLAGS=['-O3','-ffast-math'])
-	elif (env["target"]=="release_debug"):
-		env.Append(CCFLAGS=['-O2','-ffast-math','-DDEBUG_ENABLED'])
-	elif (env["target"]=="debug"):
-		env.Append(CCFLAGS=['-g2', '-Wall','-DDEBUG_ENABLED','-DDEBUG_MEMORY_ENABLED'])
-
-	#env.Append(CCFLAGS=['-DFREETYPE_ENABLED'])
-	env.Append(CPPFLAGS = ['-DPTHREAD_NO_RENAME']) # TODO: enable when we have pthread_setname_np
-	env.Append(CPPFLAGS = ['-DOPENGL_ENABLED', '-DMEDIA_KIT_ENABLED'])
-	env.Append(CPPFLAGS = ['-DUNIX_ENABLED', '-DGLES2_ENABLED', '-DGLES_OVER_GL'])
-	env.Append(LIBS = ['be', 'game', 'media', 'network', 'bnetapi', 'z', 'GL'])
-
-	import methods
-	env.Append(BUILDERS = {'GLSL120' : env.Builder(action = methods.build_legacygl_headers, suffix = 'glsl.h',src_suffix = '.glsl')})
-	env.Append(BUILDERS = {'GLSL' : env.Builder(action = methods.build_glsl_headers, suffix = 'glsl.h',src_suffix = '.glsl')})
-	env.Append(BUILDERS = {'GLSL120GLES' : env.Builder(action = methods.build_gles2_headers, suffix = 'glsl.h',src_suffix = '.glsl')})
+    is64 = sys.maxsize > 2**32
+
+    if (env["bits"]=="default"):
+        if (is64):
+            env["bits"]="64"
+        else:
+            env["bits"]="32"
+
+    env.Append(CPPPATH = ['#platform/haiku'])
+
+    env["CC"] = "gcc-x86"
+    env["CXX"] = "g++-x86"
+
+    if (env["target"]=="release"):
+        if (env["debug_release"]=="yes"):
+            env.Append(CCFLAGS=['-g2'])
+        else:
+            env.Append(CCFLAGS=['-O3','-ffast-math'])
+    elif (env["target"]=="release_debug"):
+        env.Append(CCFLAGS=['-O2','-ffast-math','-DDEBUG_ENABLED'])
+    elif (env["target"]=="debug"):
+        env.Append(CCFLAGS=['-g2', '-Wall','-DDEBUG_ENABLED','-DDEBUG_MEMORY_ENABLED'])
+
+    #env.Append(CCFLAGS=['-DFREETYPE_ENABLED'])
+    env.Append(CPPFLAGS = ['-DPTHREAD_NO_RENAME']) # TODO: enable when we have pthread_setname_np
+    env.Append(CPPFLAGS = ['-DOPENGL_ENABLED', '-DMEDIA_KIT_ENABLED'])
+    env.Append(CPPFLAGS = ['-DUNIX_ENABLED', '-DGLES2_ENABLED', '-DGLES_OVER_GL'])
+    env.Append(LIBS = ['be', 'game', 'media', 'network', 'bnetapi', 'z', 'GL'])
+
+    import methods
+    env.Append(BUILDERS = {'GLSL120' : env.Builder(action = methods.build_legacygl_headers, suffix = 'glsl.h',src_suffix = '.glsl')})
+    env.Append(BUILDERS = {'GLSL' : env.Builder(action = methods.build_glsl_headers, suffix = 'glsl.h',src_suffix = '.glsl')})
+    env.Append(BUILDERS = {'GLSL120GLES' : env.Builder(action = methods.build_gles2_headers, suffix = 'glsl.h',src_suffix = '.glsl')})

+ 14 - 14
platform/iphone/SCsub

@@ -4,19 +4,19 @@ Import('env')
 
 
 iphone_lib = [
 iphone_lib = [
 
 
-	'os_iphone.cpp',
-	#'rasterizer_iphone.cpp',
-	'audio_driver_iphone.cpp',
-	'sem_iphone.cpp',
-	'gl_view.mm',
-	'main.m',
-	'app_delegate.mm',
-	'view_controller.mm',
-	'game_center.mm',
-	'in_app_store.mm',
-	'icloud.mm',
-	#'Appirater.m',
-	'ios.mm',
+    'os_iphone.cpp',
+    #'rasterizer_iphone.cpp',
+    'audio_driver_iphone.cpp',
+    'sem_iphone.cpp',
+    'gl_view.mm',
+    'main.m',
+    'app_delegate.mm',
+    'view_controller.mm',
+    'game_center.mm',
+    'in_app_store.mm',
+    'icloud.mm',
+    #'Appirater.m',
+    'ios.mm',
 ]
 ]
 
 
 #env.Depends('#core/math/vector3.h', 'vector3_psp.h')
 #env.Depends('#core/math/vector3.h', 'vector3_psp.h')
@@ -27,7 +27,7 @@ env_ios = env.Clone();
 
 
 
 
 if env['ios_gles22_override'] == "yes":
 if env['ios_gles22_override'] == "yes":
-	env_ios.Append(CPPFLAGS=['-DGLES2_OVERRIDE'])
+    env_ios.Append(CPPFLAGS=['-DGLES2_OVERRIDE'])
 
 
 
 
 #if env['ios_appirater'] == "yes":
 #if env['ios_appirater'] == "yes":

+ 167 - 167
platform/iphone/detect.py

@@ -3,187 +3,187 @@ import sys
 
 
 
 
 def is_active():
 def is_active():
-	return True
+    return True
 
 
 def get_name():
 def get_name():
-	return "iOS"
+    return "iOS"
 
 
 def can_build():
 def can_build():
 
 
-	import sys
-	import os
-	if sys.platform == 'darwin' or os.environ.has_key("OSXCROSS_IOS"):
-		return True
+    import sys
+    import os
+    if sys.platform == 'darwin' or os.environ.has_key("OSXCROSS_IOS"):
+        return True
 
 
-	return False
+    return False
 
 
 def get_opts():
 def get_opts():
 
 
-	return [
-		('IPHONEPLATFORM', 'name of the iphone platform', 'iPhoneOS'),
-		('IPHONEPATH', 'the path to iphone toolchain', '/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain'),
-		('IPHONESDK', 'path to the iphone SDK', '/Applications/Xcode.app/Contents/Developer/Platforms/${IPHONEPLATFORM}.platform/Developer/SDKs/${IPHONEPLATFORM}.sdk/'),
-		('game_center', 'Support for game center', 'yes'),
-		('store_kit', 'Support for in-app store', 'yes'),
-		('icloud', 'Support for iCloud', 'yes'),
-		('ios_gles22_override', 'Force GLES2.0 on iOS', 'yes'),
-		('ios_appirater', 'Enable Appirater', 'no'),
-		('ios_exceptions', 'Use exceptions when compiling on playbook', 'yes'),
-		('ios_triple', 'Triple for ios toolchain', ''),
-		('ios_sim', 'Build simulator binary', 'no'),
-	]
+    return [
+        ('IPHONEPLATFORM', 'name of the iphone platform', 'iPhoneOS'),
+        ('IPHONEPATH', 'the path to iphone toolchain', '/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain'),
+        ('IPHONESDK', 'path to the iphone SDK', '/Applications/Xcode.app/Contents/Developer/Platforms/${IPHONEPLATFORM}.platform/Developer/SDKs/${IPHONEPLATFORM}.sdk/'),
+        ('game_center', 'Support for game center', 'yes'),
+        ('store_kit', 'Support for in-app store', 'yes'),
+        ('icloud', 'Support for iCloud', 'yes'),
+        ('ios_gles22_override', 'Force GLES2.0 on iOS', 'yes'),
+        ('ios_appirater', 'Enable Appirater', 'no'),
+        ('ios_exceptions', 'Use exceptions when compiling on playbook', 'yes'),
+        ('ios_triple', 'Triple for ios toolchain', ''),
+        ('ios_sim', 'Build simulator binary', 'no'),
+    ]
 
 
 def get_flags():
 def get_flags():
 
 
-	return [
-		('tools', 'no'),
-		('webp', 'yes'),
-		('builtin_zlib', 'yes'),
-		('openssl','builtin'), #use builtin openssl
-	]
+    return [
+        ('tools', 'no'),
+        ('webp', 'yes'),
+        ('builtin_zlib', 'yes'),
+        ('openssl','builtin'), #use builtin openssl
+    ]
 
 
 
 
 
 
 def configure(env):
 def configure(env):
 
 
-	env.Append(CPPPATH=['#platform/iphone'])
-
-	env['ENV']['PATH'] = env['IPHONEPATH']+"/Developer/usr/bin/:"+env['ENV']['PATH']
-
-	env['CC'] = '$IPHONEPATH/usr/bin/${ios_triple}clang'
-	env['CXX'] = '$IPHONEPATH/usr/bin/${ios_triple}clang++'
-	env['AR'] = '$IPHONEPATH/usr/bin/${ios_triple}ar'
-	env['RANLIB'] = '$IPHONEPATH/usr/bin/${ios_triple}ranlib'
-
-	import string
-	if (env["ios_sim"]=="yes" or env["arch"] == "x86"): # i386, simulator
-		env["arch"]="x86"
-		env["bits"]="32"
-		env['CCFLAGS'] = string.split('-arch i386 -fobjc-abi-version=2 -fobjc-legacy-dispatch -fmessage-length=0 -fpascal-strings -fasm-blocks  -Wall -D__IPHONE_OS_VERSION_MIN_REQUIRED=40100 -isysroot $IPHONESDK -mios-simulator-version-min=4.3 -DCUSTOM_MATRIX_TRANSFORM_H=\\\"build/iphone/matrix4_iphone.h\\\" -DCUSTOM_VECTOR3_TRANSFORM_H=\\\"build/iphone/vector3_iphone.h\\\"')
-	elif (env["arch"]=="arm64"): # arm64
-		env["bits"] = "64"
-		env['CCFLAGS'] = string.split('-fno-objc-arc -arch arm64 -fmessage-length=0 -fno-strict-aliasing -fdiagnostics-print-source-range-info -fdiagnostics-show-category=id -fdiagnostics-parseable-fixits -Wno-trigraphs -fpascal-strings -Wmissing-prototypes -Wreturn-type -Wparentheses -Wswitch -Wno-unused-parameter -Wunused-variable -Wunused-value -Wno-shorten-64-to-32 -fvisibility=hidden -Wno-sign-conversion -MMD -MT dependencies -miphoneos-version-min=5.1.1 -isysroot $IPHONESDK')
-		env.Append(CPPFLAGS=['-DNEED_LONG_INT'])
-		env.Append(CPPFLAGS=['-DLIBYUV_DISABLE_NEON'])
-	else: # armv7
-		env["arch"] = "arm"
-		env["bits"] = "32"
-		env['CCFLAGS'] = string.split('-fno-objc-arc -arch armv7 -fmessage-length=0 -fno-strict-aliasing -fdiagnostics-print-source-range-info -fdiagnostics-show-category=id -fdiagnostics-parseable-fixits -Wno-trigraphs -fpascal-strings -Wmissing-prototypes -Wreturn-type -Wparentheses -Wswitch -Wno-unused-parameter -Wunused-variable -Wunused-value -Wno-shorten-64-to-32 -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.0.sdk -fvisibility=hidden -Wno-sign-conversion -mthumb "-DIBOutlet=__attribute__((iboutlet))" "-DIBOutletCollection(ClassName)=__attribute__((iboutletcollection(ClassName)))" "-DIBAction=void)__attribute__((ibaction)" -miphoneos-version-min=5.1.1 -MMD -MT dependencies -isysroot $IPHONESDK')
-
-	if (env["arch"]=="x86"):
-		env['IPHONEPLATFORM'] = 'iPhoneSimulator'
-		env.Append(LINKFLAGS=['-arch', 'i386', '-mios-simulator-version-min=4.3',
-							'-isysroot', '$IPHONESDK',
-							#'-mmacosx-version-min=10.6',
-							'-Xlinker',
-							'-objc_abi_version',
-							'-Xlinker', '2',
-							'-framework', 'AudioToolbox',
-							'-framework', 'AVFoundation',
-							'-framework', 'CoreAudio',
-							'-framework', 'CoreGraphics',
-							'-framework', 'CoreMedia',
-							'-framework', 'Foundation',
-							'-framework', 'Security',
-							'-framework', 'UIKit',
-							'-framework', 'MediaPlayer',
-							'-framework', 'OpenGLES',
-							'-framework', 'QuartzCore',
-							'-framework', 'SystemConfiguration',
-							'-F$IPHONESDK',
-							])
-	elif (env["arch"]=="arm64"):
-		env.Append(LINKFLAGS=['-arch', 'arm64', '-Wl,-dead_strip', '-miphoneos-version-min=5.1.1',
-							'-isysroot', '$IPHONESDK',
-							#'-stdlib=libc++',
-							'-framework', 'Foundation',
-							'-framework', 'UIKit',
-							'-framework', 'CoreGraphics',
-							'-framework', 'OpenGLES',
-							'-framework', 'QuartzCore',
-							'-framework', 'CoreAudio',
-							'-framework', 'AudioToolbox',
-							'-framework', 'SystemConfiguration',
-							'-framework', 'Security',
-							#'-framework', 'AdSupport',
-							'-framework', 'MediaPlayer',
-							'-framework', 'AVFoundation',
-							'-framework', 'CoreMedia',
-							])
-	else:
-		env.Append(LINKFLAGS=['-arch', 'armv7', '-Wl,-dead_strip', '-miphoneos-version-min=5.1.1',
-							'-isysroot', '$IPHONESDK',
-							'-framework', 'Foundation',
-							'-framework', 'UIKit',
-							'-framework', 'CoreGraphics',
-							'-framework', 'OpenGLES',
-							'-framework', 'QuartzCore',
-							'-framework', 'CoreAudio',
-							'-framework', 'AudioToolbox',
-							'-framework', 'SystemConfiguration',
-							'-framework', 'Security',
-							#'-framework', 'AdSupport',
-							'-framework', 'MediaPlayer',
-							'-framework', 'AVFoundation',
-							'-framework', 'CoreMedia',
-							])
-
-	if env['game_center'] == 'yes':
-		env.Append(CPPFLAGS=['-fblocks', '-DGAME_CENTER_ENABLED'])
-		env.Append(LINKFLAGS=['-framework', 'GameKit'])
-
-	if env['store_kit'] == 'yes':
-		env.Append(CPPFLAGS=['-DSTOREKIT_ENABLED'])
-		env.Append(LINKFLAGS=['-framework', 'StoreKit'])
-
-	if env['icloud'] == 'yes':
-		env.Append(CPPFLAGS=['-DICLOUD_ENABLED'])
-
-	env.Append(CPPPATH = ['$IPHONESDK/usr/include', '$IPHONESDK/System/Library/Frameworks/OpenGLES.framework/Headers', '$IPHONESDK/System/Library/Frameworks/AudioUnit.framework/Headers'])
-
-	if (env["target"]=="release"):
-
-		env.Append(CCFLAGS=['-O3', '-DNS_BLOCK_ASSERTIONS=1','-Wall', '-gdwarf-2']) # removed -ffast-math
-		env.Append(LINKFLAGS=['-O3']) #
-
-	elif env["target"] == "release_debug":
-		env.Append(CCFLAGS=['-Os', '-DNS_BLOCK_ASSERTIONS=1','-Wall','-DDEBUG_ENABLED'])
-		env.Append(LINKFLAGS=['-Os'])
-		env.Append(CPPFLAGS=['-DDEBUG_MEMORY_ENABLED'])
-
-	elif (env["target"]=="debug"):
-
-		env.Append(CCFLAGS=['-D_DEBUG', '-DDEBUG=1', '-gdwarf-2', '-Wall', '-O0', '-DDEBUG_ENABLED'])
-		env.Append(CPPFLAGS=['-DDEBUG_MEMORY_ENABLED'])
-
-	elif (env["target"]=="profile"):
-
-		env.Append(CCFLAGS=['-g','-pg', '-Os'])
-		env.Append(LINKFLAGS=['-pg'])
-
-	if (env["ios_sim"]=="yes"): #TODO: Check if needed?
-		env['ENV']['MACOSX_DEPLOYMENT_TARGET'] = '10.6'
-	env['ENV']['CODESIGN_ALLOCATE'] = '/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/codesign_allocate'
-	env.Append(CPPFLAGS=['-DIPHONE_ENABLED', '-DUNIX_ENABLED', '-DGLES2_ENABLED', '-DMPC_FIXED_POINT'])
-
-	# TODO: Move that to opus module's config
-	if("module_opus_enabled" in env and env["module_opus_enabled"] != "no"):
-		env.opus_fixed_point="yes"
-		if env["arch"]=="x86":
-			pass
-		elif(env["arch"]=="arm64"):
-			env.Append(CFLAGS=["-DOPUS_ARM64_OPT"])
-		else:
-			env.Append(CFLAGS=["-DOPUS_ARM_OPT"])
-
-	if env['ios_exceptions'] == 'yes':
-		env.Append(CPPFLAGS=['-fexceptions'])
-	else:
-		env.Append(CPPFLAGS=['-fno-exceptions'])
-	#env['neon_enabled']=True
-	env['S_compiler'] = '$IPHONEPATH/Developer/usr/bin/gcc'
-
-	import methods
-	env.Append( BUILDERS = { 'GLSL120' : env.Builder(action = methods.build_legacygl_headers, suffix = 'glsl.h',src_suffix = '.glsl') } )
-	env.Append( BUILDERS = { 'GLSL' : env.Builder(action = methods.build_glsl_headers, suffix = 'glsl.h',src_suffix = '.glsl') } )
-	env.Append( BUILDERS = { 'GLSL120GLES' : env.Builder(action = methods.build_gles2_headers, suffix = 'glsl.h',src_suffix = '.glsl') } )
+    env.Append(CPPPATH=['#platform/iphone'])
+
+    env['ENV']['PATH'] = env['IPHONEPATH']+"/Developer/usr/bin/:"+env['ENV']['PATH']
+
+    env['CC'] = '$IPHONEPATH/usr/bin/${ios_triple}clang'
+    env['CXX'] = '$IPHONEPATH/usr/bin/${ios_triple}clang++'
+    env['AR'] = '$IPHONEPATH/usr/bin/${ios_triple}ar'
+    env['RANLIB'] = '$IPHONEPATH/usr/bin/${ios_triple}ranlib'
+
+    import string
+    if (env["ios_sim"]=="yes" or env["arch"] == "x86"): # i386, simulator
+        env["arch"]="x86"
+        env["bits"]="32"
+        env['CCFLAGS'] = string.split('-arch i386 -fobjc-abi-version=2 -fobjc-legacy-dispatch -fmessage-length=0 -fpascal-strings -fasm-blocks  -Wall -D__IPHONE_OS_VERSION_MIN_REQUIRED=40100 -isysroot $IPHONESDK -mios-simulator-version-min=4.3 -DCUSTOM_MATRIX_TRANSFORM_H=\\\"build/iphone/matrix4_iphone.h\\\" -DCUSTOM_VECTOR3_TRANSFORM_H=\\\"build/iphone/vector3_iphone.h\\\"')
+    elif (env["arch"]=="arm64"): # arm64
+        env["bits"] = "64"
+        env['CCFLAGS'] = string.split('-fno-objc-arc -arch arm64 -fmessage-length=0 -fno-strict-aliasing -fdiagnostics-print-source-range-info -fdiagnostics-show-category=id -fdiagnostics-parseable-fixits -Wno-trigraphs -fpascal-strings -Wmissing-prototypes -Wreturn-type -Wparentheses -Wswitch -Wno-unused-parameter -Wunused-variable -Wunused-value -Wno-shorten-64-to-32 -fvisibility=hidden -Wno-sign-conversion -MMD -MT dependencies -miphoneos-version-min=5.1.1 -isysroot $IPHONESDK')
+        env.Append(CPPFLAGS=['-DNEED_LONG_INT'])
+        env.Append(CPPFLAGS=['-DLIBYUV_DISABLE_NEON'])
+    else: # armv7
+        env["arch"] = "arm"
+        env["bits"] = "32"
+        env['CCFLAGS'] = string.split('-fno-objc-arc -arch armv7 -fmessage-length=0 -fno-strict-aliasing -fdiagnostics-print-source-range-info -fdiagnostics-show-category=id -fdiagnostics-parseable-fixits -Wno-trigraphs -fpascal-strings -Wmissing-prototypes -Wreturn-type -Wparentheses -Wswitch -Wno-unused-parameter -Wunused-variable -Wunused-value -Wno-shorten-64-to-32 -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.0.sdk -fvisibility=hidden -Wno-sign-conversion -mthumb "-DIBOutlet=__attribute__((iboutlet))" "-DIBOutletCollection(ClassName)=__attribute__((iboutletcollection(ClassName)))" "-DIBAction=void)__attribute__((ibaction)" -miphoneos-version-min=5.1.1 -MMD -MT dependencies -isysroot $IPHONESDK')
+
+    if (env["arch"]=="x86"):
+        env['IPHONEPLATFORM'] = 'iPhoneSimulator'
+        env.Append(LINKFLAGS=['-arch', 'i386', '-mios-simulator-version-min=4.3',
+                              '-isysroot', '$IPHONESDK',
+                              #'-mmacosx-version-min=10.6',
+                              '-Xlinker',
+                              '-objc_abi_version',
+                              '-Xlinker', '2',
+                              '-framework', 'AudioToolbox',
+                              '-framework', 'AVFoundation',
+                              '-framework', 'CoreAudio',
+                              '-framework', 'CoreGraphics',
+                              '-framework', 'CoreMedia',
+                              '-framework', 'Foundation',
+                              '-framework', 'Security',
+                              '-framework', 'UIKit',
+                              '-framework', 'MediaPlayer',
+                              '-framework', 'OpenGLES',
+                              '-framework', 'QuartzCore',
+                              '-framework', 'SystemConfiguration',
+                              '-F$IPHONESDK',
+                              ])
+    elif (env["arch"]=="arm64"):
+        env.Append(LINKFLAGS=['-arch', 'arm64', '-Wl,-dead_strip', '-miphoneos-version-min=5.1.1',
+                                                '-isysroot', '$IPHONESDK',
+                                                #'-stdlib=libc++',
+                                                '-framework', 'Foundation',
+                                                '-framework', 'UIKit',
+                                                '-framework', 'CoreGraphics',
+                                                '-framework', 'OpenGLES',
+                                                '-framework', 'QuartzCore',
+                                                '-framework', 'CoreAudio',
+                                                '-framework', 'AudioToolbox',
+                                                '-framework', 'SystemConfiguration',
+                                                '-framework', 'Security',
+                                                #'-framework', 'AdSupport',
+                                                '-framework', 'MediaPlayer',
+                                                '-framework', 'AVFoundation',
+                                                '-framework', 'CoreMedia',
+                              ])
+    else:
+        env.Append(LINKFLAGS=['-arch', 'armv7', '-Wl,-dead_strip', '-miphoneos-version-min=5.1.1',
+                                                '-isysroot', '$IPHONESDK',
+                                                '-framework', 'Foundation',
+                                                '-framework', 'UIKit',
+                                                '-framework', 'CoreGraphics',
+                                                '-framework', 'OpenGLES',
+                                                '-framework', 'QuartzCore',
+                                                '-framework', 'CoreAudio',
+                                                '-framework', 'AudioToolbox',
+                                                '-framework', 'SystemConfiguration',
+                                                '-framework', 'Security',
+                                                #'-framework', 'AdSupport',
+                                                '-framework', 'MediaPlayer',
+                                                '-framework', 'AVFoundation',
+                                                '-framework', 'CoreMedia',
+                              ])
+
+    if env['game_center'] == 'yes':
+        env.Append(CPPFLAGS=['-fblocks', '-DGAME_CENTER_ENABLED'])
+        env.Append(LINKFLAGS=['-framework', 'GameKit'])
+
+    if env['store_kit'] == 'yes':
+        env.Append(CPPFLAGS=['-DSTOREKIT_ENABLED'])
+        env.Append(LINKFLAGS=['-framework', 'StoreKit'])
+
+    if env['icloud'] == 'yes':
+        env.Append(CPPFLAGS=['-DICLOUD_ENABLED'])
+
+    env.Append(CPPPATH = ['$IPHONESDK/usr/include', '$IPHONESDK/System/Library/Frameworks/OpenGLES.framework/Headers', '$IPHONESDK/System/Library/Frameworks/AudioUnit.framework/Headers'])
+
+    if (env["target"]=="release"):
+
+        env.Append(CCFLAGS=['-O3', '-DNS_BLOCK_ASSERTIONS=1','-Wall', '-gdwarf-2']) # removed -ffast-math
+        env.Append(LINKFLAGS=['-O3']) #
+
+    elif env["target"] == "release_debug":
+        env.Append(CCFLAGS=['-Os', '-DNS_BLOCK_ASSERTIONS=1','-Wall','-DDEBUG_ENABLED'])
+        env.Append(LINKFLAGS=['-Os'])
+        env.Append(CPPFLAGS=['-DDEBUG_MEMORY_ENABLED'])
+
+    elif (env["target"]=="debug"):
+
+        env.Append(CCFLAGS=['-D_DEBUG', '-DDEBUG=1', '-gdwarf-2', '-Wall', '-O0', '-DDEBUG_ENABLED'])
+        env.Append(CPPFLAGS=['-DDEBUG_MEMORY_ENABLED'])
+
+    elif (env["target"]=="profile"):
+
+        env.Append(CCFLAGS=['-g','-pg', '-Os'])
+        env.Append(LINKFLAGS=['-pg'])
+
+    if (env["ios_sim"]=="yes"): #TODO: Check if needed?
+        env['ENV']['MACOSX_DEPLOYMENT_TARGET'] = '10.6'
+    env['ENV']['CODESIGN_ALLOCATE'] = '/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/codesign_allocate'
+    env.Append(CPPFLAGS=['-DIPHONE_ENABLED', '-DUNIX_ENABLED', '-DGLES2_ENABLED', '-DMPC_FIXED_POINT'])
+
+    # TODO: Move that to opus module's config
+    if("module_opus_enabled" in env and env["module_opus_enabled"] != "no"):
+        env.opus_fixed_point="yes"
+        if env["arch"]=="x86":
+            pass
+        elif(env["arch"]=="arm64"):
+            env.Append(CFLAGS=["-DOPUS_ARM64_OPT"])
+        else:
+            env.Append(CFLAGS=["-DOPUS_ARM_OPT"])
+
+    if env['ios_exceptions'] == 'yes':
+        env.Append(CPPFLAGS=['-fexceptions'])
+    else:
+        env.Append(CPPFLAGS=['-fno-exceptions'])
+    #env['neon_enabled']=True
+    env['S_compiler'] = '$IPHONEPATH/Developer/usr/bin/gcc'
+
+    import methods
+    env.Append( BUILDERS = { 'GLSL120' : env.Builder(action = methods.build_legacygl_headers, suffix = 'glsl.h',src_suffix = '.glsl') } )
+    env.Append( BUILDERS = { 'GLSL' : env.Builder(action = methods.build_glsl_headers, suffix = 'glsl.h',src_suffix = '.glsl') } )
+    env.Append( BUILDERS = { 'GLSL120GLES' : env.Builder(action = methods.build_gles2_headers, suffix = 'glsl.h',src_suffix = '.glsl') } )

+ 6 - 6
platform/javascript/SCsub

@@ -3,21 +3,21 @@
 Import('env')
 Import('env')
 
 
 javascript_files = [
 javascript_files = [
-	"os_javascript.cpp",
-	"audio_driver_javascript.cpp",
-	"javascript_main.cpp",
-	"audio_server_javascript.cpp"
+    "os_javascript.cpp",
+    "audio_driver_javascript.cpp",
+    "javascript_main.cpp",
+    "audio_server_javascript.cpp"
 ]
 ]
 
 
 #obj = env.SharedObject('godot_javascript.cpp')
 #obj = env.SharedObject('godot_javascript.cpp')
 
 
 env_javascript = env.Clone()
 env_javascript = env.Clone()
 if env['target'] == "profile":
 if env['target'] == "profile":
-	env_javascript.Append(CPPFLAGS=['-DPROFILER_ENABLED'])
+    env_javascript.Append(CPPFLAGS=['-DPROFILER_ENABLED'])
 
 
 javascript_objects=[]
 javascript_objects=[]
 for x in javascript_files:
 for x in javascript_files:
-	javascript_objects.append( env_javascript.Object( x ) )
+    javascript_objects.append( env_javascript.Object( x ) )
 
 
 env.Append(LINKFLAGS=["-s","EXPORTED_FUNCTIONS=\"['_main','_audio_server_mix_function','_main_after_fs_sync']\""])
 env.Append(LINKFLAGS=["-s","EXPORTED_FUNCTIONS=\"['_main','_audio_server_mix_function','_main_after_fs_sync']\""])
 
 

+ 66 - 66
platform/javascript/detect.py

@@ -3,100 +3,100 @@ 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
-	if (not os.environ.has_key("EMSCRIPTEN_ROOT")):
-		return False
-	return True
+    import os
+    if (not os.environ.has_key("EMSCRIPTEN_ROOT")):
+        return False
+    return True
 
 
 def get_opts():
 def get_opts():
 
 
-	return [
-		['compress','Compress JS Executable','no']
-	]
+    return [
+        ['compress','Compress JS Executable','no']
+    ]
 
 
 def get_flags():
 def get_flags():
 
 
-	return [
-		('tools', 'no'),
-		('builtin_zlib', 'yes'),
-		('module_speex_enabled', 'no'),
-		('module_etc1_enabled', 'no'),
-		('module_mpc_enabled', 'no'),
-		('module_theora_enabled', 'no'),
-	]
+    return [
+        ('tools', 'no'),
+        ('builtin_zlib', 'yes'),
+        ('module_speex_enabled', 'no'),
+        ('module_etc1_enabled', 'no'),
+        ('module_mpc_enabled', 'no'),
+        ('module_theora_enabled', 'no'),
+    ]
 
 
 
 
 
 
 def configure(env):
 def configure(env):
-	env['ENV'] = os.environ;
-	env.use_windows_spawn_fix('javascript')
+    env['ENV'] = os.environ;
+    env.use_windows_spawn_fix('javascript')
 
 
-	env.Append(CPPPATH=['#platform/javascript'])
+    env.Append(CPPPATH=['#platform/javascript'])
 
 
-	em_path=os.environ["EMSCRIPTEN_ROOT"]
+    em_path=os.environ["EMSCRIPTEN_ROOT"]
 
 
-	env['ENV']['PATH'] = em_path+":"+env['ENV']['PATH']
+    env['ENV']['PATH'] = em_path+":"+env['ENV']['PATH']
 
 
-	env['CC'] = em_path+'/emcc'
-	env['CXX'] = em_path+'/emcc'
-	#env['AR'] = em_path+"/emar"
-	env['AR'] = em_path+"/emcc"
-	env['ARFLAGS'] = "-o"
+    env['CC'] = em_path+'/emcc'
+    env['CXX'] = em_path+'/emcc'
+    #env['AR'] = em_path+"/emar"
+    env['AR'] = em_path+"/emcc"
+    env['ARFLAGS'] = "-o"
 
 
 #	env['RANLIB'] = em_path+"/emranlib"
 #	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['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.Append(LIBS=['c','m','stdc++','log','GLESv1_CM','GLESv2'])
 #	env.Append(LIBS=['c','m','stdc++','log','GLESv1_CM','GLESv2'])
 
 
 #	env["LINKFLAGS"]= string.split(" -g --sysroot="+ld_sysroot+" -Wl,--no-undefined -Wl,-z,noexecstack ")
 #	env["LINKFLAGS"]= string.split(" -g --sysroot="+ld_sysroot+" -Wl,--no-undefined -Wl,-z,noexecstack ")
 
 
-	if (env["target"]=="release"):
-		env.Append(CCFLAGS=['-O2'])
-	elif (env["target"]=="release_debug"):
-		env.Append(CCFLAGS=['-O2','-DDEBUG_ENABLED'])
-	elif (env["target"]=="debug"):
-		env.Append(CCFLAGS=['-D_DEBUG', '-Wall', '-O2', '-DDEBUG_ENABLED'])
-		#env.Append(CCFLAGS=['-D_DEBUG', '-Wall', '-g4', '-DDEBUG_ENABLED'])
-		env.Append(CPPFLAGS=['-DDEBUG_MEMORY_ALLOC'])
-
-	# TODO: Move that to opus module's config
-	if("module_opus_enabled" in env and env["module_opus_enabled"] != "no"):
-		env.opus_fixed_point = "yes"
-
-	env.Append(CPPFLAGS=["-fno-exceptions",'-DNO_SAFE_CAST','-fno-rtti'])
-	env.Append(CPPFLAGS=['-DJAVASCRIPT_ENABLED', '-DUNIX_ENABLED', '-DPTHREAD_NO_RENAME', '-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'])
+    if (env["target"]=="release"):
+        env.Append(CCFLAGS=['-O2'])
+    elif (env["target"]=="release_debug"):
+        env.Append(CCFLAGS=['-O2','-DDEBUG_ENABLED'])
+    elif (env["target"]=="debug"):
+        env.Append(CCFLAGS=['-D_DEBUG', '-Wall', '-O2', '-DDEBUG_ENABLED'])
+        #env.Append(CCFLAGS=['-D_DEBUG', '-Wall', '-g4', '-DDEBUG_ENABLED'])
+        env.Append(CPPFLAGS=['-DDEBUG_MEMORY_ALLOC'])
+
+    # TODO: Move that to opus module's config
+    if("module_opus_enabled" in env and env["module_opus_enabled"] != "no"):
+        env.opus_fixed_point = "yes"
+
+    env.Append(CPPFLAGS=["-fno-exceptions",'-DNO_SAFE_CAST','-fno-rtti'])
+    env.Append(CPPFLAGS=['-DJAVASCRIPT_ENABLED', '-DUNIX_ENABLED', '-DPTHREAD_NO_RENAME', '-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'])
 #	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])
+    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'])
+    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']
+    #print "CCCOM is:", env.subst('$CCCOM')
+    #print "P: ", env['p'], " Platofrm: ", env['platform']
 
 
-	import methods
+    import methods
 
 
-	env.Append( BUILDERS = { 'GLSL120' : env.Builder(action = methods.build_legacygl_headers, suffix = 'glsl.h',src_suffix = '.glsl') } )
-	env.Append( BUILDERS = { 'GLSL' : env.Builder(action = methods.build_glsl_headers, suffix = 'glsl.h',src_suffix = '.glsl') } )
-	env.Append( BUILDERS = { 'GLSL120GLES' : env.Builder(action = methods.build_gles2_headers, suffix = 'glsl.h',src_suffix = '.glsl') } )
-	#env.Append( BUILDERS = { 'HLSL9' : env.Builder(action = methods.build_hlsl_dx9_headers, suffix = 'hlsl.h',src_suffix = '.hlsl') } )
+    env.Append( BUILDERS = { 'GLSL120' : env.Builder(action = methods.build_legacygl_headers, suffix = 'glsl.h',src_suffix = '.glsl') } )
+    env.Append( BUILDERS = { 'GLSL' : env.Builder(action = methods.build_glsl_headers, suffix = 'glsl.h',src_suffix = '.glsl') } )
+    env.Append( BUILDERS = { 'GLSL120GLES' : env.Builder(action = methods.build_gles2_headers, suffix = 'glsl.h',src_suffix = '.glsl') } )
+    #env.Append( BUILDERS = { 'HLSL9' : env.Builder(action = methods.build_hlsl_dx9_headers, suffix = 'hlsl.h',src_suffix = '.hlsl') } )

+ 8 - 8
platform/osx/SCsub

@@ -3,13 +3,13 @@
 Import('env')
 Import('env')
 
 
 files = [
 files = [
-	'os_osx.mm',
-	'godot_main_osx.mm',
-	'audio_driver_osx.cpp',
-	'sem_osx.cpp',
-#	'context_gl_osx.cpp',
-	'dir_access_osx.mm',
-	'joystick_osx.cpp',
-	]
+    'os_osx.mm',
+    'godot_main_osx.mm',
+    'audio_driver_osx.cpp',
+    'sem_osx.cpp',
+    #	'context_gl_osx.cpp',
+    'dir_access_osx.mm',
+    'joystick_osx.cpp',
+]
 
 
 env.Program('#bin/godot',files)
 env.Program('#bin/godot',files)

+ 59 - 59
platform/osx/detect.py

@@ -4,99 +4,99 @@ import sys
 
 
 
 
 def is_active():
 def is_active():
-	return True
+    return True
 
 
 def get_name():
 def get_name():
-	return "OSX"
+    return "OSX"
 
 
 def can_build():
 def can_build():
 
 
-	if (sys.platform == "darwin" or os.environ.has_key("OSXCROSS_ROOT")):
-		return True
+    if (sys.platform == "darwin" or os.environ.has_key("OSXCROSS_ROOT")):
+        return True
 
 
 
 
-	return False
+    return False
 
 
 def get_opts():
 def get_opts():
 
 
-	return [
-	    ('force_64_bits','Force 64 bits binary','no'),
-	    ('osxcross_sdk','OSXCross SDK version','darwin14'),
+    return [
+        ('force_64_bits','Force 64 bits binary','no'),
+        ('osxcross_sdk','OSXCross SDK version','darwin14'),
 
 
-	 ]
+    ]
 
 
 def get_flags():
 def get_flags():
 
 
-	return [
-	]
+    return [
+    ]
 
 
 
 
 
 
 def configure(env):
 def configure(env):
 
 
-	env.Append(CPPPATH=['#platform/osx'])
+    env.Append(CPPPATH=['#platform/osx'])
 
 
-	if (env["bits"]=="default"):
-	    env["bits"]="32"
+    if (env["bits"]=="default"):
+        env["bits"]="32"
 
 
-	if (env["target"]=="release"):
+    if (env["target"]=="release"):
 
 
-		env.Append(CCFLAGS=['-O2','-ffast-math','-fomit-frame-pointer','-ftree-vectorize','-msse2'])
+        env.Append(CCFLAGS=['-O2','-ffast-math','-fomit-frame-pointer','-ftree-vectorize','-msse2'])
 
 
-	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"):
+    elif (env["target"]=="debug"):
 
 
-		env.Append(CCFLAGS=['-g3', '-Wall','-DDEBUG_ENABLED','-DDEBUG_MEMORY_ENABLED'])
+        env.Append(CCFLAGS=['-g3', '-Wall','-DDEBUG_ENABLED','-DDEBUG_MEMORY_ENABLED'])
 
 
 
 
 
 
-	if (not os.environ.has_key("OSXCROSS_ROOT")):
-		#regular native build
-		if (env["bits"]=="64"):
-		    env.Append(CCFLAGS=['-arch', 'x86_64'])
-		    env.Append(LINKFLAGS=['-arch', 'x86_64'])
-		elif (env["bits"]=="32"):
-		    env.Append(CCFLAGS=['-arch', 'i386'])
-		    env.Append(LINKFLAGS=['-arch', 'i386'])
-		else:
-		    env.Append(CCFLAGS=['-arch', 'i386', '-arch', 'x86_64'])
-		    env.Append(LINKFLAGS=['-arch', 'i386', '-arch', 'x86_64'])
-	else:
-		#osxcross build
-		root=os.environ.get("OSXCROSS_ROOT",0)
-		if env["bits"]=="64":
-			basecmd=root+"/target/bin/x86_64-apple-"+env["osxcross_sdk"]+"-"
-		else:
-			basecmd=root+"/target/bin/i386-apple-"+env["osxcross_sdk"]+"-"
+    if (not os.environ.has_key("OSXCROSS_ROOT")):
+        #regular native build
+        if (env["bits"]=="64"):
+            env.Append(CCFLAGS=['-arch', 'x86_64'])
+            env.Append(LINKFLAGS=['-arch', 'x86_64'])
+        elif (env["bits"]=="32"):
+            env.Append(CCFLAGS=['-arch', 'i386'])
+            env.Append(LINKFLAGS=['-arch', 'i386'])
+        else:
+            env.Append(CCFLAGS=['-arch', 'i386', '-arch', 'x86_64'])
+            env.Append(LINKFLAGS=['-arch', 'i386', '-arch', 'x86_64'])
+    else:
+        #osxcross build
+        root=os.environ.get("OSXCROSS_ROOT",0)
+        if env["bits"]=="64":
+            basecmd=root+"/target/bin/x86_64-apple-"+env["osxcross_sdk"]+"-"
+        else:
+            basecmd=root+"/target/bin/i386-apple-"+env["osxcross_sdk"]+"-"
 
 
 
 
-		env['CC'] = basecmd+"cc"
-		env['CXX'] = basecmd+"c++"
-		env['AR'] = basecmd+"ar"
-		env['RANLIB'] = basecmd+"ranlib"
-		env['AS'] = basecmd+"as"
+        env['CC'] = basecmd+"cc"
+        env['CXX'] = basecmd+"c++"
+        env['AR'] = basecmd+"ar"
+        env['RANLIB'] = basecmd+"ranlib"
+        env['AS'] = basecmd+"as"
 
 
 
 
-	env.Append(CPPFLAGS=["-DAPPLE_STYLE_KEYS"])
-	env.Append(CPPFLAGS=['-DUNIX_ENABLED','-DGLES2_ENABLED','-DOSX_ENABLED'])
-	env.Append(LIBS=['pthread'])
-	#env.Append(CPPFLAGS=['-F/Developer/SDKs/MacOSX10.4u.sdk/System/Library/Frameworks', '-isysroot', '/Developer/SDKs/MacOSX10.4u.sdk', '-mmacosx-version-min=10.4'])
-	#env.Append(LINKFLAGS=['-mmacosx-version-min=10.4', '-isysroot', '/Developer/SDKs/MacOSX10.4u.sdk', '-Wl,-syslibroot,/Developer/SDKs/MacOSX10.4u.sdk'])
-	env.Append(LINKFLAGS=['-framework', 'Cocoa', '-framework', 'Carbon', '-framework', 'OpenGL', '-framework', 'AGL', '-framework', 'AudioUnit','-lz', '-framework', 'IOKit', '-framework', 'ForceFeedback'])
+    env.Append(CPPFLAGS=["-DAPPLE_STYLE_KEYS"])
+    env.Append(CPPFLAGS=['-DUNIX_ENABLED','-DGLES2_ENABLED','-DOSX_ENABLED'])
+    env.Append(LIBS=['pthread'])
+    #env.Append(CPPFLAGS=['-F/Developer/SDKs/MacOSX10.4u.sdk/System/Library/Frameworks', '-isysroot', '/Developer/SDKs/MacOSX10.4u.sdk', '-mmacosx-version-min=10.4'])
+    #env.Append(LINKFLAGS=['-mmacosx-version-min=10.4', '-isysroot', '/Developer/SDKs/MacOSX10.4u.sdk', '-Wl,-syslibroot,/Developer/SDKs/MacOSX10.4u.sdk'])
+    env.Append(LINKFLAGS=['-framework', 'Cocoa', '-framework', 'Carbon', '-framework', 'OpenGL', '-framework', 'AGL', '-framework', 'AudioUnit','-lz', '-framework', 'IOKit', '-framework', 'ForceFeedback'])
 
 
-	if (env["CXX"]=="clang++"):
-		env.Append(CPPFLAGS=['-DTYPED_METHOD_BIND'])
-		env["CC"]="clang"
-		env["LD"]="clang++"
+    if (env["CXX"]=="clang++"):
+        env.Append(CPPFLAGS=['-DTYPED_METHOD_BIND'])
+        env["CC"]="clang"
+        env["LD"]="clang++"
 
 
-	import methods
+    import methods
 
 
-	env.Append( BUILDERS = { 'GLSL120' : env.Builder(action = methods.build_legacygl_headers, suffix = 'glsl.h',src_suffix = '.glsl') } )
-	env.Append( BUILDERS = { 'GLSL' : env.Builder(action = methods.build_glsl_headers, suffix = 'glsl.h',src_suffix = '.glsl') } )
-	env.Append( BUILDERS = { 'GLSL120GLES' : env.Builder(action = methods.build_gles2_headers, suffix = 'glsl.h',src_suffix = '.glsl') } )
-	#env.Append( BUILDERS = { 'HLSL9' : env.Builder(action = methods.build_hlsl_dx9_headers, suffix = 'hlsl.h',src_suffix = '.hlsl') } )
+    env.Append( BUILDERS = { 'GLSL120' : env.Builder(action = methods.build_legacygl_headers, suffix = 'glsl.h',src_suffix = '.glsl') } )
+    env.Append( BUILDERS = { 'GLSL' : env.Builder(action = methods.build_glsl_headers, suffix = 'glsl.h',src_suffix = '.glsl') } )
+    env.Append( BUILDERS = { 'GLSL120GLES' : env.Builder(action = methods.build_gles2_headers, suffix = 'glsl.h',src_suffix = '.glsl') } )
+    #env.Append( BUILDERS = { 'HLSL9' : env.Builder(action = methods.build_hlsl_dx9_headers, suffix = 'hlsl.h',src_suffix = '.hlsl') } )
 
 
-	env["x86_libtheora_opt_gcc"]=True
+    env["x86_libtheora_opt_gcc"]=True

+ 1 - 1
platform/server/SCsub

@@ -4,7 +4,7 @@ Import('env')
 
 
 
 
 common_server=[\
 common_server=[\
-	"os_server.cpp",\
+    "os_server.cpp",\
 ]
 ]
 
 
 env.Program('#bin/godot_server',['godot_server.cpp']+common_server)
 env.Program('#bin/godot_server',['godot_server.cpp']+common_server)

+ 38 - 38
platform/server/detect.py

@@ -4,73 +4,73 @@ import sys
 
 
 
 
 def is_active():
 def is_active():
-	return True
+    return True
 
 
 def get_name():
 def get_name():
-	return "Server"
+    return "Server"
 
 
 
 
 def can_build():
 def can_build():
 
 
-	if (os.name!="posix"):
-		return False
+    if (os.name!="posix"):
+        return False
 
 
-	return True # enabled
+    return True # enabled
 
 
 def get_opts():
 def get_opts():
 
 
-	return [
-	('use_llvm','Use llvm compiler','no'),
-	('force_32_bits','Force 32 bits binary','no')
-	]
+    return [
+        ('use_llvm','Use llvm compiler','no'),
+        ('force_32_bits','Force 32 bits binary','no')
+    ]
 
 
 def get_flags():
 def get_flags():
 
 
-	return [
-	]
+    return [
+    ]
 
 
 
 
 
 
 def configure(env):
 def configure(env):
 
 
-	env.Append(CPPPATH=['#platform/server'])
-	if (env["use_llvm"]=="yes"):
-		env["CC"]="clang"
-		env["CXX"]="clang++"
-		env["LD"]="clang++"
+    env.Append(CPPPATH=['#platform/server'])
+    if (env["use_llvm"]=="yes"):
+        env["CC"]="clang"
+        env["CXX"]="clang++"
+        env["LD"]="clang++"
 
 
-	is64=sys.maxsize > 2**32
+    is64=sys.maxsize > 2**32
 
 
-	if (env["bits"]=="default"):
-		if (is64):
-			env["bits"]="64"
-		else:
-			env["bits"]="32"
+    if (env["bits"]=="default"):
+        if (is64):
+            env["bits"]="64"
+        else:
+            env["bits"]="32"
 
 
 
 
-	#if (env["tools"]=="no"):
-	#	#no tools suffix
-	#	env['OBJSUFFIX'] = ".nt"+env['OBJSUFFIX']
-	#	env['LIBSUFFIX'] = ".nt"+env['LIBSUFFIX']
+    #if (env["tools"]=="no"):
+    #	#no tools suffix
+    #	env['OBJSUFFIX'] = ".nt"+env['OBJSUFFIX']
+    #	env['LIBSUFFIX'] = ".nt"+env['LIBSUFFIX']
 
 
 
 
-	if (env["target"]=="release"):
+    if (env["target"]=="release"):
 
 
-		env.Append(CCFLAGS=['-O2','-ffast-math','-fomit-frame-pointer'])
+        env.Append(CCFLAGS=['-O2','-ffast-math','-fomit-frame-pointer'])
 
 
-	elif (env["target"]=="release_debug"):
+    elif (env["target"]=="release_debug"):
 
 
-		env.Append(CCFLAGS=['-O2','-ffast-math','-DDEBUG_ENABLED'])
+        env.Append(CCFLAGS=['-O2','-ffast-math','-DDEBUG_ENABLED'])
 
 
-	elif (env["target"]=="debug"):
+    elif (env["target"]=="debug"):
 
 
-		env.Append(CCFLAGS=['-g2', '-Wall','-DDEBUG_ENABLED','-DDEBUG_MEMORY_ENABLED'])
+        env.Append(CCFLAGS=['-g2', '-Wall','-DDEBUG_ENABLED','-DDEBUG_MEMORY_ENABLED'])
 
 
-	env.Append(CPPFLAGS=['-DSERVER_ENABLED','-DUNIX_ENABLED'])
-	env.Append(LIBS=['pthread','z']) #TODO detect linux/BSD!
+    env.Append(CPPFLAGS=['-DSERVER_ENABLED','-DUNIX_ENABLED'])
+    env.Append(LIBS=['pthread','z']) #TODO detect linux/BSD!
 
 
-	if (env["CXX"]=="clang++"):
-		env.Append(CPPFLAGS=['-DTYPED_METHOD_BIND'])
-		env["CC"]="clang"
-		env["LD"]="clang++"
+    if (env["CXX"]=="clang++"):
+        env.Append(CPPFLAGS=['-DTYPED_METHOD_BIND'])
+        env["CC"]="clang"
+        env["LD"]="clang++"
 
 

+ 11 - 11
platform/windows/SCsub

@@ -4,14 +4,14 @@ Import('env')
 
 
 
 
 common_win=[
 common_win=[
-	"context_gl_win.cpp",
-	"os_windows.cpp",
-	"ctxgl_procaddr.cpp",
-	"key_mapping_win.cpp",
-	"tcp_server_winsock.cpp",
-	"packet_peer_udp_winsock.cpp",
-	"stream_peer_winsock.cpp",
-	"joystick.cpp",
+    "context_gl_win.cpp",
+    "os_windows.cpp",
+    "ctxgl_procaddr.cpp",
+    "key_mapping_win.cpp",
+    "tcp_server_winsock.cpp",
+    "packet_peer_udp_winsock.cpp",
+    "stream_peer_winsock.cpp",
+    "joystick.cpp",
 ]
 ]
 
 
 restarget="godot_res"+env["OBJSUFFIX"]
 restarget="godot_res"+env["OBJSUFFIX"]
@@ -24,6 +24,6 @@ env.Program('#bin/godot',['godot_win.cpp']+common_win,PROGSUFFIX=env["PROGSUFFIX
 
 
 # Microsoft Visual Studio Project Generation
 # Microsoft Visual Studio Project Generation
 if (env['vsproj'])=="yes":
 if (env['vsproj'])=="yes":
-	env.vs_srcs = env.vs_srcs + ["platform/windows/godot_win.cpp"]
-	for x in common_win:
-		env.vs_srcs = env.vs_srcs + ["platform/windows/" + str(x)]
+    env.vs_srcs = env.vs_srcs + ["platform/windows/godot_win.cpp"]
+    for x in common_win:
+        env.vs_srcs = env.vs_srcs + ["platform/windows/" + str(x)]

+ 298 - 298
platform/windows/detect.py

@@ -92,361 +92,361 @@ import sys
 
 
 
 
 def is_active():
 def is_active():
-	return True
+    return True
 
 
 def get_name():
 def get_name():
-        return "Windows"
+    return "Windows"
 
 
 def can_build():
 def can_build():
 
 
-	if (os.name=="nt"):
-		#building natively on windows!
-		if (os.getenv("VSINSTALLDIR")):
-			return True
-		else:
-			print("\nMSVC not detected, attempting Mingw.")
-			mingw32 = ""
-			mingw64 = ""
-			if ( os.getenv("MINGW32_PREFIX") ) :
-				mingw32 = os.getenv("MINGW32_PREFIX")
-			if ( os.getenv("MINGW64_PREFIX") ) :
-				mingw64 = os.getenv("MINGW64_PREFIX")
-
-			test = "gcc --version > NUL 2>&1"
-			if os.system(test)!= 0 and os.system(mingw32+test)!=0 and os.system(mingw64+test)!=0 :
-				print("- could not detect gcc.")
-				print("Please, make sure a path to a Mingw /bin directory is accessible into the environment PATH.\n")
-				return False
-			else:
-				print("- gcc detected.")
-
-			return True
-
-	if (os.name=="posix"):
-
-		mingw = "i586-mingw32msvc-"
-		mingw64 = "x86_64-w64-mingw32-"
-		mingw32 = "i686-w64-mingw32-"
-
-		if (os.getenv("MINGW32_PREFIX")):
-			mingw32=os.getenv("MINGW32_PREFIX")
-			mingw = mingw32
-		if (os.getenv("MINGW64_PREFIX")):
-			mingw64=os.getenv("MINGW64_PREFIX")
-
-		test = "gcc --version &>/dev/null"
-		if (os.system(mingw+test) == 0 or os.system(mingw64+test) == 0 or os.system(mingw32+test) == 0):
-			return True
-
-	return False
+    if (os.name=="nt"):
+        #building natively on windows!
+        if (os.getenv("VSINSTALLDIR")):
+            return True
+        else:
+            print("\nMSVC not detected, attempting Mingw.")
+            mingw32 = ""
+            mingw64 = ""
+            if ( os.getenv("MINGW32_PREFIX") ) :
+                mingw32 = os.getenv("MINGW32_PREFIX")
+            if ( os.getenv("MINGW64_PREFIX") ) :
+                mingw64 = os.getenv("MINGW64_PREFIX")
+
+            test = "gcc --version > NUL 2>&1"
+            if os.system(test)!= 0 and os.system(mingw32+test)!=0 and os.system(mingw64+test)!=0 :
+                print("- could not detect gcc.")
+                print("Please, make sure a path to a Mingw /bin directory is accessible into the environment PATH.\n")
+                return False
+            else:
+                print("- gcc detected.")
+
+            return True
+
+    if (os.name=="posix"):
+
+        mingw = "i586-mingw32msvc-"
+        mingw64 = "x86_64-w64-mingw32-"
+        mingw32 = "i686-w64-mingw32-"
+
+        if (os.getenv("MINGW32_PREFIX")):
+            mingw32=os.getenv("MINGW32_PREFIX")
+            mingw = mingw32
+        if (os.getenv("MINGW64_PREFIX")):
+            mingw64=os.getenv("MINGW64_PREFIX")
+
+        test = "gcc --version &>/dev/null"
+        if (os.system(mingw+test) == 0 or os.system(mingw64+test) == 0 or os.system(mingw32+test) == 0):
+            return True
+
+    return False
 
 
 def get_opts():
 def get_opts():
 
 
-	mingw=""
-	mingw32=""
-	mingw64=""
-	if ( os.name == "posix" ):
-		mingw = "i586-mingw32msvc-"
-		mingw32 = "i686-w64-mingw32-"
-		mingw64 = "x86_64-w64-mingw32-"
+    mingw=""
+    mingw32=""
+    mingw64=""
+    if ( os.name == "posix" ):
+        mingw = "i586-mingw32msvc-"
+        mingw32 = "i686-w64-mingw32-"
+        mingw64 = "x86_64-w64-mingw32-"
 
 
-		if os.system(mingw32+"gcc --version &>/dev/null") != 0 :
-			mingw32 = mingw
+        if os.system(mingw32+"gcc --version &>/dev/null") != 0 :
+            mingw32 = mingw
 
 
-	if (os.getenv("MINGW32_PREFIX")):
-		mingw32=os.getenv("MINGW32_PREFIX")
-		mingw = mingw32
-	if (os.getenv("MINGW64_PREFIX")):
-		mingw64=os.getenv("MINGW64_PREFIX")
+    if (os.getenv("MINGW32_PREFIX")):
+        mingw32=os.getenv("MINGW32_PREFIX")
+        mingw = mingw32
+    if (os.getenv("MINGW64_PREFIX")):
+        mingw64=os.getenv("MINGW64_PREFIX")
 
 
 
 
-	return [
-		('mingw_prefix','Mingw Prefix',mingw32),
-		('mingw_prefix_64','Mingw Prefix 64 bits',mingw64),
-	]
+    return [
+        ('mingw_prefix','Mingw Prefix',mingw32),
+        ('mingw_prefix_64','Mingw Prefix 64 bits',mingw64),
+    ]
 
 
 def get_flags():
 def get_flags():
 
 
-	return [
-		('builtin_zlib', 'yes'),
-		('openssl','builtin'), #use builtin openssl
-	]
+    return [
+        ('builtin_zlib', 'yes'),
+        ('openssl','builtin'), #use builtin openssl
+    ]
 
 
 def build_res_file( target, source, env ):
 def build_res_file( target, source, env ):
 
 
-	cmdbase = ""
-	if (env["bits"] == "32"):
-		cmdbase = env['mingw_prefix']
-	else:
-		cmdbase = env['mingw_prefix_64']
-	CPPPATH = env['CPPPATH']
-	cmdbase = cmdbase + 'windres --include-dir . '
-	import subprocess
-	for x in range(len(source)):
-		cmd = cmdbase + '-i ' + str(source[x]) + ' -o ' + str(target[x])
-		try:
-			out = subprocess.Popen(cmd,shell = True,stderr = subprocess.PIPE).communicate()
-			if len(out[1]):
-				return 1
-		except:
-			return 1
-	return 0
+    cmdbase = ""
+    if (env["bits"] == "32"):
+        cmdbase = env['mingw_prefix']
+    else:
+        cmdbase = env['mingw_prefix_64']
+    CPPPATH = env['CPPPATH']
+    cmdbase = cmdbase + 'windres --include-dir . '
+    import subprocess
+    for x in range(len(source)):
+        cmd = cmdbase + '-i ' + str(source[x]) + ' -o ' + str(target[x])
+        try:
+            out = subprocess.Popen(cmd,shell = True,stderr = subprocess.PIPE).communicate()
+            if len(out[1]):
+                return 1
+        except:
+            return 1
+    return 0
 
 
 def configure(env):
 def configure(env):
 
 
-	env.Append(CPPPATH=['#platform/windows'])
-	env['is_mingw']=False
-	if (os.name=="nt" and os.getenv("VSINSTALLDIR")!=None):
-		#build using visual studio
-		env['ENV']['TMP'] = os.environ['TMP']
-		env.Append(CPPPATH=['#platform/windows/include'])
-		env.Append(LIBPATH=['#platform/windows/lib'])
-
-
-		if (env["target"]=="release"):
-
-			env.Append(CCFLAGS=['/O2'])
-			env.Append(LINKFLAGS=['/SUBSYSTEM:WINDOWS'])
-			env.Append(LINKFLAGS=['/ENTRY:mainCRTStartup'])
-
-		elif (env["target"]=="release_debug"):
-
-			env.Append(CCFLAGS=['/O2','/DDEBUG_ENABLED'])
-			env.Append(LINKFLAGS=['/SUBSYSTEM:CONSOLE'])
-		elif (env["target"]=="debug_release"):
-
-			env.Append(CCFLAGS=['/Z7','/Od'])
-			env.Append(LINKFLAGS=['/DEBUG'])
-			env.Append(LINKFLAGS=['/SUBSYSTEM:WINDOWS'])
-			env.Append(LINKFLAGS=['/ENTRY:mainCRTStartup'])
-
-		elif (env["target"]=="debug"):
-
-			env.Append(CCFLAGS=['/Z7','/DDEBUG_ENABLED','/DDEBUG_MEMORY_ENABLED','/DD3D_DEBUG_INFO','/Od'])
-			env.Append(LINKFLAGS=['/SUBSYSTEM:CONSOLE'])
-			env.Append(LINKFLAGS=['/DEBUG'])
-
-
-		env.Append(CCFLAGS=['/MT','/Gd','/GR','/nologo'])
-		env.Append(CXXFLAGS=['/TP'])
-		env.Append(CPPFLAGS=['/DMSVC', '/GR', ])
-		env.Append(CCFLAGS=['/I'+os.getenv("WindowsSdkDir")+"/Include"])
-		env.Append(CCFLAGS=['/DWINDOWS_ENABLED'])
-		env.Append(CCFLAGS=['/DRTAUDIO_ENABLED'])
-		env.Append(CCFLAGS=['/DWIN32'])
-		env.Append(CCFLAGS=['/DTYPED_METHOD_BIND'])
-
-		env.Append(CCFLAGS=['/DGLES2_ENABLED'])
-
-		LIBS=['winmm','opengl32','dsound','kernel32','ole32','oleaut32','user32','gdi32', 'IPHLPAPI','Shlwapi', 'wsock32', 'shell32','advapi32','dinput8','dxguid']
-		env.Append(LINKFLAGS=[p+env["LIBSUFFIX"] for p in LIBS])
+    env.Append(CPPPATH=['#platform/windows'])
+    env['is_mingw']=False
+    if (os.name=="nt" and os.getenv("VSINSTALLDIR")!=None):
+        #build using visual studio
+        env['ENV']['TMP'] = os.environ['TMP']
+        env.Append(CPPPATH=['#platform/windows/include'])
+        env.Append(LIBPATH=['#platform/windows/lib'])
+
+
+        if (env["target"]=="release"):
+
+            env.Append(CCFLAGS=['/O2'])
+            env.Append(LINKFLAGS=['/SUBSYSTEM:WINDOWS'])
+            env.Append(LINKFLAGS=['/ENTRY:mainCRTStartup'])
+
+        elif (env["target"]=="release_debug"):
+
+            env.Append(CCFLAGS=['/O2','/DDEBUG_ENABLED'])
+            env.Append(LINKFLAGS=['/SUBSYSTEM:CONSOLE'])
+        elif (env["target"]=="debug_release"):
+
+            env.Append(CCFLAGS=['/Z7','/Od'])
+            env.Append(LINKFLAGS=['/DEBUG'])
+            env.Append(LINKFLAGS=['/SUBSYSTEM:WINDOWS'])
+            env.Append(LINKFLAGS=['/ENTRY:mainCRTStartup'])
+
+        elif (env["target"]=="debug"):
+
+            env.Append(CCFLAGS=['/Z7','/DDEBUG_ENABLED','/DDEBUG_MEMORY_ENABLED','/DD3D_DEBUG_INFO','/Od'])
+            env.Append(LINKFLAGS=['/SUBSYSTEM:CONSOLE'])
+            env.Append(LINKFLAGS=['/DEBUG'])
+
+
+        env.Append(CCFLAGS=['/MT','/Gd','/GR','/nologo'])
+        env.Append(CXXFLAGS=['/TP'])
+        env.Append(CPPFLAGS=['/DMSVC', '/GR', ])
+        env.Append(CCFLAGS=['/I'+os.getenv("WindowsSdkDir")+"/Include"])
+        env.Append(CCFLAGS=['/DWINDOWS_ENABLED'])
+        env.Append(CCFLAGS=['/DRTAUDIO_ENABLED'])
+        env.Append(CCFLAGS=['/DWIN32'])
+        env.Append(CCFLAGS=['/DTYPED_METHOD_BIND'])
+
+        env.Append(CCFLAGS=['/DGLES2_ENABLED'])
+
+        LIBS=['winmm','opengl32','dsound','kernel32','ole32','oleaut32','user32','gdi32', 'IPHLPAPI','Shlwapi', 'wsock32', 'shell32','advapi32','dinput8','dxguid']
+        env.Append(LINKFLAGS=[p+env["LIBSUFFIX"] for p in LIBS])
 
 
-		env.Append(LIBPATH=[os.getenv("WindowsSdkDir")+"/Lib"])
-                if (os.getenv("DXSDK_DIR")):
-                        DIRECTX_PATH=os.getenv("DXSDK_DIR")
-                else:
-                        DIRECTX_PATH="C:/Program Files/Microsoft DirectX SDK (March 2009)"
+        env.Append(LIBPATH=[os.getenv("WindowsSdkDir")+"/Lib"])
+        if (os.getenv("DXSDK_DIR")):
+            DIRECTX_PATH=os.getenv("DXSDK_DIR")
+        else:
+            DIRECTX_PATH="C:/Program Files/Microsoft DirectX SDK (March 2009)"
 
 
-                if (os.getenv("VCINSTALLDIR")):
-                        VC_PATH=os.getenv("VCINSTALLDIR")
-                else:
-                        VC_PATH=""
+        if (os.getenv("VCINSTALLDIR")):
+            VC_PATH=os.getenv("VCINSTALLDIR")
+        else:
+            VC_PATH=""
 
 
-		env.Append(CCFLAGS=["/I" + p for p in os.getenv("INCLUDE").split(";")])
-		env.Append(LIBPATH=[p for p in os.getenv("LIB").split(";")])
-		env.Append(CCFLAGS=["/I"+DIRECTX_PATH+"/Include"])
-		env.Append(LIBPATH=[DIRECTX_PATH+"/Lib/x86"])
-		env['ENV'] = os.environ;
+        env.Append(CCFLAGS=["/I" + p for p in os.getenv("INCLUDE").split(";")])
+        env.Append(LIBPATH=[p for p in os.getenv("LIB").split(";")])
+        env.Append(CCFLAGS=["/I"+DIRECTX_PATH+"/Include"])
+        env.Append(LIBPATH=[DIRECTX_PATH+"/Lib/x86"])
+        env['ENV'] = os.environ;
 
 
-		# This detection function needs the tools env (that is env['ENV'], not SCons's env), and that is why it's this far bellow in the code
-		compiler_version_str = detect_visual_c_compiler_version(env['ENV'])
+        # This detection function needs the tools env (that is env['ENV'], not SCons's env), and that is why it's this far bellow in the code
+        compiler_version_str = detect_visual_c_compiler_version(env['ENV'])
 
 
-		# Note: this detection/override code from here onward should be here instead of in SConstruct because it's platform and compiler specific (MSVC/Windows)
-		if(env["bits"] != "default"):
-                        print "Error: bits argument is disabled for MSVC"
-                        print ("Bits argument is not supported for MSVC compilation. Architecture depends on the Native/Cross Compile Tools Prompt/Developer Console (or Visual Studio settings)"
-                               +" that is being used to run SCons. As a consequence, bits argument is disabled. Run scons again without bits argument (example: scons p=windows) and SCons will attempt to detect what MSVC compiler"
-                               +" will be executed and inform you.")
-                        sys.exit()
+        # Note: this detection/override code from here onward should be here instead of in SConstruct because it's platform and compiler specific (MSVC/Windows)
+        if(env["bits"] != "default"):
+            print "Error: bits argument is disabled for MSVC"
+            print ("Bits argument is not supported for MSVC compilation. Architecture depends on the Native/Cross Compile Tools Prompt/Developer Console (or Visual Studio settings)"
+                   +" that is being used to run SCons. As a consequence, bits argument is disabled. Run scons again without bits argument (example: scons p=windows) and SCons will attempt to detect what MSVC compiler"
+                   +" will be executed and inform you.")
+            sys.exit()
 
 
-		# Forcing bits argument because MSVC does not have a flag to set this through SCons... it's different compilers (cl.exe's) called from the propper command prompt
-                # that decide the architecture that is build for. Scons can only detect the os.getenviron (because vsvarsall.bat sets a lot of stuff for cl.exe to work with)
-                env["bits"]="32"
-		env["x86_libtheora_opt_vc"]=True
+        # Forcing bits argument because MSVC does not have a flag to set this through SCons... it's different compilers (cl.exe's) called from the propper command prompt
+        # that decide the architecture that is build for. Scons can only detect the os.getenviron (because vsvarsall.bat sets a lot of stuff for cl.exe to work with)
+        env["bits"]="32"
+        env["x86_libtheora_opt_vc"]=True
 
 
-		print "Detected MSVC compiler: "+compiler_version_str
-		# If building for 64bit architecture, disable assembly optimisations for 32 bit builds (theora as of writting)... vc compiler for 64bit can not compile _asm
-		if(compiler_version_str == "amd64" or compiler_version_str == "x86_amd64"):
-                        env["bits"]="64"
-                        env["x86_libtheora_opt_vc"]=False
-                        print "Compiled program architecture will be a 64 bit executable (forcing bits=64)."
-                elif (compiler_version_str=="x86" or compiler_version_str == "amd64_x86"):
-                        print "Compiled program architecture will be a 32 bit executable. (forcing bits=32)."
-                else:
-                        print "Failed to detect MSVC compiler architecture version... Defaulting to 32bit executable settings (forcing bits=32). Compilation attempt will continue, but SCons can not detect for what architecture this build is compiled for. You should check your settings/compilation setup."                        
-		if env["bits"]=="64":
-			env.Append(CCFLAGS=['/D_WIN64'])
-	else:
+        print "Detected MSVC compiler: "+compiler_version_str
+        # If building for 64bit architecture, disable assembly optimisations for 32 bit builds (theora as of writting)... vc compiler for 64bit can not compile _asm
+        if(compiler_version_str == "amd64" or compiler_version_str == "x86_amd64"):
+            env["bits"]="64"
+            env["x86_libtheora_opt_vc"]=False
+            print "Compiled program architecture will be a 64 bit executable (forcing bits=64)."
+        elif (compiler_version_str=="x86" or compiler_version_str == "amd64_x86"):
+            print "Compiled program architecture will be a 32 bit executable. (forcing bits=32)."
+        else:
+            print "Failed to detect MSVC compiler architecture version... Defaulting to 32bit executable settings (forcing bits=32). Compilation attempt will continue, but SCons can not detect for what architecture this build is compiled for. You should check your settings/compilation setup."                        
+        if env["bits"]=="64":
+            env.Append(CCFLAGS=['/D_WIN64'])
+    else:
 
 
-		# Workaround for MinGW. See:
-		# http://www.scons.org/wiki/LongCmdLinesOnWin32
-		env.use_windows_spawn_fix()
+        # Workaround for MinGW. See:
+        # http://www.scons.org/wiki/LongCmdLinesOnWin32
+        env.use_windows_spawn_fix()
 
 
-		#build using mingw
-		if (os.name=="nt"):
-			env['ENV']['TMP'] = os.environ['TMP'] #way to go scons, you can be so stupid sometimes
-		else:
-			env["PROGSUFFIX"]=env["PROGSUFFIX"]+".exe" # for linux cross-compilation
+        #build using mingw
+        if (os.name=="nt"):
+            env['ENV']['TMP'] = os.environ['TMP'] #way to go scons, you can be so stupid sometimes
+        else:
+            env["PROGSUFFIX"]=env["PROGSUFFIX"]+".exe" # for linux cross-compilation
 
 
-		mingw_prefix=""
+        mingw_prefix=""
 
 
-		if (env["bits"]=="default"):
-			env["bits"]="32"
+        if (env["bits"]=="default"):
+            env["bits"]="32"
 
 
-		if (env["bits"]=="32"):
-			env.Append(LINKFLAGS=['-static'])
-			env.Append(LINKFLAGS=['-static-libgcc'])
-			env.Append(LINKFLAGS=['-static-libstdc++'])
-			mingw_prefix=env["mingw_prefix"];
-		else:
-			env.Append(LINKFLAGS=['-static'])
-			mingw_prefix=env["mingw_prefix_64"];
+        if (env["bits"]=="32"):
+            env.Append(LINKFLAGS=['-static'])
+            env.Append(LINKFLAGS=['-static-libgcc'])
+            env.Append(LINKFLAGS=['-static-libstdc++'])
+            mingw_prefix=env["mingw_prefix"];
+        else:
+            env.Append(LINKFLAGS=['-static'])
+            mingw_prefix=env["mingw_prefix_64"];
 
 
-		nulstr=""
+        nulstr=""
 
 
-		if (os.name=="posix"):
-		    nulstr=">/dev/null"
-		else:
-		    nulstr=">nul"
+        if (os.name=="posix"):
+            nulstr=">/dev/null"
+        else:
+            nulstr=">nul"
 
 
 
 
 
 
-		# if os.system(mingw_prefix+"gcc --version"+nulstr)!=0:
-			# #not really super consistent but..
-			# print("Can't find Windows compiler: "+mingw_prefix)
-			# sys.exit(255)
+        # if os.system(mingw_prefix+"gcc --version"+nulstr)!=0:
+            # #not really super consistent but..
+            # print("Can't find Windows compiler: "+mingw_prefix)
+            # sys.exit(255)
 
 
-		if (env["target"]=="release"):
+        if (env["target"]=="release"):
 
 
-			env.Append(CCFLAGS=['-msse2'])
+            env.Append(CCFLAGS=['-msse2'])
 
 
-			if (env["bits"]=="64"):
-				env.Append(CCFLAGS=['-O3'])
-			else:
-				env.Append(CCFLAGS=['-O2'])
+            if (env["bits"]=="64"):
+                env.Append(CCFLAGS=['-O3'])
+            else:
+                env.Append(CCFLAGS=['-O2'])
 
 
-			env.Append(LINKFLAGS=['-Wl,--subsystem,windows'])
+            env.Append(LINKFLAGS=['-Wl,--subsystem,windows'])
 
 
-		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"):
+        elif (env["target"]=="debug"):
 
 
-			env.Append(CCFLAGS=['-g', '-Wall','-DDEBUG_ENABLED','-DDEBUG_MEMORY_ENABLED'])
+            env.Append(CCFLAGS=['-g', '-Wall','-DDEBUG_ENABLED','-DDEBUG_MEMORY_ENABLED'])
 
 
 
 
 
 
-		env["CC"]=mingw_prefix+"gcc"
-		env['AS']=mingw_prefix+"as"
-		env['CXX'] = mingw_prefix+"g++"
-		env['AR'] = mingw_prefix+"ar"
-		env['RANLIB'] = mingw_prefix+"ranlib"
-		env['LD'] = mingw_prefix+"g++"
-		env["x86_libtheora_opt_gcc"]=True
+        env["CC"]=mingw_prefix+"gcc"
+        env['AS']=mingw_prefix+"as"
+        env['CXX'] = mingw_prefix+"g++"
+        env['AR'] = mingw_prefix+"ar"
+        env['RANLIB'] = mingw_prefix+"ranlib"
+        env['LD'] = mingw_prefix+"g++"
+        env["x86_libtheora_opt_gcc"]=True
 
 
-		#env['CC'] = "winegcc"
-		#env['CXX'] = "wineg++"
+        #env['CC'] = "winegcc"
+        #env['CXX'] = "wineg++"
 
 
-		env.Append(CCFLAGS=['-DWINDOWS_ENABLED','-mwindows'])
-		env.Append(CPPFLAGS=['-DRTAUDIO_ENABLED'])
-		env.Append(CCFLAGS=['-DGLES2_ENABLED'])
-		env.Append(LIBS=['mingw32','opengl32', 'dsound', 'ole32', 'd3d9','winmm','gdi32','iphlpapi','shlwapi','wsock32','kernel32', 'oleaut32', 'dinput8', 'dxguid'])
+        env.Append(CCFLAGS=['-DWINDOWS_ENABLED','-mwindows'])
+        env.Append(CPPFLAGS=['-DRTAUDIO_ENABLED'])
+        env.Append(CCFLAGS=['-DGLES2_ENABLED'])
+        env.Append(LIBS=['mingw32','opengl32', 'dsound', 'ole32', 'd3d9','winmm','gdi32','iphlpapi','shlwapi','wsock32','kernel32', 'oleaut32', 'dinput8', 'dxguid'])
 
 
-		# if (env["bits"]=="32"):
-			# env.Append(LIBS=['gcc_s'])
-			# #--with-arch=i686
-			# env.Append(CPPFLAGS=['-march=i686'])
-			# env.Append(LINKFLAGS=['-march=i686'])
+        # if (env["bits"]=="32"):
+        # env.Append(LIBS=['gcc_s'])
+        # #--with-arch=i686
+        # env.Append(CPPFLAGS=['-march=i686'])
+        # env.Append(LINKFLAGS=['-march=i686'])
 
 
 
 
 
 
 
 
-		#'d3dx9d'
-		env.Append(CPPFLAGS=['-DMINGW_ENABLED'])
-		#env.Append(LINKFLAGS=['-g'])
+        #'d3dx9d'
+        env.Append(CPPFLAGS=['-DMINGW_ENABLED'])
+        #env.Append(LINKFLAGS=['-g'])
 
 
-		# resrc
-		env['is_mingw']=True
-		env.Append( BUILDERS = { 'RES' : env.Builder(action = build_res_file, suffix = '.o',src_suffix = '.rc') } )
+        # resrc
+        env['is_mingw']=True
+        env.Append( BUILDERS = { 'RES' : env.Builder(action = build_res_file, suffix = '.o',src_suffix = '.rc') } )
 
 
-	import methods
-	env.Append( BUILDERS = { 'GLSL120' : env.Builder(action = methods.build_legacygl_headers, suffix = 'glsl.h',src_suffix = '.glsl') } )
-	env.Append( BUILDERS = { 'GLSL' : env.Builder(action = methods.build_glsl_headers, suffix = 'glsl.h',src_suffix = '.glsl') } )
-	env.Append( BUILDERS = { 'HLSL9' : env.Builder(action = methods.build_hlsl_dx9_headers, suffix = 'hlsl.h',src_suffix = '.hlsl') } )
-	env.Append( BUILDERS = { 'GLSL120GLES' : env.Builder(action = methods.build_gles2_headers, suffix = 'glsl.h',src_suffix = '.glsl') } )
+    import methods
+    env.Append( BUILDERS = { 'GLSL120' : env.Builder(action = methods.build_legacygl_headers, suffix = 'glsl.h',src_suffix = '.glsl') } )
+    env.Append( BUILDERS = { 'GLSL' : env.Builder(action = methods.build_glsl_headers, suffix = 'glsl.h',src_suffix = '.glsl') } )
+    env.Append( BUILDERS = { 'HLSL9' : env.Builder(action = methods.build_hlsl_dx9_headers, suffix = 'hlsl.h',src_suffix = '.hlsl') } )
+    env.Append( BUILDERS = { 'GLSL120GLES' : env.Builder(action = methods.build_gles2_headers, suffix = 'glsl.h',src_suffix = '.glsl') } )
 
 
 def detect_visual_c_compiler_version(tools_env):
 def detect_visual_c_compiler_version(tools_env):
-        # tools_env is the variable scons uses to call tools that execute tasks, SCons's env['ENV'] that executes tasks...
-        # (see the SCons documentation for more information on what it does)...
-        # in order for this function to be well encapsulated i choose to force it to recieve SCons's TOOLS env (env['ENV']
-        # and not scons setup environment (env)... so make sure you call the right environment on it or it will fail to detect
-        # the propper vc version that will be called
-        
-        # These is no flag to give to visual c compilers to set the architecture, ie scons bits argument (32,64,ARM etc)
-        # There are many different cl.exe files that are run, and each one compiles & links to a different architecture
-        # As far as I know, the only way to figure out what compiler will be run when Scons calls cl.exe via Program()
-        # is to check the PATH varaible and figure out which one will be called first. Code bellow does that and returns:
-        # the following string values:
-
-        # ""              Compiler not detected
-        # "amd64"         Native 64 bit compiler
-        # "amd64_x86"     64 bit Cross Compiler for 32 bit
-        # "x86"           Native 32 bit compiler
-        # "x86_amd64"     32 bit Cross Compiler for 64 bit
-
-        # There are other architectures, but Godot does not support them currently, so this function does not detect arm/amd64_arm
-        # and similar architectures/compilers
-
-        # Set chosen compiler to "not detected"
-        vc_chosen_compiler_index = -1
-        vc_chosen_compiler_str = ""
-        
-        # find() works with -1 so big ifs bellow are needed... the simplest solution, in fact
-        # First test if amd64 and amd64_x86 compilers are present in the path
-        vc_amd64_compiler_detection_index =  tools_env["PATH"].find(tools_env["VCINSTALLDIR"]+"BIN\\amd64;")
-        if(vc_amd64_compiler_detection_index > -1):
-                vc_chosen_compiler_index = vc_amd64_compiler_detection_index
-                vc_chosen_compiler_str = "amd64"
-        
-        vc_amd64_x86_compiler_detection_index = tools_env["PATH"].find(tools_env["VCINSTALLDIR"]+"BIN\\amd64_x86;")
-        if(vc_amd64_x86_compiler_detection_index > -1
-           and (vc_chosen_compiler_index == -1
-                or vc_chosen_compiler_index > vc_amd64_x86_compiler_detection_index)):
-                vc_chosen_compiler_index = vc_amd64_x86_compiler_detection_index
-                vc_chosen_compiler_str = "amd64_x86"
-
-
-        # Now check the 32 bit compilers
-        vc_x86_compiler_detection_index =  tools_env["PATH"].find(tools_env["VCINSTALLDIR"]+"BIN;")
-        if(vc_x86_compiler_detection_index > -1
-           and (vc_chosen_compiler_index == -1
-                or vc_chosen_compiler_index > vc_x86_compiler_detection_index)):
-                vc_chosen_compiler_index = vc_x86_compiler_detection_index
-                vc_chosen_compiler_str = "x86"
-                
-        vc_x86_amd64_compiler_detection_index = tools_env["PATH"].find(tools_env['VCINSTALLDIR']+"BIN\\x86_amd64;")
-        if(vc_x86_amd64_compiler_detection_index > -1
-           and (vc_chosen_compiler_index == -1
-                or vc_chosen_compiler_index > vc_x86_amd64_compiler_detection_index)):
-                vc_chosen_compiler_index = vc_x86_amd64_compiler_detection_index
-                vc_chosen_compiler_str = "x86_amd64"
-
-        # debug help
-        #print vc_amd64_compiler_detection_index
-        #print vc_amd64_x86_compiler_detection_index
-        #print vc_x86_compiler_detection_index
-        #print vc_x86_amd64_compiler_detection_index
-        #print "chosen "+str(vc_chosen_compiler_index)+ " | "+str(vc_chosen_compiler_str)
-
-        return vc_chosen_compiler_str
+    # tools_env is the variable scons uses to call tools that execute tasks, SCons's env['ENV'] that executes tasks...
+    # (see the SCons documentation for more information on what it does)...
+    # in order for this function to be well encapsulated i choose to force it to recieve SCons's TOOLS env (env['ENV']
+    # and not scons setup environment (env)... so make sure you call the right environment on it or it will fail to detect
+    # the propper vc version that will be called
+
+    # These is no flag to give to visual c compilers to set the architecture, ie scons bits argument (32,64,ARM etc)
+    # There are many different cl.exe files that are run, and each one compiles & links to a different architecture
+    # As far as I know, the only way to figure out what compiler will be run when Scons calls cl.exe via Program()
+    # is to check the PATH varaible and figure out which one will be called first. Code bellow does that and returns:
+    # the following string values:
+
+    # ""              Compiler not detected
+    # "amd64"         Native 64 bit compiler
+    # "amd64_x86"     64 bit Cross Compiler for 32 bit
+    # "x86"           Native 32 bit compiler
+    # "x86_amd64"     32 bit Cross Compiler for 64 bit
+
+    # There are other architectures, but Godot does not support them currently, so this function does not detect arm/amd64_arm
+    # and similar architectures/compilers
+
+    # Set chosen compiler to "not detected"
+    vc_chosen_compiler_index = -1
+    vc_chosen_compiler_str = ""
+
+    # find() works with -1 so big ifs bellow are needed... the simplest solution, in fact
+    # First test if amd64 and amd64_x86 compilers are present in the path
+    vc_amd64_compiler_detection_index =  tools_env["PATH"].find(tools_env["VCINSTALLDIR"]+"BIN\\amd64;")
+    if(vc_amd64_compiler_detection_index > -1):
+        vc_chosen_compiler_index = vc_amd64_compiler_detection_index
+        vc_chosen_compiler_str = "amd64"
+
+    vc_amd64_x86_compiler_detection_index = tools_env["PATH"].find(tools_env["VCINSTALLDIR"]+"BIN\\amd64_x86;")
+    if(vc_amd64_x86_compiler_detection_index > -1
+       and (vc_chosen_compiler_index == -1
+            or vc_chosen_compiler_index > vc_amd64_x86_compiler_detection_index)):
+        vc_chosen_compiler_index = vc_amd64_x86_compiler_detection_index
+        vc_chosen_compiler_str = "amd64_x86"
+
+
+    # Now check the 32 bit compilers
+    vc_x86_compiler_detection_index =  tools_env["PATH"].find(tools_env["VCINSTALLDIR"]+"BIN;")
+    if(vc_x86_compiler_detection_index > -1
+       and (vc_chosen_compiler_index == -1
+            or vc_chosen_compiler_index > vc_x86_compiler_detection_index)):
+        vc_chosen_compiler_index = vc_x86_compiler_detection_index
+        vc_chosen_compiler_str = "x86"
+
+    vc_x86_amd64_compiler_detection_index = tools_env["PATH"].find(tools_env['VCINSTALLDIR']+"BIN\\x86_amd64;")
+    if(vc_x86_amd64_compiler_detection_index > -1
+       and (vc_chosen_compiler_index == -1
+            or vc_chosen_compiler_index > vc_x86_amd64_compiler_detection_index)):
+        vc_chosen_compiler_index = vc_x86_amd64_compiler_detection_index
+        vc_chosen_compiler_str = "x86_amd64"
+
+    # debug help
+    #print vc_amd64_compiler_detection_index
+    #print vc_amd64_x86_compiler_detection_index
+    #print vc_x86_compiler_detection_index
+    #print vc_x86_amd64_compiler_detection_index
+    #print "chosen "+str(vc_chosen_compiler_index)+ " | "+str(vc_chosen_compiler_str)
+
+    return vc_chosen_compiler_str

+ 5 - 5
platform/winrt/SCsub

@@ -3,11 +3,11 @@
 Import('env')
 Import('env')
 
 
 files = [
 files = [
-	'thread_winrt.cpp',
-#	'#platform/windows/stream_peer_winsock.cpp',
-	'gl_context_egl.cpp',
-	'app.cpp',
-	'os_winrt.cpp',
+    'thread_winrt.cpp',
+    #	'#platform/windows/stream_peer_winsock.cpp',
+    'gl_context_egl.cpp',
+    'app.cpp',
+    'os_winrt.cpp',
 ]
 ]
 
 
 env.Program('#bin/godot', files)
 env.Program('#bin/godot', files)

+ 93 - 93
platform/winrt/detect.py

@@ -7,150 +7,150 @@ import string
 
 
 
 
 def is_active():
 def is_active():
-	return True
+    return True
 
 
 def get_name():
 def get_name():
-		return "WinRT"
+    return "WinRT"
 
 
 def can_build():
 def can_build():
-	if (os.name=="nt"):
-		#building natively on windows!
-		if (os.getenv("VSINSTALLDIR")):
-			return True
-	return False
+    if (os.name=="nt"):
+        #building natively on windows!
+        if (os.getenv("VSINSTALLDIR")):
+            return True
+    return False
 
 
 def get_opts():
 def get_opts():
-	return []
+    return []
 
 
 def get_flags():
 def get_flags():
 
 
-	return []
+    return []
 
 
 
 
 def configure(env):
 def configure(env):
 
 
-	env.Append(CPPPATH=['#platform/winrt', '#platform/winrt/include'])
-	arch = ""
+    env.Append(CPPPATH=['#platform/winrt', '#platform/winrt/include'])
+    arch = ""
 
 
-	if os.getenv('PLATFORM') == "ARM":
+    if os.getenv('PLATFORM') == "ARM":
 
 
-		# compiler commandline
-		# debug:   /Yu"pch.h" /MP /GS     /analyze- /W3 /wd"4453" /wd"28204"     /Zc:wchar_t /I"C:\Users\ariel\Documents\Visual Studio 2013\Projects\App2\App2\App2.WindowsPhone\" /I"Generated Files\" /I"ARM\Debug\"   /I"C:\Users\ariel\Documents\Visual Studio 2013\Projects\App2\App2\App2.Shared\" /ZW:nostdlib /Zi /Gm- /Od /sdl /Fd"ARM\Debug\vc120.pdb"   /fp:precise /D "PSAPI_VERSION=2" /D "WINAPI_FAMILY=WINAPI_FAMILY_PHONE_APP" /D "_UITHREADCTXT_SUPPORT=0" /D "_UNICODE" /D "UNICODE" /D "_DEBUG" /errorReport:prompt /WX- /Zc:forScope /RTC1 /ZW /Gd /Oy- /MDd    /Fa"ARM\Debug\"   /EHsc /nologo /Fo"ARM\Debug\"   /Fp"ARM\Debug\App2.WindowsPhone.pch"
-		# release: /Yu"pch.h" /MP /GS /GL /analyze- /W3 /wd"4453" /wd"28204" /Gy /Zc:wchar_t /I"C:\Users\ariel\Documents\Visual Studio 2013\Projects\App2\App2\App2.WindowsPhone\" /I"Generated Files\" /I"ARM\Release\" /I"C:\Users\ariel\Documents\Visual Studio 2013\Projects\App2\App2\App2.Shared\" /ZW:nostdlib /Zi /Gm- /O2 /sdl /Fd"ARM\Release\vc120.pdb" /fp:precise /D "PSAPI_VERSION=2" /D "WINAPI_FAMILY=WINAPI_FAMILY_PHONE_APP" /D "_UITHREADCTXT_SUPPORT=0" /D "_UNICODE" /D "UNICODE"             /errorReport:prompt /WX- /Zc:forScope       /ZW /Gd /Oy- /Oi /MD /Fa"ARM\Release\" /EHsc /nologo /Fo"ARM\Release\" /Fp"ARM\Release\App2.WindowsPhone.pch"
+        # compiler commandline
+        # debug:   /Yu"pch.h" /MP /GS     /analyze- /W3 /wd"4453" /wd"28204"     /Zc:wchar_t /I"C:\Users\ariel\Documents\Visual Studio 2013\Projects\App2\App2\App2.WindowsPhone\" /I"Generated Files\" /I"ARM\Debug\"   /I"C:\Users\ariel\Documents\Visual Studio 2013\Projects\App2\App2\App2.Shared\" /ZW:nostdlib /Zi /Gm- /Od /sdl /Fd"ARM\Debug\vc120.pdb"   /fp:precise /D "PSAPI_VERSION=2" /D "WINAPI_FAMILY=WINAPI_FAMILY_PHONE_APP" /D "_UITHREADCTXT_SUPPORT=0" /D "_UNICODE" /D "UNICODE" /D "_DEBUG" /errorReport:prompt /WX- /Zc:forScope /RTC1 /ZW /Gd /Oy- /MDd    /Fa"ARM\Debug\"   /EHsc /nologo /Fo"ARM\Debug\"   /Fp"ARM\Debug\App2.WindowsPhone.pch"
+        # release: /Yu"pch.h" /MP /GS /GL /analyze- /W3 /wd"4453" /wd"28204" /Gy /Zc:wchar_t /I"C:\Users\ariel\Documents\Visual Studio 2013\Projects\App2\App2\App2.WindowsPhone\" /I"Generated Files\" /I"ARM\Release\" /I"C:\Users\ariel\Documents\Visual Studio 2013\Projects\App2\App2\App2.Shared\" /ZW:nostdlib /Zi /Gm- /O2 /sdl /Fd"ARM\Release\vc120.pdb" /fp:precise /D "PSAPI_VERSION=2" /D "WINAPI_FAMILY=WINAPI_FAMILY_PHONE_APP" /D "_UITHREADCTXT_SUPPORT=0" /D "_UNICODE" /D "UNICODE"             /errorReport:prompt /WX- /Zc:forScope       /ZW /Gd /Oy- /Oi /MD /Fa"ARM\Release\" /EHsc /nologo /Fo"ARM\Release\" /Fp"ARM\Release\App2.WindowsPhone.pch"
 
 
-		# linker commandline
-		# debug:   /OUT:"C:\Users\ariel\Documents\Visual Studio 2013\Projects\App2\ARM\Debug\App2.WindowsPhone\App2.WindowsPhone.exe"   /MANIFEST:NO       /NXCOMPAT /PDB:"C:\Users\ariel\Documents\Visual Studio 2013\Projects\App2\ARM\Debug\App2.WindowsPhone\App2.WindowsPhone.pdb"   /DYNAMICBASE "WindowsPhoneCore.lib" "RuntimeObject.lib" "PhoneAppModelHost.lib" /DEBUG /MACHINE:ARM /NODEFAULTLIB:"kernel32.lib" /NODEFAULTLIB:"ole32.lib" /WINMD /APPCONTAINER /INCREMENTAL /PGD:"C:\Users\ariel\Documents\Visual Studio 2013\Projects\App2\ARM\Debug\App2.WindowsPhone\App2.WindowsPhone.pgd"   /WINMDFILE:"C:\Users\ariel\Documents\Visual Studio 2013\Projects\App2\ARM\Debug\App2.WindowsPhone\App2.winmd"   /SUBSYSTEM:WINDOWS /MANIFESTUAC:NO /ManifestFile:"ARM\Debug\App2.WindowsPhone.exe.intermediate.manifest"            /ERRORREPORT:PROMPT /NOLOGO /TLBID:1
-		# release: /OUT:"C:\Users\ariel\Documents\Visual Studio 2013\Projects\App2\ARM\Release\App2.WindowsPhone\App2.WindowsPhone.exe" /MANIFEST:NO /LTCG /NXCOMPAT /PDB:"C:\Users\ariel\Documents\Visual Studio 2013\Projects\App2\ARM\Release\App2.WindowsPhone\App2.WindowsPhone.pdb" /DYNAMICBASE "WindowsPhoneCore.lib" "RuntimeObject.lib" "PhoneAppModelHost.lib" /DEBUG /MACHINE:ARM /NODEFAULTLIB:"kernel32.lib" /NODEFAULTLIB:"ole32.lib" /WINMD /APPCONTAINER /OPT:REF     /PGD:"C:\Users\ariel\Documents\Visual Studio 2013\Projects\App2\ARM\Release\App2.WindowsPhone\App2.WindowsPhone.pgd" /WINMDFILE:"C:\Users\ariel\Documents\Visual Studio 2013\Projects\App2\ARM\Release\App2.WindowsPhone\App2.winmd" /SUBSYSTEM:WINDOWS /MANIFESTUAC:NO /ManifestFile:"ARM\Release\App2.WindowsPhone.exe.intermediate.manifest" /OPT:ICF /ERRORREPORT:PROMPT /NOLOGO /TLBID:1
+        # linker commandline
+        # debug:   /OUT:"C:\Users\ariel\Documents\Visual Studio 2013\Projects\App2\ARM\Debug\App2.WindowsPhone\App2.WindowsPhone.exe"   /MANIFEST:NO       /NXCOMPAT /PDB:"C:\Users\ariel\Documents\Visual Studio 2013\Projects\App2\ARM\Debug\App2.WindowsPhone\App2.WindowsPhone.pdb"   /DYNAMICBASE "WindowsPhoneCore.lib" "RuntimeObject.lib" "PhoneAppModelHost.lib" /DEBUG /MACHINE:ARM /NODEFAULTLIB:"kernel32.lib" /NODEFAULTLIB:"ole32.lib" /WINMD /APPCONTAINER /INCREMENTAL /PGD:"C:\Users\ariel\Documents\Visual Studio 2013\Projects\App2\ARM\Debug\App2.WindowsPhone\App2.WindowsPhone.pgd"   /WINMDFILE:"C:\Users\ariel\Documents\Visual Studio 2013\Projects\App2\ARM\Debug\App2.WindowsPhone\App2.winmd"   /SUBSYSTEM:WINDOWS /MANIFESTUAC:NO /ManifestFile:"ARM\Debug\App2.WindowsPhone.exe.intermediate.manifest"            /ERRORREPORT:PROMPT /NOLOGO /TLBID:1
+        # release: /OUT:"C:\Users\ariel\Documents\Visual Studio 2013\Projects\App2\ARM\Release\App2.WindowsPhone\App2.WindowsPhone.exe" /MANIFEST:NO /LTCG /NXCOMPAT /PDB:"C:\Users\ariel\Documents\Visual Studio 2013\Projects\App2\ARM\Release\App2.WindowsPhone\App2.WindowsPhone.pdb" /DYNAMICBASE "WindowsPhoneCore.lib" "RuntimeObject.lib" "PhoneAppModelHost.lib" /DEBUG /MACHINE:ARM /NODEFAULTLIB:"kernel32.lib" /NODEFAULTLIB:"ole32.lib" /WINMD /APPCONTAINER /OPT:REF     /PGD:"C:\Users\ariel\Documents\Visual Studio 2013\Projects\App2\ARM\Release\App2.WindowsPhone\App2.WindowsPhone.pgd" /WINMDFILE:"C:\Users\ariel\Documents\Visual Studio 2013\Projects\App2\ARM\Release\App2.WindowsPhone\App2.winmd" /SUBSYSTEM:WINDOWS /MANIFESTUAC:NO /ManifestFile:"ARM\Release\App2.WindowsPhone.exe.intermediate.manifest" /OPT:ICF /ERRORREPORT:PROMPT /NOLOGO /TLBID:1
 
 
-		arch = "arm"
+        arch = "arm"
 
 
-		env.Append(LINKFLAGS=['/INCREMENTAL:NO', '/MANIFEST:NO', '/NXCOMPAT', '/DYNAMICBASE', "WindowsPhoneCore.lib", "RuntimeObject.lib", "PhoneAppModelHost.lib", "/DEBUG", "/MACHINE:ARM", '/NODEFAULTLIB:"kernel32.lib"', '/NODEFAULTLIB:"ole32.lib"', '/WINMD', '/APPCONTAINER', '/MANIFESTUAC:NO', '/ERRORREPORT:PROMPT', '/NOLOGO', '/TLBID:1'])
-		env.Append(LIBPATH=['#platform/winrt/ARM/lib'])
+        env.Append(LINKFLAGS=['/INCREMENTAL:NO', '/MANIFEST:NO', '/NXCOMPAT', '/DYNAMICBASE', "WindowsPhoneCore.lib", "RuntimeObject.lib", "PhoneAppModelHost.lib", "/DEBUG", "/MACHINE:ARM", '/NODEFAULTLIB:"kernel32.lib"', '/NODEFAULTLIB:"ole32.lib"', '/WINMD', '/APPCONTAINER', '/MANIFESTUAC:NO', '/ERRORREPORT:PROMPT', '/NOLOGO', '/TLBID:1'])
+        env.Append(LIBPATH=['#platform/winrt/ARM/lib'])
 
 
-		env.Append(CCFLAGS=string.split('/MP /GS /wd"4453" /wd"28204" /analyze- /Zc:wchar_t /Zi /Gm- /Od /fp:precise /fp:precise /D "PSAPI_VERSION=2" /D "WINAPI_FAMILY=WINAPI_FAMILY_PHONE_APP" /DWINDOWSPHONE_ENABLED /D "_UITHREADCTXT_SUPPORT=0" /D "_UNICODE" /D "UNICODE" /errorReport:prompt /WX- /Zc:forScope /Gd /Oy- /Oi /MD /RTC1 /Gd /EHsc /nologo'))
-		env.Append(CXXFLAGS=string.split('/ZW'))
+        env.Append(CCFLAGS=string.split('/MP /GS /wd"4453" /wd"28204" /analyze- /Zc:wchar_t /Zi /Gm- /Od /fp:precise /fp:precise /D "PSAPI_VERSION=2" /D "WINAPI_FAMILY=WINAPI_FAMILY_PHONE_APP" /DWINDOWSPHONE_ENABLED /D "_UITHREADCTXT_SUPPORT=0" /D "_UNICODE" /D "UNICODE" /errorReport:prompt /WX- /Zc:forScope /Gd /Oy- /Oi /MD /RTC1 /Gd /EHsc /nologo'))
+        env.Append(CXXFLAGS=string.split('/ZW'))
 
 
-		if (env["target"]=="release"):
+        if (env["target"]=="release"):
 
 
-			env.Append(CCFLAGS=['/O2'])
-			env.Append(LINKFLAGS=['/SUBSYSTEM:WINDOWS'])
+            env.Append(CCFLAGS=['/O2'])
+            env.Append(LINKFLAGS=['/SUBSYSTEM:WINDOWS'])
 
 
-		elif (env["target"]=="test"):
+        elif (env["target"]=="test"):
 
 
-			env.Append(CCFLAGS=['/O2','/DDEBUG_ENABLED','/DD3D_DEBUG_INFO'])
-			env.Append(LINKFLAGS=['/SUBSYSTEM:CONSOLE'])
+            env.Append(CCFLAGS=['/O2','/DDEBUG_ENABLED','/DD3D_DEBUG_INFO'])
+            env.Append(LINKFLAGS=['/SUBSYSTEM:CONSOLE'])
 
 
-		elif (env["target"]=="debug"):
+        elif (env["target"]=="debug"):
 
 
-			env.Append(CCFLAGS=['/Zi','/DDEBUG_ENABLED','/DD3D_DEBUG_INFO'])
-			env.Append(LINKFLAGS=['/SUBSYSTEM:CONSOLE'])
-			env.Append(LINKFLAGS=['/DEBUG', '/D_DEBUG'])
+            env.Append(CCFLAGS=['/Zi','/DDEBUG_ENABLED','/DD3D_DEBUG_INFO'])
+            env.Append(LINKFLAGS=['/SUBSYSTEM:CONSOLE'])
+            env.Append(LINKFLAGS=['/DEBUG', '/D_DEBUG'])
 
 
-		elif (env["target"]=="profile"):
+        elif (env["target"]=="profile"):
 
 
-			env.Append(CCFLAGS=['-g','-pg'])
-			env.Append(LINKFLAGS=['-pg'])
+            env.Append(CCFLAGS=['-g','-pg'])
+            env.Append(LINKFLAGS=['-pg'])
 
 
 
 
-		env['ENV'] = os.environ;
-		# fix environment for windows phone 8.1
-		env['ENV']['WINDOWSPHONEKITDIR'] = env['ENV']['WINDOWSPHONEKITDIR'].replace("8.0", "8.1") # wtf
-		env['ENV']['INCLUDE'] = env['ENV']['INCLUDE'].replace("8.0", "8.1")
-		env['ENV']['LIB'] = env['ENV']['LIB'].replace("8.0", "8.1")
-		env['ENV']['PATH'] = env['ENV']['PATH'].replace("8.0", "8.1")
-		env['ENV']['LIBPATH'] = env['ENV']['LIBPATH'].replace("8.0\\Windows Metadata", "8.1\\References\\CommonConfiguration\\Neutral")
+        env['ENV'] = os.environ;
+        # fix environment for windows phone 8.1
+        env['ENV']['WINDOWSPHONEKITDIR'] = env['ENV']['WINDOWSPHONEKITDIR'].replace("8.0", "8.1") # wtf
+        env['ENV']['INCLUDE'] = env['ENV']['INCLUDE'].replace("8.0", "8.1")
+        env['ENV']['LIB'] = env['ENV']['LIB'].replace("8.0", "8.1")
+        env['ENV']['PATH'] = env['ENV']['PATH'].replace("8.0", "8.1")
+        env['ENV']['LIBPATH'] = env['ENV']['LIBPATH'].replace("8.0\\Windows Metadata", "8.1\\References\\CommonConfiguration\\Neutral")
 
 
-	else:
+    else:
 
 
-		arch = "x64"
-		env.Append(LINKFLAGS=['/MANIFEST:NO', '/NXCOMPAT', '/DYNAMICBASE', "kernel32.lib", '/MACHINE:X64', '/WINMD', '/APPCONTAINER', '/MANIFESTUAC:NO', '/ERRORREPORT:PROMPT', '/NOLOGO', '/TLBID:1'])
+        arch = "x64"
+        env.Append(LINKFLAGS=['/MANIFEST:NO', '/NXCOMPAT', '/DYNAMICBASE', "kernel32.lib", '/MACHINE:X64', '/WINMD', '/APPCONTAINER', '/MANIFESTUAC:NO', '/ERRORREPORT:PROMPT', '/NOLOGO', '/TLBID:1'])
 
 
-		env.Append(LIBPATH=['#platform/winrt/x64/lib'])
+        env.Append(LIBPATH=['#platform/winrt/x64/lib'])
 
 
 
 
-		if (env["target"]=="release"):
+        if (env["target"]=="release"):
 
 
-			env.Append(CCFLAGS=['/O2'])
-			env.Append(LINKFLAGS=['/SUBSYSTEM:WINDOWS'])
-			env.Append(LINKFLAGS=['/ENTRY:mainCRTStartup'])
+            env.Append(CCFLAGS=['/O2'])
+            env.Append(LINKFLAGS=['/SUBSYSTEM:WINDOWS'])
+            env.Append(LINKFLAGS=['/ENTRY:mainCRTStartup'])
 
 
-		elif (env["target"]=="test"):
+        elif (env["target"]=="test"):
 
 
-			env.Append(CCFLAGS=['/O2','/DDEBUG_ENABLED','/DD3D_DEBUG_INFO'])
-			env.Append(LINKFLAGS=['/SUBSYSTEM:CONSOLE'])
+            env.Append(CCFLAGS=['/O2','/DDEBUG_ENABLED','/DD3D_DEBUG_INFO'])
+            env.Append(LINKFLAGS=['/SUBSYSTEM:CONSOLE'])
 
 
-		elif (env["target"]=="debug"):
+        elif (env["target"]=="debug"):
 
 
-			env.Append(CCFLAGS=['/Zi','/DDEBUG_ENABLED','/DD3D_DEBUG_INFO'])
-			env.Append(LINKFLAGS=['/SUBSYSTEM:CONSOLE'])
-			env.Append(LINKFLAGS=['/DEBUG', '/D_DEBUG'])
+            env.Append(CCFLAGS=['/Zi','/DDEBUG_ENABLED','/DD3D_DEBUG_INFO'])
+            env.Append(LINKFLAGS=['/SUBSYSTEM:CONSOLE'])
+            env.Append(LINKFLAGS=['/DEBUG', '/D_DEBUG'])
 
 
-		elif (env["target"]=="profile"):
+        elif (env["target"]=="profile"):
 
 
-			env.Append(CCFLAGS=['-g','-pg'])
-			env.Append(LINKFLAGS=['-pg'])
+            env.Append(CCFLAGS=['-g','-pg'])
+            env.Append(LINKFLAGS=['-pg'])
 
 
 
 
-		env.Append(CCFLAGS=string.split('/MP /GS /wd"4453" /wd"28204" /Zc:wchar_t /Gm- /Od /fp:precise /D "_UNICODE" /D "UNICODE" /D "WINAPI_FAMILY=WINAPI_FAMILY_APP" /errorReport:prompt /WX- /Zc:forScope /RTC1 /Gd /MDd /EHsc /nologo'))
-		env.Append(CXXFLAGS=string.split('/ZW'))
-		env.Append(CCFLAGS=['/AI', os.environ['VCINSTALLDIR']+'\\vcpackages', '/AI', os.environ['WINDOWSSDKDIR']+'\\References\\CommonConfiguration\\Neutral'])
-		env.Append(CCFLAGS=['/DWINAPI_FAMILY=WINAPI_FAMILY_APP', '/D_WIN32_WINNT=0x0603', '/DNTDDI_VERSION=0x06030000'])
+        env.Append(CCFLAGS=string.split('/MP /GS /wd"4453" /wd"28204" /Zc:wchar_t /Gm- /Od /fp:precise /D "_UNICODE" /D "UNICODE" /D "WINAPI_FAMILY=WINAPI_FAMILY_APP" /errorReport:prompt /WX- /Zc:forScope /RTC1 /Gd /MDd /EHsc /nologo'))
+        env.Append(CXXFLAGS=string.split('/ZW'))
+        env.Append(CCFLAGS=['/AI', os.environ['VCINSTALLDIR']+'\\vcpackages', '/AI', os.environ['WINDOWSSDKDIR']+'\\References\\CommonConfiguration\\Neutral'])
+        env.Append(CCFLAGS=['/DWINAPI_FAMILY=WINAPI_FAMILY_APP', '/D_WIN32_WINNT=0x0603', '/DNTDDI_VERSION=0x06030000'])
 
 
-		env['ENV'] = os.environ;
+        env['ENV'] = os.environ;
 
 
 
 
-	env["PROGSUFFIX"]="."+arch+env["PROGSUFFIX"]
-	env["OBJSUFFIX"]="."+arch+env["OBJSUFFIX"]
-	env["LIBSUFFIX"]="."+arch+env["LIBSUFFIX"]
+    env["PROGSUFFIX"]="."+arch+env["PROGSUFFIX"]
+    env["OBJSUFFIX"]="."+arch+env["OBJSUFFIX"]
+    env["LIBSUFFIX"]="."+arch+env["LIBSUFFIX"]
 
 
 
 
-	#env.Append(CCFLAGS=['/Gd','/GR','/nologo', '/EHsc'])
-	#env.Append(CXXFLAGS=['/TP', '/ZW'])
-	#env.Append(CPPFLAGS=['/DMSVC', '/GR', ])
-	##env.Append(CCFLAGS=['/I'+os.getenv("WindowsSdkDir")+"/Include"])
-	env.Append(CCFLAGS=['/DWINRT_ENABLED'])
-	env.Append(CCFLAGS=['/DWINDOWS_ENABLED'])
-	env.Append(CCFLAGS=['/DRTAUDIO_ENABLED'])
-	#env.Append(CCFLAGS=['/DWIN32'])
-	env.Append(CCFLAGS=['/DTYPED_METHOD_BIND'])
+    #env.Append(CCFLAGS=['/Gd','/GR','/nologo', '/EHsc'])
+    #env.Append(CXXFLAGS=['/TP', '/ZW'])
+    #env.Append(CPPFLAGS=['/DMSVC', '/GR', ])
+    ##env.Append(CCFLAGS=['/I'+os.getenv("WindowsSdkDir")+"/Include"])
+    env.Append(CCFLAGS=['/DWINRT_ENABLED'])
+    env.Append(CCFLAGS=['/DWINDOWS_ENABLED'])
+    env.Append(CCFLAGS=['/DRTAUDIO_ENABLED'])
+    #env.Append(CCFLAGS=['/DWIN32'])
+    env.Append(CCFLAGS=['/DTYPED_METHOD_BIND'])
 
 
-	env.Append(CCFLAGS=['/DGLES2_ENABLED'])
-	#env.Append(CCFLAGS=['/DGLES1_ENABLED'])
+    env.Append(CCFLAGS=['/DGLES2_ENABLED'])
+    #env.Append(CCFLAGS=['/DGLES1_ENABLED'])
 
 
-	LIBS=[
-		#'winmm',
-		'libEGL',
-		'libGLESv2',
-		'libANGLE',
-		#'kernel32','ole32','user32', 'advapi32'
-		]
-	env.Append(LINKFLAGS=[p+".lib" for p in LIBS])
+    LIBS=[
+        #'winmm',
+        'libEGL',
+        'libGLESv2',
+        'libANGLE',
+        #'kernel32','ole32','user32', 'advapi32'
+    ]
+    env.Append(LINKFLAGS=[p+".lib" for p in LIBS])
 
 
-	import methods
-	env.Append( BUILDERS = { 'GLSL120' : env.Builder(action = methods.build_legacygl_headers, suffix = 'glsl.h',src_suffix = '.glsl') } )
-	env.Append( BUILDERS = { 'GLSL' : env.Builder(action = methods.build_glsl_headers, suffix = 'glsl.h',src_suffix = '.glsl') } )
-	env.Append( BUILDERS = { 'HLSL9' : env.Builder(action = methods.build_hlsl_dx9_headers, suffix = 'hlsl.h',src_suffix = '.hlsl') } )
-	env.Append( BUILDERS = { 'GLSL120GLES' : env.Builder(action = methods.build_gles2_headers, suffix = 'glsl.h',src_suffix = '.glsl') } )
+    import methods
+    env.Append( BUILDERS = { 'GLSL120' : env.Builder(action = methods.build_legacygl_headers, suffix = 'glsl.h',src_suffix = '.glsl') } )
+    env.Append( BUILDERS = { 'GLSL' : env.Builder(action = methods.build_glsl_headers, suffix = 'glsl.h',src_suffix = '.glsl') } )
+    env.Append( BUILDERS = { 'HLSL9' : env.Builder(action = methods.build_hlsl_dx9_headers, suffix = 'hlsl.h',src_suffix = '.hlsl') } )
+    env.Append( BUILDERS = { 'GLSL120GLES' : env.Builder(action = methods.build_gles2_headers, suffix = 'glsl.h',src_suffix = '.glsl') } )
 
 
 
 
 #/c/Program Files (x86)/Windows Phone Kits/8.1/lib/ARM/WindowsPhoneCore.lib
 #/c/Program Files (x86)/Windows Phone Kits/8.1/lib/ARM/WindowsPhoneCore.lib

+ 4 - 4
platform/x11/SCsub

@@ -4,10 +4,10 @@ Import('env')
 
 
 
 
 common_x11=[\
 common_x11=[\
-	"context_gl_x11.cpp",\
-	"os_x11.cpp",\
-	"key_mapping_x11.cpp",\
-	"joystick_linux.cpp",\
+    "context_gl_x11.cpp",\
+    "os_x11.cpp",\
+    "key_mapping_x11.cpp",\
+    "joystick_linux.cpp",\
 ]
 ]
 
 
 env.Program('#bin/godot',['godot_x11.cpp']+common_x11)
 env.Program('#bin/godot',['godot_x11.cpp']+common_x11)

+ 159 - 159
platform/x11/detect.py

@@ -5,230 +5,230 @@ import platform
 
 
 
 
 def is_active():
 def is_active():
-	return True
+    return True
 
 
 def get_name():
 def get_name():
-        return "X11"
+    return "X11"
 
 
 
 
 def can_build():
 def can_build():
 
 
-	if (os.name!="posix"):
-		return False
+    if (os.name!="posix"):
+        return False
 
 
-	if sys.platform == "darwin":
-		return False # no x11 on mac for now
+    if sys.platform == "darwin":
+        return False # no x11 on mac for now
 
 
-	errorval=os.system("pkg-config --version > /dev/null")
+    errorval=os.system("pkg-config --version > /dev/null")
 
 
-	if (errorval):
-		print("pkg-config not found.. x11 disabled.")
-		return False
+    if (errorval):
+        print("pkg-config not found.. x11 disabled.")
+        return False
 
 
-	x11_error=os.system("pkg-config x11 --modversion > /dev/null ")
-	if (x11_error):
-		print("X11 not found.. x11 disabled.")
-		return False
+    x11_error=os.system("pkg-config x11 --modversion > /dev/null ")
+    if (x11_error):
+        print("X11 not found.. x11 disabled.")
+        return False
 
 
-        ssl_error=os.system("pkg-config openssl --modversion > /dev/null ")
-        if (ssl_error):
-                print("OpenSSL not found.. x11 disabled.")
-                return False
+    ssl_error=os.system("pkg-config openssl --modversion > /dev/null ")
+    if (ssl_error):
+        print("OpenSSL not found.. x11 disabled.")
+        return False
 
 
-	x11_error=os.system("pkg-config xcursor --modversion > /dev/null ")
-	if (x11_error):
-		print("xcursor not found.. x11 disabled.")
-		return False
+    x11_error=os.system("pkg-config xcursor --modversion > /dev/null ")
+    if (x11_error):
+        print("xcursor not found.. x11 disabled.")
+        return False
 
 
-	x11_error=os.system("pkg-config xinerama --modversion > /dev/null ")
-	if (x11_error):
-		print("xinerama not found.. x11 disabled.")
-		return False
+    x11_error=os.system("pkg-config xinerama --modversion > /dev/null ")
+    if (x11_error):
+        print("xinerama not found.. x11 disabled.")
+        return False
 
 
-	x11_error=os.system("pkg-config xrandr --modversion > /dev/null ")
-	if (x11_error):
-			print("xrandr not found.. x11 disabled.")
-			return False
+    x11_error=os.system("pkg-config xrandr --modversion > /dev/null ")
+    if (x11_error):
+        print("xrandr not found.. x11 disabled.")
+        return False
 
 
 
 
-	return True # X11 enabled
+    return True # X11 enabled
 
 
 def get_opts():
 def get_opts():
 
 
-	return [
-	('use_llvm','Use llvm compiler','no'),
-	('use_static_cpp','link stdc++ statically','no'),
-	('use_sanitizer','Use llvm compiler sanitize address','no'),
-	('use_leak_sanitizer','Use llvm compiler sanitize memory leaks','no'),
-	('pulseaudio','Detect & Use pulseaudio','yes'),
-	('udev','Use udev for gamepad connection callbacks','no'),
-	('debug_release', 'Add debug symbols to release version','no'),
-	]
+    return [
+        ('use_llvm','Use llvm compiler','no'),
+        ('use_static_cpp','link stdc++ statically','no'),
+        ('use_sanitizer','Use llvm compiler sanitize address','no'),
+        ('use_leak_sanitizer','Use llvm compiler sanitize memory leaks','no'),
+        ('pulseaudio','Detect & Use pulseaudio','yes'),
+        ('udev','Use udev for gamepad connection callbacks','no'),
+        ('debug_release', 'Add debug symbols to release version','no'),
+    ]
 
 
 def get_flags():
 def get_flags():
 
 
-	return [
-	("openssl", "system"),
-	('freetype', 'system'),
-	('libpng', 'system'),
-	]
+    return [
+        ("openssl", "system"),
+        ('freetype', 'system'),
+        ('libpng', 'system'),
+    ]
 
 
 
 
 
 
 def configure(env):
 def configure(env):
 
 
-	is64=sys.maxsize > 2**32
+    is64=sys.maxsize > 2**32
 
 
-	if (env["bits"]=="default"):
-		if (is64):
-			env["bits"]="64"
-		else:
-			env["bits"]="32"
+    if (env["bits"]=="default"):
+        if (is64):
+            env["bits"]="64"
+        else:
+            env["bits"]="32"
 
 
-	env.Append(CPPPATH=['#platform/x11'])
-	if (env["use_llvm"]=="yes"):
-		if 'clang++' not in env['CXX']:
-			env["CC"]="clang"
-			env["CXX"]="clang++"
-			env["LD"]="clang++"
-		env.Append(CPPFLAGS=['-DTYPED_METHOD_BIND'])
-		env.extra_suffix=".llvm"
+    env.Append(CPPPATH=['#platform/x11'])
+    if (env["use_llvm"]=="yes"):
+        if 'clang++' not in env['CXX']:
+            env["CC"]="clang"
+            env["CXX"]="clang++"
+            env["LD"]="clang++"
+        env.Append(CPPFLAGS=['-DTYPED_METHOD_BIND'])
+        env.extra_suffix=".llvm"
 
 
-	if (env["use_sanitizer"]=="yes"):
-		env.Append(CXXFLAGS=['-fsanitize=address','-fno-omit-frame-pointer'])
-		env.Append(LINKFLAGS=['-fsanitize=address'])
-		env.extra_suffix+="s"
+    if (env["use_sanitizer"]=="yes"):
+        env.Append(CXXFLAGS=['-fsanitize=address','-fno-omit-frame-pointer'])
+        env.Append(LINKFLAGS=['-fsanitize=address'])
+        env.extra_suffix+="s"
 
 
-	if (env["use_leak_sanitizer"]=="yes"):
-		env.Append(CXXFLAGS=['-fsanitize=address','-fno-omit-frame-pointer'])
-		env.Append(LINKFLAGS=['-fsanitize=address'])
-		env.extra_suffix+="s"
+    if (env["use_leak_sanitizer"]=="yes"):
+        env.Append(CXXFLAGS=['-fsanitize=address','-fno-omit-frame-pointer'])
+        env.Append(LINKFLAGS=['-fsanitize=address'])
+        env.extra_suffix+="s"
 
 
 
 
-	#if (env["tools"]=="no"):
-	#	#no tools suffix
-	#	env['OBJSUFFIX'] = ".nt"+env['OBJSUFFIX']
-	#	env['LIBSUFFIX'] = ".nt"+env['LIBSUFFIX']
+    #if (env["tools"]=="no"):
+    #	#no tools suffix
+    #	env['OBJSUFFIX'] = ".nt"+env['OBJSUFFIX']
+    #	env['LIBSUFFIX'] = ".nt"+env['LIBSUFFIX']
 
 
 
 
-	if (env["target"]=="release"):
+    if (env["target"]=="release"):
 
 
-		if (env["debug_release"]=="yes"):
-			env.Append(CCFLAGS=['-g2'])
-		else:
-			env.Append(CCFLAGS=['-O3','-ffast-math'])
+        if (env["debug_release"]=="yes"):
+            env.Append(CCFLAGS=['-g2'])
+        else:
+            env.Append(CCFLAGS=['-O3','-ffast-math'])
 
 
-	elif (env["target"]=="release_debug"):
+    elif (env["target"]=="release_debug"):
 
 
-		env.Append(CCFLAGS=['-O2','-ffast-math','-DDEBUG_ENABLED'])
-		if (env["debug_release"]=="yes"):
-			env.Append(CCFLAGS=['-g2'])
+        env.Append(CCFLAGS=['-O2','-ffast-math','-DDEBUG_ENABLED'])
+        if (env["debug_release"]=="yes"):
+            env.Append(CCFLAGS=['-g2'])
 
 
-	elif (env["target"]=="debug"):
+    elif (env["target"]=="debug"):
 
 
-		env.Append(CCFLAGS=['-g2', '-Wall','-DDEBUG_ENABLED','-DDEBUG_MEMORY_ENABLED'])
+        env.Append(CCFLAGS=['-g2', '-Wall','-DDEBUG_ENABLED','-DDEBUG_MEMORY_ENABLED'])
 
 
-	env.ParseConfig('pkg-config x11 --cflags --libs')
-	env.ParseConfig('pkg-config xinerama --cflags --libs')
-	env.ParseConfig('pkg-config xcursor --cflags --libs')
-	env.ParseConfig('pkg-config xrandr --cflags --libs')
+    env.ParseConfig('pkg-config x11 --cflags --libs')
+    env.ParseConfig('pkg-config xinerama --cflags --libs')
+    env.ParseConfig('pkg-config xcursor --cflags --libs')
+    env.ParseConfig('pkg-config xrandr --cflags --libs')
 
 
-	if (env["openssl"] == "system"):
-		env.ParseConfig('pkg-config openssl --cflags --libs')
+    if (env["openssl"] == "system"):
+        env.ParseConfig('pkg-config openssl --cflags --libs')
 
 
-	if (env["libwebp"] == "system"):
-		env.ParseConfig('pkg-config libwebp --cflags --libs')
+    if (env["libwebp"] == "system"):
+        env.ParseConfig('pkg-config libwebp --cflags --libs')
 
 
-	if (env["freetype"] == "system"):
-		env["libpng"] = "system"  # Freetype links against libpng
-		env.ParseConfig('pkg-config freetype2 --cflags --libs')
+    if (env["freetype"] == "system"):
+        env["libpng"] = "system"  # Freetype links against libpng
+        env.ParseConfig('pkg-config freetype2 --cflags --libs')
 
 
-	if (env["libpng"] == "system"):
-		env.ParseConfig('pkg-config libpng --cflags --libs')
+    if (env["libpng"] == "system"):
+        env.ParseConfig('pkg-config libpng --cflags --libs')
 
 
-	if (env["squish"] == "system" and env["tools"] == "yes"):
-		env.ParseConfig('pkg-config libsquish --cflags --libs')
+    if (env["squish"] == "system" and env["tools"] == "yes"):
+        env.ParseConfig('pkg-config libsquish --cflags --libs')
 
 
-	# Sound and video libraries
-	# Keep the order as it triggers chained dependencies (ogg needed by others, etc.)
+    # Sound and video libraries
+    # Keep the order as it triggers chained dependencies (ogg needed by others, etc.)
 
 
-	if (env["libtheora"] == "system"):
-		env["libogg"] = "system"  # Needed to link against system libtheora
-		env["libvorbis"] = "system"  # Needed to link against system libtheora
-		env.ParseConfig('pkg-config theora theoradec --cflags --libs')
+    if (env["libtheora"] == "system"):
+        env["libogg"] = "system"  # Needed to link against system libtheora
+        env["libvorbis"] = "system"  # Needed to link against system libtheora
+        env.ParseConfig('pkg-config theora theoradec --cflags --libs')
 
 
-	if (env["libvorbis"] == "system"):
-		env["libogg"] = "system"  # Needed to link against system libvorbis
-		env.ParseConfig('pkg-config vorbis vorbisfile --cflags --libs')
+    if (env["libvorbis"] == "system"):
+        env["libogg"] = "system"  # Needed to link against system libvorbis
+        env.ParseConfig('pkg-config vorbis vorbisfile --cflags --libs')
 
 
-	if (env["opus"] == "system"):
-		env["libogg"] = "system"  # Needed to link against system opus
-		env.ParseConfig('pkg-config opus opusfile --cflags --libs')
+    if (env["opus"] == "system"):
+        env["libogg"] = "system"  # Needed to link against system opus
+        env.ParseConfig('pkg-config opus opusfile --cflags --libs')
 
 
-	if (env["libogg"] == "system"):
-		env.ParseConfig('pkg-config ogg --cflags --libs')
+    if (env["libogg"] == "system"):
+        env.ParseConfig('pkg-config ogg --cflags --libs')
 
 
 
 
-	env.Append(CPPFLAGS=['-DOPENGL_ENABLED'])
+    env.Append(CPPFLAGS=['-DOPENGL_ENABLED'])
 
 
-	if (env["glew"] == "system"):
-		env.ParseConfig('pkg-config glew --cflags --libs')
+    if (env["glew"] == "system"):
+        env.ParseConfig('pkg-config glew --cflags --libs')
 
 
-	if os.system("pkg-config --exists alsa")==0:
-		print("Enabling ALSA")
-		env.Append(CPPFLAGS=["-DALSA_ENABLED"])
-		env.ParseConfig('pkg-config alsa --cflags --libs')
-	else:
-		print("ALSA libraries not found, disabling driver")
+    if os.system("pkg-config --exists alsa")==0:
+        print("Enabling ALSA")
+        env.Append(CPPFLAGS=["-DALSA_ENABLED"])
+        env.ParseConfig('pkg-config alsa --cflags --libs')
+    else:
+        print("ALSA libraries not found, disabling driver")
 
 
-	if (platform.system() == "Linux"):
-		env.Append(CPPFLAGS=["-DJOYDEV_ENABLED"])
-	if (env["udev"]=="yes"):
-		# pkg-config returns 0 when the lib exists...
-		found_udev = not os.system("pkg-config --exists libudev")
+    if (platform.system() == "Linux"):
+        env.Append(CPPFLAGS=["-DJOYDEV_ENABLED"])
+    if (env["udev"]=="yes"):
+        # pkg-config returns 0 when the lib exists...
+        found_udev = not os.system("pkg-config --exists libudev")
 
 
-		if (found_udev):
-			print("Enabling udev support")
-			env.Append(CPPFLAGS=["-DUDEV_ENABLED"])
-			env.ParseConfig('pkg-config libudev --cflags --libs')
-		else:
-			print("libudev development libraries not found, disabling udev support")
+        if (found_udev):
+            print("Enabling udev support")
+            env.Append(CPPFLAGS=["-DUDEV_ENABLED"])
+            env.ParseConfig('pkg-config libudev --cflags --libs')
+        else:
+            print("libudev development libraries not found, disabling udev support")
 
 
-	if (env["pulseaudio"]=="yes"):
-		if not os.system("pkg-config --exists libpulse-simple"):
-			print("Enabling PulseAudio")
-			env.Append(CPPFLAGS=["-DPULSEAUDIO_ENABLED"])
-			env.ParseConfig('pkg-config --cflags --libs libpulse-simple')
-		else:
-			print("PulseAudio development libraries not found, disabling driver")
+    if (env["pulseaudio"]=="yes"):
+        if not os.system("pkg-config --exists libpulse-simple"):
+            print("Enabling PulseAudio")
+            env.Append(CPPFLAGS=["-DPULSEAUDIO_ENABLED"])
+            env.ParseConfig('pkg-config --cflags --libs libpulse-simple')
+        else:
+            print("PulseAudio development libraries not found, disabling driver")
 
 
-	env.Append(CPPFLAGS=['-DX11_ENABLED','-DUNIX_ENABLED','-DGLES2_ENABLED','-DGLES_OVER_GL'])
-	env.Append(LIBS=['GL', 'pthread', 'z'])
-	if (platform.system() == "Linux"):
-		env.Append(LIBS='dl')
-	#env.Append(CPPFLAGS=['-DMPC_FIXED_POINT'])
+    env.Append(CPPFLAGS=['-DX11_ENABLED','-DUNIX_ENABLED','-DGLES2_ENABLED','-DGLES_OVER_GL'])
+    env.Append(LIBS=['GL', 'pthread', 'z'])
+    if (platform.system() == "Linux"):
+        env.Append(LIBS='dl')
+    #env.Append(CPPFLAGS=['-DMPC_FIXED_POINT'])
 
 
 #host compiler is default..
 #host compiler is default..
 
 
-	if (is64 and env["bits"]=="32"):
-		env.Append(CPPFLAGS=['-m32'])
-		env.Append(LINKFLAGS=['-m32','-L/usr/lib/i386-linux-gnu'])
-	elif (not is64 and env["bits"]=="64"):
-		env.Append(CPPFLAGS=['-m64'])
-		env.Append(LINKFLAGS=['-m64','-L/usr/lib/i686-linux-gnu'])
+    if (is64 and env["bits"]=="32"):
+        env.Append(CPPFLAGS=['-m32'])
+        env.Append(LINKFLAGS=['-m32','-L/usr/lib/i386-linux-gnu'])
+    elif (not is64 and env["bits"]=="64"):
+        env.Append(CPPFLAGS=['-m64'])
+        env.Append(LINKFLAGS=['-m64','-L/usr/lib/i686-linux-gnu'])
 
 
 
 
-	import methods
+    import methods
 
 
-	env.Append( BUILDERS = { 'GLSL120' : env.Builder(action = methods.build_legacygl_headers, suffix = 'glsl.h',src_suffix = '.glsl') } )
-	env.Append( BUILDERS = { 'GLSL' : env.Builder(action = methods.build_glsl_headers, suffix = 'glsl.h',src_suffix = '.glsl') } )
-	env.Append( BUILDERS = { 'GLSL120GLES' : env.Builder(action = methods.build_gles2_headers, suffix = 'glsl.h',src_suffix = '.glsl') } )
-	#env.Append( BUILDERS = { 'HLSL9' : env.Builder(action = methods.build_hlsl_dx9_headers, suffix = 'hlsl.h',src_suffix = '.hlsl') } )
+    env.Append( BUILDERS = { 'GLSL120' : env.Builder(action = methods.build_legacygl_headers, suffix = 'glsl.h',src_suffix = '.glsl') } )
+    env.Append( BUILDERS = { 'GLSL' : env.Builder(action = methods.build_glsl_headers, suffix = 'glsl.h',src_suffix = '.glsl') } )
+    env.Append( BUILDERS = { 'GLSL120GLES' : env.Builder(action = methods.build_gles2_headers, suffix = 'glsl.h',src_suffix = '.glsl') } )
+    #env.Append( BUILDERS = { 'HLSL9' : env.Builder(action = methods.build_hlsl_dx9_headers, suffix = 'hlsl.h',src_suffix = '.hlsl') } )
 
 
-	if (env["use_static_cpp"]=="yes"):
-		env.Append(LINKFLAGS=['-static-libstdc++'])
+    if (env["use_static_cpp"]=="yes"):
+        env.Append(LINKFLAGS=['-static-libstdc++'])
 
 
-	list_of_x86 = ['x86_64', 'x86', 'i386', 'i586']
-	if any(platform.machine() in s for s in list_of_x86):
-		env["x86_libtheora_opt_gcc"]=True
+    list_of_x86 = ['x86_64', 'x86', 'i386', 'i586']
+    if any(platform.machine() in s for s in list_of_x86):
+        env["x86_libtheora_opt_gcc"]=True
 
 

+ 3 - 3
scene/3d/SCsub

@@ -5,9 +5,9 @@ Import('env')
 
 
 if (env["disable_3d"]=="yes"):
 if (env["disable_3d"]=="yes"):
 
 
-	env.scene_sources.append("3d/spatial.cpp")
-	env.scene_sources.append("3d/skeleton.cpp")
+    env.scene_sources.append("3d/spatial.cpp")
+    env.scene_sources.append("3d/skeleton.cpp")
 else:
 else:
-	env.add_source_files(env.scene_sources,"*.cpp")
+    env.add_source_files(env.scene_sources,"*.cpp")
 
 
 Export('env')
 Export('env')

+ 26 - 26
scene/resources/default_theme/make_header.py

@@ -22,21 +22,21 @@ f.write("\n\n\n");
 
 
 for x in pixmaps:
 for x in pixmaps:
 
 
-	var_str=x[:-4]+"_png";
+    var_str=x[:-4]+"_png";
 
 
-	f.write("static const unsigned char "+ var_str +"[]={\n");
+    f.write("static const unsigned char "+ var_str +"[]={\n");
 
 
-	pngf=open(x,"rb");
+    pngf=open(x,"rb");
 
 
-	b=pngf.read(1);
-	while(len(b)==1):
-		f.write(hex(ord(b)))
-		b=pngf.read(1);
-		if (len(b)==1):
-			f.write(",")
+    b=pngf.read(1);
+    while(len(b)==1):
+        f.write(hex(ord(b)))
+        b=pngf.read(1);
+        if (len(b)==1):
+            f.write(",")
 
 
-	f.write("\n};\n\n\n");
-	pngf.close();
+    f.write("\n};\n\n\n");
+    pngf.close();
 
 
 #Generate shaders block
 #Generate shaders block
 
 
@@ -48,25 +48,25 @@ f.write("\n\n\n");
 
 
 for x in shaders:
 for x in shaders:
 
 
-	var_str=x[:-4]+"_shader_code";
+    var_str=x[:-4]+"_shader_code";
 
 
-	f.write("static const char *"+ var_str +"=\n");
+    f.write("static const char *"+ var_str +"=\n");
 
 
-	sf=open(x,"rb");
+    sf=open(x,"rb");
 
 
 
 
-	b=sf.readline();
-	while(b!=""):
-		if (b.endswith("\r\n")):
-			b=b[:-2]
-		if (b.endswith("\n")):
-			b=b[:-1]
-		f.write("			\""+b)
-		b=sf.readline();
-		if (b!=""):
-			f.write("\"\n")
+    b=sf.readline();
+    while(b!=""):
+        if (b.endswith("\r\n")):
+            b=b[:-2]
+        if (b.endswith("\n")):
+            b=b[:-1]
+        f.write("			\""+b)
+        b=sf.readline();
+        if (b!=""):
+            f.write("\"\n")
 
 
-	f.write("\";\n\n\n");
-	sf.close();
+    f.write("\";\n\n\n");
+    sf.close();
 
 
 f.close();
 f.close();

+ 82 - 82
tools/SCsub

@@ -11,115 +11,115 @@ Export('env')
 def make_translations_header(target,source,env):
 def make_translations_header(target,source,env):
 
 
 
 
-	dst = target[0].srcnode().abspath
+    dst = target[0].srcnode().abspath
 
 
-	g = open(dst,"wb")
+    g = open(dst,"wb")
 
 
-	
-	""""
+
+    """"
 	"""
 	"""
 
 
-	g.write("/* THIS FILE IS GENERATED DO NOT EDIT */\n")
-	g.write("#ifndef _EDITOR_TRANSLATIONS_H\n")
-	g.write("#define _EDITOR_TRANSLATIONS_H\n")
+    g.write("/* THIS FILE IS GENERATED DO NOT EDIT */\n")
+    g.write("#ifndef _EDITOR_TRANSLATIONS_H\n")
+    g.write("#define _EDITOR_TRANSLATIONS_H\n")
 
 
-	import zlib
-	import os.path
+    import zlib
+    import os.path
 
 
-	paths = [node.srcnode().abspath for node in source]
-	sorted_paths = sorted(paths, key=lambda path: os.path.splitext(os.path.basename(path))[0])
+    paths = [node.srcnode().abspath for node in source]
+    sorted_paths = sorted(paths, key=lambda path: os.path.splitext(os.path.basename(path))[0])
 
 
-	xl_names=[]
-	for i in range(len(sorted_paths)):
-		print("Appending translation: "+sorted_paths[i])
-		f = open(sorted_paths[i],"rb")
-		buf = f.read()
-		decomp_size = len(buf)
-		buf = zlib.compress(buf)
-		name =  os.path.splitext(os.path.basename(sorted_paths[i]))[0]
+    xl_names=[]
+    for i in range(len(sorted_paths)):
+        print("Appending translation: "+sorted_paths[i])
+        f = open(sorted_paths[i],"rb")
+        buf = f.read()
+        decomp_size = len(buf)
+        buf = zlib.compress(buf)
+        name =  os.path.splitext(os.path.basename(sorted_paths[i]))[0]
 
 
-		#g.write("static const int _translation_"+name+"_compressed_size="+str(len(buf))+";\n")
-		#g.write("static const int _translation_"+name+"_uncompressed_size="+str(decomp_size)+";\n")
-		g.write("static const unsigned char _translation_"+name+"_compressed[]={\n")
-		for i in range(len(buf)):
-			g.write(str(ord(buf[i]))+",\n")
+        #g.write("static const int _translation_"+name+"_compressed_size="+str(len(buf))+";\n")
+        #g.write("static const int _translation_"+name+"_uncompressed_size="+str(decomp_size)+";\n")
+        g.write("static const unsigned char _translation_"+name+"_compressed[]={\n")
+        for i in range(len(buf)):
+            g.write(str(ord(buf[i]))+",\n")
 
 
-		g.write("};\n")
+        g.write("};\n")
 
 
-		xl_names.append([name,len(buf),str(decomp_size)])
+        xl_names.append([name,len(buf),str(decomp_size)])
 
 
-	g.write("struct EditorTranslationList {\n")
-	g.write("\tconst char* lang;\n");
-	g.write("\tint comp_size;\n");
-	g.write("\tint uncomp_size;\n");
-	g.write("\tconst unsigned char* data;\n");
-	g.write("};\n\n");
-	g.write("static EditorTranslationList _editor_translations[]={\n")
-	for x in xl_names:
-		g.write("\t{ \""+x[0]+"\", "+str(x[1])+", "+str(x[2])+",_translation_"+x[0]+"_compressed},\n")
-	g.write("\t{NULL,0,0,NULL}\n")
-	g.write("};\n")
+    g.write("struct EditorTranslationList {\n")
+    g.write("\tconst char* lang;\n");
+    g.write("\tint comp_size;\n");
+    g.write("\tint uncomp_size;\n");
+    g.write("\tconst unsigned char* data;\n");
+    g.write("};\n\n");
+    g.write("static EditorTranslationList _editor_translations[]={\n")
+    for x in xl_names:
+        g.write("\t{ \""+x[0]+"\", "+str(x[1])+", "+str(x[2])+",_translation_"+x[0]+"_compressed},\n")
+    g.write("\t{NULL,0,0,NULL}\n")
+    g.write("};\n")
 
 
-	g.write("#endif")
+    g.write("#endif")
 
 
 
 
 def make_fonts_header(target,source,env):
 def make_fonts_header(target,source,env):
 
 
 
 
-	dst = target[0].srcnode().abspath
+    dst = target[0].srcnode().abspath
+
+    g = open(dst,"wb")
 
 
-	g = open(dst,"wb")
 
 
-	
-	""""
+    """"
 	"""
 	"""
 
 
-	g.write("/* THIS FILE IS GENERATED DO NOT EDIT */\n")
-	g.write("#ifndef _EDITOR_FONTS_H\n")
-	g.write("#define _EDITOR_FONTS_H\n")
-
-	#saving uncompressed, since freetype will reference from memory pointer
-	xl_names=[]
-	for i in range(len(source)):
-		print("Appending font: "+source[i].srcnode().abspath)
-		f = open(source[i].srcnode().abspath,"rb")
-		buf = f.read()
-		import os.path
-	
-		name =  os.path.splitext(os.path.basename(source[i].srcnode().abspath))[0]
-
-		g.write("static const int _font_"+name+"_size="+str(len(buf))+";\n")
-		g.write("static const unsigned char _font_"+name+"[]={\n")
-		for i in range(len(buf)):
-			g.write(str(ord(buf[i]))+",\n")
-
-		g.write("};\n")
-	
-	g.write("#endif")
-	
-	
+    g.write("/* THIS FILE IS GENERATED DO NOT EDIT */\n")
+    g.write("#ifndef _EDITOR_FONTS_H\n")
+    g.write("#define _EDITOR_FONTS_H\n")
+
+    #saving uncompressed, since freetype will reference from memory pointer
+    xl_names=[]
+    for i in range(len(source)):
+        print("Appending font: "+source[i].srcnode().abspath)
+        f = open(source[i].srcnode().abspath,"rb")
+        buf = f.read()
+        import os.path
+
+        name =  os.path.splitext(os.path.basename(source[i].srcnode().abspath))[0]
+
+        g.write("static const int _font_"+name+"_size="+str(len(buf))+";\n")
+        g.write("static const unsigned char _font_"+name+"[]={\n")
+        for i in range(len(buf)):
+            g.write(str(ord(buf[i]))+",\n")
+
+        g.write("};\n")
+
+    g.write("#endif")
+
+
 if (env["tools"]!="no"):
 if (env["tools"]!="no"):
 
 
-	import glob
+    import glob
 
 
-	dir = env.Dir('.').abspath
-	tlist = glob.glob(dir + "/translations/*.po")
+    dir = env.Dir('.').abspath
+    tlist = glob.glob(dir + "/translations/*.po")
 
 
-	print("translations: ",tlist)
-	env.Depends('#tools/editor/translations.h',tlist)
-	env.Command('#tools/editor/translations.h',tlist,make_translations_header)
+    print("translations: ",tlist)
+    env.Depends('#tools/editor/translations.h',tlist)
+    env.Command('#tools/editor/translations.h',tlist,make_translations_header)
 
 
-	flist = glob.glob(dir + "/editor_fonts/*.ttf")
-	flist.append( glob.glob(dir + "/editor_fonts/*.otf") )
+    flist = glob.glob(dir + "/editor_fonts/*.ttf")
+    flist.append( glob.glob(dir + "/editor_fonts/*.otf") )
 
 
-	print("fonts: ",flist)
-	env.Depends('#tools/editor/builtin_fonts.h',flist)
-	env.Command('#tools/editor/builtin_fonts.h',flist,make_fonts_header)
+    print("fonts: ",flist)
+    env.Depends('#tools/editor/builtin_fonts.h',flist)
+    env.Command('#tools/editor/builtin_fonts.h',flist,make_fonts_header)
 
 
-	SConscript('editor/SCsub');
-	SConscript('collada/SCsub');
-	SConscript('doc/SCsub')
+    SConscript('editor/SCsub');
+    SConscript('collada/SCsub');
+    SConscript('doc/SCsub')
 
 
-	lib = env.Library("tool",env.tool_sources)
+    lib = env.Library("tool",env.tool_sources)
 
 
-	env.Prepend(LIBS=[lib])
+    env.Prepend(LIBS=[lib])

+ 63 - 63
tools/editor/SCsub

@@ -5,51 +5,51 @@ Import('env')
 
 
 def make_doc_header(target,source,env):
 def make_doc_header(target,source,env):
 
 
-	src = source[0].srcnode().abspath
-	dst = target[0].srcnode().abspath
-	f = open(src,"rb")
-	g = open(dst,"wb")
-	buf = f.read()
-	decomp_size = len(buf)
-	import zlib
-	buf = zlib.compress(buf)
+    src = source[0].srcnode().abspath
+    dst = target[0].srcnode().abspath
+    f = open(src,"rb")
+    g = open(dst,"wb")
+    buf = f.read()
+    decomp_size = len(buf)
+    import zlib
+    buf = zlib.compress(buf)
 
 
 
 
-	g.write("/* THIS FILE IS GENERATED DO NOT EDIT */\n")
-	g.write("#ifndef _DOC_DATA_RAW_H\n")
-	g.write("#define _DOC_DATA_RAW_H\n")
-	g.write("static const int _doc_data_compressed_size="+str(len(buf))+";\n")
-	g.write("static const int _doc_data_uncompressed_size="+str(decomp_size)+";\n")
-	g.write("static const unsigned char _doc_data_compressed[]={\n")
-	for i in range(len(buf)):
-		g.write(str(ord(buf[i]))+",\n")
-	g.write("};\n")
-	g.write("#endif")
+    g.write("/* THIS FILE IS GENERATED DO NOT EDIT */\n")
+    g.write("#ifndef _DOC_DATA_RAW_H\n")
+    g.write("#define _DOC_DATA_RAW_H\n")
+    g.write("static const int _doc_data_compressed_size="+str(len(buf))+";\n")
+    g.write("static const int _doc_data_uncompressed_size="+str(decomp_size)+";\n")
+    g.write("static const unsigned char _doc_data_compressed[]={\n")
+    for i in range(len(buf)):
+        g.write(str(ord(buf[i]))+",\n")
+    g.write("};\n")
+    g.write("#endif")
 
 
 
 
 
 
 def make_certs_header(target,source,env):
 def make_certs_header(target,source,env):
 
 
-	src = source[0].srcnode().abspath
-	dst = target[0].srcnode().abspath
-	f = open(src,"rb")
-	g = open(dst,"wb")
-	buf = f.read()
-	decomp_size = len(buf)
-	import zlib
-	buf = zlib.compress(buf)
+    src = source[0].srcnode().abspath
+    dst = target[0].srcnode().abspath
+    f = open(src,"rb")
+    g = open(dst,"wb")
+    buf = f.read()
+    decomp_size = len(buf)
+    import zlib
+    buf = zlib.compress(buf)
 
 
 
 
-	g.write("/* THIS FILE IS GENERATED DO NOT EDIT */\n")
-	g.write("#ifndef _CERTS_RAW_H\n")
-	g.write("#define _CERTS_RAW_H\n")
-	g.write("static const int _certs_compressed_size="+str(len(buf))+";\n")
-	g.write("static const int _certs_uncompressed_size="+str(decomp_size)+";\n")
-	g.write("static const unsigned char _certs_compressed[]={\n")
-	for i in range(len(buf)):
-		g.write(str(ord(buf[i]))+",\n")
-	g.write("};\n")
-	g.write("#endif")
+    g.write("/* THIS FILE IS GENERATED DO NOT EDIT */\n")
+    g.write("#ifndef _CERTS_RAW_H\n")
+    g.write("#define _CERTS_RAW_H\n")
+    g.write("static const int _certs_compressed_size="+str(len(buf))+";\n")
+    g.write("static const int _certs_uncompressed_size="+str(decomp_size)+";\n")
+    g.write("static const unsigned char _certs_compressed[]={\n")
+    for i in range(len(buf)):
+        g.write(str(ord(buf[i]))+",\n")
+    g.write("};\n")
+    g.write("#endif")
 
 
 
 
 
 
@@ -59,30 +59,30 @@ def make_certs_header(target,source,env):
 
 
 if (env["tools"]=="yes"):
 if (env["tools"]=="yes"):
 
 
-	reg_exporters_inc='#include "register_exporters.h"\n'
-	reg_exporters='void register_exporters() {\n'
-	for e in env.platform_exporters:
-		env.tool_sources.append("#platform/"+e+"/export/export.cpp")
-		reg_exporters+='\tregister_'+e+'_exporter();\n'
-		reg_exporters_inc+='#include "platform/'+e+'/export/export.h"\n'
-	reg_exporters+='}\n'
-	f = open("register_exporters.cpp","wb")
-	f.write(reg_exporters_inc)
-	f.write(reg_exporters)
-	f.close()
-
-	env.Depends("#tools/editor/doc_data_compressed.h","#doc/base/classes.xml")
-	env.Command("#tools/editor/doc_data_compressed.h","#doc/base/classes.xml",make_doc_header)
-
-	env.Depends("#tools/editor/certs_compressed.h","#tools/certs/ca-certificates.crt")
-	env.Command("#tools/editor/certs_compressed.h","#tools/certs/ca-certificates.crt",make_certs_header)
-
-	#make_doc_header(env.File("#tools/editor/doc_data_raw.h").srcnode().abspath,env.File("#doc/base/classes.xml").srcnode().abspath,env)
-
-	env.add_source_files(env.tool_sources,"*.cpp")
-
-	Export('env')
-	SConscript('icons/SCsub');
-	SConscript('plugins/SCsub');
-	SConscript('fileserver/SCsub');
-	SConscript('io_plugins/SCsub');
+    reg_exporters_inc='#include "register_exporters.h"\n'
+    reg_exporters='void register_exporters() {\n'
+    for e in env.platform_exporters:
+        env.tool_sources.append("#platform/"+e+"/export/export.cpp")
+        reg_exporters+='\tregister_'+e+'_exporter();\n'
+        reg_exporters_inc+='#include "platform/'+e+'/export/export.h"\n'
+    reg_exporters+='}\n'
+    f = open("register_exporters.cpp","wb")
+    f.write(reg_exporters_inc)
+    f.write(reg_exporters)
+    f.close()
+
+    env.Depends("#tools/editor/doc_data_compressed.h","#doc/base/classes.xml")
+    env.Command("#tools/editor/doc_data_compressed.h","#doc/base/classes.xml",make_doc_header)
+
+    env.Depends("#tools/editor/certs_compressed.h","#tools/certs/ca-certificates.crt")
+    env.Command("#tools/editor/certs_compressed.h","#tools/certs/ca-certificates.crt",make_certs_header)
+
+    #make_doc_header(env.File("#tools/editor/doc_data_raw.h").srcnode().abspath,env.File("#doc/base/classes.xml").srcnode().abspath,env)
+
+    env.add_source_files(env.tool_sources,"*.cpp")
+
+    Export('env')
+    SConscript('icons/SCsub');
+    SConscript('plugins/SCsub');
+    SConscript('fileserver/SCsub');
+    SConscript('io_plugins/SCsub');

+ 58 - 58
tools/editor/icons/SCsub

@@ -4,91 +4,91 @@ Import('env')
 
 
 def make_editor_icons_action(target, source, env):
 def make_editor_icons_action(target, source, env):
 
 
-	import os
-	import cStringIO
+    import os
+    import cStringIO
 
 
-	dst = target[0].srcnode().abspath
-	pixmaps = source
+    dst = target[0].srcnode().abspath
+    pixmaps = source
 
 
-	s = cStringIO.StringIO()
+    s = cStringIO.StringIO()
 
 
-	s.write("#include \"editor_icons.h\"\n\n")
- 	s.write("#include \"editor_scale.h\"\n\n")
-	s.write("#include \"scene/resources/theme.h\"\n\n")
+    s.write("#include \"editor_icons.h\"\n\n")
+    s.write("#include \"editor_scale.h\"\n\n")
+    s.write("#include \"scene/resources/theme.h\"\n\n")
 
 
-	hidpi_list=[]
+    hidpi_list=[]
 
 
-	for x in pixmaps:
+    for x in pixmaps:
 
 
-		x=str(x)
-		var_str=os.path.basename(x)[:-4]+"_png";
-		#print(var_str)
+        x=str(x)
+        var_str=os.path.basename(x)[:-4]+"_png";
+        #print(var_str)
 
 
-		s.write("static const unsigned char "+ var_str +"[]={\n");
+        s.write("static const unsigned char "+ var_str +"[]={\n");
 
 
-		pngf=open(x,"rb");
+        pngf=open(x,"rb");
 
 
-		b=pngf.read(1);
-		while(len(b)==1):
-			s.write(hex(ord(b)))
-			b=pngf.read(1);
-			if (len(b)==1):
-				s.write(",")
+        b=pngf.read(1);
+        while(len(b)==1):
+            s.write(hex(ord(b)))
+            b=pngf.read(1);
+            if (len(b)==1):
+                s.write(",")
 
 
-		s.write("\n};\n\n");
+        s.write("\n};\n\n");
 
 
-		pngf.close();
-		var_str=os.path.basename(x)[:-4]+"_hidpi_png";
-		try:
+        pngf.close();
+        var_str=os.path.basename(x)[:-4]+"_hidpi_png";
+        try:
 
 
-			pngf = open(os.path.dirname(x)+"/2x/"+os.path.basename(x), "rb")
+            pngf = open(os.path.dirname(x)+"/2x/"+os.path.basename(x), "rb")
 
 
-			s.write("static const unsigned char "+ var_str +"[]={\n");
+            s.write("static const unsigned char "+ var_str +"[]={\n");
 
 
-			b=pngf.read(1);
-			while(len(b)==1):
-				s.write(hex(ord(b)))
-				b=pngf.read(1);
-				if (len(b)==1):
-					s.write(",")
+            b=pngf.read(1);
+            while(len(b)==1):
+                s.write(hex(ord(b)))
+                b=pngf.read(1);
+                if (len(b)==1):
+                    s.write(",")
 
 
-			s.write("\n};\n\n\n");
-			hidpi_list.append(x)
+            s.write("\n};\n\n\n");
+            hidpi_list.append(x)
 
 
-		except:
-			s.write("static const unsigned char* "+ var_str +"=NULL;\n\n\n");
+        except:
+            s.write("static const unsigned char* "+ var_str +"=NULL;\n\n\n");
 
 
 
 
 
 
 
 
-	s.write("static Ref<ImageTexture> make_icon(const uint8_t* p_png,const uint8_t* p_hidpi_png) {\n")
-	s.write("\tRef<ImageTexture> texture( memnew( ImageTexture ) );\n")
-	s.write("\tImage img((editor_is_hidpi()&&p_hidpi_png)?p_hidpi_png:p_png);\n")
-	s.write("\tif (editor_is_hidpi() && !p_hidpi_png) { img.convert(Image::FORMAT_RGBA); img.expand_x2_hq2x(); }\n")
-	s.write("\ttexture->create_from_image( img,ImageTexture::FLAG_FILTER );\n")
-	s.write("\treturn texture;\n")
-	s.write("}\n\n")
+    s.write("static Ref<ImageTexture> make_icon(const uint8_t* p_png,const uint8_t* p_hidpi_png) {\n")
+    s.write("\tRef<ImageTexture> texture( memnew( ImageTexture ) );\n")
+    s.write("\tImage img((editor_is_hidpi()&&p_hidpi_png)?p_hidpi_png:p_png);\n")
+    s.write("\tif (editor_is_hidpi() && !p_hidpi_png) { img.convert(Image::FORMAT_RGBA); img.expand_x2_hq2x(); }\n")
+    s.write("\ttexture->create_from_image( img,ImageTexture::FLAG_FILTER );\n")
+    s.write("\treturn texture;\n")
+    s.write("}\n\n")
 
 
-	s.write("void editor_register_icons(Ref<Theme> p_theme) {\n\n")
+    s.write("void editor_register_icons(Ref<Theme> p_theme) {\n\n")
 
 
-	for x in pixmaps:
+    for x in pixmaps:
 
 
-		x=os.path.basename(str(x))
-		type=x[5:-4].title().replace("_","");
-		var_str=x[:-4]+"_png";
-		var_str_hidpi=x[:-4]+"_hidpi_png";
-		s.write("\tp_theme->set_icon(\""+type+"\",\"EditorIcons\",make_icon("+var_str+","+var_str_hidpi+"));\n");
+        x=os.path.basename(str(x))
+        type=x[5:-4].title().replace("_","");
+        var_str=x[:-4]+"_png";
+        var_str_hidpi=x[:-4]+"_hidpi_png";
+        s.write("\tp_theme->set_icon(\""+type+"\",\"EditorIcons\",make_icon("+var_str+","+var_str_hidpi+"));\n");
 
 
-	s.write("\n\n}\n\n");
+    s.write("\n\n}\n\n");
 
 
-	f = open(dst,"wb")
-	f.write(s.getvalue())
-	f.close()
-	s.close()
+    f = open(dst,"wb")
+    f.write(s.getvalue())
+    f.close()
+    s.close()
 
 
 make_editor_icons_builder = Builder(action=make_editor_icons_action,
 make_editor_icons_builder = Builder(action=make_editor_icons_action,
-							suffix = '.cpp',
-							src_suffix = '.png')
+                                    suffix = '.cpp',
+                                    src_suffix = '.png')
 env['BUILDERS']['MakeEditorIconsBuilder']=make_editor_icons_builder
 env['BUILDERS']['MakeEditorIconsBuilder']=make_editor_icons_builder
 env.Alias('editor_icons',[env.MakeEditorIconsBuilder('#tools/editor/editor_icons.cpp',Glob("*.png"))])
 env.Alias('editor_icons',[env.MakeEditorIconsBuilder('#tools/editor/editor_icons.cpp',Glob("*.png"))])
 
 

+ 31 - 31
tools/scripts/addheader.py

@@ -34,39 +34,39 @@ f = open("files","rb")
 fname = f.readline()
 fname = f.readline()
 while (fname!=""):
 while (fname!=""):
 
 
-  fr = open(fname.strip(),"rb")
-  l = fr.readline()
-  bc=False
-  fsingle = fname.strip()
+    fr = open(fname.strip(),"rb")
+    l = fr.readline()
+    bc=False
+    fsingle = fname.strip()
 
 
-  if (fsingle.find("/")!=-1):
-    fsingle=fsingle[fsingle.rfind("/")+1:]
-  rep_fl="$filename"
-  rep_fi=fsingle
-  len_fl=len(rep_fl)
-  len_fi=len(rep_fi)
-  if (len_fi<len_fl):
-    for x in range(len_fl-len_fi):
-      rep_fi+=" "
-  elif (len_fl<len_fi):
-    for x in range(len_fi-len_fl):
-      rep_fl+=" "
-  if (header.find(rep_fl)!=-1):
-    text=header.replace(rep_fl,rep_fi)
-  else:
-    text=header.replace("$filename",fsingle)
+    if (fsingle.find("/")!=-1):
+        fsingle=fsingle[fsingle.rfind("/")+1:]
+    rep_fl="$filename"
+    rep_fi=fsingle
+    len_fl=len(rep_fl)
+    len_fi=len(rep_fi)
+    if (len_fi<len_fl):
+        for x in range(len_fl-len_fi):
+            rep_fi+=" "
+    elif (len_fl<len_fi):
+        for x in range(len_fi-len_fl):
+            rep_fl+=" "
+    if (header.find(rep_fl)!=-1):
+        text=header.replace(rep_fl,rep_fi)
+    else:
+        text=header.replace("$filename",fsingle)
 
 
 
 
-  while (l!=""):
-    if ((l.find("//")!=0 and  l.find("/*")!=0 and l.strip()!="") or bc):
-      text+=l
-      bc=True
-    l=fr.readline()
+    while (l!=""):
+        if ((l.find("//")!=0 and  l.find("/*")!=0 and l.strip()!="") or bc):
+            text+=l
+            bc=True
+        l=fr.readline()
 
 
-  fr.close()
-  fr=open(fname.strip(),"wb")
-  fr.write(text)
-  fr.close()
-  #print(text)
-  fname=f.readline()
+    fr.close()
+    fr=open(fname.strip(),"wb")
+    fr.write(text)
+    fr.close()
+    #print(text)
+    fname=f.readline()
 
 

+ 28 - 28
tools/scripts/file-hex-array.py

@@ -3,33 +3,33 @@ import os.path
 import sys
 import sys
 
 
 def tof(filepath):
 def tof(filepath):
-	with open(filepath, 'r') as f:
-	    content = f.read()
-	content = content.replace("0x","")
-	content = content.split(',')
-	for i in range(len(content)):
-		if len(content[i]) == 1: content[i] = "0" + content[i]
-	content = "".join(content)
-	with open(filepath+".file", 'wb') as f:
-	    content = f.write(content.decode("hex"))
-	print(os.path.basename(filepath)+".file created.")
-	exit(0)
+    with open(filepath, 'r') as f:
+        content = f.read()
+    content = content.replace("0x","")
+    content = content.split(',')
+    for i in range(len(content)):
+        if len(content[i]) == 1: content[i] = "0" + content[i]
+    content = "".join(content)
+    with open(filepath+".file", 'wb') as f:
+        content = f.write(content.decode("hex"))
+    print(os.path.basename(filepath)+".file created.")
+    exit(0)
 
 
 def toa(filepath):
 def toa(filepath):
-	with open(filepath, 'rb') as f:
-	    content = f.read()
-	content = binascii.hexlify(content)
-	content = [content[i:i+2] for i in range(0, len(content), 2)]
-	content = ",0x".join(content)
-	content = "0x" + content
-	content = content.replace("0x00","0x0")
-	with open(filepath+".array", 'w') as f:
-	    content = f.write(content)
-	print(os.path.basename(filepath)+".array created.")
-	exit(0)
+    with open(filepath, 'rb') as f:
+        content = f.read()
+    content = binascii.hexlify(content)
+    content = [content[i:i+2] for i in range(0, len(content), 2)]
+    content = ",0x".join(content)
+    content = "0x" + content
+    content = content.replace("0x00","0x0")
+    with open(filepath+".array", 'w') as f:
+        content = f.write(content)
+    print(os.path.basename(filepath)+".array created.")
+    exit(0)
 
 
 def usage():
 def usage():
-	print("========================================================\n\
+    print("========================================================\n\
 #\n\
 #\n\
 # Usage: python file-hex-array.py [action] [option]\n\
 # Usage: python file-hex-array.py [action] [option]\n\
 #\n\
 #\n\
@@ -40,13 +40,13 @@ def usage():
 # Example : python file-hex-array.py toa 1.png\n\
 # Example : python file-hex-array.py toa 1.png\n\
 #\n\
 #\n\
 ========================================================")
 ========================================================")
-	exit(1)
+    exit(1)
 
 
 if len(sys.argv) != 3:
 if len(sys.argv) != 3:
-	usage()
+    usage()
 if sys.argv[1] == "toa" and os.path.isfile(sys.argv[2]):
 if sys.argv[1] == "toa" and os.path.isfile(sys.argv[2]):
-	toa(sys.argv[2])
+    toa(sys.argv[2])
 elif sys.argv[1] == "tof" and os.path.isfile(sys.argv[2]):
 elif sys.argv[1] == "tof" and os.path.isfile(sys.argv[2]):
-	tof(sys.argv[2])
+    tof(sys.argv[2])
 else:
 else:
-	usage()
+    usage()

+ 32 - 32
tools/scripts/make_bmfhdr.py

@@ -3,7 +3,7 @@
 import sys
 import sys
 
 
 if (len(sys.argv)!=2):
 if (len(sys.argv)!=2):
-  print("Pass me a .fnt argument!")
+    print("Pass me a .fnt argument!")
 
 
 f = open(sys.argv[1],"rb")
 f = open(sys.argv[1],"rb")
 
 
@@ -19,39 +19,39 @@ font_cc=0
 
 
 while(l!=""):
 while(l!=""):
 
 
-  fs = l.strip().find(" ")
-  if (fs==-1):
-    l=f.readline()
-    continue
-  t  = l[0:fs]
+    fs = l.strip().find(" ")
+    if (fs==-1):
+        l=f.readline()
+        continue
+    t  = l[0:fs]
 
 
-  dv = l[fs+1:].split(" ")
-  d = {}
-  for x in dv:
-    if (x.find("=")==-1):
-      continue
-    s = x.split("=")
-    d[ s[0] ] = s[1]
+    dv = l[fs+1:].split(" ")
+    d = {}
+    for x in dv:
+        if (x.find("=")==-1):
+            continue
+        s = x.split("=")
+        d[ s[0] ] = s[1]
 
 
 
 
-  if (t=="common"):
-    font_height=d["lineHeight"]
-    font_ascent=d["base"]
+    if (t=="common"):
+        font_height=d["lineHeight"]
+        font_ascent=d["base"]
 
 
-  if (t=="char"):
-    font_chars.append(d["id"])
-    font_chars.append(d["x"])
-    font_chars.append(d["y"])
-    font_chars.append(d["width"])
-    font_chars.append(d["height"])
-    font_chars.append(d["xoffset"])
-    font_chars.append(d["yoffset"])
-    font_chars.append(d["xadvance"])
-    font_cc+=1
+    if (t=="char"):
+        font_chars.append(d["id"])
+        font_chars.append(d["x"])
+        font_chars.append(d["y"])
+        font_chars.append(d["width"])
+        font_chars.append(d["height"])
+        font_chars.append(d["xoffset"])
+        font_chars.append(d["yoffset"])
+        font_chars.append(d["xadvance"])
+        font_cc+=1
 
 
 
 
 
 
-  l = f.readline()
+    l = f.readline()
 
 
 
 
 print("static const int _bi_font_"+name+"_height="+str(font_height)+";")
 print("static const int _bi_font_"+name+"_height="+str(font_height)+";")
@@ -60,11 +60,11 @@ print("static const int _bi_font_"+name+"_charcount="+str(font_cc)+";")
 cstr="static const int _bi_font_"+name+"_characters={"
 cstr="static const int _bi_font_"+name+"_characters={"
 for i in range(len(font_chars)):
 for i in range(len(font_chars)):
 
 
-  c=font_chars[i]
-  if (i>0):
-    cstr+=", "
-  cstr+=c
+    c=font_chars[i]
+    if (i>0):
+        cstr+=", "
+    cstr+=c
 
 
 cstr+=("};")
 cstr+=("};")
 
 
-print(cstr)
+print(cstr)

+ 50 - 50
tools/scripts/make_glwrapper.py

@@ -2,8 +2,8 @@
 import sys
 import sys
 
 
 if (len(sys.argv)<2):
 if (len(sys.argv)<2):
-  print("usage: make_glwrapper.py <headers>")
-  sys.exit(255)
+    print("usage: make_glwrapper.py <headers>")
+    sys.exit(255)
 
 
 
 
 functions=[]
 functions=[]
@@ -17,16 +17,16 @@ READ_CONSTANTS=2
 read_what=READ_TYPES
 read_what=READ_TYPES
 
 
 for x in (range(len(sys.argv)-1)):
 for x in (range(len(sys.argv)-1)):
-  f=open(sys.argv[x+1],"r")
+    f=open(sys.argv[x+1],"r")
 
 
-  while(True):
+    while(True):
 
 
-    line=f.readline()
-    if (line==""):
-      break
+        line=f.readline()
+        if (line==""):
+            break
 
 
-    line=line.replace("\n","").strip()
-    """
+        line=line.replace("\n","").strip()
+        """
     if (line.find("[types]")!=-1):
     if (line.find("[types]")!=-1):
       read_what=READ_TYPES
       read_what=READ_TYPES
       continue
       continue
@@ -38,53 +38,53 @@ for x in (range(len(sys.argv)-1)):
       continue
       continue
      """
      """
 
 
-    if (line.find("#define")!=-1):
-      if (line.find("0x")==-1 and line.find("GL_VERSION")==-1):
-        continue
-      constants.append(line)
-    elif (line.find("typedef")!=-1):
-      if (line.find("(")!=-1 or line.find(")")!=-1 or line.find("ARB")!=-1 or line.find("EXT")!=-1 or line.find("GL")==-1):
-        continue
-      types.append(line)
-    elif (line.find("APIENTRY")!=-1 and line.find("GLAPI")!=-1):
+        if (line.find("#define")!=-1):
+            if (line.find("0x")==-1 and line.find("GL_VERSION")==-1):
+                continue
+            constants.append(line)
+        elif (line.find("typedef")!=-1):
+            if (line.find("(")!=-1 or line.find(")")!=-1 or line.find("ARB")!=-1 or line.find("EXT")!=-1 or line.find("GL")==-1):
+                continue
+            types.append(line)
+        elif (line.find("APIENTRY")!=-1 and line.find("GLAPI")!=-1):
 
 
-      if (line.find("ARB")!=-1 or line.find("EXT")!=-1 or line.find("NV")!=-1):
-        continue
+            if (line.find("ARB")!=-1 or line.find("EXT")!=-1 or line.find("NV")!=-1):
+                continue
 
 
-      line=line.replace("APIENTRY","")
-      line=line.replace("GLAPI","")
+            line=line.replace("APIENTRY","")
+            line=line.replace("GLAPI","")
 
 
-      glpos=line.find(" gl")
-      if (glpos==-1):
+            glpos=line.find(" gl")
+            if (glpos==-1):
 
 
-       glpos=line.find("\tgl")
-       if (glpos==-1):
-          continue
+                glpos=line.find("\tgl")
+                if (glpos==-1):
+                    continue
 
 
-      ret=line[:glpos].strip();
+            ret=line[:glpos].strip();
 
 
-      line=line[glpos:].strip()
-      namepos=line.find("(")
+            line=line[glpos:].strip()
+            namepos=line.find("(")
 
 
-      if (namepos==-1):
-        continue
+            if (namepos==-1):
+                continue
 
 
-      name=line[:namepos].strip()
-      line=line[namepos:]
+            name=line[:namepos].strip()
+            line=line[namepos:]
 
 
-      argpos=line.rfind(")")
-      if (argpos==-1):
-        continue
+            argpos=line.rfind(")")
+            if (argpos==-1):
+                continue
 
 
-      args=line[1:argpos]
+            args=line[1:argpos]
 
 
-      funcdata={}
-      funcdata["ret"]=ret
-      funcdata["name"]=name
-      funcdata["args"]=args
+            funcdata={}
+            funcdata["ret"]=ret
+            funcdata["name"]=name
+            funcdata["args"]=args
 
 
-      functions.append(funcdata)
-      print(funcdata)
+            functions.append(funcdata)
+            print(funcdata)
 
 
 
 
 
 
@@ -137,18 +137,18 @@ f.write("#else\n");
 f.write("#define GLWRP_APIENTRY \n")
 f.write("#define GLWRP_APIENTRY \n")
 f.write("#endif\n\n");
 f.write("#endif\n\n");
 for x in types:
 for x in types:
-  f.write(x+"\n")
+    f.write(x+"\n")
 
 
 f.write("\n\n")
 f.write("\n\n")
 
 
 for x in constants:
 for x in constants:
-  f.write(x+"\n")
+    f.write(x+"\n")
 
 
 f.write("\n\n")
 f.write("\n\n")
 
 
 for x in functions:
 for x in functions:
-  f.write("extern "+x["ret"]+" GLWRP_APIENTRY (*__wrapper_"+x["name"]+")("+x["args"]+");\n")
-  f.write("#define "+x["name"]+" __wrapper_"+x["name"]+"\n")
+    f.write("extern "+x["ret"]+" GLWRP_APIENTRY (*__wrapper_"+x["name"]+")("+x["args"]+");\n")
+    f.write("#define "+x["name"]+" __wrapper_"+x["name"]+"\n")
 
 
 f.write("\n\n")
 f.write("\n\n")
 f.write("typedef void (*GLWrapperFuncPtr)(void);\n\n");
 f.write("typedef void (*GLWrapperFuncPtr)(void);\n\n");
@@ -165,14 +165,14 @@ f.write("#include \"glwrapper.h\"\n")
 f.write("\n\n")
 f.write("\n\n")
 
 
 for x in functions:
 for x in functions:
-  f.write(x["ret"]+" GLWRP_APIENTRY (*__wrapper_"+x["name"]+")("+x["args"]+")=NULL;\n")
+    f.write(x["ret"]+" GLWRP_APIENTRY (*__wrapper_"+x["name"]+")("+x["args"]+")=NULL;\n")
 
 
 f.write("\n\n")
 f.write("\n\n")
 f.write("void glWrapperInit( GLWrapperFuncPtr (*wrapperFunc)(const char*) )  {\n")
 f.write("void glWrapperInit( GLWrapperFuncPtr (*wrapperFunc)(const char*) )  {\n")
 f.write("\n")
 f.write("\n")
 
 
 for x in functions:
 for x in functions:
-  f.write("\t__wrapper_"+x["name"]+"=("+x["ret"]+" GLWRP_APIENTRY (*)("+x["args"]+"))wrapperFunc(\""+x["name"]+"\");\n")
+    f.write("\t__wrapper_"+x["name"]+"=("+x["ret"]+" GLWRP_APIENTRY (*)("+x["args"]+"))wrapperFunc(\""+x["name"]+"\");\n")
 
 
 f.write("\n\n")
 f.write("\n\n")
 f.write("}\n")
 f.write("}\n")

+ 14 - 14
tools/scripts/makeargs.py

@@ -67,20 +67,20 @@ text="""
 
 
 for i in range(1,8):
 for i in range(1,8):
 
 
-	tp=""
-	p=""
-	t=""
-	for j in range(i):
-		if (j>0):
-			tp+=", "
-			p+=", "
-			t+=", "
-		tp +=("m_arg"+str(j+1)+" p"+str(j+1))
-		p+=("p"+str(j+1))
-		t+=("m_arg"+str(j+1))
-
-	t = text.replace("$argtp",tp).replace("$argp",p).replace("$argt",t).replace("$num",str(i))
-	print(t)
+    tp=""
+    p=""
+    t=""
+    for j in range(i):
+        if (j>0):
+            tp+=", "
+            p+=", "
+            t+=", "
+        tp +=("m_arg"+str(j+1)+" p"+str(j+1))
+        p+=("p"+str(j+1))
+        t+=("m_arg"+str(j+1))
+
+    t = text.replace("$argtp",tp).replace("$argp",p).replace("$argt",t).replace("$num",str(i))
+    print(t)
 
 
 
 
 
 

+ 12 - 12
tools/scripts/memsort.py

@@ -4,7 +4,7 @@ import sys
 arg="memdump.txt"
 arg="memdump.txt"
 
 
 if (len(sys.argv)>1):
 if (len(sys.argv)>1):
-	arg=sys.argv[1]
+    arg=sys.argv[1]
 
 
 f = open(arg,"rb")
 f = open(arg,"rb")
 
 
@@ -18,18 +18,18 @@ cnt={}
 
 
 while(l!=""):
 while(l!=""):
 
 
-	s=l.split("-")
-	amount = int(s[1])
-	what=s[2]
-	if (what in sum):
-		sum[what]+=amount
-		cnt[what]+=1
-	else:
-		sum[what]=amount
-		cnt[what]=1
+    s=l.split("-")
+    amount = int(s[1])
+    what=s[2]
+    if (what in sum):
+        sum[what]+=amount
+        cnt[what]+=1
+    else:
+        sum[what]=amount
+        cnt[what]=1
 
 
-	l=f.readline()
+    l=f.readline()
 
 
 
 
 for x in sum:
 for x in sum:
-	print(x.strip()+"("+str(cnt[x])+"):\n: "+str(sum[x]))
+    print(x.strip()+"("+str(cnt[x])+"):\n: "+str(sum[x]))

+ 2 - 2
tools/scripts/svgs_2_pngs.py

@@ -129,8 +129,8 @@ special_icons = {
 }
 }
 
 
 theme_icons = {
 theme_icons = {
-      'icon_close': dict(output_names=['close', 'close_hl']),
-      'tab_menu': dict(output_names=['tab_menu_hl'])
+    'icon_close': dict(output_names=['close', 'close_hl']),
+    'tab_menu': dict(output_names=['tab_menu_hl'])
 }
 }
 
 
 export_icons()
 export_icons()

+ 66 - 66
tools/translations/extract.py

@@ -10,27 +10,27 @@ import sys
 line_nb = False
 line_nb = False
 
 
 for arg in sys.argv[1:]:
 for arg in sys.argv[1:]:
-	if (arg == "--with-line-nb"):
-		print("Enabling line numbers in the context locations.")
-		line_nb = True
-	else:
-		os.sys.exit("Non supported argument '" + arg + "'. Aborting.")
+    if (arg == "--with-line-nb"):
+        print("Enabling line numbers in the context locations.")
+        line_nb = True
+    else:
+        os.sys.exit("Non supported argument '" + arg + "'. Aborting.")
 
 
 
 
 if (not os.path.exists("tools")):
 if (not os.path.exists("tools")):
-	os.sys.exit("ERROR: This script should be started from the root of the git repo.")
+    os.sys.exit("ERROR: This script should be started from the root of the git repo.")
 
 
 
 
 matches = []
 matches = []
 for root, dirnames, filenames in os.walk('.'):
 for root, dirnames, filenames in os.walk('.'):
-	for filename in fnmatch.filter(filenames, '*.cpp'):
-		if (filename.find("collada") != -1):
-			continue
-		matches.append(os.path.join(root, filename))
-	for filename in fnmatch.filter(filenames, '*.h'):
-		if (filename.find("collada") != -1):
-			continue
-		matches.append(os.path.join(root, filename))
+    for filename in fnmatch.filter(filenames, '*.cpp'):
+        if (filename.find("collada") != -1):
+            continue
+        matches.append(os.path.join(root, filename))
+    for filename in fnmatch.filter(filenames, '*.h'):
+        if (filename.find("collada") != -1):
+            continue
+        matches.append(os.path.join(root, filename))
 matches.sort()
 matches.sort()
 
 
 
 
@@ -55,51 +55,51 @@ print("Updating the tools.pot template...")
 
 
 for fname in matches:
 for fname in matches:
 
 
-	f = open(fname, "rb")
-
-	l = f.readline()
-	lc = 1
-	while (l):
-
-		patterns = ['RTR(\"', 'TTR(\"']
-		idx = 0
-		pos = 0
-		while (pos >= 0):
-			pos = l.find(patterns[idx], pos)
-			if (pos == -1):
-				if (idx < len(patterns) - 1):
-					idx += 1
-					pos = 0
-				continue
-			pos += 5
-
-			msg = ""
-			while (pos < len(l) and (l[pos] != '"' or l[pos - 1] == '\\')):
-				msg += l[pos]
-				pos += 1
-
-			location = os.path.relpath(fname).replace('\\','/')
-			if (line_nb):
-				location += ":" + str(lc)
-
-			if (not msg in unique_str):
-				main_po += "\n#: " + location + "\n"
-				main_po += 'msgid "' + msg + '"\n'
-				main_po += 'msgstr ""\n'
-				unique_str.append(msg)
-				unique_loc[msg] = [location]
-			elif (not location in unique_loc[msg]):
-				# Add additional location to previous occurence too
-				msg_pos = main_po.find('\nmsgid "' + msg + '"')
-				if (msg_pos == -1):
-					print("Someone apparently thought writing Python was as easy as GDScript. Ping Akien.")
-				main_po = main_po[:msg_pos] + ' ' + location + main_po[msg_pos:]
-				unique_loc[msg].append(location)
-
-		l = f.readline()
-		lc += 1
-
-	f.close()
+    f = open(fname, "rb")
+
+    l = f.readline()
+    lc = 1
+    while (l):
+
+        patterns = ['RTR(\"', 'TTR(\"']
+        idx = 0
+        pos = 0
+        while (pos >= 0):
+            pos = l.find(patterns[idx], pos)
+            if (pos == -1):
+                if (idx < len(patterns) - 1):
+                    idx += 1
+                    pos = 0
+                continue
+            pos += 5
+
+            msg = ""
+            while (pos < len(l) and (l[pos] != '"' or l[pos - 1] == '\\')):
+                msg += l[pos]
+                pos += 1
+
+            location = os.path.relpath(fname).replace('\\','/')
+            if (line_nb):
+                location += ":" + str(lc)
+
+            if (not msg in unique_str):
+                main_po += "\n#: " + location + "\n"
+                main_po += 'msgid "' + msg + '"\n'
+                main_po += 'msgstr ""\n'
+                unique_str.append(msg)
+                unique_loc[msg] = [location]
+            elif (not location in unique_loc[msg]):
+                # Add additional location to previous occurence too
+                msg_pos = main_po.find('\nmsgid "' + msg + '"')
+                if (msg_pos == -1):
+                    print("Someone apparently thought writing Python was as easy as GDScript. Ping Akien.")
+                main_po = main_po[:msg_pos] + ' ' + location + main_po[msg_pos:]
+                unique_loc[msg].append(location)
+
+        l = f.readline()
+        lc += 1
+
+    f.close()
 
 
 
 
 f = open("tools.pot", "wb")
 f = open("tools.pot", "wb")
@@ -107,15 +107,15 @@ f.write(main_po)
 f.close()
 f.close()
 
 
 if (os.name == "posix"):
 if (os.name == "posix"):
-	print("Wrapping template at 79 characters for compatibility with Weblate.")
-	os.system("msgmerge -w79 tools.pot tools.pot > tools.pot.wrap")
-	shutil.move("tools.pot.wrap", "tools.pot")
+    print("Wrapping template at 79 characters for compatibility with Weblate.")
+    os.system("msgmerge -w79 tools.pot tools.pot > tools.pot.wrap")
+    shutil.move("tools.pot.wrap", "tools.pot")
 
 
 shutil.move("tools.pot", "tools/translations/tools.pot")
 shutil.move("tools.pot", "tools/translations/tools.pot")
 
 
 # TODO: Make that in a portable way, if we care; if not, kudos to Unix users
 # TODO: Make that in a portable way, if we care; if not, kudos to Unix users
 if (os.name == "posix"):
 if (os.name == "posix"):
-	added = subprocess.check_output("git diff tools/translations/tools.pot | grep \+msgid | wc -l", shell = True)
-	removed = subprocess.check_output("git diff tools/translations/tools.pot | grep \\\-msgid | wc -l", shell = True)
-	print("\n# Template changes compared to the staged status:")
-	print("#   Additions: %s msgids.\n#   Deletions: %s msgids." % (int(added), int(removed)))
+    added = subprocess.check_output("git diff tools/translations/tools.pot | grep \+msgid | wc -l", shell = True)
+    removed = subprocess.check_output("git diff tools/translations/tools.pot | grep \\\-msgid | wc -l", shell = True)
+    print("\n# Template changes compared to the staged status:")
+    print("#   Additions: %s msgids.\n#   Deletions: %s msgids." % (int(added), int(removed)))

Some files were not shown because too many files changed in this diff