diff options
| author | Rémi Verschelde | 2016-10-15 12:39:28 +0200 |
|---|---|---|
| committer | Rémi Verschelde | 2016-10-30 14:51:34 +0100 |
| commit | aa1367595e6fc296fc42c95dfbf23f70de5528c2 (patch) | |
| tree | a19be35dd67eff6b49104e52b6d9bdcab4bd5ec8 /drivers/SCsub | |
| parent | d96842b80ebf0a590b2a200d298c4440aef5fbd9 (diff) | |
| download | godot-aa1367595e6fc296fc42c95dfbf23f70de5528c2.tar.gz godot-aa1367595e6fc296fc42c95dfbf23f70de5528c2.tar.zst godot-aa1367595e6fc296fc42c95dfbf23f70de5528c2.zip | |
drivers: Refactor SCsub and drop redundant env_drivers clone
The reordering of the SConscript includes allows to ensure that
stuff like the builtin zlib headers will be available for libpng.
Also moved glew back into global env, otherwise windows seems
not to find it... Kind of shooting in the dark with this multi-env
setup.
(cherry picked from commit 248bc9159c0b515e3e276db644744161283881ef)
Diffstat (limited to 'drivers/SCsub')
| -rw-r--r-- | drivers/SCsub | 59 |
1 files changed, 32 insertions, 27 deletions
diff --git a/drivers/SCsub b/drivers/SCsub index 2ad924ad1..c496f46a1 100644 --- a/drivers/SCsub +++ b/drivers/SCsub @@ -1,42 +1,47 @@ Import('env') -env_drivers = env.Clone() - env.drivers_sources=[] -#env.add_source_files(env.drivers_sources,"*.cpp") -Export('env_drivers') +if ("builtin_zlib" in env and env["builtin_zlib"] == "yes"): + SConscript("zlib/SCsub"); +# OS drivers SConscript('unix/SCsub'); +SConscript('windows/SCsub'); + +# Sounds drivers SConscript('alsa/SCsub'); SConscript('pulseaudio/SCsub'); -SConscript('windows/SCsub'); +if (env["platform"] == "windows"): + SConscript("rtaudio/SCsub"); + +# Graphics drivers SConscript('gles2/SCsub'); SConscript('gl_context/SCsub'); +# Core dependencies SConscript("png/SCsub"); -if ("builtin_zlib" in env and env["builtin_zlib"] == "yes"): - SConscript("zlib/SCsub"); - -if (env["platform"] == "windows"): - SConscript("rtaudio/SCsub"); SConscript("nrex/SCsub"); + +# Tools override +# FIXME: Should likely be integrated in the tools/ codebase if (env["tools"]=="yes"): SConscript("convex_decomp/SCsub"); -num = 0 -cur_base = "" -total = len(env.drivers_sources) -max_src = 64 -list = [] -lib_list = [] - -import string - if env['vsproj']=="yes": env.AddToVSProject(env.drivers_sources) -if (env.split_drivers): #split drivers, this used to be needed for windows until separate builders for windows were created + +# Split drivers, this used to be needed for windows until separate builders for windows were created +# FIXME: Check if still needed now that the drivers were made more lightweight +if (env.split_drivers): + import string + + num = 0 + cur_base = "" + max_src = 64 + list = [] + lib_list = [] for f in env.drivers_sources: fname = "" @@ -48,14 +53,14 @@ if (env.split_drivers): #split drivers, this used to be needed for windows until base = string.join(fname.split("/")[:2], "/") if base != cur_base and len(list) > max_src: if num > 0: - lib = env_drivers.Library("drivers"+str(num), list) + lib = env.Library("drivers"+str(num), list) lib_list.append(lib) list = [] num = num+1 cur_base = base list.append(f) - lib = env_drivers.Library("drivers"+str(num), list) + lib = env.Library("drivers"+str(num), list) lib_list.append(lib) if len(lib_list) > 0: @@ -63,15 +68,15 @@ if (env.split_drivers): #split drivers, this used to be needed for windows until if os.name=='posix' and sys.platform=='msys': env.Replace(ARFLAGS=['rcsT']) - lib = env_drivers.Library("drivers_collated", lib_list) + lib = env.Library("drivers_collated", lib_list) lib_list = [lib] drivers_base=[] - env_drivers.add_source_files(drivers_base,"*.cpp") - lib_list.insert(0, env_drivers.Library("drivers", drivers_base)) + env.add_source_files(drivers_base,"*.cpp") + lib_list.insert(0, env.Library("drivers", drivers_base)) env.Prepend(LIBS=lib_list) else: - env_drivers.add_source_files(env.drivers_sources,"*.cpp") - lib = env_drivers.Library("drivers",env.drivers_sources) + env.add_source_files(env.drivers_sources,"*.cpp") + lib = env.Library("drivers",env.drivers_sources) env.Prepend(LIBS=[lib]) |
