Add support for GL_ARB_shading_language_include
Add support for GL_ARB_shading_language_include. Usage is identical to the way GL_GOOGLE_include_directive currently works glslang (since GL_ARB_shading_language_include is inherently a runtime feature and glslang is an offline compiler). Users can simulate their runtime environment by using a custom glslang::TShader::Includer or using filenames that match their GL runtime names. Closes #249.
This commit is contained in:
parent
fa04cdf355
commit
b0df68c490
12 changed files with 59 additions and 6 deletions
|
|
@ -0,0 +1,4 @@
|
|||
ERROR: 0:7: '#include' : Could not process include directive for header name: bar.h
|
||||
ERROR: 1 compilation errors. No code generated.
|
||||
|
||||
|
||||
|
|
@ -0,0 +1,7 @@
|
|||
ERROR: 0:3: '#include' : required extension not requested: Possible extensions include:
|
||||
GL_GOOGLE_include_directive
|
||||
GL_ARB_shading_language_include
|
||||
ERROR: 0:3: '#include' : Could not process include directive for header name: bar.h
|
||||
ERROR: 2 compilation errors. No code generated.
|
||||
|
||||
|
||||
|
|
@ -1,12 +1,22 @@
|
|||
ERROR: 0:8000: '#include' : required extension not requested: GL_GOOGLE_include_directive
|
||||
ERROR: 0:8000: '#include' : required extension not requested: Possible extensions include:
|
||||
GL_GOOGLE_include_directive
|
||||
GL_ARB_shading_language_include
|
||||
ERROR: 0:8000: '#include' : must be followed by a header name
|
||||
ERROR: 0:8001: '#include' : required extension not requested: GL_GOOGLE_include_directive
|
||||
ERROR: 0:8001: '#include' : required extension not requested: Possible extensions include:
|
||||
GL_GOOGLE_include_directive
|
||||
GL_ARB_shading_language_include
|
||||
ERROR: 0:8001: '#include' : must be followed by a header name
|
||||
ERROR: 0:8002: '#include' : required extension not requested: GL_GOOGLE_include_directive
|
||||
ERROR: 0:8002: '#include' : required extension not requested: Possible extensions include:
|
||||
GL_GOOGLE_include_directive
|
||||
GL_ARB_shading_language_include
|
||||
ERROR: 0:8002: '#include' : Could not process include directive for header name: foo
|
||||
ERROR: 0:8003: '#include' : required extension not requested: GL_GOOGLE_include_directive
|
||||
ERROR: 0:8003: '#include' : required extension not requested: Possible extensions include:
|
||||
GL_GOOGLE_include_directive
|
||||
GL_ARB_shading_language_include
|
||||
ERROR: 0:8003: '#include' : extra content after header name: foo
|
||||
ERROR: 0:8004: '#include' : required extension not requested: GL_GOOGLE_include_directive
|
||||
ERROR: 0:8004: '#include' : required extension not requested: Possible extensions include:
|
||||
GL_GOOGLE_include_directive
|
||||
GL_ARB_shading_language_include
|
||||
ERROR: 0:8004: '#include' : expected newline after header name: no-eol
|
||||
ERROR: 10 compilation errors. No code generated.
|
||||
|
||||
|
|
|
|||
14
Test/preprocess.arb_shading_language_include.vert
Normal file
14
Test/preprocess.arb_shading_language_include.vert
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
#version 150
|
||||
|
||||
#extension GL_ARB_shading_language_include : enable
|
||||
|
||||
#define float4 vec4
|
||||
|
||||
#include "bar.h"
|
||||
|
||||
out vec4 color;
|
||||
|
||||
void main()
|
||||
{
|
||||
color = i1 + vec4(1.0);
|
||||
}
|
||||
6
Test/preprocess.include_directive_missing_extension.vert
Normal file
6
Test/preprocess.include_directive_missing_extension.vert
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
#version 150
|
||||
|
||||
#include "bar.h"
|
||||
|
||||
void main() {}
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue