summaryrefslogtreecommitdiffstats
path: root/src/angle/src
diff options
context:
space:
mode:
Diffstat (limited to 'src/angle/src')
-rw-r--r--src/angle/src/compiler/preprocessor/preprocessor.pro52
-rw-r--r--src/angle/src/compiler/translator_common.pro24
-rw-r--r--src/angle/src/compiler/translator_hlsl.pro6
-rw-r--r--src/angle/src/config.pri5
-rw-r--r--src/angle/src/libEGL/libEGL.pro9
-rw-r--r--src/angle/src/libGLESv2/libGLESv2.pro186
6 files changed, 205 insertions, 77 deletions
diff --git a/src/angle/src/compiler/preprocessor/preprocessor.pro b/src/angle/src/compiler/preprocessor/preprocessor.pro
index 62476008b3..432c8dcf32 100644
--- a/src/angle/src/compiler/preprocessor/preprocessor.pro
+++ b/src/angle/src/compiler/preprocessor/preprocessor.pro
@@ -4,43 +4,43 @@ TARGET = $$qtLibraryTarget(preprocessor)
include(../../config.pri)
-INCLUDEPATH = $$ANGLE_DIR/src/compiler/preprocessor/new
+INCLUDEPATH = $$ANGLE_DIR/src/compiler/preprocessor
DEFINES += _SECURE_SCL=0
FLEX_SOURCES = \
- $$ANGLE_DIR/src/compiler/preprocessor/new/Tokenizer.l
+ $$ANGLE_DIR/src/compiler/preprocessor/Tokenizer.l
BISON_SOURCES = \
- $$ANGLE_DIR/src/compiler/preprocessor/new/ExpressionParser.y
+ $$ANGLE_DIR/src/compiler/preprocessor/ExpressionParser.y
HEADERS += \
- $$ANGLE_DIR/src/compiler/preprocessor/new/Diagnostics.h \
- $$ANGLE_DIR/src/compiler/preprocessor/new/DirectiveHandler.h \
- $$ANGLE_DIR/src/compiler/preprocessor/new/DirectiveParser.h \
- $$ANGLE_DIR/src/compiler/preprocessor/new/ExpressionParser.h \
- $$ANGLE_DIR/src/compiler/preprocessor/new/Input.h \
- $$ANGLE_DIR/src/compiler/preprocessor/new/Lexer.h \
- $$ANGLE_DIR/src/compiler/preprocessor/new/Macro.h \
- $$ANGLE_DIR/src/compiler/preprocessor/new/MacroExpander.h \
- $$ANGLE_DIR/src/compiler/preprocessor/new/numeric_lex.h \
- $$ANGLE_DIR/src/compiler/preprocessor/new/pp_utils.h \
- $$ANGLE_DIR/src/compiler/preprocessor/new/Preprocessor.h \
- $$ANGLE_DIR/src/compiler/preprocessor/new/SourceLocation.h \
- $$ANGLE_DIR/src/compiler/preprocessor/new/Token.h \
- $$ANGLE_DIR/src/compiler/preprocessor/new/Tokenizer.h
+ $$ANGLE_DIR/src/compiler/preprocessor/DiagnosticsBase.h \
+ $$ANGLE_DIR/src/compiler/preprocessor/DirectiveHandlerBase.h \
+ $$ANGLE_DIR/src/compiler/preprocessor/DirectiveParser.h \
+ $$ANGLE_DIR/src/compiler/preprocessor/ExpressionParser.h \
+ $$ANGLE_DIR/src/compiler/preprocessor/Input.h \
+ $$ANGLE_DIR/src/compiler/preprocessor/Lexer.h \
+ $$ANGLE_DIR/src/compiler/preprocessor/Macro.h \
+ $$ANGLE_DIR/src/compiler/preprocessor/MacroExpander.h \
+ $$ANGLE_DIR/src/compiler/preprocessor/numeric_lex.h \
+ $$ANGLE_DIR/src/compiler/preprocessor/pp_utils.h \
+ $$ANGLE_DIR/src/compiler/preprocessor/Preprocessor.h \
+ $$ANGLE_DIR/src/compiler/preprocessor/SourceLocation.h \
+ $$ANGLE_DIR/src/compiler/preprocessor/Token.h \
+ $$ANGLE_DIR/src/compiler/preprocessor/Tokenizer.h
SOURCES += \
- $$ANGLE_DIR/src/compiler/preprocessor/new/Diagnostics.cpp \
- $$ANGLE_DIR/src/compiler/preprocessor/new/DirectiveHandler.cpp \
- $$ANGLE_DIR/src/compiler/preprocessor/new/DirectiveParser.cpp \
- $$ANGLE_DIR/src/compiler/preprocessor/new/Input.cpp \
- $$ANGLE_DIR/src/compiler/preprocessor/new/Lexer.cpp \
- $$ANGLE_DIR/src/compiler/preprocessor/new/Macro.cpp \
- $$ANGLE_DIR/src/compiler/preprocessor/new/MacroExpander.cpp \
- $$ANGLE_DIR/src/compiler/preprocessor/new/Preprocessor.cpp \
- $$ANGLE_DIR/src/compiler/preprocessor/new/Token.cpp
+ $$ANGLE_DIR/src/compiler/preprocessor/DiagnosticsBase.cpp \
+ $$ANGLE_DIR/src/compiler/preprocessor/DirectiveHandlerBase.cpp \
+ $$ANGLE_DIR/src/compiler/preprocessor/DirectiveParser.cpp \
+ $$ANGLE_DIR/src/compiler/preprocessor/Input.cpp \
+ $$ANGLE_DIR/src/compiler/preprocessor/Lexer.cpp \
+ $$ANGLE_DIR/src/compiler/preprocessor/Macro.cpp \
+ $$ANGLE_DIR/src/compiler/preprocessor/MacroExpander.cpp \
+ $$ANGLE_DIR/src/compiler/preprocessor/Preprocessor.cpp \
+ $$ANGLE_DIR/src/compiler/preprocessor/Token.cpp
# NOTE: 'win_flex' and 'bison' can be found in qt5/gnuwin32/bin
flex.commands = $$addGnuPath(win_flex) --noline --nounistd --outfile=${QMAKE_FILE_BASE}.cpp ${QMAKE_FILE_NAME}
diff --git a/src/angle/src/compiler/translator_common.pro b/src/angle/src/compiler/translator_common.pro
index 2d867a921e..cafbb1595d 100644
--- a/src/angle/src/compiler/translator_common.pro
+++ b/src/angle/src/compiler/translator_common.pro
@@ -48,22 +48,12 @@ HEADERS += \
$$ANGLE_DIR/src/compiler/ValidateLimitations.h \
$$ANGLE_DIR/src/compiler/VariableInfo.h \
$$ANGLE_DIR/src/compiler/VariablePacker.h \
- $$ANGLE_DIR/src/compiler/preprocessor/atom.h \
- $$ANGLE_DIR/src/compiler/preprocessor/compile.h \
- $$ANGLE_DIR/src/compiler/preprocessor/cpp.h \
- $$ANGLE_DIR/src/compiler/preprocessor/length_limits.h \
- $$ANGLE_DIR/src/compiler/preprocessor/memory.h \
- $$ANGLE_DIR/src/compiler/preprocessor/parser.h \
- $$ANGLE_DIR/src/compiler/preprocessor/preprocess.h \
- $$ANGLE_DIR/src/compiler/preprocessor/scanner.h \
- $$ANGLE_DIR/src/compiler/preprocessor/slglobals.h \
- $$ANGLE_DIR/src/compiler/preprocessor/symbols.h \
- $$ANGLE_DIR/src/compiler/preprocessor/tokens.h \
$$ANGLE_DIR/src/compiler/timing/RestrictFragmentShaderTiming.h \
$$ANGLE_DIR/src/compiler/timing/RestrictVertexShaderTiming.h \
$$ANGLE_DIR/src/compiler/depgraph/DependencyGraph.h \
$$ANGLE_DIR/src/compiler/depgraph/DependencyGraphBuilder.h \
- $$ANGLE_DIR/src/compiler/depgraph/DependencyGraphOutput.h
+ $$ANGLE_DIR/src/compiler/depgraph/DependencyGraphOutput.h \
+ $$ANGLE_DIR/src/third_party/compiler/ArrayBoundsClamper.h
SOURCES += \
$$ANGLE_DIR/src/compiler/BuiltInFunctionEmulator.cpp \
@@ -93,19 +83,13 @@ SOURCES += \
$$ANGLE_DIR/src/compiler/ValidateLimitations.cpp \
$$ANGLE_DIR/src/compiler/VariableInfo.cpp \
$$ANGLE_DIR/src/compiler/VariablePacker.cpp \
- $$ANGLE_DIR/src/compiler/preprocessor/atom.c \
- $$ANGLE_DIR/src/compiler/preprocessor/cpp.c \
- $$ANGLE_DIR/src/compiler/preprocessor/cppstruct.c \
- $$ANGLE_DIR/src/compiler/preprocessor/memory.c \
- $$ANGLE_DIR/src/compiler/preprocessor/scanner.c \
- $$ANGLE_DIR/src/compiler/preprocessor/symbols.c \
- $$ANGLE_DIR/src/compiler/preprocessor/tokens.c \
$$ANGLE_DIR/src/compiler/depgraph/DependencyGraph.cpp \
$$ANGLE_DIR/src/compiler/depgraph/DependencyGraphBuilder.cpp \
$$ANGLE_DIR/src/compiler/depgraph/DependencyGraphOutput.cpp \
$$ANGLE_DIR/src/compiler/depgraph/DependencyGraphTraverse.cpp \
$$ANGLE_DIR/src/compiler/timing/RestrictFragmentShaderTiming.cpp \
- $$ANGLE_DIR/src/compiler/timing/RestrictVertexShaderTiming.cpp
+ $$ANGLE_DIR/src/compiler/timing/RestrictVertexShaderTiming.cpp \
+ $$ANGLE_DIR/src/third_party/compiler/ArrayBoundsClamper.cpp
# NOTE: 'win_flex' and 'bison' can be found in qt5/gnuwin32/bin
flex.commands = $$addGnuPath(win_flex) --noline --nounistd --outfile=${QMAKE_FILE_BASE}_lex.cpp ${QMAKE_FILE_NAME}
diff --git a/src/angle/src/compiler/translator_hlsl.pro b/src/angle/src/compiler/translator_hlsl.pro
index 048e2a48fd..6b17f14d2e 100644
--- a/src/angle/src/compiler/translator_hlsl.pro
+++ b/src/angle/src/compiler/translator_hlsl.pro
@@ -14,7 +14,8 @@ HEADERS += \
$$ANGLE_DIR/src/compiler/OutputHLSL.h \
$$ANGLE_DIR/src/compiler/SearchSymbol.h \
$$ANGLE_DIR/src/compiler/TranslatorHLSL.h \
- $$ANGLE_DIR/src/compiler/UnfoldShortCircuit.h
+ $$ANGLE_DIR/src/compiler/UnfoldShortCircuit.h \
+ $$ANGLE_DIR/src/compiler/Uniform.h
SOURCES += \
$$ANGLE_DIR/src/compiler/CodeGenHLSL.cpp \
@@ -22,4 +23,5 @@ SOURCES += \
$$ANGLE_DIR/src/compiler/OutputHLSL.cpp \
$$ANGLE_DIR/src/compiler/SearchSymbol.cpp \
$$ANGLE_DIR/src/compiler/TranslatorHLSL.cpp \
- $$ANGLE_DIR/src/compiler/UnfoldShortCircuit.cpp
+ $$ANGLE_DIR/src/compiler/UnfoldShortCircuit.cpp \
+ $$ANGLE_DIR/src/compiler/Uniform.cpp
diff --git a/src/angle/src/config.pri b/src/angle/src/config.pri
index 73fbc2e13b..923a40597e 100644
--- a/src/angle/src/config.pri
+++ b/src/angle/src/config.pri
@@ -46,6 +46,11 @@ DEFINES += ANGLE_DISABLE_TRACE \
ANGLE_COMPILE_OPTIMIZATION_LEVEL=D3DCOMPILE_OPTIMIZATION_LEVEL0 \
ANGLE_USE_NEW_PREPROCESSOR=1
+angle_d3d11 {
+ DEFINES += ANGLE_ENABLE_D3D11
+ !build_pass: message("Enabling D3D11 mode for ANGLE")
+}
+
CONFIG(debug, debug|release) {
DEFINES += _DEBUG
} else {
diff --git a/src/angle/src/libEGL/libEGL.pro b/src/angle/src/libEGL/libEGL.pro
index 6f3bc25cfb..c0d021ccab 100644
--- a/src/angle/src/libEGL/libEGL.pro
+++ b/src/angle/src/libEGL/libEGL.pro
@@ -6,8 +6,13 @@ include(../common/common.pri)
# Note: ANGLE is patched to dynamically resolve DwmIsCompositionEnabled DwmSetPresentParameters
# in Surface.cpp, which would otherwise require -ldwmapi, which does not exist on Windows XP
# (QTBUG-27741).
-LIBS += -ld3d9 -ldxguid \
- -L$$QT_BUILD_TREE/lib -l$$qtLibraryTarget(libGLESv2)
+
+angle_d3d11 {
+ LIBS += -ld3d11
+} else {
+ LIBS += -ld3d9
+}
+LIBS += -ldxguid -L$$QT_BUILD_TREE/lib -l$$qtLibraryTarget(libGLESv2)
HEADERS += \
$$ANGLE_DIR/src/libEGL/Config.h \
diff --git a/src/angle/src/libGLESv2/libGLESv2.pro b/src/angle/src/libGLESv2/libGLESv2.pro
index 2412a01b82..681cd1be19 100644
--- a/src/angle/src/libGLESv2/libGLESv2.pro
+++ b/src/angle/src/libGLESv2/libGLESv2.pro
@@ -4,10 +4,15 @@ CONFIG += simd
include(../common/common.pri)
-INCLUDEPATH += $$OUT_PWD/..
+INCLUDEPATH += $$OUT_PWD/.. $$ANGLE_DIR/src/libGLESv2
# Remember to adapt tools/configure/configureapp.cpp if the Direct X version changes.
-LIBS += -ld3d9 -ld3dcompiler
+angle_d3d11 {
+ LIBS += -ldxgi -ld3d11
+} else {
+ LIBS += -ld3d9
+}
+LIBS += -ldxguid -ld3dcompiler
STATICLIBS = translator_common translator_hlsl preprocessor
for(libname, STATICLIBS) {
@@ -19,15 +24,13 @@ for(libname, STATICLIBS) {
}
HEADERS += \
+ $$ANGLE_DIR/src/third_party/murmurhash/MurmurHash3.h \
$$ANGLE_DIR/src/libGLESv2/BinaryStream.h \
- $$ANGLE_DIR/src/libGLESv2/Blit.h \
$$ANGLE_DIR/src/libGLESv2/Buffer.h \
$$ANGLE_DIR/src/libGLESv2/Context.h \
- $$ANGLE_DIR/src/libGLESv2/D3DConstantTable.h \
$$ANGLE_DIR/src/libGLESv2/Fence.h \
$$ANGLE_DIR/src/libGLESv2/Framebuffer.h \
$$ANGLE_DIR/src/libGLESv2/HandleAllocator.h \
- $$ANGLE_DIR/src/libGLESv2/IndexDataManager.h \
$$ANGLE_DIR/src/libGLESv2/main.h \
$$ANGLE_DIR/src/libGLESv2/mathutil.h \
$$ANGLE_DIR/src/libGLESv2/Program.h \
@@ -38,20 +41,31 @@ HEADERS += \
$$ANGLE_DIR/src/libGLESv2/ResourceManager.h \
$$ANGLE_DIR/src/libGLESv2/Shader.h \
$$ANGLE_DIR/src/libGLESv2/Texture.h \
+ $$ANGLE_DIR/src/libGLESv2/Uniform.h \
$$ANGLE_DIR/src/libGLESv2/utilities.h \
$$ANGLE_DIR/src/libGLESv2/vertexconversion.h \
- $$ANGLE_DIR/src/libGLESv2/VertexDataManager.h
+ $$ANGLE_DIR/src/libGLESv2/precompiled.h \
+ $$ANGLE_DIR/src/libGLESv2/renderer/BufferStorage.h \
+ $$ANGLE_DIR/src/libGLESv2/renderer/Image.h \
+ $$ANGLE_DIR/src/libGLESv2/renderer/IndexBuffer.h \
+ $$ANGLE_DIR/src/libGLESv2/renderer/IndexDataManager.h \
+ $$ANGLE_DIR/src/libGLESv2/renderer/Renderer.h \
+ $$ANGLE_DIR/src/libGLESv2/renderer/RenderTarget.h \
+ $$ANGLE_DIR/src/libGLESv2/renderer/ShaderExecutable.h \
+ $$ANGLE_DIR/src/libGLESv2/renderer/SwapChain.h \
+ $$ANGLE_DIR/src/libGLESv2/renderer/TextureStorage.h \
+ $$ANGLE_DIR/src/libGLESv2/renderer/VertexBuffer.h \
+ $$ANGLE_DIR/src/libGLESv2/renderer/VertexDataManager.h \
+ $$ANGLE_DIR/src/libGLESv2/renderer/VertexDeclarationCache.h
SOURCES += \
- $$ANGLE_DIR/src/libGLESv2/Blit.cpp \
+ $$ANGLE_DIR/src/third_party/murmurhash/MurmurHash3.cpp \
$$ANGLE_DIR/src/libGLESv2/Buffer.cpp \
$$ANGLE_DIR/src/libGLESv2/Context.cpp \
- $$ANGLE_DIR/src/libGLESv2/D3DConstantTable.cpp \
$$ANGLE_DIR/src/libGLESv2/Fence.cpp \
- $$ANGLE_DIR/src/libGLESv2/Framebuffer.cpp \
$$ANGLE_DIR/src/libGLESv2/Float16ToFloat32.cpp \
+ $$ANGLE_DIR/src/libGLESv2/Framebuffer.cpp \
$$ANGLE_DIR/src/libGLESv2/HandleAllocator.cpp \
- $$ANGLE_DIR/src/libGLESv2/IndexDataManager.cpp \
$$ANGLE_DIR/src/libGLESv2/libGLESv2.cpp \
$$ANGLE_DIR/src/libGLESv2/main.cpp \
$$ANGLE_DIR/src/libGLESv2/Program.cpp \
@@ -61,10 +75,84 @@ SOURCES += \
$$ANGLE_DIR/src/libGLESv2/ResourceManager.cpp \
$$ANGLE_DIR/src/libGLESv2/Shader.cpp \
$$ANGLE_DIR/src/libGLESv2/Texture.cpp \
+ $$ANGLE_DIR/src/libGLESv2/Uniform.cpp \
$$ANGLE_DIR/src/libGLESv2/utilities.cpp \
- $$ANGLE_DIR/src/libGLESv2/VertexDataManager.cpp
+ $$ANGLE_DIR/src/libGLESv2/precompiled.cpp \
+ $$ANGLE_DIR/src/libGLESv2/renderer/BufferStorage.cpp \
+ $$ANGLE_DIR/src/libGLESv2/renderer/Image.cpp \
+ $$ANGLE_DIR/src/libGLESv2/renderer/IndexBuffer.cpp \
+ $$ANGLE_DIR/src/libGLESv2/renderer/IndexDataManager.cpp \
+ $$ANGLE_DIR/src/libGLESv2/renderer/Renderer.cpp \
+ $$ANGLE_DIR/src/libGLESv2/renderer/TextureStorage.cpp \
+ $$ANGLE_DIR/src/libGLESv2/renderer/VertexBuffer.cpp \
+ $$ANGLE_DIR/src/libGLESv2/renderer/VertexDataManager.cpp
-SSE2_SOURCES += $$ANGLE_DIR/src/libGLESv2/TextureSSE2.cpp
+sse2:SOURCES += $$ANGLE_DIR/src/libGLESv2/renderer/ImageSSE2.cpp
+
+angle_d3d11 {
+ HEADERS += \
+ $$ANGLE_DIR/src/libGLESv2/renderer/BufferStorage11.h \
+ $$ANGLE_DIR/src/libGLESv2/renderer/Fence11.h \
+ $$ANGLE_DIR/src/libGLESv2/renderer/Image11.h \
+ $$ANGLE_DIR/src/libGLESv2/renderer/IndexBuffer11.h \
+ $$ANGLE_DIR/src/libGLESv2/renderer/InputLayoutCache.h \
+ $$ANGLE_DIR/src/libGLESv2/renderer/Query11.h \
+ $$ANGLE_DIR/src/libGLESv2/renderer/Renderer11.h \
+ $$ANGLE_DIR/src/libGLESv2/renderer/renderer11_utils.h \
+ $$ANGLE_DIR/src/libGLESv2/renderer/RenderTarget11.h \
+ $$ANGLE_DIR/src/libGLESv2/renderer/RenderStateCache.h \
+ $$ANGLE_DIR/src/libGLESv2/renderer/ShaderExecutable11.h \
+ $$ANGLE_DIR/src/libGLESv2/renderer/SwapChain11.h \
+ $$ANGLE_DIR/src/libGLESv2/renderer/TextureStorage11.h \
+ $$ANGLE_DIR/src/libGLESv2/renderer/VertexBuffer11.h
+
+ SOURCES += \
+ $$ANGLE_DIR/src/libGLESv2/renderer/BufferStorage11.cpp \
+ $$ANGLE_DIR/src/libGLESv2/renderer/Fence11.cpp \
+ $$ANGLE_DIR/src/libGLESv2/renderer/Image11.cpp \
+ $$ANGLE_DIR/src/libGLESv2/renderer/IndexBuffer11.cpp \
+ $$ANGLE_DIR/src/libGLESv2/renderer/InputLayoutCache.cpp \
+ $$ANGLE_DIR/src/libGLESv2/renderer/Query11.cpp \
+ $$ANGLE_DIR/src/libGLESv2/renderer/Renderer11.cpp \
+ $$ANGLE_DIR/src/libGLESv2/renderer/renderer11_utils.cpp \
+ $$ANGLE_DIR/src/libGLESv2/renderer/RenderTarget11.cpp \
+ $$ANGLE_DIR/src/libGLESv2/renderer/RenderStateCache.cpp \
+ $$ANGLE_DIR/src/libGLESv2/renderer/ShaderExecutable11.cpp \
+ $$ANGLE_DIR/src/libGLESv2/renderer/SwapChain11.cpp \
+ $$ANGLE_DIR/src/libGLESv2/renderer/TextureStorage11.cpp \
+ $$ANGLE_DIR/src/libGLESv2/renderer/VertexBuffer11.cpp
+} else {
+ HEADERS += \
+ $$ANGLE_DIR/src/libGLESv2/renderer/Blit.h \
+ $$ANGLE_DIR/src/libGLESv2/renderer/BufferStorage9.h \
+ $$ANGLE_DIR/src/libGLESv2/renderer/Fence9.h \
+ $$ANGLE_DIR/src/libGLESv2/renderer/Image9.h \
+ $$ANGLE_DIR/src/libGLESv2/renderer/IndexBuffer9.h \
+ $$ANGLE_DIR/src/libGLESv2/renderer/Query9.h \
+ $$ANGLE_DIR/src/libGLESv2/renderer/Renderer9.h \
+ $$ANGLE_DIR/src/libGLESv2/renderer/renderer9_utils.h \
+ $$ANGLE_DIR/src/libGLESv2/renderer/RenderTarget9.h \
+ $$ANGLE_DIR/src/libGLESv2/renderer/ShaderExecutable9.h \
+ $$ANGLE_DIR/src/libGLESv2/renderer/SwapChain9.h \
+ $$ANGLE_DIR/src/libGLESv2/renderer/TextureStorage9.h \
+ $$ANGLE_DIR/src/libGLESv2/renderer/VertexBuffer9.h
+
+ SOURCES += \
+ $$ANGLE_DIR/src/libGLESv2/renderer/Blit.cpp \
+ $$ANGLE_DIR/src/libGLESv2/renderer/BufferStorage9.cpp \
+ $$ANGLE_DIR/src/libGLESv2/renderer/Fence9.cpp \
+ $$ANGLE_DIR/src/libGLESv2/renderer/Image9.cpp \
+ $$ANGLE_DIR/src/libGLESv2/renderer/IndexBuffer9.cpp \
+ $$ANGLE_DIR/src/libGLESv2/renderer/Query9.cpp \
+ $$ANGLE_DIR/src/libGLESv2/renderer/Renderer9.cpp \
+ $$ANGLE_DIR/src/libGLESv2/renderer/renderer9_utils.cpp \
+ $$ANGLE_DIR/src/libGLESv2/renderer/RenderTarget9.cpp \
+ $$ANGLE_DIR/src/libGLESv2/renderer/ShaderExecutable9.cpp \
+ $$ANGLE_DIR/src/libGLESv2/renderer/SwapChain9.cpp \
+ $$ANGLE_DIR/src/libGLESv2/renderer/TextureStorage9.cpp \
+ $$ANGLE_DIR/src/libGLESv2/renderer/VertexBuffer9.cpp \
+ $$ANGLE_DIR/src/libGLESv2/renderer/VertexDeclarationCache.cpp
+}
!static {
DEF_FILE = $$ANGLE_DIR/src/libGLESv2/$${TARGET}.def
@@ -77,27 +165,71 @@ float_converter.commands = python $$ANGLE_DIR/src/libGLESv2/Float16ToFloat32.py
QMAKE_EXTRA_TARGETS += float_converter
# Generate the shader header files.
-PS_INPUT = $$ANGLE_DIR/src/libGLESv2/shaders/Blit.ps
-VS_INPUT = $$ANGLE_DIR/src/libGLESv2/shaders/Blit.vs
+PS_INPUT = $$ANGLE_DIR/src/libGLESv2/renderer/shaders/Blit.ps
+VS_INPUT = $$ANGLE_DIR/src/libGLESv2/renderer/shaders/Blit.vs
+PASSTHROUGH_INPUT = $$ANGLE_DIR/src/libGLESv2/renderer/shaders/Passthrough11.hlsl
+CLEAR_INPUT = $$ANGLE_DIR/src/libGLESv2/renderer/shaders/Clear11.hlsl
PIXEL_SHADERS = passthroughps luminanceps componentmaskps
+PIXEL_SHADERS_PASSTHROUGH = PassthroughRGBA PassthroughRGB \
+ PassthroughLum PassthroughLumAlpha
VERTEX_SHADERS = standardvs flipyvs
-SHADER_DIR = $$OUT_PWD/shaders
+VERTEX_SHADERS_PASSTHROUGH = Passthrough
+CLEAR_SHADERS = Clear
+SHADER_DIR = $$OUT_PWD/renderer/shaders/compiled
for (ps, PIXEL_SHADERS) {
- fxc_$${ps}.commands = $$FXC /nologo /E $$ps /T ps_2_0 /Fh ${QMAKE_FILE_OUT} ${QMAKE_FILE_NAME}
- fxc_$${ps}.output = $$SHADER_DIR/$${ps}.h
- fxc_$${ps}.input = PS_INPUT
- fxc_$${ps}.dependency_type = TYPE_C
- fxc_$${ps}.variable_out = HEADERS
- QMAKE_EXTRA_COMPILERS += fxc_$${ps}
+ fxc_ps_$${ps}.commands = $$FXC /nologo /E $$ps /T ps_2_0 /Fh ${QMAKE_FILE_OUT} ${QMAKE_FILE_NAME}
+ fxc_ps_$${ps}.output = $$SHADER_DIR/$${ps}.h
+ fxc_ps_$${ps}.input = PS_INPUT
+ fxc_ps_$${ps}.dependency_type = TYPE_C
+ fxc_ps_$${ps}.variable_out = HEADERS
+ fxc_ps_$${ps}.CONFIG += target_predeps
+ QMAKE_EXTRA_COMPILERS += fxc_ps_$${ps}
+}
+for (ps, PIXEL_SHADERS_PASSTHROUGH) {
+ fxc_ps_$${ps}.commands = $$FXC /nologo /E PS_$$ps /T ps_4_0 /Fh ${QMAKE_FILE_OUT} ${QMAKE_FILE_NAME}
+ fxc_ps_$${ps}.output = $$SHADER_DIR/$${ps}11ps.h
+ fxc_ps_$${ps}.input = PASSTHROUGH_INPUT
+ fxc_ps_$${ps}.dependency_type = TYPE_C
+ fxc_ps_$${ps}.variable_out = HEADERS
+ fxc_ps_$${ps}.CONFIG += target_predeps
+ QMAKE_EXTRA_COMPILERS += fxc_ps_$${ps}
+}
+for (ps, CLEAR_SHADERS) {
+ fxc_ps_$${ps}.commands = $$FXC /nologo /E PS_$$ps /T ps_4_0 /Fh ${QMAKE_FILE_OUT} ${QMAKE_FILE_NAME}
+ fxc_ps_$${ps}.output = $$SHADER_DIR/$${ps}11ps.h
+ fxc_ps_$${ps}.input = CLEAR_INPUT
+ fxc_ps_$${ps}.dependency_type = TYPE_C
+ fxc_ps_$${ps}.variable_out = HEADERS
+ fxc_ps_$${ps}.CONFIG += target_predeps
+ QMAKE_EXTRA_COMPILERS += fxc_ps_$${ps}
}
for (vs, VERTEX_SHADERS) {
- fxc_$${vs}.commands = $$FXC /nologo /E $$vs /T vs_2_0 /Fh ${QMAKE_FILE_OUT} ${QMAKE_FILE_NAME}
- fxc_$${vs}.output = $$SHADER_DIR/$${vs}.h
- fxc_$${vs}.input = VS_INPUT
- fxc_$${vs}.dependency_type = TYPE_C
- fxc_$${vs}.variable_out = HEADERS
- QMAKE_EXTRA_COMPILERS += fxc_$${vs}
+ fxc_vs_$${vs}.commands = $$FXC /nologo /E $$vs /T vs_2_0 /Fh ${QMAKE_FILE_OUT} ${QMAKE_FILE_NAME}
+ fxc_vs_$${vs}.output = $$SHADER_DIR/$${vs}.h
+ fxc_vs_$${vs}.input = VS_INPUT
+ fxc_vs_$${vs}.dependency_type = TYPE_C
+ fxc_vs_$${vs}.variable_out = HEADERS
+ fxc_vs_$${vs}.CONFIG += target_predeps
+ QMAKE_EXTRA_COMPILERS += fxc_vs_$${vs}
+}
+for (vs, VERTEX_SHADERS_PASSTHROUGH) {
+ fxc_vs_$${vs}.commands = $$FXC /nologo /E VS_$$vs /T vs_4_0 /Fh ${QMAKE_FILE_OUT} ${QMAKE_FILE_NAME}
+ fxc_vs_$${vs}.output = $$SHADER_DIR/$${vs}11vs.h
+ fxc_vs_$${vs}.input = PASSTHROUGH_INPUT
+ fxc_vs_$${vs}.dependency_type = TYPE_C
+ fxc_vs_$${vs}.variable_out = HEADERS
+ fxc_vs_$${vs}.CONFIG += target_predeps
+ QMAKE_EXTRA_COMPILERS += fxc_vs_$${vs}
+}
+for (vs, CLEAR_SHADERS) {
+ fxc_vs_$${vs}.commands = $$FXC /nologo /E VS_$$vs /T vs_4_0 /Fh ${QMAKE_FILE_OUT} ${QMAKE_FILE_NAME}
+ fxc_vs_$${vs}.output = $$SHADER_DIR/$${vs}11vs.h
+ fxc_vs_$${vs}.input = CLEAR_INPUT
+ fxc_vs_$${vs}.dependency_type = TYPE_C
+ fxc_vs_$${vs}.variable_out = HEADERS
+ fxc_vs_$${vs}.CONFIG += target_predeps
+ QMAKE_EXTRA_COMPILERS += fxc_vs_$${vs}
}
load(qt_installs)