summaryrefslogtreecommitdiff
path: root/drivers/gl_context/SCsub
diff options
context:
space:
mode:
authorRémi Verschelde <rverschelde@gmail.com>2016-10-14 08:27:59 +0200
committerRémi Verschelde <rverschelde@gmail.com>2016-10-15 12:01:28 +0200
commit36738ddda4f732fff7bbfb7b4605a47a0bd7c045 (patch)
tree9b3a77f6d4872be2ec55fe9467c8fe24a9e582a3 /drivers/gl_context/SCsub
parent249836e530f51cbb2f8692a479a35900c425fdd5 (diff)
glew: Split thirdparty files and isolate env
Not fully happy about the way this one interacts with the various platforms. Maybe the platform_config.h should be generated by the SCsub instead of passing a define just to know where is the header.
Diffstat (limited to 'drivers/gl_context/SCsub')
-rw-r--r--drivers/gl_context/SCsub25
1 files changed, 20 insertions, 5 deletions
diff --git a/drivers/gl_context/SCsub b/drivers/gl_context/SCsub
index dac27c0125..9a158f0821 100644
--- a/drivers/gl_context/SCsub
+++ b/drivers/gl_context/SCsub
@@ -1,11 +1,26 @@
Import('env')
+Import('env_drivers')
-env.add_source_files(env.drivers_sources,"*.cpp")
+env_glew = env_drivers.Clone()
+
+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]
+
+ env_glew.add_source_files(env.drivers_sources, thirdparty_sources)
+ env_glew.Append(CPPFLAGS = ['-DGLEW_STATIC'])
+ env_glew.Append(CPPPATH = [thirdparty_dir])
+ # Also pass to global env, used by platform code
+ env.Append(CPPPATH = [thirdparty_dir])
-if (env.get('glew') == 'yes'):
- env.add_source_files(env.drivers_sources,"glew.c")
env.Append(CPPFLAGS = ['-DGLEW_ENABLED'])
- env.Append(CPPFLAGS = ['-DGLEW_STATIC'])
- env.Append(CPPPATH = ['.'])
+
+# Godot source files
+env_glew.add_source_files(env.drivers_sources, "*.cpp")
Export('env')