diff options
Diffstat (limited to 'src/angle')
33 files changed, 0 insertions, 2527 deletions
diff --git a/src/angle/README.qt b/src/angle/README.qt deleted file mode 100644 index 2d484a0280..0000000000 --- a/src/angle/README.qt +++ /dev/null @@ -1,43 +0,0 @@ -This is the ANGLE project from: - -https://chromium.googlesource.com/angle/angle/+/master/README.md - -The upstream version used here can be found in: - -src/common/version.h - -This copy of the library has been modified with several patches -that can be found in the 'patches' subdirectory. - -Updating ANGLE -------------------------------------------------------------- -To update to a newer version of ANGLE, extract the archive -directly into the 'src/3rdparty/angle' directory. ANGLE contains -a .gitignore file that will overwrite the one in Qt, but this is -not desirable so the ANGLE one should be discarded and the one in -Qt should be kept. If there are new source/header files in ANGLE -(git status -u) then they should be added to the relevant .pro -file before committing. - -The patches in src/angle/patches should be applied on top. - -ANGLE ships with .def files for exporting functions in -3rdparty/angle/src/libEGL/libEGL.def and -3rdparty/angle/src/libGLESv2/libGLESv2.def. -Since we build debug and release versions -(libbEGL.dll/libEGLd.dll, respectively), debug versions of -the .def files (libEGLd.def) must be created as copies -with the LIBRARY name entry adapted. - -MinGW-w64 32-bit requires function exports in the .def files -to be decorated. Modified versions of the .def files are created as -<library>_mingw32.def. The decorated names of each function can be found -using the nm command to list the symbols in libEGL.o and libGLESv2.o. - -Using a custom ANGLE -------------------------------------------------------------- -Qt supports building a version of ANGLE other than the one that -is contained in the source tree. To get Qt to build a different -copy of ANGLE, you can set the ANGLE_DIR environment variable -to point to the location of the custom ANGLE before building Qt. - diff --git a/src/angle/angle.pro b/src/angle/angle.pro deleted file mode 100644 index 8fae66dfb9..0000000000 --- a/src/angle/angle.pro +++ /dev/null @@ -1,11 +0,0 @@ -TEMPLATE = subdirs -SUBDIRS += src - -# We do it this way instead of letting load(qt_module) handle it for two reasons: -# 1) qt_module_headers assumes the TARGET is the same as the include directory (eg: libGLESv2 != GLES2) -# 2) If we made a 'QtANGLE' module, the include directory would be flattened which won't work since -# we need to support "#include <GLES2/gl2.h>" -CONFIG += minimal_syncqt -MODULE_INCNAME = QtANGLE/KHR QtANGLE/EGL QtANGLE/GLES2 QtANGLE/GLES3 -VERSION = none -load(qt_module_headers) diff --git a/src/angle/patches/0001-ANGLE-Use-pixel-sizes-in-the-XAML-swap-chain.patch b/src/angle/patches/0001-ANGLE-Use-pixel-sizes-in-the-XAML-swap-chain.patch deleted file mode 100644 index 618ad08b4b..0000000000 --- a/src/angle/patches/0001-ANGLE-Use-pixel-sizes-in-the-XAML-swap-chain.patch +++ /dev/null @@ -1,135 +0,0 @@ -From b1f0b50c19ec17df554faa1335d2b989e262b831 Mon Sep 17 00:00:00 2001 -From: Oliver Wolff <oliver.wolff@qt.io> -Date: Wed, 22 Aug 2018 09:21:04 +0200 -Subject: [PATCH 1/8] ANGLE: Use pixel sizes in the XAML swap chain - -This is necessary for Qt applications, as they render to GL in physical -pixels. This is consistent with the CoreWindow swap chain behavior. - -In order to achieve proper scaling, the scale factor has to be initialized -properly in InspectableNativeWindow. - -This change only affects Windows Runtime targets. - -Change-Id: I92a365f33752ed49c960e390bbf89cc33ccc8004 ---- - .../d3d/d3d11/winrt/CoreWindowNativeWindow.cpp | 23 ------------------- - .../d3d/d3d11/winrt/CoreWindowNativeWindow.h | 2 -- - .../d3d/d3d11/winrt/InspectableNativeWindow.cpp | 26 +++++++++++++++++++--- - .../d3d/d3d11/winrt/InspectableNativeWindow.h | 7 +++++- - 4 files changed, 29 insertions(+), 29 deletions(-) - -diff --git a/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/winrt/CoreWindowNativeWindow.cpp b/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/winrt/CoreWindowNativeWindow.cpp -index dd37ace87e..1ef90e7b09 100644 ---- a/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/winrt/CoreWindowNativeWindow.cpp -+++ b/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/winrt/CoreWindowNativeWindow.cpp -@@ -205,27 +205,4 @@ HRESULT GetCoreWindowSizeInPixels(const ComPtr<ABI::Windows::UI::Core::ICoreWind - - return result; - } -- --static float GetLogicalDpi() --{ -- ComPtr<ABI::Windows::Graphics::Display::IDisplayPropertiesStatics> displayProperties; -- -- if (SUCCEEDED(GetActivationFactory(HStringReference(RuntimeClass_Windows_Graphics_Display_DisplayProperties).Get(), displayProperties.GetAddressOf()))) -- { -- float dpi = 96.0f; -- if (SUCCEEDED(displayProperties->get_LogicalDpi(&dpi))) -- { -- return dpi; -- } -- } -- -- // Return 96 dpi as a default if display properties cannot be obtained. -- return 96.0f; --} -- --float ConvertDipsToPixels(float dips) --{ -- static const float dipsPerInch = 96.0f; -- return dips * GetLogicalDpi() / dipsPerInch; --} - } -diff --git a/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/winrt/CoreWindowNativeWindow.h b/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/winrt/CoreWindowNativeWindow.h -index d43bf0ba5f..21855c2c3b 100644 ---- a/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/winrt/CoreWindowNativeWindow.h -+++ b/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/winrt/CoreWindowNativeWindow.h -@@ -19,8 +19,6 @@ typedef ABI::Windows::Foundation::__FITypedEventHandler_2_Windows__CUI__CCore__C - - namespace rx - { --float ConvertDipsToPixels(float dips); -- - class CoreWindowNativeWindow : public InspectableNativeWindow, public std::enable_shared_from_this<CoreWindowNativeWindow> - { - public: -diff --git a/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/winrt/InspectableNativeWindow.cpp b/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/winrt/InspectableNativeWindow.cpp -index cc81521320..1bd796e58f 100644 ---- a/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/winrt/InspectableNativeWindow.cpp -+++ b/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/winrt/InspectableNativeWindow.cpp -@@ -270,8 +270,28 @@ HRESULT GetOptionalSinglePropertyValue(const ComPtr<ABI::Windows::Foundation::Co - - RECT InspectableNativeWindow::clientRect(const Size &size) - { -- // We don't have to check if a swapchain scale was specified here; the default value is 1.0f -- // which will have no effect. -- return {0, 0, lround(size.Width * mSwapChainScale), lround(size.Height * mSwapChainScale)}; -+ return {0, 0, static_cast<long>(ConvertDipsToPixels(size.Width)), -+ static_cast<long>(ConvertDipsToPixels(size.Height))}; -+} -+ -+float GetLogicalDpi() -+{ -+ ComPtr<ABI::Windows::Graphics::Display::IDisplayPropertiesStatics> displayProperties; -+ float dpi = 96.0f; -+ -+ if (SUCCEEDED(GetActivationFactory(HStringReference(RuntimeClass_Windows_Graphics_Display_DisplayProperties).Get(), displayProperties.GetAddressOf()))) -+ { -+ if (SUCCEEDED(displayProperties->get_LogicalDpi(&dpi))) -+ { -+ return dpi; -+ } -+ } -+ return dpi; -+} -+ -+float ConvertDipsToPixels(float dips) -+{ -+ static const float dipsPerInch = 96.0f; -+ return lround((dips * GetLogicalDpi() / dipsPerInch)); - } - } -diff --git a/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/winrt/InspectableNativeWindow.h b/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/winrt/InspectableNativeWindow.h -index 3e67269f36..d81c3e5fb9 100644 ---- a/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/winrt/InspectableNativeWindow.h -+++ b/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/winrt/InspectableNativeWindow.h -@@ -30,6 +30,9 @@ using namespace ABI::Windows::Foundation::Collections; - - namespace rx - { -+float ConvertDipsToPixels(float dips); -+float GetLogicalDpi(); -+ - class InspectableNativeWindow - { - public: -@@ -37,12 +40,14 @@ class InspectableNativeWindow - mSupportsSwapChainResize(true), - mSwapChainSizeSpecified(false), - mSwapChainScaleSpecified(false), -- mSwapChainScale(1.0f), - mClientRectChanged(false), - mClientRect({0,0,0,0}), - mNewClientRect({0,0,0,0}) - { - mSizeChangedEventToken.value = 0; -+ mSwapChainScale = 96.0f / GetLogicalDpi(); -+ if (mSwapChainScale != 1.0f) -+ mSwapChainScaleSpecified = true; - } - virtual ~InspectableNativeWindow(){} - --- -2.15.0.windows.1 - diff --git a/src/angle/patches/0001-Fix-build-for-MinGW.patch b/src/angle/patches/0001-Fix-build-for-MinGW.patch deleted file mode 100644 index 186acd39dc..0000000000 --- a/src/angle/patches/0001-Fix-build-for-MinGW.patch +++ /dev/null @@ -1,26 +0,0 @@ -From 75f877269a86aa111afbf816be14ef6c36ea6478 Mon Sep 17 00:00:00 2001 -From: Oliver Wolff <oliver.wolff@qt.io> -Date: Mon, 2 Jul 2018 12:56:39 +0200 -Subject: [PATCH] Fix build for MinGW - -SSE is not properly supported for Mingw yet. ---- - src/common/platform.h | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/3rdparty/angle/src/common/platform.h b/src/3rdparty/angle/srccommon/platform.h -index 0065fd2..47cd57b 100644 ---- a/src/3rdparty/angle/src/common/platform.h -+++ b/src/3rdparty/angle/src/common/platform.h -@@ -86,7 +86,7 @@ - #if defined(_MSC_VER) && !defined(_M_ARM) - #include <intrin.h> - #define ANGLE_USE_SSE --#elif defined(__GNUC__) && (defined(__x86_64__) || defined(__i386__)) -+#elif defined(__GNUC__) && (defined(__x86_64__) || defined(__i386__)) && !defined(__MINGW32__) - #include <x86intrin.h> - #define ANGLE_USE_SSE - #endif --- -2.10.2.windows.1 - diff --git a/src/angle/patches/0002-ANGLE-Add-support-for-querying-platform-device.patch b/src/angle/patches/0002-ANGLE-Add-support-for-querying-platform-device.patch deleted file mode 100644 index d548ce465f..0000000000 --- a/src/angle/patches/0002-ANGLE-Add-support-for-querying-platform-device.patch +++ /dev/null @@ -1,83 +0,0 @@ -From 2f2aabec376cb749a7d0db9e7f754fbfd28b8a72 Mon Sep 17 00:00:00 2001 -From: Oliver Wolff <oliver.wolff@qt.io> -Date: Wed, 22 Aug 2018 12:58:13 +0200 -Subject: [PATCH 2/8] ANGLE: Add support for querying platform device - -The EGL_EXT_device_base extension allows for querying the platform -device of the graphics hardware via eglQueryDisplayAttribEXT(). -As that extension is not supported by ANGLE, this patch adds similar -functionality to the existing eglQuerySurfacePointerANGLE API. When -EGL_DEVICE_EXT is passed as the queried attribute, the underlying -D3D/DXGI device pointer is passed back to the caller via the value -argument. - -The D3D device is needed for video support in QtMultimedia as well as -the IDXGIDevice3::Trim() calls required by the Windows Store. - -Change-Id: Ib3dfd3edc47dbcc02b07f71980ba785508f2ee57 ---- - src/3rdparty/angle/src/libANGLE/renderer/d3d/SurfaceD3D.cpp | 4 ++++ - src/3rdparty/angle/src/libANGLE/renderer/d3d/SwapChainD3D.h | 1 + - src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/SwapChain11.cpp | 5 +++++ - src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/SwapChain11.h | 2 ++ - 4 files changed, 12 insertions(+) - -diff --git a/src/3rdparty/angle/src/libANGLE/renderer/d3d/SurfaceD3D.cpp b/src/3rdparty/angle/src/libANGLE/renderer/d3d/SurfaceD3D.cpp -index 8e78b71a36..ceb022d14c 100644 ---- a/src/3rdparty/angle/src/libANGLE/renderer/d3d/SurfaceD3D.cpp -+++ b/src/3rdparty/angle/src/libANGLE/renderer/d3d/SurfaceD3D.cpp -@@ -351,6 +351,10 @@ egl::Error SurfaceD3D::querySurfacePointerANGLE(EGLint attribute, void **value) - { - *value = mSwapChain->getKeyedMutex(); - } -+ else if (attribute == EGL_DEVICE_EXT) -+ { -+ *value = mSwapChain->getDevice(); -+ } - else UNREACHABLE(); - - return egl::NoError(); -diff --git a/src/3rdparty/angle/src/libANGLE/renderer/d3d/SwapChainD3D.h b/src/3rdparty/angle/src/libANGLE/renderer/d3d/SwapChainD3D.h -index 81c3d13da4..017737b878 100644 ---- a/src/3rdparty/angle/src/libANGLE/renderer/d3d/SwapChainD3D.h -+++ b/src/3rdparty/angle/src/libANGLE/renderer/d3d/SwapChainD3D.h -@@ -58,6 +58,7 @@ class SwapChainD3D : angle::NonCopyable - EGLint width, - EGLint height) = 0; - virtual void recreate() = 0; -+ virtual void *getDevice() { return nullptr; } - - virtual RenderTargetD3D *getColorRenderTarget() = 0; - virtual RenderTargetD3D *getDepthStencilRenderTarget() = 0; -diff --git a/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/SwapChain11.cpp b/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/SwapChain11.cpp -index 19bcaae776..05bb5d9863 100644 ---- a/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/SwapChain11.cpp -+++ b/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/SwapChain11.cpp -@@ -1007,6 +1007,11 @@ void SwapChain11::recreate() - // possibly should use this method instead of reset - } - -+void *rx::SwapChain11::getDevice() -+{ -+ return mRenderer->getDevice(); -+} -+ - RenderTargetD3D *SwapChain11::getColorRenderTarget() - { - return &mColorRenderTarget; -diff --git a/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/SwapChain11.h b/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/SwapChain11.h -index 5ce2af193d..eca068210b 100644 ---- a/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/SwapChain11.h -+++ b/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/SwapChain11.h -@@ -61,6 +61,8 @@ class SwapChain11 final : public SwapChainD3D - void *getKeyedMutex() override; - EGLint getSamples() const { return mEGLSamples; } - -+ void *getDevice() override; -+ - egl::Error getSyncValues(EGLuint64KHR *ust, EGLuint64KHR *msc, EGLuint64KHR *sbc) override; - - private: --- -2.15.0.windows.1 - diff --git a/src/angle/patches/0002-ANGLE-Fix-build-for-ARM.patch b/src/angle/patches/0002-ANGLE-Fix-build-for-ARM.patch deleted file mode 100644 index 04517a116e..0000000000 --- a/src/angle/patches/0002-ANGLE-Fix-build-for-ARM.patch +++ /dev/null @@ -1,43 +0,0 @@ -From 416fb93dae5009bb51da9f6720a95918a2c79e78 Mon Sep 17 00:00:00 2001 -From: Oliver Wolff <oliver.wolff@qt.io> -Date: Fri, 17 Aug 2018 09:54:15 +0200 -Subject: [PATCH] ANGLE: Fix build for ARM - -__popcnt is not available when building for ARM. This patch uses the -approach that is also used in Microsoft's ANGLE fork. - -Change-Id: I98bac36a3b36b0aa81f3b483d3d12cce9f6c5c87 ---- - src/3rdparty/angle/src/common/mathutil.h | 9 +++++++++ - 1 file changed, 9 insertions(+) - -diff --git a/src/3rdparty/angle/src/common/mathutil.h b/src/3rdparty/angle/src/common/mathutil.h -index ca6efc567f..372e432066 100644 ---- a/src/3rdparty/angle/src/common/mathutil.h -+++ b/src/3rdparty/angle/src/common/mathutil.h -@@ -884,6 +884,14 @@ inline uint32_t BitfieldReverse(uint32_t value) - - // Count the 1 bits. - #if defined(ANGLE_PLATFORM_WINDOWS) -+#if defined(_M_ARM) -+inline int BitCount(uint32_t bits) -+{ -+ bits = bits - ((bits >> 1) & 0x55555555); -+ bits = (bits & 0x33333333) + ((bits >> 2) & 0x33333333); -+ return (((bits + (bits >> 4)) & 0x0F0F0F0F) * 0x01010101) >> 24; -+} -+#else // _M_ARM - inline int BitCount(uint32_t bits) - { - return static_cast<int>(__popcnt(bits)); -@@ -893,6 +901,7 @@ inline int BitCount(uint64_t bits) - { - return static_cast<int>(__popcnt64(bits)); - } -+#endif // !_M_ARM - #endif // defined(ANGLE_IS_64_BIT_CPU) - #endif // defined(ANGLE_PLATFORM_WINDOWS) - --- -2.15.0.windows.1 - diff --git a/src/angle/patches/0003-ANGLE-Fix-Windows-Store-D3D-Trim-and-Level-9-require.patch b/src/angle/patches/0003-ANGLE-Fix-Windows-Store-D3D-Trim-and-Level-9-require.patch deleted file mode 100644 index 1f51619f18..0000000000 --- a/src/angle/patches/0003-ANGLE-Fix-Windows-Store-D3D-Trim-and-Level-9-require.patch +++ /dev/null @@ -1,58 +0,0 @@ -From 9b37d0fa0e9eaab3d8bb1dcbba85c072302ee08c Mon Sep 17 00:00:00 2001 -From: Oliver Wolff <oliver.wolff@qt.io> -Date: Wed, 22 Aug 2018 13:01:10 +0200 -Subject: [PATCH 3/8] ANGLE: Fix Windows Store D3D Trim and Level 9 - requirements - -Due to additional validation not covered in previous patches, the Windows -Store certification compatibility had regressed. These changes ensure that -the required D3D behaviors are met. - -Change-Id: If8bc2f8cd4b2f84e1d92a1627951da2537212125 ---- - .../angle/src/libANGLE/renderer/d3d/d3d11/Renderer11.cpp | 15 ++++++++++++++- - src/3rdparty/angle/src/libGLESv2/entry_points_egl_ext.cpp | 2 ++ - 2 files changed, 16 insertions(+), 1 deletion(-) - -diff --git a/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/Renderer11.cpp b/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/Renderer11.cpp -index bd14f4de2a..f696e360ef 100644 ---- a/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/Renderer11.cpp -+++ b/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/Renderer11.cpp -@@ -523,7 +523,20 @@ Renderer11::Renderer11(egl::Display *display) - - if (requestedMajorVersion == 9 && requestedMinorVersion == 3) - { -- mAvailableFeatureLevels.push_back(D3D_FEATURE_LEVEL_9_3); -+ if (requestedMinorVersion == EGL_DONT_CARE || requestedMinorVersion >= 3) -+ { -+ mAvailableFeatureLevels.push_back(D3D_FEATURE_LEVEL_9_3); -+ } -+#if defined(ANGLE_ENABLE_WINDOWS_STORE) -+ if (requestedMinorVersion == EGL_DONT_CARE || requestedMinorVersion >= 2) -+ { -+ mAvailableFeatureLevels.push_back(D3D_FEATURE_LEVEL_9_2); -+ } -+ if (requestedMinorVersion == EGL_DONT_CARE || requestedMinorVersion >= 1) -+ { -+ mAvailableFeatureLevels.push_back(D3D_FEATURE_LEVEL_9_1); -+ } -+#endif - } - - EGLint requestedDeviceType = static_cast<EGLint>(attributes.get( -diff --git a/src/3rdparty/angle/src/libGLESv2/entry_points_egl_ext.cpp b/src/3rdparty/angle/src/libGLESv2/entry_points_egl_ext.cpp -index b863817920..ee8cdb94dc 100644 ---- a/src/3rdparty/angle/src/libGLESv2/entry_points_egl_ext.cpp -+++ b/src/3rdparty/angle/src/libGLESv2/entry_points_egl_ext.cpp -@@ -54,6 +54,8 @@ EGLBoolean EGLAPIENTRY QuerySurfacePointerANGLE(EGLDisplay dpy, EGLSurface surfa - // validate the attribute parameter - switch (attribute) - { -+ case EGL_DEVICE_EXT: -+ break; - case EGL_D3D_TEXTURE_2D_SHARE_HANDLE_ANGLE: - if (!display->getExtensions().surfaceD3DTexture2DShareHandle) - { --- -2.15.0.windows.1 - diff --git a/src/angle/patches/0004-ANGLE-fix-usage-of-shared-handles-for-WinRT-applicat.patch b/src/angle/patches/0004-ANGLE-fix-usage-of-shared-handles-for-WinRT-applicat.patch deleted file mode 100644 index 72a72f15be..0000000000 --- a/src/angle/patches/0004-ANGLE-fix-usage-of-shared-handles-for-WinRT-applicat.patch +++ /dev/null @@ -1,37 +0,0 @@ -From 67125df3f31dfad0feec81c49c2b317c6d418f4e Mon Sep 17 00:00:00 2001 -From: Oliver Wolff <oliver.wolff@qt.io> -Date: Wed, 22 Aug 2018 13:08:19 +0200 -Subject: [PATCH 4/8] ANGLE: fix usage of shared handles for WinRT applications - -The check is not relevant in Qt's context and was skipped before but -it sneaked back in with the latest ANGLE update. - -Change-Id: Ic44de5468a3254afd76ef4804d97d245676daeb1 ---- - src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/Renderer11.cpp | 3 +++ - 1 file changed, 3 insertions(+) - -diff --git a/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/Renderer11.cpp b/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/Renderer11.cpp -index f696e360ef..cb4e51e42a 100644 ---- a/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/Renderer11.cpp -+++ b/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/Renderer11.cpp -@@ -2270,6 +2270,8 @@ bool Renderer11::getShareHandleSupport() const - return false; - } - -+ // Qt: we don't care about the 9_3 limitation -+#if 0 - // Also disable share handles on Feature Level 9_3, since it doesn't support share handles on - // RGBA8 textures/swapchains. - if (mRenderer11DeviceCaps.featureLevel <= D3D_FEATURE_LEVEL_9_3) -@@ -2277,6 +2279,7 @@ bool Renderer11::getShareHandleSupport() const - mSupportsShareHandles = false; - return false; - } -+#endif - - // Find out which type of D3D11 device the Renderer11 is using - d3d11::ANGLED3D11DeviceType deviceType = getDeviceType(); --- -2.15.0.windows.1 - diff --git a/src/angle/patches/0005-ANGLE-Fix-initialization-of-zero-sized-window.patch b/src/angle/patches/0005-ANGLE-Fix-initialization-of-zero-sized-window.patch deleted file mode 100644 index eb67278628..0000000000 --- a/src/angle/patches/0005-ANGLE-Fix-initialization-of-zero-sized-window.patch +++ /dev/null @@ -1,32 +0,0 @@ -From 8e649097b0e11d8b975ba321f343142dd97889cb Mon Sep 17 00:00:00 2001 -From: Oliver Wolff <oliver.wolff@qt.io> -Date: Wed, 22 Aug 2018 13:12:07 +0200 -Subject: [PATCH 5/8] ANGLE: Fix initialization of zero-sized window - -The clientRect might be empty when creating a window of zero size. The -side effect of a division by zero is that matrix transformation fails -and hence the swapchain gets into an invalid state. - -Change-Id: Idbaed72deadb7b87052ac27e194a40d1810e6f7a ---- - .../libANGLE/renderer/d3d/d3d11/winrt/SwapChainPanelNativeWindow.cpp | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/winrt/SwapChainPanelNativeWindow.cpp b/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/winrt/SwapChainPanelNativeWindow.cpp -index c6d07fc888..3425fad95d 100644 ---- a/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/winrt/SwapChainPanelNativeWindow.cpp -+++ b/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/winrt/SwapChainPanelNativeWindow.cpp -@@ -324,8 +324,8 @@ HRESULT SwapChainPanelNativeWindow::createSwapChain(ID3D11Device *device, - - HRESULT SwapChainPanelNativeWindow::scaleSwapChain(const Size &windowSize, const RECT &clientRect) - { -- Size renderScale = {windowSize.Width / (float)clientRect.right, -- windowSize.Height / (float)clientRect.bottom}; -+ Size renderScale = {windowSize.Width / std::max(LONG(1), clientRect.right), -+ windowSize.Height / std::max(LONG(1), clientRect.bottom)}; - // Setup a scale matrix for the swap chain - DXGI_MATRIX_3X2_F scaleMatrix = {}; - scaleMatrix._11 = renderScale.Width; --- -2.15.0.windows.1 - diff --git a/src/angle/patches/0006-ANGLE-Fix-flickering-on-resize-when-D3D9-is-used.patch b/src/angle/patches/0006-ANGLE-Fix-flickering-on-resize-when-D3D9-is-used.patch deleted file mode 100644 index f515b0a072..0000000000 --- a/src/angle/patches/0006-ANGLE-Fix-flickering-on-resize-when-D3D9-is-used.patch +++ /dev/null @@ -1,165 +0,0 @@ -From 0fc1b9c7e87ab6cdb6bf7c81a1eee0a1d1f74e92 Mon Sep 17 00:00:00 2001 -From: Oliver Wolff <oliver.wolff@qt.io> -Date: Wed, 22 Aug 2018 13:24:43 +0200 -Subject: [PATCH 6/8] ANGLE: Fix flickering on resize when D3D9 is used - -By reverting ANGLE change d3b84ab51db09de238459b0dff2e8420c09aabf3 -we get rid of the flickering that happens on resize when D3D9 is -used. The issue that was fixed there is not relevant in Qt's -context so it is safe to revert the change. - -Task-number: QTBUG-59893 -Change-Id: I9306314b892612fbd1f7a058a2e606aedc0367bb ---- - .../angle/src/libANGLE/renderer/d3d/SurfaceD3D.cpp | 89 ++++++++++++++++++++++ - .../angle/src/libANGLE/renderer/d3d/SurfaceD3D.h | 4 + - 2 files changed, 93 insertions(+) - -diff --git a/src/3rdparty/angle/src/libANGLE/renderer/d3d/SurfaceD3D.cpp b/src/3rdparty/angle/src/libANGLE/renderer/d3d/SurfaceD3D.cpp -index ceb022d14c..8d3f44f2ad 100644 ---- a/src/3rdparty/angle/src/libANGLE/renderer/d3d/SurfaceD3D.cpp -+++ b/src/3rdparty/angle/src/libANGLE/renderer/d3d/SurfaceD3D.cpp -@@ -38,6 +38,7 @@ SurfaceD3D::SurfaceD3D(const egl::SurfaceState &state, - mDepthStencilFormat(state.config->depthStencilFormat), - mSwapChain(nullptr), - mSwapIntervalDirty(true), -+ mWindowSubclassed(false), - mNativeWindow(renderer->createNativeWindow(window, state.config, attribs)), - mWidth(static_cast<EGLint>(attribs.get(EGL_WIDTH, 0))), - mHeight(static_cast<EGLint>(attribs.get(EGL_HEIGHT, 0))), -@@ -45,6 +46,7 @@ SurfaceD3D::SurfaceD3D(const egl::SurfaceState &state, - mShareHandle(0), - mD3DTexture(nullptr) - { -+ subclassWindow(); - if (window != nullptr && !mFixedSize) - { - mWidth = -1; -@@ -72,6 +74,7 @@ SurfaceD3D::SurfaceD3D(const egl::SurfaceState &state, - - SurfaceD3D::~SurfaceD3D() - { -+ unsubclassWindow(); - releaseSwapChain(); - SafeDelete(mNativeWindow); - SafeRelease(mD3DTexture); -@@ -256,6 +259,92 @@ egl::Error SurfaceD3D::swapRect(const gl::Context *context, - return egl::NoError(); - } - -+#if !defined(ANGLE_ENABLE_WINDOWS_STORE) -+#define kSurfaceProperty _TEXT("Egl::SurfaceOwner") -+#define kParentWndProc _TEXT("Egl::SurfaceParentWndProc") -+#define kDisplayProperty _TEXT("Egl::Display") -+ -+static LRESULT CALLBACK SurfaceWindowProc(HWND hwnd, UINT message, WPARAM wparam, LPARAM lparam) -+{ -+ if (message == WM_SIZE) -+ { -+ SurfaceD3D* surf = reinterpret_cast<SurfaceD3D*>(GetProp(hwnd, kSurfaceProperty)); -+ if(surf) -+ { -+ egl::Display *display = reinterpret_cast<egl::Display *>(GetProp(hwnd, kDisplayProperty)); -+ surf->checkForOutOfDateSwapChain(display->getProxyContext()); -+ } -+ } -+ WNDPROC prevWndFunc = reinterpret_cast<WNDPROC >(GetProp(hwnd, kParentWndProc)); -+ return CallWindowProc(prevWndFunc, hwnd, message, wparam, lparam); -+} -+#endif -+ -+void SurfaceD3D::subclassWindow() -+{ -+#if !defined(ANGLE_ENABLE_WINDOWS_STORE) -+ HWND window = mNativeWindow->getNativeWindow(); -+ if (!window) -+ { -+ return; -+ } -+ -+ DWORD processId; -+ DWORD threadId = GetWindowThreadProcessId(window, &processId); -+ if (processId != GetCurrentProcessId() || threadId != GetCurrentThreadId()) -+ { -+ return; -+ } -+ -+ SetLastError(0); -+ LONG_PTR oldWndProc = SetWindowLongPtr(window, GWLP_WNDPROC, reinterpret_cast<LONG_PTR>(SurfaceWindowProc)); -+ if(oldWndProc == 0 && GetLastError() != ERROR_SUCCESS) -+ { -+ mWindowSubclassed = false; -+ return; -+ } -+ -+ SetProp(window, kSurfaceProperty, reinterpret_cast<HANDLE>(this)); -+ SetProp(window, kParentWndProc, reinterpret_cast<HANDLE>(oldWndProc)); -+ SetProp(window, kDisplayProperty, reinterpret_cast<HANDLE>(mDisplay)); -+ mWindowSubclassed = true; -+#endif -+} -+ -+void SurfaceD3D::unsubclassWindow() -+{ -+ if (!mWindowSubclassed) -+ { -+ return; -+ } -+ -+#if !defined(ANGLE_ENABLE_WINDOWS_STORE) -+ HWND window = mNativeWindow->getNativeWindow(); -+ if (!window) -+ { -+ return; -+ } -+ -+ // un-subclass -+ LONG_PTR parentWndFunc = reinterpret_cast<LONG_PTR>(GetProp(window, kParentWndProc)); -+ -+ // Check the windowproc is still SurfaceWindowProc. -+ // If this assert fails, then it is likely the application has subclassed the -+ // hwnd as well and did not unsubclass before destroying its EGL context. The -+ // application should be modified to either subclass before initializing the -+ // EGL context, or to unsubclass before destroying the EGL context. -+ if(parentWndFunc) -+ { -+ LONG_PTR prevWndFunc = SetWindowLongPtr(window, GWLP_WNDPROC, parentWndFunc); -+ ASSERT(prevWndFunc == reinterpret_cast<LONG_PTR>(SurfaceWindowProc)); -+ } -+ -+ RemoveProp(window, kSurfaceProperty); -+ RemoveProp(window, kParentWndProc); -+ RemoveProp(window, kDisplayProperty); -+#endif -+ mWindowSubclassed = false; -+} -+ -+ - egl::Error SurfaceD3D::checkForOutOfDateSwapChain(const gl::Context *context) - { - RECT client; -diff --git a/src/3rdparty/angle/src/libANGLE/renderer/d3d/SurfaceD3D.h b/src/3rdparty/angle/src/libANGLE/renderer/d3d/SurfaceD3D.h -index 4fd45a6dfd..01d2573244 100644 ---- a/src/3rdparty/angle/src/libANGLE/renderer/d3d/SurfaceD3D.h -+++ b/src/3rdparty/angle/src/libANGLE/renderer/d3d/SurfaceD3D.h -@@ -82,6 +82,9 @@ class SurfaceD3D : public SurfaceImpl - int backbufferWidth, - int backbufferHeight); - -+ void subclassWindow(); -+ void unsubclassWindow(); -+ - RendererD3D *mRenderer; - egl::Display *mDisplay; - -@@ -93,6 +96,7 @@ class SurfaceD3D : public SurfaceImpl - - SwapChainD3D *mSwapChain; - bool mSwapIntervalDirty; -+ bool mWindowSubclassed; // Indicates whether we successfully subclassed mWindow for WM_RESIZE hooking - - NativeWindowD3D *mNativeWindow; // Handler for the Window that the surface is created for. - EGLint mWidth; --- -2.15.0.windows.1 - diff --git a/src/angle/patches/0007-ANGLE-Fix-resizing-of-windows.patch b/src/angle/patches/0007-ANGLE-Fix-resizing-of-windows.patch deleted file mode 100644 index 2b4938be9b..0000000000 --- a/src/angle/patches/0007-ANGLE-Fix-resizing-of-windows.patch +++ /dev/null @@ -1,48 +0,0 @@ -From f1568e10c2bd46450adebbd838bd32e4833a0a5c Mon Sep 17 00:00:00 2001 -From: Oliver Wolff <oliver.wolff@qt.io> -Date: Wed, 22 Aug 2018 13:32:44 +0200 -Subject: [PATCH 7/8] ANGLE: Fix resizing of windows - -Use the correct height/width values when calculating -the vector for resizing the window content and the -new size as viewport size. - -Task-number: QTBUG-62475 -Change-Id: I33a8dc1379a908e991b04bc31dfc6254a6d005c9 ---- - .../src/libANGLE/renderer/d3d/d3d11/SwapChain11.cpp | 19 +++++++++---------- - 1 file changed, 9 insertions(+), 10 deletions(-) - -diff --git a/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/SwapChain11.cpp b/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/SwapChain11.cpp -index 05bb5d9863..dcfd06484d 100644 ---- a/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/SwapChain11.cpp -+++ b/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/SwapChain11.cpp -@@ -796,16 +796,15 @@ EGLint SwapChain11::copyOffscreenToBackbuffer(const gl::Context *context, - d3d11::PositionTexCoordVertex *vertices = static_cast<d3d11::PositionTexCoordVertex*>(mappedResource.pData); - - // Create a quad in homogeneous coordinates -- float x1 = (x / float(mWidth)) * 2.0f - 1.0f; -- float y1 = (y / float(mHeight)) * 2.0f - 1.0f; -- float x2 = ((x + width) / float(mWidth)) * 2.0f - 1.0f; -- float y2 = ((y + height) / float(mHeight)) * 2.0f - 1.0f; -- -- float u1 = x / float(mWidth); -- float v1 = y / float(mHeight); -- float u2 = (x + width) / float(mWidth); -- float v2 = (y + height) / float(mHeight); -- -+ float x1 = (x / float(width)) * 2.0f - 1.0f; -+ float y1 = (y / float(height)) * 2.0f - 1.0f; -+ float x2 = ((x + width) / float(width)) * 2.0f - 1.0f; -+ float y2 = ((y + height) / float(height)) * 2.0f - 1.0f; -+ -+ float u1 = x / float(width); -+ float v1 = y / float(height); -+ float u2 = (x + width) / float(width); -+ float v2 = (y + height) / float(height); - // Invert the quad vertices depending on the surface orientation. - if ((mOrientation & EGL_SURFACE_ORIENTATION_INVERT_X_ANGLE) != 0) - { --- -2.15.0.windows.1 - diff --git a/src/angle/patches/0008-ANGLE-winrt-Do-full-screen-update-if-the-the-window-.patch b/src/angle/patches/0008-ANGLE-winrt-Do-full-screen-update-if-the-the-window-.patch deleted file mode 100644 index d9b51fc411..0000000000 --- a/src/angle/patches/0008-ANGLE-winrt-Do-full-screen-update-if-the-the-window-.patch +++ /dev/null @@ -1,40 +0,0 @@ -From 5a58c6c7d97f003aa4a34ae130697dc81cc8fdf8 Mon Sep 17 00:00:00 2001 -From: Oliver Wolff <oliver.wolff@qt.io> -Date: Wed, 22 Aug 2018 15:17:52 +0200 -Subject: [PATCH 8/8] ANGLE: winrt: Do full screen update if the the window - size is reduced - -We cannot do partial updates if the window size is reduced as this will -result in a "pDstBox is not a valid box for the destination subresource." -error. - -Change-Id: I9a8d91bca961f52e1aab1bec5321922cfc842fb3 ---- - .../src/libANGLE/renderer/d3d/d3d11/TextureStorage11.cpp | 11 ++++++++--- - 1 file changed, 8 insertions(+), 3 deletions(-) - -diff --git a/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/TextureStorage11.cpp b/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/TextureStorage11.cpp -index 8f76d16c30..b702450ded 100644 ---- a/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/TextureStorage11.cpp -+++ b/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/TextureStorage11.cpp -@@ -664,9 +664,14 @@ gl::Error TextureStorage11::setData(const gl::Context *context, - // with compressed formats in the calling logic. - ASSERT(!internalFormatInfo.compressed); - -- const int width = destBox ? destBox->width : static_cast<int>(image->getWidth()); -- const int height = destBox ? destBox->height : static_cast<int>(image->getHeight()); -- const int depth = destBox ? destBox->depth : static_cast<int>(image->getDepth()); -+ const int imageWidth = static_cast<int>(image->getWidth()); -+ const int width = destBox ? destBox->width : imageWidth; -+ const int imageHeight = static_cast<int>(image->getHeight()); -+ const int height = destBox ? destBox->height : imageHeight; -+ const int imageDepth = static_cast<int>(image->getDepth()); -+ const int depth = destBox ? destBox->depth : imageDepth; -+ if (imageWidth < width || imageHeight < height || imageDepth < depth) -+ fullUpdate = true; - GLuint srcRowPitch = 0; - ANGLE_TRY_RESULT( - internalFormatInfo.computeRowPitch(type, width, unpack.alignment, unpack.rowLength), --- -2.15.0.windows.1 - diff --git a/src/angle/patches/0009-Revert-Fix-scanForWantedComponents-not-ignoring-attr.patch b/src/angle/patches/0009-Revert-Fix-scanForWantedComponents-not-ignoring-attr.patch deleted file mode 100644 index f57f528ad8..0000000000 --- a/src/angle/patches/0009-Revert-Fix-scanForWantedComponents-not-ignoring-attr.patch +++ /dev/null @@ -1,67 +0,0 @@ -From 2fb4d8087c4f324b7a3f2e21554374de7060e996 Mon Sep 17 00:00:00 2001 -From: Andre de la Rocha <andre.rocha@qt.io> -Date: Tue, 11 Sep 2018 12:52:28 +0200 -Subject: [PATCH] Revert "Fix scanForWantedComponents not ignoring - attribute values of 0." - -This patch reverts commit 2648d9297f25a0d1fa2837f020975a45d4e8a8b9 as a -workaround for the "banding" artifacts we were seeing in Qt. Angle -returns a list of supported graphic formats or configurations, sorting -it in a way that the first one should be the one that fits better the -requested format. In Qt we use the first thing we receive in the list. -In the current Angle version, however, a fix has changed the way in -which the list is sorted. In the old version the first element would be -a 32-bit graphic format, while now it's a 16-bit one, resulting in the -"banding" artifacts. The workaround reverts back to the previous sorting -behavior. ---- - .../libANGLE/Config.cpp | 29 +++++++++++++++++------------ - 1 file changed, 17 insertions(+), 12 deletions(-) - -diff --git a/src/3rdparty/angle/src/libANGLE/Config.cpp b/src/3rdparty/angle/src/libANGLE/Config.cpp -index ccf64c8f8..4f14e73ef 100644 ---- a/src/3rdparty/angle/src/libANGLE/Config.cpp -+++ b/src/3rdparty/angle/src/libANGLE/Config.cpp -@@ -181,22 +181,27 @@ class ConfigSorter - } - - private: -- static bool wantsComponent(const AttributeMap &attributeMap, EGLAttrib component) -+ void scanForWantedComponents(const AttributeMap &attributeMap) - { - // [EGL 1.5] section 3.4.1.2 page 30 - // Sorting rule #3: by larger total number of color bits, not considering - // components that are 0 or don't-care. -- EGLAttrib value = attributeMap.get(component, 0); -- return value != 0 && value != EGL_DONT_CARE; -- } -- -- void scanForWantedComponents(const AttributeMap &attributeMap) -- { -- mWantRed = wantsComponent(attributeMap, EGL_RED_SIZE); -- mWantGreen = wantsComponent(attributeMap, EGL_GREEN_SIZE); -- mWantBlue = wantsComponent(attributeMap, EGL_BLUE_SIZE); -- mWantAlpha = wantsComponent(attributeMap, EGL_ALPHA_SIZE); -- mWantLuminance = wantsComponent(attributeMap, EGL_LUMINANCE_SIZE); -+ for (auto attribIter = attributeMap.begin(); attribIter != attributeMap.end(); attribIter++) -+ { -+ EGLAttrib attributeKey = attribIter->first; -+ EGLAttrib attributeValue = attribIter->second; -+ if (attributeKey != 0 && attributeValue != EGL_DONT_CARE) -+ { -+ switch (attributeKey) -+ { -+ case EGL_RED_SIZE: mWantRed = true; break; -+ case EGL_GREEN_SIZE: mWantGreen = true; break; -+ case EGL_BLUE_SIZE: mWantBlue = true; break; -+ case EGL_ALPHA_SIZE: mWantAlpha = true; break; -+ case EGL_LUMINANCE_SIZE: mWantLuminance = true; break; -+ } -+ } -+ } - } - - EGLint wantedComponentsSize(const Config &config) const --- -2.14.1.windows.1 - diff --git a/src/angle/patches/0010-ANGLE-Disable-multisampling-to-avoid-crash-in-Qt-app.patch b/src/angle/patches/0010-ANGLE-Disable-multisampling-to-avoid-crash-in-Qt-app.patch deleted file mode 100644 index 2fb65ce220..0000000000 --- a/src/angle/patches/0010-ANGLE-Disable-multisampling-to-avoid-crash-in-Qt-app.patch +++ /dev/null @@ -1,41 +0,0 @@ -From d239cceef88fbbe4cf7479025f12934d9c3c83a5 Mon Sep 17 00:00:00 2001 -From: Andre de la Rocha <andre.rocha@qt.io> -Date: Tue, 11 Sep 2018 12:57:23 +0200 -Subject: [PATCH] ANGLE: Disable multisampling to avoid crash in Qt - applications - -This patch adds a workaround for the crash that occurs with multisampling -enabled in some Qt applications (e.g., the 2dpainting example). The old -Angle release we were using lacked support for multisampling, so it was -ignored when requested. This current version seems to support it, but is -causing a crash in the D3D11 shaders, so this workaround disables that -support. ---- - .../libANGLE/renderer/d3d/d3d11/Renderer11.cpp | 4 ++++ - 1 file changed, 4 insertions(+) - -diff --git a/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/Renderer11.cpp b/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/Renderer11.cpp -index bd14f4de2..f487538a5 100644 ---- a/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/Renderer11.cpp -+++ b/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/Renderer11.cpp -@@ -997,6 +997,8 @@ gl::SupportedSampleSet Renderer11::generateSampleSetForEGLConfig( - { - gl::SupportedSampleSet sampleCounts; - -+#if 0 // Qt: Disabling support for multisampling as it is causing a crash in the D3D11 shaders. -+ - // Generate a new set from the set intersection of sample counts between the color and depth - // format caps. - std::set_intersection(colorBufferFormatCaps.sampleCounts.begin(), -@@ -1017,6 +1019,8 @@ gl::SupportedSampleSet Renderer11::generateSampleSetForEGLConfig( - sampleCounts = depthStencilBufferFormatCaps.sampleCounts; - } - -+#endif -+ - // Always support 0 samples - sampleCounts.insert(0); - --- -2.14.1.windows.1 - diff --git a/src/angle/patches/0011-ANGLE-Fix-build-for-ARM64.patch b/src/angle/patches/0011-ANGLE-Fix-build-for-ARM64.patch deleted file mode 100644 index 3a43894a8a..0000000000 --- a/src/angle/patches/0011-ANGLE-Fix-build-for-ARM64.patch +++ /dev/null @@ -1,63 +0,0 @@ -From 416fb93dae5009bb51da9f6720a95918a2c79e78 Mon Sep 17 00:00:00 2001 -From: Thomas Miller <thomaslmiller91@gmail.com> -Date: Tue Oct 16 08:29:58 2018 -0700 -Subject: [PATCH] ANGLE: Fix build for ARM64 - -__popcnt, SSE, and intrin.h are not available when building for ARM64. ---- - src/3rdparty/angle/src/common/mathutil.h | 8 ++++---- - src/3rdparty/angle/src/common/platform.h | 2 +- - 2 files changed, 5 insertions(+), 5 deletions(-) - -diff --git a/src/3rdparty/angle/src/common/mathutil.h b/src/3rdparty/angle/src/common/mathutil.h -index 372e432066..88aedddfe8 100644 ---- a/src/3rdparty/angle/src/common/mathutil.h -+++ b/src/3rdparty/angle/src/common/mathutil.h -@@ -150,7 +150,7 @@ inline bool supportsSSE2() - return supports; - } - --#if defined(ANGLE_PLATFORM_WINDOWS) && !defined(_M_ARM) -+#if defined(ANGLE_PLATFORM_WINDOWS) && !defined(_M_ARM) && !defined(_M_ARM64) - { - int info[4]; - __cpuid(info, 0); -@@ -162,7 +162,7 @@ inline bool supportsSSE2() - supports = (info[3] >> 26) & 1; - } - } --#endif // defined(ANGLE_PLATFORM_WINDOWS) && !defined(_M_ARM) -+#endif // defined(ANGLE_PLATFORM_WINDOWS) && !defined(_M_ARM) && !defined(_M_ARM64) - checked = true; - return supports; - #else // defined(ANGLE_USE_SSE) -@@ -884,14 +884,14 @@ inline uint32_t BitfieldReverse(uint32_t value) - - // Count the 1 bits. - #if defined(ANGLE_PLATFORM_WINDOWS) --#if defined(_M_ARM) -+#if defined(_M_ARM) || defined(_M_ARM64) - inline int BitCount(uint32_t bits) - { - bits = bits - ((bits >> 1) & 0x55555555); - bits = (bits & 0x33333333) + ((bits >> 2) & 0x33333333); - return (((bits + (bits >> 4)) & 0x0F0F0F0F) * 0x01010101) >> 24; - } --#else // _M_ARM -+#else // _M_ARM || _M_ARM64 - inline int BitCount(uint32_t bits) - { - return static_cast<int>(__popcnt(bits)); -diff --git a/src/3rdparty/angle/src/common/platform.h b/src/3rdparty/angle/src/common/platform.h -index 47cd57b999..fb251da579 100644 ---- a/src/3rdparty/angle/src/common/platform.h -+++ b/src/3rdparty/angle/src/common/platform.h -@@ -83,7 +83,7 @@ - # undef far - #endif - --#if defined(_MSC_VER) && !defined(_M_ARM) -+#if defined(_MSC_VER) && !defined(_M_ARM) && !defined(_M_ARM64) - #include <intrin.h> - #define ANGLE_USE_SSE - #elif defined(__GNUC__) && (defined(__x86_64__) || defined(__i386__)) && !defined(__MINGW32__) diff --git a/src/angle/patches/0012-ANGLE-Dynamically-load-D3D-compiler-from-a-list.patch b/src/angle/patches/0012-ANGLE-Dynamically-load-D3D-compiler-from-a-list.patch deleted file mode 100644 index 7009dec1ba..0000000000 --- a/src/angle/patches/0012-ANGLE-Dynamically-load-D3D-compiler-from-a-list.patch +++ /dev/null @@ -1,59 +0,0 @@ -From dff9676c60c51fa7af0749e1cb54305f112183e3 Mon Sep 17 00:00:00 2001 -From: Oliver Wolff <oliver.wolff@qt.io> -Date: Mon, 10 Dec 2018 08:33:14 +0100 -Subject: [PATCH] ANGLE: Dynamically load D3D compiler from a list - -If the default compiler cannot be found, load it from a list of DLL names, -including a non-versioned proxy DLL provided by Qt. On Desktop Windows, -the default compiler can also be specified by an environment variable, -QT_D3DCOMPILER_DLL. ---- - src/3rdparty/angle/src/libANGLE/renderer/d3d/HLSLCompiler.cpp | 25 +++++++++++++++++++++++++ - 1 file changed, 25 insertions(+) - -diff --git a/src/3rdparty/angle/src/libANGLE/renderer/d3d/HLSLCompiler.cpp b/src/3rdparty/angle/src/libANGLE/renderer/d3d/HLSLCompiler.cpp -index b38765070..5d47308d6 100644 ---- a/src/3rdparty/angle/src/libANGLE/renderer/d3d/HLSLCompiler.cpp -+++ b/src/3rdparty/angle/src/libANGLE/renderer/d3d/HLSLCompiler.cpp -@@ -14,6 +14,10 @@ - #include "libANGLE/histogram_macros.h" - #include "third_party/trace_event/trace_event.h" - -+#ifndef QT_D3DCOMPILER_DLL -+#define QT_D3DCOMPILER_DLL D3DCOMPILER_DLL -+#endif -+ - #if ANGLE_APPEND_ASSEMBLY_TO_SHADER_DEBUG_INFO == ANGLE_ENABLED - namespace - { -@@ -130,6 +134,27 @@ gl::Error HLSLCompiler::ensureInitialized() - } - #endif // ANGLE_PRELOADED_D3DCOMPILER_MODULE_NAMES - -+ // Load the compiler DLL specified by the environment, or default to QT_D3DCOMPILER_DLL -+ const wchar_t *defaultCompiler = _wgetenv(L"QT_D3DCOMPILER_DLL"); -+ if (!defaultCompiler) -+ defaultCompiler = QT_D3DCOMPILER_DLL; -+ -+ const wchar_t *compilerDlls[] = { -+ defaultCompiler, -+ L"d3dcompiler_47.dll", -+ L"d3dcompiler_46.dll", -+ L"d3dcompiler_43.dll", -+ 0 -+ }; -+ -+ // Load the first available known compiler DLL -+ for (int i = 0; compilerDlls[i]; ++i) -+ { -+ mD3DCompilerModule = LoadLibrary(compilerDlls[i]); -+ if (mD3DCompilerModule) -+ break; -+ } -+ - if (!mD3DCompilerModule) - { - // Load the version of the D3DCompiler DLL associated with the Direct3D version ANGLE was built with. --- -2.15.0.windows.1 - diff --git a/src/angle/patches/0013-ANGLE-clean-up-displays-on-dll-unload.patch b/src/angle/patches/0013-ANGLE-clean-up-displays-on-dll-unload.patch deleted file mode 100644 index fce3fd76b2..0000000000 --- a/src/angle/patches/0013-ANGLE-clean-up-displays-on-dll-unload.patch +++ /dev/null @@ -1,78 +0,0 @@ -From d8ca4f6d0d8fffd8319f340685e03751049678ae Mon Sep 17 00:00:00 2001 -From: Oliver Wolff <oliver.wolff@qt.io> -Date: Tue, 16 Apr 2019 10:19:27 +0200 -Subject: [PATCH] ANGLE: clean up displays on dll unload - -If the displays are not cleaned up on dll unloading, profilers might -report memory leaks. - -Change-Id: I04cbc3c2448bfb450f7d840e216827f86856e963 ---- - src/3rdparty/angle/src/libANGLE/Display.cpp | 17 +++++++++++++++++ - src/3rdparty/angle/src/libANGLE/Display.h | 1 + - .../angle/src/libGLESv2/global_state.cpp | 2 ++ - 3 files changed, 20 insertions(+) - -diff --git a/src/3rdparty/angle/src/libANGLE/Display.cpp b/src/3rdparty/angle/src/libANGLE/Display.cpp -index 735b472787..0bb0bb05b1 100644 ---- a/src/3rdparty/angle/src/libANGLE/Display.cpp -+++ b/src/3rdparty/angle/src/libANGLE/Display.cpp -@@ -364,6 +364,23 @@ Display *Display::GetDisplayFromDevice(Device *device, const AttributeMap &attri - return display; - } - -+//static -+void Display::CleanupDisplays() -+{ -+ // ~Display takes care of removing the entry from the according map -+ { -+ ANGLEPlatformDisplayMap *displays = GetANGLEPlatformDisplayMap(); -+ while (!displays->empty()) -+ delete displays->begin()->second; -+ } -+ -+ { -+ DevicePlatformDisplayMap *displays = GetDevicePlatformDisplayMap(); -+ while (!displays->empty()) -+ delete displays->begin()->second; -+ } -+} -+ - Display::Display(EGLenum platform, EGLNativeDisplayType displayId, Device *eglDevice) - : mImplementation(nullptr), - mDisplayId(displayId), -diff --git a/src/3rdparty/angle/src/libANGLE/Display.h b/src/3rdparty/angle/src/libANGLE/Display.h -index aa1d1c3b37..2a1c386d75 100644 ---- a/src/3rdparty/angle/src/libANGLE/Display.h -+++ b/src/3rdparty/angle/src/libANGLE/Display.h -@@ -65,6 +65,7 @@ class Display final : angle::NonCopyable - static Display *GetDisplayFromDevice(Device *device, const AttributeMap &attribMap); - static Display *GetDisplayFromNativeDisplay(EGLNativeDisplayType nativeDisplay, - const AttributeMap &attribMap); -+ static void CleanupDisplays(); - - static const ClientExtensions &GetClientExtensions(); - static const std::string &GetClientExtensionString(); -diff --git a/src/3rdparty/angle/src/libGLESv2/global_state.cpp b/src/3rdparty/angle/src/libGLESv2/global_state.cpp -index c5f3dfe4e1..26045bf5b2 100644 ---- a/src/3rdparty/angle/src/libGLESv2/global_state.cpp -+++ b/src/3rdparty/angle/src/libGLESv2/global_state.cpp -@@ -13,6 +13,7 @@ - #include "common/tls.h" - - #include "libANGLE/Thread.h" -+#include "libANGLE/Display.h" - - namespace gl - { -@@ -140,6 +141,7 @@ extern "C" BOOL WINAPI DllMain(HINSTANCE, DWORD reason, LPVOID) - return static_cast<BOOL>(egl::DeallocateCurrentThread()); - - case DLL_PROCESS_DETACH: -+ egl::Display::CleanupDisplays(); - return static_cast<BOOL>(egl::TerminateProcess()); - } - --- -2.20.1.windows.1 - diff --git a/src/angle/patches/0014-ANGLE-Backport-fix-for-compilation-on-mingw-64bit-wi.patch b/src/angle/patches/0014-ANGLE-Backport-fix-for-compilation-on-mingw-64bit-wi.patch deleted file mode 100644 index a32f25d2c0..0000000000 --- a/src/angle/patches/0014-ANGLE-Backport-fix-for-compilation-on-mingw-64bit-wi.patch +++ /dev/null @@ -1,35 +0,0 @@ -From e7ff4aa4ef2221aa02d39bdead7f35008016994e Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Martin=20Storsj=C3=B6?= <martin@martin.st> -Date: Fri, 26 Apr 2019 14:57:01 +0300 -Subject: [PATCH] ANGLE: Backport fix for compilation on mingw/64bit with clang - -This backports the following upstream fix from angle: -https://github.com/google/angle/commit/63cc351fbad06c6241d1c7372fe76f74e1d09a10 ---- - .../angle/src/common/third_party/smhasher/src/PMurHash.cpp | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/src/3rdparty/angle/src/common/third_party/smhasher/src/PMurHash.cpp b/src/3rdparty/angle/src/common/third_party/smhasher/src/PMurHash.cpp -index 071bc31539..93b48713cd 100644 ---- a/src/3rdparty/angle/src/common/third_party/smhasher/src/PMurHash.cpp -+++ b/src/3rdparty/angle/src/common/third_party/smhasher/src/PMurHash.cpp -@@ -49,6 +49,7 @@ on big endian machines, or a byte-by-byte read if the endianess is unknown. - - - #include "PMurHash.h" -+#include <stdint.h> - - /* I used ugly type names in the header to avoid potential conflicts with - * application or system typedefs & defines. Since I'm not including any more -@@ -208,7 +209,7 @@ void PMurHash32_Process(uint32_t *ph1, uint32_t *pcarry, const void *key, int le - /* This CPU does not handle unaligned word access */ - - /* Consume enough so that the next data byte is word aligned */ -- int i = -(long)ptr & 3; -+ int i = -(intptr_t)ptr & 3; - if(i && i <= len) { - DOBYTES(i, h1, c, n, ptr, len); - } --- -2.20.1 (Apple Git-117) - diff --git a/src/angle/patches/0015-ANGLE-Invalidate-client-window-area-when-resizing-sw.patch b/src/angle/patches/0015-ANGLE-Invalidate-client-window-area-when-resizing-sw.patch deleted file mode 100644 index 9380437761..0000000000 --- a/src/angle/patches/0015-ANGLE-Invalidate-client-window-area-when-resizing-sw.patch +++ /dev/null @@ -1,37 +0,0 @@ -From 7d300c6e7d05f4e31c966f1298d11da3eae9d679 Mon Sep 17 00:00:00 2001 -From: Val Doroshchuk <valentyn.doroshchuk@qt.io> -Date: Fri, 21 Jun 2019 11:24:06 +0200 -Subject: [PATCH] ANGLE: Invalidate client window area when resizing swap chain - -Inspired by: -https://codereview.appspot.com/6812076/ -Resizing a window larger results in the newly exposed region being invalidated -but the old region is treated as valid. -This can result in the old region no longer updating. -Was added to D3D9. - -Improving a fix from Filippo Cucchetto: -https://codereview.qt-project.org/c/qt/qtbase/+/195336 -and pushing to D3D11. - -ifndef protects against compilation error for WinRT. -Invalidate() should be used only for desktop apps. - -diff --git a/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/SwapChain11.cpp b/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/SwapChain11.cpp -index dcfd06484d..e8f13b388f 100644 ---- a/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/SwapChain11.cpp -+++ b/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/SwapChain11.cpp -@@ -504,6 +504,10 @@ EGLint SwapChain11::resize(const gl::Context *context, - ASSERT(SUCCEEDED(result)); - if (SUCCEEDED(result)) - { -+#ifndef ANGLE_ENABLE_WINDOWS_STORE -+ if (mNativeWindow->getNativeWindow()) -+ InvalidateRect(mNativeWindow->getNativeWindow(), nullptr, FALSE); -+#endif - const auto &format = - d3d11::Format::Get(mOffscreenRenderTargetFormat, mRenderer->getRenderer11DeviceCaps()); - mBackBufferTexture.set(backbufferTexture, format); --- -2.14.2.windows.1 - diff --git a/src/angle/patches/0016-ANGLE-Fix-severe-performance-regression.patch b/src/angle/patches/0016-ANGLE-Fix-severe-performance-regression.patch deleted file mode 100644 index e9cda1337f..0000000000 --- a/src/angle/patches/0016-ANGLE-Fix-severe-performance-regression.patch +++ /dev/null @@ -1,37 +0,0 @@ -From b215999d63d6e6b087e53e24a47b8b60520ec9e4 Mon Sep 17 00:00:00 2001 -From: Oliver Wolff <oliver.wolff@qt.io> -Date: Wed, 11 Mar 2020 13:59:39 +0100 -Subject: [PATCH] ANGLE: Fix severe performance regression - -The changed buffer usage priority that was introduced in our ANGLE -update caused severe performance regressions for Qt applications. - -Fixes: QTBUG-73835 -Change-Id: I49839bb272cdeec0027264f2751b88bc149665ad ---- - src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/Buffer11.h | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/Buffer11.h b/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/Buffer11.h -index ddbeeb90d2..f92a68454b 100644 ---- a/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/Buffer11.h -+++ b/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/Buffer11.h -@@ -31,7 +31,6 @@ struct TranslatedAttribute; - // The order of this enum governs priority of 'getLatestBufferStorage'. - enum BufferUsage - { -- BUFFER_USAGE_SYSTEM_MEMORY, - BUFFER_USAGE_STAGING, - BUFFER_USAGE_VERTEX_OR_TRANSFORM_FEEDBACK, - BUFFER_USAGE_INDEX, -@@ -40,6 +39,7 @@ enum BufferUsage - BUFFER_USAGE_PIXEL_UNPACK, - BUFFER_USAGE_PIXEL_PACK, - BUFFER_USAGE_UNIFORM, -+ BUFFER_USAGE_SYSTEM_MEMORY, - BUFFER_USAGE_EMULATED_INDEXED_VERTEX, - - BUFFER_USAGE_COUNT, --- -2.20.1.windows.1 - diff --git a/src/angle/patches/0017-ANGLE-Fix-resizing-of-windows-Take-2.patch b/src/angle/patches/0017-ANGLE-Fix-resizing-of-windows-Take-2.patch deleted file mode 100644 index abab74b192..0000000000 --- a/src/angle/patches/0017-ANGLE-Fix-resizing-of-windows-Take-2.patch +++ /dev/null @@ -1,27 +0,0 @@ -From 029d42d1049dcde7950c11fb9adf07c07a8c4c02 Mon Sep 17 00:00:00 2001 -From: Oliver Wolff <oliver.wolff@qt.io> -Date: Wed, 18 Mar 2020 10:56:53 +0100 -Subject: [PATCH] ANGLE: Fix resizing of windows (Take 2) - -Task-number: QTBUG-62475 -Change-Id: I0ea17e7875906508941ae64bb396a4236928b0f9 ---- - .../angle/src/libANGLE/renderer/d3d/d3d11/SwapChain11.cpp | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/SwapChain11.cpp b/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/SwapChain11.cpp -index e8f13b388f..9ece77ecbc 100644 ---- a/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/SwapChain11.cpp -+++ b/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/SwapChain11.cpp -@@ -845,7 +845,7 @@ EGLint SwapChain11::copyOffscreenToBackbuffer(const gl::Context *context, - stateManager->setRenderTarget(mBackBufferRTView.get(), nullptr); - - // Set the viewport -- stateManager->setSimpleViewport(mWidth, mHeight); -+ stateManager->setSimpleViewport(width, height); - - // Apply textures - stateManager->setSimplePixelTextureAndSampler(mOffscreenSRView, mPassThroughSampler); --- -2.20.1.windows.1 - diff --git a/src/angle/patches/0018-ANGLE-d3d11-Do-not-register-windows-message-hooks-fo.patch b/src/angle/patches/0018-ANGLE-d3d11-Do-not-register-windows-message-hooks-fo.patch deleted file mode 100644 index 03529c6531..0000000000 --- a/src/angle/patches/0018-ANGLE-d3d11-Do-not-register-windows-message-hooks-fo.patch +++ /dev/null @@ -1,45 +0,0 @@ -From 3d23de2ad72968d0bf43dac4a9a0f237cc9e03e2 Mon Sep 17 00:00:00 2001 -From: Oliver Wolff <oliver.wolff@qt.io> -Date: Wed, 1 Apr 2020 14:48:48 +0200 -Subject: [PATCH] ANGLE: d3d11: Do not register windows message hooks for d3d11 - windows - -These message hooks are used to handle ALT+ENTER to enter/exit fullscreen -mode and PRINTSCREEN to take screenshots. Qt is implementing these -functionalities itself so we do not have to register these hooks. - -If too many of these hooks are registered, callbacks are no longer called -and Qt's message queue is no longer handling messages. By saving these -hooks we can make sure that more Qt windows at the same time are possible -without getting unresponsive due to too many hooks being registered. - -Change-Id: I5354f91f08cbfeda5e8dc3ad7f824fbd5b3b2932 ---- - .../src/libANGLE/renderer/d3d/d3d11/win32/NativeWindow11Win32.cpp | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/win32/NativeWindow11Win32.cpp b/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/win32/NativeWindow11Win32.cpp -index 5394e3d..f5e6c93 100644 ---- a/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/win32/NativeWindow11Win32.cpp -+++ b/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/win32/NativeWindow11Win32.cpp -@@ -168,7 +168,7 @@ HRESULT NativeWindow11Win32::createSwapChain(ID3D11Device *device, - nullptr, nullptr, &swapChain1); - if (SUCCEEDED(result)) - { -- factory2->MakeWindowAssociation(getNativeWindow(), DXGI_MWA_NO_ALT_ENTER); -+ factory2->MakeWindowAssociation(getNativeWindow(), DXGI_MWA_NO_WINDOW_CHANGES); - *swapChain = static_cast<IDXGISwapChain *>(swapChain1); - } - SafeRelease(factory2); -@@ -196,7 +196,7 @@ HRESULT NativeWindow11Win32::createSwapChain(ID3D11Device *device, - HRESULT result = factory->CreateSwapChain(device, &swapChainDesc, swapChain); - if (SUCCEEDED(result)) - { -- factory->MakeWindowAssociation(getNativeWindow(), DXGI_MWA_NO_ALT_ENTER); -+ factory->MakeWindowAssociation(getNativeWindow(), DXGI_MWA_NO_WINDOW_CHANGES); - } - return result; - } --- -2.7.4.windows.1 - diff --git a/src/angle/src/.gitignore b/src/angle/src/.gitignore deleted file mode 100644 index 9cbadb59ef..0000000000 --- a/src/angle/src/.gitignore +++ /dev/null @@ -1,6 +0,0 @@ -/libGLESv2/renderer/ -/compiler/glslang_lex.cpp -/compiler/glslang_tab.cpp -/compiler/glslang_tab.h -/compiler/preprocessor/ExpressionParser.cpp -/compiler/preprocessor/Tokenizer.cpp diff --git a/src/angle/src/QtANGLE/QtANGLE.pro b/src/angle/src/QtANGLE/QtANGLE.pro deleted file mode 100644 index 0f8e4de536..0000000000 --- a/src/angle/src/QtANGLE/QtANGLE.pro +++ /dev/null @@ -1,70 +0,0 @@ -include(../common/gles_common.pri) - -TARGET = $$qtLibraryTarget($${LIBQTANGLE_NAME}) - -DEF_FILE_TARGET = $${TARGET} - -!build_pass { - # Merge libGLESv2 and libEGL .def files located under $$ANGLE_DIR into QtANGLE$${SUFFIX}.def - DEF_FILES = \ - libGLESv2/libGLESv2 \ - libEGL/libEGL - - SUFFIX = - for (DEBUG_RELEASE, $$list(0 1)) { - DEF_MERGED = \ - "LIBRARY $${LIBQTANGLE_NAME}$$SUFFIX" \ - EXPORTS - mingw: SUFFIX = $${SUFFIX}_mingw32 - PASS = 0 - MAX_ORDINAL = 0 - - for (DEF_FILE, DEF_FILES) { - DEF_FILE_PATH = $$ANGLE_DIR/src/$$DEF_FILE$${SUFFIX}.def - DEF_SRC = $$cat($$DEF_FILE_PATH, lines) - DEF_MERGED += \ - ";" \ - "; Generated from:" \ - "; $$DEF_FILE_PATH" - - for (line, DEF_SRC) { - !contains(line, "(LIBRARY.*|EXPORTS)") { - LINESPLIT = $$split(line, @) - !count(LINESPLIT, 1) { - equals(PASS, 1) { - # In the second .def file we must allocate new ordinals in order - # to not clash with the ordinals from the first file. We then start off - # from MAX_ORDINAL + 1 and increase sequentially - MAX_ORDINAL = $$num_add($$MAX_ORDINAL, 1) - line = $$section(line, @, 0, -2)@$$MAX_ORDINAL - } else { - ORDINAL = $$last(LINESPLIT) - greaterThan(ORDINAL, $$MAX_ORDINAL): \ - MAX_ORDINAL = $$ORDINAL - } - } - DEF_MERGED += $$line - } - } - PASS = 1 - } - write_file($${LIBQTANGLE_NAME}$${SUFFIX}.def, DEF_MERGED)|error() - SUFFIX = "d" - } -} - -SOURCES += $$ANGLE_DIR/src/libEGL/libEGL.cpp - -!static { - DEF_FILE = $$PWD/$${DEF_FILE_TARGET}.def - mingw: equals(QT_ARCH, i386): DEF_FILE = $$PWD/$${DEF_FILE_TARGET}_mingw32.def -} else { - DEFINES += DllMain=DllMain_ANGLE # prevent symbol from conflicting with the user's DllMain -} - -egl_headers.files = \ - $$ANGLE_DIR/include/EGL/egl.h \ - $$ANGLE_DIR/include/EGL/eglext.h \ - $$ANGLE_DIR/include/EGL/eglplatform.h -egl_headers.path = $$[QT_INSTALL_HEADERS]/QtANGLE/EGL -INSTALLS += egl_headers diff --git a/src/angle/src/common/common.pri b/src/angle/src/common/common.pri deleted file mode 100644 index df29269786..0000000000 --- a/src/angle/src/common/common.pri +++ /dev/null @@ -1,32 +0,0 @@ -# static builds should still link ANGLE dynamically when dynamic GL is enabled -include($$OUT_PWD/../../../gui/qtgui-config.pri) -static:qtConfig(dynamicgl) { - CONFIG -= static - CONFIG += shared -} - -CONFIG += installed -include (../config.pri) - -INCLUDEPATH += \ - $$ANGLE_DIR/src \ - $$ANGLE_DIR/include \ - $$ANGLE_DIR/src/common/third_party/base - -LIBS_PRIVATE = $$QMAKE_LIBS_GUI - -TR_EXCLUDE += $$ANGLE_DIR/src/* - -lib_replace.match = $$[QT_INSTALL_LIBS/get] -lib_replace.replace = \$\$\$\$[QT_INSTALL_LIBS] -lib_replace.CONFIG = path -QMAKE_PRL_INSTALL_REPLACE += lib_replace - -FXC = $$shell_quote($$shell_path($$QMAKE_FXC_LOCATION)) - -win32 { - VERSION = $$MODULE_VERSION - CONFIG += skip_target_version_ext -} - -static: DEFINES *= LIBGLESV2_EXPORT_H_ ANGLE_EXPORT= diff --git a/src/angle/src/common/gles_common.pri b/src/angle/src/common/gles_common.pri deleted file mode 100644 index 70b65dd4cc..0000000000 --- a/src/angle/src/common/gles_common.pri +++ /dev/null @@ -1,777 +0,0 @@ -CONFIG += simd no_batch object_parallel_to_source -include(common.pri) - -INCLUDEPATH += \ - $$OUT_PWD/.. \ - $$ANGLE_DIR \ - $$ANGLE_DIR/src/libANGLE - -# Remember to adapt src/gui/configure.* if the Direct X version changes. -!winrt: \ - QMAKE_USE_PRIVATE += d3d9 -winrt: \ - QMAKE_USE_PRIVATE += d3dcompiler d3d11 dxgi - -QMAKE_USE_PRIVATE += dxguid - -STATICLIBS = translator preprocessor -for(libname, STATICLIBS) { - # Appends 'd' to the library for debug builds and builds up the fully - # qualified path to pass to the linker. - staticlib = $$QT_BUILD_TREE/lib/$${QMAKE_PREFIX_STATICLIB}$$qtLibraryTarget($$libname).$${QMAKE_EXTENSION_STATICLIB} - LIBS_PRIVATE += $$staticlib - PRE_TARGETDEPS += $$staticlib -} - -DEFINES += LIBANGLE_IMPLEMENTATION LIBGLESV2_IMPLEMENTATION GL_APICALL= GL_GLEXT_PROTOTYPES= EGLAPI= -!winrt: DEFINES += ANGLE_ENABLE_D3D9 ANGLE_SKIP_DXGI_1_2_CHECK - -QT_FOR_CONFIG += gui-private -include($$OUT_PWD/../../../gui/qtgui-config.pri) - -qtConfig(angle_d3d11_qdtd): DEFINES += ANGLE_D3D11_QDTD_AVAILABLE - -HEADERS += \ - $$ANGLE_DIR/src/common/mathutil.h \ - $$ANGLE_DIR/src/common/utilities.h \ - $$ANGLE_DIR/src/common/version.h \ - $$ANGLE_DIR/src/common/MemoryBuffer.h \ - $$ANGLE_DIR/src/common/angleutils.h \ - $$ANGLE_DIR/src/common/debug.h \ - $$ANGLE_DIR/src/common/event_tracer.h \ - $$ANGLE_DIR/src/libANGLE/angletypes.h \ - $$ANGLE_DIR/src/libANGLE/AttributeMap.h \ - $$ANGLE_DIR/src/libANGLE/BinaryStream.h \ - $$ANGLE_DIR/src/libANGLE/Buffer.h \ - $$ANGLE_DIR/src/libANGLE/Caps.h \ - $$ANGLE_DIR/src/libANGLE/Compiler.h \ - $$ANGLE_DIR/src/libANGLE/Config.h \ - $$ANGLE_DIR/src/libANGLE/Constants.h \ - $$ANGLE_DIR/src/libANGLE/Context.h \ - $$ANGLE_DIR/src/libANGLE/Debug.h \ - $$ANGLE_DIR/src/libANGLE/Device.h \ - $$ANGLE_DIR/src/libANGLE/Display.h \ - $$ANGLE_DIR/src/libANGLE/Error.h \ - $$ANGLE_DIR/src/libANGLE/features.h \ - $$ANGLE_DIR/src/libANGLE/Fence.h \ - $$ANGLE_DIR/src/libANGLE/formatutils.h \ - $$ANGLE_DIR/src/libANGLE/Framebuffer.h \ - $$ANGLE_DIR/src/libANGLE/FramebufferAttachment.h \ - $$ANGLE_DIR/src/libANGLE/HandleAllocator.h \ - $$ANGLE_DIR/src/libANGLE/ImageIndex.h \ - $$ANGLE_DIR/src/libANGLE/IndexRangeCache.h \ - $$ANGLE_DIR/src/libANGLE/Program.h \ - $$ANGLE_DIR/src/libANGLE/Query.h \ - $$ANGLE_DIR/src/libANGLE/queryconversions.h \ - $$ANGLE_DIR/src/libANGLE/RefCountObject.h \ - $$ANGLE_DIR/src/libANGLE/Renderbuffer.h \ - $$ANGLE_DIR/src/libANGLE/ResourceManager.h \ - $$ANGLE_DIR/src/libANGLE/Sampler.h \ - $$ANGLE_DIR/src/libANGLE/Shader.h \ - $$ANGLE_DIR/src/libANGLE/State.h \ - $$ANGLE_DIR/src/libANGLE/Surface.h \ - $$ANGLE_DIR/src/libANGLE/Texture.h \ - $$ANGLE_DIR/src/libANGLE/TransformFeedback.h \ - $$ANGLE_DIR/src/libANGLE/Uniform.h \ - $$ANGLE_DIR/src/libANGLE/validationEGL.h \ - $$ANGLE_DIR/src/libANGLE/validationES.h \ - $$ANGLE_DIR/src/libANGLE/validationES2.h \ - $$ANGLE_DIR/src/libANGLE/validationES3.h \ - $$ANGLE_DIR/src/libANGLE/VertexArray.h \ - $$ANGLE_DIR/src/libANGLE/VertexAttribute.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/BufferD3D.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/CompilerD3D.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/DeviceD3D.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/DisplayD3D.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/DynamicHLSL.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/EGLImageD3D.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/formatutilsD3D.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/FramebufferD3D.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/HLSLCompiler.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/ImageD3D.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/IndexBuffer.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/IndexDataManager.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/ProgramD3D.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/RenderbufferD3D.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/RendererD3D.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/RenderTargetD3D.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/ShaderD3D.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/ShaderExecutableD3D.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/SurfaceD3D.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/SwapChainD3D.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/TextureD3D.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/TextureStorage.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/VertexBuffer.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/VertexDataManager.h \ - $$ANGLE_DIR/src/libANGLE/renderer/BufferImpl.h \ - $$ANGLE_DIR/src/libANGLE/renderer/CompilerImpl.h \ - $$ANGLE_DIR/src/libANGLE/renderer/DeviceImpl.h \ - $$ANGLE_DIR/src/libANGLE/renderer/DisplayImpl.h \ - $$ANGLE_DIR/src/libANGLE/renderer/FenceNVImpl.h \ - $$ANGLE_DIR/src/libANGLE/renderer/FramebufferImpl.h \ - $$ANGLE_DIR/src/libANGLE/renderer/ProgramImpl.h \ - $$ANGLE_DIR/src/libANGLE/renderer/QueryImpl.h \ - $$ANGLE_DIR/src/libANGLE/renderer/RenderbufferImpl.h \ - $$ANGLE_DIR/src/libANGLE/renderer/ShaderImpl.h \ - $$ANGLE_DIR/src/libANGLE/renderer/SurfaceImpl.h \ - $$ANGLE_DIR/src/libANGLE/renderer/TextureImpl.h \ - $$ANGLE_DIR/src/libANGLE/renderer/TransformFeedbackImpl.h \ - $$ANGLE_DIR/src/libANGLE/renderer/VertexArrayImpl.h \ - $$ANGLE_DIR/src/libANGLE/ResourceManager.h \ - $$ANGLE_DIR/src/libANGLE/Sampler.h \ - $$ANGLE_DIR/src/libANGLE/Shader.h \ - $$ANGLE_DIR/src/libANGLE/State.h \ - $$ANGLE_DIR/src/libANGLE/Texture.h \ - $$ANGLE_DIR/src/libANGLE/TransformFeedback.h \ - $$ANGLE_DIR/src/libANGLE/Uniform.h \ - $$ANGLE_DIR/src/libANGLE/validationES2.h \ - $$ANGLE_DIR/src/libANGLE/validationES3.h \ - $$ANGLE_DIR/src/libANGLE/validationES.h \ - $$ANGLE_DIR/src/libANGLE/VertexArray.h \ - $$ANGLE_DIR/src/libANGLE/VertexAttribute.h \ - $$ANGLE_DIR/src/libGLESv2/entry_points_egl.h \ - $$ANGLE_DIR/src/libGLESv2/entry_points_egl_ext.h \ - $$ANGLE_DIR/src/libGLESv2/entry_points_gles_2_0_ext.h \ - $$ANGLE_DIR/src/libGLESv2/global_state.h \ - $$ANGLE_DIR/src/libGLESv2/resource.h - -SOURCES += \ - $$ANGLE_DIR/src/common/mathutil.cpp \ - $$ANGLE_DIR/src/common/utilities.cpp \ - $$ANGLE_DIR/src/common/MemoryBuffer.cpp \ - $$ANGLE_DIR/src/common/angleutils.cpp \ - $$ANGLE_DIR/src/common/debug.cpp \ - $$ANGLE_DIR/src/common/event_tracer.cpp \ - $$ANGLE_DIR/src/common/Float16ToFloat32.cpp \ - $$ANGLE_DIR/src/common/string_utils.cpp \ - $$ANGLE_DIR/src/common/uniform_type_info_autogen.cpp \ - $$ANGLE_DIR/src/common/third_party/smhasher/src/PMurHash.cpp \ - $$ANGLE_DIR/src/common/third_party/base/anglebase/sha1.cc \ - $$ANGLE_DIR/src/image_util/copyimage.cpp \ - $$ANGLE_DIR/src/image_util/imageformats.cpp \ - $$ANGLE_DIR/src/image_util/loadimage.cpp \ - $$ANGLE_DIR/src/image_util/loadimage_etc.cpp \ - $$ANGLE_DIR/src/libANGLE/angletypes.cpp \ - $$ANGLE_DIR/src/libANGLE/AttributeMap.cpp \ - $$ANGLE_DIR/src/libANGLE/Buffer.cpp \ - $$ANGLE_DIR/src/libANGLE/Caps.cpp \ - $$ANGLE_DIR/src/libANGLE/Compiler.cpp \ - $$ANGLE_DIR/src/libANGLE/Config.cpp \ - $$ANGLE_DIR/src/libANGLE/Context.cpp \ - $$ANGLE_DIR/src/libANGLE/ContextState.cpp \ - $$ANGLE_DIR/src/libANGLE/Debug.cpp \ - $$ANGLE_DIR/src/libANGLE/Device.cpp \ - $$ANGLE_DIR/src/libANGLE/Display.cpp \ - $$ANGLE_DIR/src/libANGLE/Error.cpp \ - $$ANGLE_DIR/src/libANGLE/es3_copy_conversion_table_autogen.cpp \ - $$ANGLE_DIR/src/libANGLE/Fence.cpp \ - $$ANGLE_DIR/src/libANGLE/formatutils.cpp \ - $$ANGLE_DIR/src/libANGLE/format_map_autogen.cpp \ - $$ANGLE_DIR/src/libANGLE/Framebuffer.cpp \ - $$ANGLE_DIR/src/libANGLE/FramebufferAttachment.cpp \ - $$ANGLE_DIR/src/libANGLE/HandleAllocator.cpp \ - $$ANGLE_DIR/src/libANGLE/HandleRangeAllocator.cpp \ - $$ANGLE_DIR/src/libANGLE/Image.cpp \ - $$ANGLE_DIR/src/libANGLE/ImageIndex.cpp \ - $$ANGLE_DIR/src/libANGLE/IndexRangeCache.cpp \ - $$ANGLE_DIR/src/libANGLE/LoggingAnnotator.cpp \ - $$ANGLE_DIR/src/libANGLE/MemoryProgramCache.cpp \ - $$ANGLE_DIR/src/libANGLE/PackedGLEnums_autogen.cpp \ - $$ANGLE_DIR/src/libANGLE/params.cpp \ - $$ANGLE_DIR/src/libANGLE/Path.cpp \ - $$ANGLE_DIR/src/libANGLE/Platform.cpp \ - $$ANGLE_DIR/src/libANGLE/Program.cpp \ - $$ANGLE_DIR/src/libANGLE/ProgramLinkedResources.cpp \ - $$ANGLE_DIR/src/libANGLE/ProgramPipeline.cpp \ - $$ANGLE_DIR/src/libANGLE/Query.cpp \ - $$ANGLE_DIR/src/libANGLE/queryconversions.cpp \ - $$ANGLE_DIR/src/libANGLE/queryutils.cpp \ - $$ANGLE_DIR/src/libANGLE/Renderbuffer.cpp \ - $$ANGLE_DIR/src/libANGLE/ResourceManager.cpp \ - $$ANGLE_DIR/src/libANGLE/Sampler.cpp \ - $$ANGLE_DIR/src/libANGLE/Shader.cpp \ - $$ANGLE_DIR/src/libANGLE/State.cpp \ - $$ANGLE_DIR/src/libANGLE/Stream.cpp \ - $$ANGLE_DIR/src/libANGLE/Surface.cpp \ - $$ANGLE_DIR/src/libANGLE/Texture.cpp \ - $$ANGLE_DIR/src/libANGLE/Thread.cpp \ - $$ANGLE_DIR/src/libANGLE/TransformFeedback.cpp \ - $$ANGLE_DIR/src/libANGLE/Uniform.cpp \ - $$ANGLE_DIR/src/libANGLE/validationEGL.cpp \ - $$ANGLE_DIR/src/libANGLE/validationES.cpp \ - $$ANGLE_DIR/src/libANGLE/validationES2.cpp \ - $$ANGLE_DIR/src/libANGLE/validationES3.cpp \ - $$ANGLE_DIR/src/libANGLE/validationES31.cpp \ - $$ANGLE_DIR/src/libANGLE/VaryingPacking.cpp \ - $$ANGLE_DIR/src/libANGLE/VertexArray.cpp \ - $$ANGLE_DIR/src/libANGLE/VertexAttribute.cpp \ - $$ANGLE_DIR/src/libANGLE/WorkerThread.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/ContextImpl.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/DeviceImpl.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/DisplayImpl.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/driver_utils.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/Format_table_autogen.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/load_functions_table_autogen.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/renderer_utils.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/SurfaceImpl.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/TextureImpl.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/BufferD3D.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/CompilerD3D.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/DeviceD3D.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/DisplayD3D.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/DynamicHLSL.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/EGLImageD3D.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/FramebufferD3D.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/HLSLCompiler.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/ImageD3D.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/IndexBuffer.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/IndexDataManager.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/NativeWindowD3D.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/ProgramD3D.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/RenderbufferD3D.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/RendererD3D.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/RenderTargetD3D.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/ShaderD3D.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/ShaderExecutableD3D.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/SurfaceD3D.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/SwapChainD3D.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/TextureD3D.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/VertexBuffer.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/VertexDataManager.cpp \ - $$ANGLE_DIR/src/libGLESv2/entry_points_egl.cpp \ - $$ANGLE_DIR/src/libGLESv2/entry_points_egl_ext.cpp \ - $$ANGLE_DIR/src/libGLESv2/entry_points_gles_2_0_autogen.cpp \ - $$ANGLE_DIR/src/libGLESv2/proc_table_autogen.cpp \ - $$ANGLE_DIR/src/libGLESv2/entry_points_gles_2_0_ext.cpp \ - $$ANGLE_DIR/src/libGLESv2/entry_points_gles_3_0_autogen.cpp \ - $$ANGLE_DIR/src/libGLESv2/entry_points_gles_3_1_autogen.cpp \ - $$ANGLE_DIR/src/libGLESv2/global_state.cpp \ - $$ANGLE_DIR/src/libGLESv2/libGLESv2.cpp - -angle_d3d11 { - HEADERS += \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/Blit11.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/Buffer11.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/Clear11.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/DebugAnnotator11.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/dxgi_support_table.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/Fence11.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/Framebuffer11.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/formatutils11.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/Image11.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/IndexBuffer11.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/InputLayoutCache.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/NativeWindow11.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/PixelTransfer11.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/Query11.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/Renderer11.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/renderer11_utils.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/RenderTarget11.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/RenderStateCache.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/ShaderExecutable11.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/StateManager11.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/SwapChain11.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/TextureStorage11.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/Trim11.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/texture_format_table.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/VertexBuffer11.h - - SOURCES += \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/Blit11.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/Buffer11.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/Clear11.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/Context11.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/DebugAnnotator11.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/dxgi_format_map_autogen.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/dxgi_support_table.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/Fence11.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/Framebuffer11.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/formatutils11.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/Image11.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/IndexBuffer11.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/InputLayoutCache.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/PixelTransfer11.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/ProgramPipeline11.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/Query11.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/Renderer11.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/renderer11_utils.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/RenderTarget11.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/RenderStateCache.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/ResourceManager11.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/ShaderExecutable11.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/StateManager11.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/StreamProducerNV12.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/SwapChain11.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/TextureStorage11.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/TransformFeedback11.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/Trim11.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/texture_format_table.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/texture_format_table_autogen.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/VertexArray11.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/VertexBuffer11.cpp -} - -!winrt { - HEADERS += \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d9/Blit9.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d9/Buffer9.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d9/DebugAnnotator9.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d9/Fence9.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d9/Framebuffer9.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d9/formatutils9.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d9/Image9.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d9/IndexBuffer9.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d9/Query9.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d9/Renderer9.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d9/renderer9_utils.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d9/RenderTarget9.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d9/ShaderExecutable9.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d9/StateManager9.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d9/SwapChain9.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d9/TextureStorage9.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d9/VertexBuffer9.h \ - $$ANGLE_DIR/src/third_party/systeminfo/SystemInfo.h - - SOURCES += \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d9/Blit9.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d9/Buffer9.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d9/Context9.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d9/DebugAnnotator9.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d9/Fence9.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d9/Framebuffer9.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d9/formatutils9.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d9/Image9.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d9/IndexBuffer9.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d9/NativeWindow9.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d9/Query9.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d9/Renderer9.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d9/renderer9_utils.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d9/RenderTarget9.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d9/ShaderExecutable9.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d9/StateManager9.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d9/SwapChain9.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d9/TextureStorage9.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d9/VertexBuffer9.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d9/VertexDeclarationCache.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/win32/NativeWindow11Win32.cpp \ - $$ANGLE_DIR/src/third_party/systeminfo/SystemInfo.cpp -} else { - HEADERS += \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/winrt/CoreWindowNativeWindow.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/winrt/InspectableNativeWindow.h \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/winrt/SwapChainPanelNativeWindow.h - - SOURCES += \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/winrt/CoreWindowNativeWindow.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/winrt/InspectableNativeWindow.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/winrt/NativeWindow11WinRT.cpp \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/winrt/SwapChainPanelNativeWindow.cpp -} - -#load_functions.target = load_functions -#load_functions.commands = python $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/gen_load_functions_table.py \ -# > $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/gen_load_functions_table.cpp -#QMAKE_EXTRA_TARGETS += load_functions - -# HLSL shaders -BLITVS = $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d9/shaders/Blit.vs -standardvs.input = BLITVS -standardvs.type = vs_2_0 -standardvs.output = standardvs.h - -BLITPS = $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d9/shaders/Blit.ps -passthroughps.input = BLITPS -passthroughps.type = ps_2_0 -passthroughps.output = passthroughps.h -luminanceps.input = BLITPS -luminanceps.type = ps_2_0 -luminanceps.output = luminanceps.h -luminancepremultps.input = BLITPS -luminancepremultps.type = ps_2_0 -luminancepremultps.output = luminancepremultps.h -luminanceunmultps.input = BLITPS -luminanceunmultps.type = ps_2_0 -luminanceunmultps.output = luminanceunmultps.h -componentmaskps.input = BLITPS -componentmaskps.type = ps_2_0 -componentmaskps.output = componentmaskps.h -componentmaskpremultps.input = BLITPS -componentmaskpremultps.type = ps_2_0 -componentmaskpremultps.output = componentmaskpremultps.h -componentmaskunmultps.input = BLITPS -componentmaskunmultps.type = ps_2_0 -componentmaskunmultps.output = componentmaskunmultps.h - -PASSTHROUGH2D = $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/shaders/Passthrough2D11.hlsl -VS_Passthrough2D.input = PASSTHROUGH2D -VS_Passthrough2D.type = vs_4_0_level_9_3 -VS_Passthrough2D.output = passthrough2d11vs.h -PS_PassthroughRGBA2D.input = PASSTHROUGH2D -PS_PassthroughRGBA2D.type = ps_4_0_level_9_3 -PS_PassthroughRGBA2D.output = passthroughrgba2d11ps.h -PS_PassthroughRGB2D.input = PASSTHROUGH2D -PS_PassthroughRGB2D.type = ps_4_0_level_9_3 -PS_PassthroughRGB2D.output = passthroughrgb2d11ps.h -PS_PassthroughRG2D.input = PASSTHROUGH2D -PS_PassthroughRG2D.type = ps_4_0_level_9_3 -PS_PassthroughRG2D.output = passthroughrg2d11ps.h -PS_PassthroughR2D.input = PASSTHROUGH2D -PS_PassthroughR2D.type = ps_4_0_level_9_3 -PS_PassthroughR2D.output = passthroughr2d11ps.h -PS_PassthroughLum2D.input = PASSTHROUGH2D -PS_PassthroughLum2D.type = ps_4_0_level_9_3 -PS_PassthroughLum2D.output = passthroughlum2d11ps.h -PS_PassthroughLumAlpha2D.input = PASSTHROUGH2D -PS_PassthroughLumAlpha2D.type = ps_4_0_level_9_3 -PS_PassthroughLumAlpha2D.output = passthroughlumalpha2d11ps.h -PS_PassthroughDepth2D.input = PASSTHROUGH2D -PS_PassthroughDepth2D.type = ps_4_0 -PS_PassthroughDepth2D.output = passthroughdepth2d11ps.h -PS_PassthroughRGBA2DUI.input = PASSTHROUGH2D -PS_PassthroughRGBA2DUI.type = ps_4_0 -PS_PassthroughRGBA2DUI.output = passthroughrgba2dui11ps.h -PS_PassthroughRGBA2DI.input = PASSTHROUGH2D -PS_PassthroughRGBA2DI.type = ps_4_0 -PS_PassthroughRGBA2DI.output = passthroughrgba2di11ps.h -PS_PassthroughRGB2DUI.input = PASSTHROUGH2D -PS_PassthroughRGB2DUI.type = ps_4_0 -PS_PassthroughRGB2DUI.output = passthroughrgb2dui11ps.h -PS_PassthroughRGB2DI.input = PASSTHROUGH2D -PS_PassthroughRGB2DI.type = ps_4_0 -PS_PassthroughRGB2DI.output = passthroughrgb2di11ps.h -PS_PassthroughRG2DUI.input = PASSTHROUGH2D -PS_PassthroughRG2DUI.type = ps_4_0 -PS_PassthroughRG2DUI.output = passthroughrg2dui11ps.h -PS_PassthroughRG2DI.input = PASSTHROUGH2D -PS_PassthroughRG2DI.type = ps_4_0 -PS_PassthroughRG2DI.output = passthroughrg2di11ps.h -PS_PassthroughR2DUI.input = PASSTHROUGH2D -PS_PassthroughR2DUI.type = ps_4_0 -PS_PassthroughR2DUI.output = passthroughr2dui11ps.h -PS_PassthroughR2DI.input = PASSTHROUGH2D -PS_PassthroughR2DI.type = ps_4_0 -PS_PassthroughR2DI.output = passthroughr2di11ps.h -PS_PassthroughA2D.input = PASSTHROUGH2D -PS_PassthroughA2D.type = ps_4_0_level_9_3 -PS_PassthroughA2D.output = passthrougha2d11ps.h -PS_PassthroughRGBA2DMS.input = PASSTHROUGH2D -PS_PassthroughRGBA2DMS.type = ps_4_1 -PS_PassthroughRGBA2DMS.output = passthroughrgba2dms11ps.h - -CLEAR = $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/shaders/Clear11.hlsl -VS_Clear_FL9.input = CLEAR -VS_Clear_FL9.type = vs_4_0_level_9_3 -VS_Clear_FL9.output = clear11_fl9vs.h -PS_ClearFloat_FL9.input = CLEAR -PS_ClearFloat_FL9.type = ps_4_0_level_9_3 -PS_ClearFloat_FL9.output = clearfloat11_fl9ps.h -VS_Clear.input = CLEAR -VS_Clear.type = vs_4_0 -VS_Clear.output = clear11vs.h -VS_Multiview_Clear.input = CLEAR -VS_Multiview_Clear.type = vs_4_0 -VS_Multiview_Clear.output = clear11multiviewvs.h -GS_Multiview_Clear.input = CLEAR -GS_Multiview_Clear.type = gs_4_0 -GS_Multiview_Clear.output = clear11multiviewgs.h -PS_ClearDepth.input = CLEAR -PS_ClearDepth.type = ps_4_0 -PS_ClearDepth.output = cleardepth11ps.h -PS_ClearFloat1.input = CLEAR -PS_ClearFloat1.type = ps_4_0 -PS_ClearFloat1.output = clearfloat11ps1.h -PS_ClearFloat2.input = CLEAR -PS_ClearFloat2.type = ps_4_0 -PS_ClearFloat2.output = clearfloat11ps2.h -PS_ClearFloat3.input = CLEAR -PS_ClearFloat3.type = ps_4_0 -PS_ClearFloat3.output = clearfloat11ps3.h -PS_ClearFloat4.input = CLEAR -PS_ClearFloat4.type = ps_4_0 -PS_ClearFloat4.output = clearfloat11ps4.h -PS_ClearFloat5.input = CLEAR -PS_ClearFloat5.type = ps_4_0 -PS_ClearFloat5.output = clearfloat11ps5.h -PS_ClearFloat6.input = CLEAR -PS_ClearFloat6.type = ps_4_0 -PS_ClearFloat6.output = clearfloat11ps6.h -PS_ClearFloat7.input = CLEAR -PS_ClearFloat7.type = ps_4_0 -PS_ClearFloat7.output = clearfloat11ps7.h -PS_ClearFloat8.input = CLEAR -PS_ClearFloat8.type = ps_4_0 -PS_ClearFloat8.output = clearfloat11ps8.h -PS_ClearUint1.input = CLEAR -PS_ClearUint1.type = ps_4_0 -PS_ClearUint1.output = clearuint11ps1.h -PS_ClearUint2.input = CLEAR -PS_ClearUint2.type = ps_4_0 -PS_ClearUint2.output = clearuint11ps2.h -PS_ClearUint3.input = CLEAR -PS_ClearUint3.type = ps_4_0 -PS_ClearUint3.output = clearuint11ps3.h -PS_ClearUint4.input = CLEAR -PS_ClearUint4.type = ps_4_0 -PS_ClearUint4.output = clearuint11ps4.h -PS_ClearUint5.input = CLEAR -PS_ClearUint5.type = ps_4_0 -PS_ClearUint5.output = clearuint11ps5.h -PS_ClearUint6.input = CLEAR -PS_ClearUint6.type = ps_4_0 -PS_ClearUint6.output = clearuint11ps6.h -PS_ClearUint7.input = CLEAR -PS_ClearUint7.type = ps_4_0 -PS_ClearUint7.output = clearuint11ps7.h -PS_ClearUint8.input = CLEAR -PS_ClearUint8.type = ps_4_0 -PS_ClearUint8.output = clearuint11ps8.h -PS_ClearSint1.input = CLEAR -PS_ClearSint1.type = ps_4_0 -PS_ClearSint1.output = clearsint11ps1.h -PS_ClearSint2.input = CLEAR -PS_ClearSint2.type = ps_4_0 -PS_ClearSint2.output = clearsint11ps2.h -PS_ClearSint3.input = CLEAR -PS_ClearSint3.type = ps_4_0 -PS_ClearSint3.output = clearsint11ps3.h -PS_ClearSint4.input = CLEAR -PS_ClearSint4.type = ps_4_0 -PS_ClearSint4.output = clearsint11ps4.h -PS_ClearSint5.input = CLEAR -PS_ClearSint5.type = ps_4_0 -PS_ClearSint5.output = clearsint11ps5.h -PS_ClearSint6.input = CLEAR -PS_ClearSint6.type = ps_4_0 -PS_ClearSint6.output = clearsint11ps6.h -PS_ClearSint7.input = CLEAR -PS_ClearSint7.type = ps_4_0 -PS_ClearSint7.output = clearsint11ps7.h -PS_ClearSint8.input = CLEAR -PS_ClearSint8.type = ps_4_0 -PS_ClearSint8.output = clearsint11ps8.h - -PASSTHROUGH3D = $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/shaders/Passthrough3D11.hlsl -VS_Passthrough3D.input = PASSTHROUGH3D -VS_Passthrough3D.type = vs_4_0 -VS_Passthrough3D.output = passthrough3d11vs.h -GS_Passthrough3D.input = PASSTHROUGH3D -GS_Passthrough3D.type = gs_4_0 -GS_Passthrough3D.output = passthrough3d11gs.h -PS_PassthroughRGBA3D.input = PASSTHROUGH3D -PS_PassthroughRGBA3D.type = ps_4_0 -PS_PassthroughRGBA3D.output = passthroughrgba3d11ps.h -PS_PassthroughRGBA3DUI.input = PASSTHROUGH3D -PS_PassthroughRGBA3DUI.type = ps_4_0 -PS_PassthroughRGBA3DUI.output = passthroughrgba3dui11ps.h -PS_PassthroughRGBA3DI.input = PASSTHROUGH3D -PS_PassthroughRGBA3DI.type = ps_4_0 -PS_PassthroughRGBA3DI.output = passthroughrgba3di11ps.h -PS_PassthroughRGB3D.input = PASSTHROUGH3D -PS_PassthroughRGB3D.type = ps_4_0 -PS_PassthroughRGB3D.output = passthroughrgb3d11ps.h -PS_PassthroughRGB3DUI.input = PASSTHROUGH3D -PS_PassthroughRGB3DUI.type = ps_4_0 -PS_PassthroughRGB3DUI.output = passthroughrgb3dui11ps.h -PS_PassthroughRGB3DI.input = PASSTHROUGH3D -PS_PassthroughRGB3DI.type = ps_4_0 -PS_PassthroughRGB3DI.output = passthroughrgb3di11ps.h -PS_PassthroughRG3D.input = PASSTHROUGH3D -PS_PassthroughRG3D.type = ps_4_0 -PS_PassthroughRG3D.output = passthroughrg3d11ps.h -PS_PassthroughRG3DUI.input = PASSTHROUGH3D -PS_PassthroughRG3DUI.type = ps_4_0 -PS_PassthroughRG3DUI.output = passthroughrg3dui11ps.h -PS_PassthroughRG3DI.input = PASSTHROUGH3D -PS_PassthroughRG3DI.type = ps_4_0 -PS_PassthroughRG3DI.output = passthroughrg3di11ps.h -PS_PassthroughR3D.input = PASSTHROUGH3D -PS_PassthroughR3D.type = ps_4_0 -PS_PassthroughR3D.output = passthroughr3d11ps.h -PS_PassthroughR3DUI.input = PASSTHROUGH3D -PS_PassthroughR3DUI.type = ps_4_0 -PS_PassthroughR3DUI.output = passthroughr3dui11ps.h -PS_PassthroughR3DI.input = PASSTHROUGH3D -PS_PassthroughR3DI.type = ps_4_0 -PS_PassthroughR3DI.output = passthroughr3di11ps.h -PS_PassthroughLum3D.input = PASSTHROUGH3D -PS_PassthroughLum3D.type = ps_4_0 -PS_PassthroughLum3D.output = passthroughlum3d11ps.h -PS_PassthroughLumAlpha3D.input = PASSTHROUGH3D -PS_PassthroughLumAlpha3D.type = ps_4_0 -PS_PassthroughLumAlpha3D.output = passthroughlumalpha3d11ps.h - -SWIZZLE = $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/shaders/Swizzle11.hlsl -PS_SwizzleF2D.input = SWIZZLE -PS_SwizzleF2D.type = ps_4_0 -PS_SwizzleF2D.output = swizzlef2dps.h -PS_SwizzleI2D.input = SWIZZLE -PS_SwizzleI2D.type = ps_4_0 -PS_SwizzleI2D.output = swizzlei2dps.h -PS_SwizzleUI2D.input = SWIZZLE -PS_SwizzleUI2D.type = ps_4_0 -PS_SwizzleUI2D.output = swizzleui2dps.h -PS_SwizzleF3D.input = SWIZZLE -PS_SwizzleF3D.type = ps_4_0 -PS_SwizzleF3D.output = swizzlef3dps.h -PS_SwizzleI3D.input = SWIZZLE -PS_SwizzleI3D.type = ps_4_0 -PS_SwizzleI3D.output = swizzlei3dps.h -PS_SwizzleUI3D.input = SWIZZLE -PS_SwizzleUI3D.type = ps_4_0 -PS_SwizzleUI3D.output = swizzleui3dps.h -PS_SwizzleF2DArray.input = SWIZZLE -PS_SwizzleF2DArray.type = ps_4_0 -PS_SwizzleF2DArray.output = swizzlef2darrayps.h -PS_SwizzleI2DArray.input = SWIZZLE -PS_SwizzleI2DArray.type = ps_4_0 -PS_SwizzleI2DArray.output = swizzlei2darrayps.h -PS_SwizzleUI2DArray.input = SWIZZLE -PS_SwizzleUI2DArray.type = ps_4_0 -PS_SwizzleUI2DArray.output = swizzleui2darrayps.h - -BUFFERTOTEXTURE = $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/shaders/BufferToTexture11.hlsl -VS_BufferToTexture.input = BUFFERTOTEXTURE -VS_BufferToTexture.type = vs_4_0 -VS_BufferToTexture.output = buffertotexture11_vs.h -GS_BufferToTexture.input = BUFFERTOTEXTURE -GS_BufferToTexture.type = gs_4_0 -GS_BufferToTexture.output = buffertotexture11_gs.h -PS_BufferToTexture_4F.input = BUFFERTOTEXTURE -PS_BufferToTexture_4F.type = ps_4_0 -PS_BufferToTexture_4F.output = buffertotexture11_ps_4f.h -PS_BufferToTexture_4I.input = BUFFERTOTEXTURE -PS_BufferToTexture_4I.type = ps_4_0 -PS_BufferToTexture_4I.output = buffertotexture11_ps_4i.h -PS_BufferToTexture_4UI.input = BUFFERTOTEXTURE -PS_BufferToTexture_4UI.type = ps_4_0 -PS_BufferToTexture_4UI.output = buffertotexture11_ps_4ui.h - -MULTIPLYALPHA = $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/shaders/MultiplyAlpha.hlsl -PS_FtoF_PM_RGBA.input = MULTIPLYALPHA -PS_FtoF_PM_RGBA.type = ps_4_0 -PS_FtoF_PM_RGBA.output = multiplyalpha_ftof_pm_rgba_ps.h -PS_FtoF_UM_RGBA.input = MULTIPLYALPHA -PS_FtoF_UM_RGBA.type = ps_4_0 -PS_FtoF_UM_RGBA.output = multiplyalpha_ftof_um_rgba_ps.h -PS_FtoF_PM_RGB.input = MULTIPLYALPHA -PS_FtoF_PM_RGB.type = ps_4_0 -PS_FtoF_PM_RGB.output = multiplyalpha_ftof_pm_rgb_ps.h -PS_FtoF_UM_RGB.input = MULTIPLYALPHA -PS_FtoF_UM_RGB.type = ps_4_0 -PS_FtoF_UM_RGB.output = multiplyalpha_ftof_um_rgb_ps.h -PS_FtoU_PT_RGBA.input = MULTIPLYALPHA -PS_FtoU_PT_RGBA.type = ps_4_0 -PS_FtoU_PT_RGBA.output = multiplyalpha_ftou_pt_rgba_ps.h -PS_FtoU_PM_RGBA.input = MULTIPLYALPHA -PS_FtoU_PM_RGBA.type = ps_4_0 -PS_FtoU_PM_RGBA.output = multiplyalpha_ftou_pm_rgba_ps.h -PS_FtoU_UM_RGBA.input = MULTIPLYALPHA -PS_FtoU_UM_RGBA.type = ps_4_0 -PS_FtoU_UM_RGBA.output = multiplyalpha_ftou_um_rgba_ps.h -PS_FtoU_PT_RGB.input = MULTIPLYALPHA -PS_FtoU_PT_RGB.type = ps_4_0 -PS_FtoU_PT_RGB.output = multiplyalpha_ftou_pt_rgb_ps.h -PS_FtoU_PM_RGB.input = MULTIPLYALPHA -PS_FtoU_PM_RGB.type = ps_4_0 -PS_FtoU_PM_RGB.output = multiplyalpha_ftou_pm_rgb_ps.h -PS_FtoU_UM_RGB.input = MULTIPLYALPHA -PS_FtoU_UM_RGB.type = ps_4_0 -PS_FtoU_UM_RGB.output = multiplyalpha_ftou_um_rgb_ps.h -PS_FtoF_PM_LUMA.input = MULTIPLYALPHA -PS_FtoF_PM_LUMA.type = ps_4_0 -PS_FtoF_PM_LUMA.output = multiplyalpha_ftof_pm_luma_ps.h -PS_FtoF_UM_LUMA.input = MULTIPLYALPHA -PS_FtoF_UM_LUMA.type = ps_4_0 -PS_FtoF_UM_LUMA.output = multiplyalpha_ftof_um_luma_ps.h -PS_FtoF_PM_LUMAALPHA.input = MULTIPLYALPHA -PS_FtoF_PM_LUMAALPHA.type = ps_4_0 -PS_FtoF_PM_LUMAALPHA.output = multiplyalpha_ftof_pm_lumaalpha_ps.h -PS_FtoF_UM_LUMAALPHA.input = MULTIPLYALPHA -PS_FtoF_UM_LUMAALPHA.type = ps_4_0 -PS_FtoF_UM_LUMAALPHA.output = multiplyalpha_ftof_um_lumaalpha_ps.h - -RESOLVEDEPTHSTENCIL = \ - $$ANGLE_DIR/src/libANGLE/renderer/d3d/d3d11/shaders/ResolveDepthStencil.hlsl -VS_ResolveDepthStencil.input = RESOLVEDEPTHSTENCIL -VS_ResolveDepthStencil.type = vs_4_1 -VS_ResolveDepthStencil.output = resolvedepthstencil11_vs.h -PS_ResolveDepth.input = RESOLVEDEPTHSTENCIL -PS_ResolveDepth.type = ps_4_1 -PS_ResolveDepth.output = resolvedepth11_ps.h -PS_ResolveDepthStencil.input = RESOLVEDEPTHSTENCIL -PS_ResolveDepthStencil.type = ps_4_1 -PS_ResolveDepthStencil.output = resolvedepthstencil11_ps.h -PS_ResolveStencil.input = RESOLVEDEPTHSTENCIL -PS_ResolveStencil.type = ps_4_1 -PS_ResolveStencil.output = resolvestencil11_ps.h - -# D3D11 -angle_d3d11: SHADERS = VS_Passthrough2D \ - PS_PassthroughRGB2D PS_PassthroughRGB2DUI PS_PassthroughRGB2DI \ - PS_PassthroughRGBA2D PS_PassthroughRGBA2DUI PS_PassthroughRGBA2DI \ - PS_PassthroughRG2D PS_PassthroughRG2DUI PS_PassthroughRG2DI \ - PS_PassthroughR2D PS_PassthroughR2DUI PS_PassthroughR2DI \ - PS_PassthroughA2D \ - PS_PassthroughLum2D PS_PassthroughLumAlpha2D PS_PassthroughDepth2D \ - VS_Clear_FL9 PS_ClearFloat_FL9 VS_Clear VS_Multiview_Clear \ - GS_Multiview_Clear PS_ClearDepth \ - PS_ClearFloat1 PS_ClearFloat2 PS_ClearFloat3 PS_ClearFloat4 PS_ClearFloat5 \ - PS_ClearFloat6 PS_ClearFloat7 PS_ClearFloat8 \ - PS_ClearUint1 PS_ClearUint2 PS_ClearUint3 PS_ClearUint4 \ - PS_ClearUint5 PS_ClearUint6 PS_ClearUint7 PS_ClearUint8 \ - PS_ClearSint1 PS_ClearSint2 PS_ClearSint3 PS_ClearSint4 \ - PS_ClearSint5 PS_ClearSint6 PS_ClearSint7 PS_ClearSint8 \ - VS_Passthrough3D GS_Passthrough3D \ - PS_PassthroughRGBA3D PS_PassthroughRGBA3DUI PS_PassthroughRGBA3DI \ - PS_PassthroughRGB3D PS_PassthroughRGB3DUI PS_PassthroughRGB3DI \ - PS_PassthroughRG3D PS_PassthroughRG3DUI PS_PassthroughRG3DI \ - PS_PassthroughR3D PS_PassthroughR3DUI PS_PassthroughR3DI \ - PS_PassthroughLum3D PS_PassthroughLumAlpha3D \ - PS_SwizzleF2D PS_SwizzleI2D PS_SwizzleUI2D \ - PS_SwizzleF3D PS_SwizzleI3D PS_SwizzleUI3D \ - PS_SwizzleF2DArray PS_SwizzleI2DArray PS_SwizzleUI2DArray \ - VS_BufferToTexture GS_BufferToTexture \ - PS_BufferToTexture_4F PS_BufferToTexture_4I PS_BufferToTexture_4UI \ - PS_FtoF_PM_RGBA PS_FtoF_UM_RGBA PS_FtoF_PM_RGB PS_FtoF_UM_RGB \ - PS_FtoU_PT_RGBA PS_FtoU_PM_RGBA PS_FtoU_UM_RGBA \ - PS_FtoU_PT_RGB PS_FtoU_PM_RGB PS_FtoU_UM_RGB \ - PS_FtoF_PM_LUMA PS_FtoF_UM_LUMA \ - PS_FtoF_PM_LUMAALPHA PS_FtoF_UM_LUMAALPHA \ - VS_ResolveDepthStencil PS_ResolveDepth PS_ResolveDepthStencil PS_ResolveStencil - -# This shader causes an internal compiler error in mingw73. Re-enable it, when -# our mingw version can handle it. -!mingw: angle_d3d11: SHADERS += PS_PassthroughRGBA2DMS - -# D3D9 -!winrt: SHADERS += standardvs passthroughps \ - luminanceps luminancepremultps luminanceunmultps \ - componentmaskps componentmaskpremultps componentmaskunmultps - -# Generate headers -for (SHADER, SHADERS) { - INPUT = $$eval($${SHADER}.input) - OUT_DIR = $$OUT_PWD/libANGLE/$$relative_path($$dirname($$INPUT), $$ANGLE_DIR/src/libANGLE)/compiled - fxc_$${SHADER}.commands = $$FXC -nologo -E $${SHADER} -T $$eval($${SHADER}.type) -Fh ${QMAKE_FILE_OUT} ${QMAKE_FILE_NAME} - fxc_$${SHADER}.output = $$OUT_DIR/$$eval($${SHADER}.output) - fxc_$${SHADER}.input = $$INPUT - fxc_$${SHADER}.dependency_type = TYPE_C - fxc_$${SHADER}.variable_out = HEADERS - fxc_$${SHADER}.CONFIG += target_predeps - QMAKE_EXTRA_COMPILERS += fxc_$${SHADER} -} - -khr_headers.files = $$ANGLE_DIR/include/KHR/khrplatform.h -khr_headers.path = $$[QT_INSTALL_HEADERS]/QtANGLE/KHR -gles2_headers.files = \ - $$ANGLE_DIR/include/GLES2/gl2.h \ - $$ANGLE_DIR/include/GLES2/gl2ext.h \ - $$ANGLE_DIR/include/GLES2/gl2ext_angle.h \ - $$ANGLE_DIR/include/GLES2/gl2platform.h -gles2_headers.path = $$[QT_INSTALL_HEADERS]/QtANGLE/GLES2 -gles3_headers.files = \ - $$ANGLE_DIR/include/GLES3/gl3.h \ - $$ANGLE_DIR/include/GLES3/gl3platform.h -gles3_headers.path = $$[QT_INSTALL_HEADERS]/QtANGLE/GLES3 -INSTALLS += khr_headers gles2_headers -angle_d3d11: INSTALLS += gles3_headers diff --git a/src/angle/src/compiler/compiler.pro b/src/angle/src/compiler/compiler.pro deleted file mode 100644 index 7f3f3e301e..0000000000 --- a/src/angle/src/compiler/compiler.pro +++ /dev/null @@ -1,3 +0,0 @@ -TEMPLATE = subdirs -CONFIG += ordered -SUBDIRS = preprocessor translator.pro diff --git a/src/angle/src/compiler/preprocessor/preprocessor.pro b/src/angle/src/compiler/preprocessor/preprocessor.pro deleted file mode 100644 index 66bc59a5ff..0000000000 --- a/src/angle/src/compiler/preprocessor/preprocessor.pro +++ /dev/null @@ -1,59 +0,0 @@ -CONFIG += static -include($$OUT_PWD/../../../../gui/qtgui-config.pri) -qtConfig(dynamicgl): CONFIG += not_installed -include(../../config.pri) - -INCLUDEPATH = \ - $$ANGLE_DIR/src \ - $$ANGLE_DIR/src/common/third_party/base \ - $$ANGLE_DIR/src/compiler/preprocessor - -DEFINES += _SECURE_SCL=0 - - -FLEX_SOURCES = \ - $$ANGLE_DIR/src/compiler/preprocessor/Tokenizer.l - -BISON_SOURCES = \ - $$ANGLE_DIR/src/compiler/preprocessor/ExpressionParser.y - -HEADERS += \ - $$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/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/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: 'flex' and 'bison' can be found in qt5/gnuwin32/bin -flex.commands = $$addGnuPath(flex) --noline --nounistd --outfile=${QMAKE_FILE_OUT} ${QMAKE_FILE_NAME} -flex.output = $${BUILDSUBDIR}${QMAKE_FILE_BASE}.cpp -flex.input = FLEX_SOURCES -flex.dependency_type = TYPE_C -flex.variable_out = GENERATED_SOURCES -QMAKE_EXTRA_COMPILERS += flex - -bison.commands = $$addGnuPath(bison) --no-lines --skeleton=yacc.c --output=${QMAKE_FILE_OUT} ${QMAKE_FILE_NAME} -bison.output = $${BUILDSUBDIR}${QMAKE_FILE_BASE}.cpp -bison.input = BISON_SOURCES -bison.dependency_type = TYPE_C -bison.variable_out = GENERATED_SOURCES -QMAKE_EXTRA_COMPILERS += bison diff --git a/src/angle/src/compiler/translator.pro b/src/angle/src/compiler/translator.pro deleted file mode 100644 index c1bf73bdc6..0000000000 --- a/src/angle/src/compiler/translator.pro +++ /dev/null @@ -1,224 +0,0 @@ -CONFIG += static -include($$OUT_PWD/../../../gui/qtgui-config.pri) -qtConfig(dynamicgl): CONFIG += not_installed -include(../config.pri) - -INCLUDEPATH += \ - $$ANGLE_DIR/src \ - $$ANGLE_DIR/include \ - $$ANGLE_DIR/src/common/third_party/base - -DEFINES += _SECURE_SCL=0 _LIB ANGLE_TRANSLATOR_IMPLEMENTATION ANGLE_TRANSLATOR_STATIC ANGLE_ENABLE_HLSL - -FLEX_SOURCES = $$ANGLE_DIR/src/compiler/translator/glslang.l -BISON_SOURCES = $$ANGLE_DIR/src/compiler/translator/glslang.y - -HEADERS += \ - $$ANGLE_DIR/include/GLSLANG/ShaderLang.h \ - $$ANGLE_DIR/include/GLSLANG/ShaderVars.h \ - $$ANGLE_DIR/src/common/angleutils.h \ - $$ANGLE_DIR/src/common/debug.h \ - $$ANGLE_DIR/src/common/platform.h \ - $$ANGLE_DIR/src/common/tls.h \ - $$ANGLE_DIR/src/common/utilities.h \ - $$ANGLE_DIR/src/compiler/translator/ArrayReturnValueToOutParameter.h \ - $$ANGLE_DIR/src/compiler/translator/ASTMetadataHLSL.h \ - $$ANGLE_DIR/src/compiler/translator/blocklayout.h \ - $$ANGLE_DIR/src/compiler/translator/blocklayoutHLSL.h \ - $$ANGLE_DIR/src/compiler/translator/BaseTypes.h \ - $$ANGLE_DIR/src/compiler/translator/BuiltInFunctionEmulator.h \ - $$ANGLE_DIR/src/compiler/translator/BuiltInFunctionEmulatorGLSL.h \ - $$ANGLE_DIR/src/compiler/translator/BuiltInFunctionEmulatorHLSL.h \ - $$ANGLE_DIR/src/compiler/translator/Cache.h \ - $$ANGLE_DIR/src/compiler/translator/CallDAG.h \ - $$ANGLE_DIR/src/compiler/translator/Common.h \ - $$ANGLE_DIR/src/compiler/translator/Compiler.h \ - $$ANGLE_DIR/src/compiler/translator/ConstantUnion.h \ - $$ANGLE_DIR/src/compiler/translator/Diagnostics.h \ - $$ANGLE_DIR/src/compiler/translator/DirectiveHandler.h \ - $$ANGLE_DIR/src/compiler/translator/ExtensionBehavior.h \ - $$ANGLE_DIR/src/compiler/translator/EmulatePrecision.h \ - $$ANGLE_DIR/src/compiler/translator/FlagStd140Structs.h \ - $$ANGLE_DIR/src/compiler/translator/HashNames.h \ - $$ANGLE_DIR/src/compiler/translator/InfoSink.h \ - $$ANGLE_DIR/src/compiler/translator/InitializeDll.h \ - $$ANGLE_DIR/src/compiler/translator/Initialize.h \ - $$ANGLE_DIR/src/compiler/translator/InitializeVariables.h \ - $$ANGLE_DIR/src/compiler/translator/IntermNode.h \ - $$ANGLE_DIR/src/compiler/translator/NodeSearch.h \ - $$ANGLE_DIR/src/compiler/translator/Operator.h \ - $$ANGLE_DIR/src/compiler/translator/OutputESSL.h \ - $$ANGLE_DIR/src/compiler/translator/OutputGLSLBase.h \ - $$ANGLE_DIR/src/compiler/translator/OutputGLSL.h \ - $$ANGLE_DIR/src/compiler/translator/OutputHLSL.h \ - $$ANGLE_DIR/src/compiler/translator/ParseContext.h \ - $$ANGLE_DIR/src/compiler/translator/PoolAlloc.h \ - $$ANGLE_DIR/src/compiler/translator/Pragma.h \ - $$ANGLE_DIR/src/compiler/translator/RegenerateStructNames.h \ - $$ANGLE_DIR/src/compiler/translator/RemovePow.h \ - $$ANGLE_DIR/src/compiler/translator/RemoveDynamicIndexing.h \ - $$ANGLE_DIR/src/compiler/translator/RemoveSwitchFallThrough.h \ - $$ANGLE_DIR/src/compiler/translator/RewriteDoWhile.h \ - $$ANGLE_DIR/src/compiler/translator/RewriteElseBlocks.h \ - $$ANGLE_DIR/src/compiler/translator/SeparateArrayInitialization.h \ - $$ANGLE_DIR/src/compiler/translator/SeparateDeclarations.h \ - $$ANGLE_DIR/src/compiler/translator/ScalarizeVecAndMatConstructorArgs.h \ - $$ANGLE_DIR/src/compiler/translator/SearchSymbol.h \ - $$ANGLE_DIR/src/compiler/translator/SeparateExpressionsReturningArrays.h \ - $$ANGLE_DIR/src/compiler/translator/StructureHLSL.h \ - $$ANGLE_DIR/src/compiler/translator/SymbolTable.h \ - $$ANGLE_DIR/src/compiler/translator/TranslatorESSL.h \ - $$ANGLE_DIR/src/compiler/translator/TranslatorGLSL.h \ - $$ANGLE_DIR/src/compiler/translator/TranslatorHLSL.h \ - $$ANGLE_DIR/src/compiler/translator/Types.h \ - $$ANGLE_DIR/src/compiler/translator/UnfoldShortCircuitAST.h \ - $$ANGLE_DIR/src/compiler/translator/UnfoldShortCircuitToIf.h \ - $$ANGLE_DIR/src/compiler/translator/UniformHLSL.h \ - $$ANGLE_DIR/src/compiler/translator/util.h \ - $$ANGLE_DIR/src/compiler/translator/UtilsHLSL.h \ - $$ANGLE_DIR/src/compiler/translator/ValidateGlobalInitializer.h \ - $$ANGLE_DIR/src/compiler/translator/ValidateLimitations.h \ - $$ANGLE_DIR/src/compiler/translator/ValidateOutputs.h \ - $$ANGLE_DIR/src/compiler/translator/ValidateSwitch.h \ - $$ANGLE_DIR/src/compiler/translator/VariablePacker.h \ - $$ANGLE_DIR/src/compiler/translator/VersionGLSL.h \ - $$ANGLE_DIR/src/third_party/compiler/ArrayBoundsClamper.h - - -SOURCES += \ - $$ANGLE_DIR/src/common/debug.cpp \ - $$ANGLE_DIR/src/common/tls.cpp \ - $$ANGLE_DIR/src/compiler/translator/AddAndTrueToLoopCondition.cpp \ - $$ANGLE_DIR/src/compiler/translator/AddDefaultReturnStatements.cpp \ - $$ANGLE_DIR/src/compiler/translator/ArrayReturnValueToOutParameter.cpp \ - $$ANGLE_DIR/src/compiler/translator/ASTMetadataHLSL.cpp \ - $$ANGLE_DIR/src/compiler/translator/blocklayout.cpp \ - $$ANGLE_DIR/src/compiler/translator/blocklayoutHLSL.cpp \ - $$ANGLE_DIR/src/compiler/translator/BreakVariableAliasingInInnerLoops.cpp \ - $$ANGLE_DIR/src/compiler/translator/BuiltInFunctionEmulator.cpp \ - $$ANGLE_DIR/src/compiler/translator/BuiltInFunctionEmulatorGLSL.cpp \ - $$ANGLE_DIR/src/compiler/translator/BuiltInFunctionEmulatorHLSL.cpp \ - $$ANGLE_DIR/src/compiler/translator/Cache.cpp \ - $$ANGLE_DIR/src/compiler/translator/CallDAG.cpp \ - $$ANGLE_DIR/src/compiler/translator/ClampPointSize.cpp \ - $$ANGLE_DIR/src/compiler/translator/CodeGen.cpp \ - $$ANGLE_DIR/src/compiler/translator/CollectVariables.cpp \ - $$ANGLE_DIR/src/compiler/translator/Compiler.cpp \ - $$ANGLE_DIR/src/compiler/translator/ConstantUnion.cpp \ - $$ANGLE_DIR/src/compiler/translator/DeclareAndInitBuiltinsForInstancedMultiview.cpp \ - $$ANGLE_DIR/src/compiler/translator/DeferGlobalInitializers.cpp \ - $$ANGLE_DIR/src/compiler/translator/Diagnostics.cpp \ - $$ANGLE_DIR/src/compiler/translator/DirectiveHandler.cpp \ - $$ANGLE_DIR/src/compiler/translator/emulated_builtin_functions_hlsl_autogen.cpp \ - $$ANGLE_DIR/src/compiler/translator/EmulateGLFragColorBroadcast.cpp \ - $$ANGLE_DIR/src/compiler/translator/EmulatePrecision.cpp \ - $$ANGLE_DIR/src/compiler/translator/ExpandIntegerPowExpressions.cpp \ - $$ANGLE_DIR/src/compiler/translator/ExtensionBehavior.cpp \ - $$ANGLE_DIR/src/compiler/translator/ExtensionGLSL.cpp \ - $$ANGLE_DIR/src/compiler/translator/FindMain.cpp \ - $$ANGLE_DIR/src/compiler/translator/FindSymbolNode.cpp \ - $$ANGLE_DIR/src/compiler/translator/FlagStd140Structs.cpp \ - $$ANGLE_DIR/src/compiler/translator/HashNames.cpp \ - $$ANGLE_DIR/src/compiler/translator/ImageFunctionHLSL.cpp \ - $$ANGLE_DIR/src/compiler/translator/InfoSink.cpp \ - $$ANGLE_DIR/src/compiler/translator/Initialize.cpp \ - $$ANGLE_DIR/src/compiler/translator/InitializeDll.cpp \ - $$ANGLE_DIR/src/compiler/translator/InitializeVariables.cpp \ - $$ANGLE_DIR/src/compiler/translator/IntermNode.cpp \ - $$ANGLE_DIR/src/compiler/translator/IntermNodePatternMatcher.cpp \ - $$ANGLE_DIR/src/compiler/translator/IntermNode_util.cpp \ - $$ANGLE_DIR/src/compiler/translator/IntermTraverse.cpp \ - $$ANGLE_DIR/src/compiler/translator/IsASTDepthBelowLimit.cpp \ - $$ANGLE_DIR/src/compiler/translator/Operator.cpp \ - $$ANGLE_DIR/src/compiler/translator/OutputESSL.cpp \ - $$ANGLE_DIR/src/compiler/translator/OutputGLSL.cpp \ - $$ANGLE_DIR/src/compiler/translator/OutputGLSLBase.cpp \ - $$ANGLE_DIR/src/compiler/translator/OutputHLSL.cpp \ - $$ANGLE_DIR/src/compiler/translator/OutputTree.cpp \ - $$ANGLE_DIR/src/compiler/translator/OutputVulkanGLSL.cpp \ - $$ANGLE_DIR/src/compiler/translator/ParseContext.cpp \ - $$ANGLE_DIR/src/compiler/translator/PoolAlloc.cpp \ - $$ANGLE_DIR/src/compiler/translator/PruneNoOps.cpp \ - $$ANGLE_DIR/src/compiler/translator/QualifierTypes.cpp \ - $$ANGLE_DIR/src/compiler/translator/RecordConstantPrecision.cpp \ - $$ANGLE_DIR/src/compiler/translator/RegenerateStructNames.cpp \ - $$ANGLE_DIR/src/compiler/translator/RemoveArrayLengthMethod.cpp \ - $$ANGLE_DIR/src/compiler/translator/RemoveDynamicIndexing.cpp \ - $$ANGLE_DIR/src/compiler/translator/RemoveEmptySwitchStatements.cpp \ - $$ANGLE_DIR/src/compiler/translator/RemoveInvariantDeclaration.cpp \ - $$ANGLE_DIR/src/compiler/translator/RemoveNoOpCasesFromEndOfSwitchStatements.cpp \ - $$ANGLE_DIR/src/compiler/translator/RemovePow.cpp \ - $$ANGLE_DIR/src/compiler/translator/RemoveSwitchFallThrough.cpp \ - $$ANGLE_DIR/src/compiler/translator/RemoveUnreferencedVariables.cpp \ - $$ANGLE_DIR/src/compiler/translator/RewriteDoWhile.cpp \ - $$ANGLE_DIR/src/compiler/translator/RewriteElseBlocks.cpp \ - $$ANGLE_DIR/src/compiler/translator/RewriteTexelFetchOffset.cpp \ - $$ANGLE_DIR/src/compiler/translator/RewriteUnaryMinusOperatorFloat.cpp \ - $$ANGLE_DIR/src/compiler/translator/RewriteUnaryMinusOperatorInt.cpp \ - $$ANGLE_DIR/src/compiler/translator/RunAtTheEndOfShader.cpp \ - $$ANGLE_DIR/src/compiler/translator/ScalarizeVecAndMatConstructorArgs.cpp \ - $$ANGLE_DIR/src/compiler/translator/SearchSymbol.cpp \ - $$ANGLE_DIR/src/compiler/translator/SeparateArrayInitialization.cpp \ - $$ANGLE_DIR/src/compiler/translator/SeparateDeclarations.cpp \ - $$ANGLE_DIR/src/compiler/translator/SeparateExpressionsReturningArrays.cpp \ - $$ANGLE_DIR/src/compiler/translator/ShaderLang.cpp \ - $$ANGLE_DIR/src/compiler/translator/ShaderVars.cpp \ - $$ANGLE_DIR/src/compiler/translator/SimplifyLoopConditions.cpp \ - $$ANGLE_DIR/src/compiler/translator/SplitSequenceOperator.cpp \ - $$ANGLE_DIR/src/compiler/translator/StructureHLSL.cpp \ - $$ANGLE_DIR/src/compiler/translator/SymbolTable.cpp \ - $$ANGLE_DIR/src/compiler/translator/SymbolUniqueId.cpp \ - $$ANGLE_DIR/src/compiler/translator/TextureFunctionHLSL.cpp \ - $$ANGLE_DIR/src/compiler/translator/TranslatorESSL.cpp \ - $$ANGLE_DIR/src/compiler/translator/TranslatorGLSL.cpp \ - $$ANGLE_DIR/src/compiler/translator/TranslatorHLSL.cpp \ - $$ANGLE_DIR/src/compiler/translator/TranslatorVulkan.cpp \ - $$ANGLE_DIR/src/compiler/translator/Types.cpp \ - $$ANGLE_DIR/src/compiler/translator/UnfoldShortCircuitAST.cpp \ - $$ANGLE_DIR/src/compiler/translator/UnfoldShortCircuitToIf.cpp \ - $$ANGLE_DIR/src/compiler/translator/UniformHLSL.cpp \ - $$ANGLE_DIR/src/compiler/translator/UseInterfaceBlockFields.cpp \ - $$ANGLE_DIR/src/compiler/translator/UtilsHLSL.cpp \ - $$ANGLE_DIR/src/compiler/translator/util.cpp \ - $$ANGLE_DIR/src/compiler/translator/ValidateGlobalInitializer.cpp \ - $$ANGLE_DIR/src/compiler/translator/ValidateLimitations.cpp \ - $$ANGLE_DIR/src/compiler/translator/ValidateMaxParameters.cpp \ - $$ANGLE_DIR/src/compiler/translator/ValidateOutputs.cpp \ - $$ANGLE_DIR/src/compiler/translator/ValidateSwitch.cpp \ - $$ANGLE_DIR/src/compiler/translator/VariablePacker.cpp \ - $$ANGLE_DIR/src/compiler/translator/ValidateVaryingLocations.cpp \ - $$ANGLE_DIR/src/compiler/translator/VersionGLSL.cpp \ - $$ANGLE_DIR/src/compiler/translator/VectorizeVectorScalarArithmetic.cpp \ - $$ANGLE_DIR/src/compiler/translator/WrapSwitchStatementsInBlocks.cpp \ - $$ANGLE_DIR/src/third_party/compiler/ArrayBoundsClamper.cpp - - -# NOTE: 'flex' and 'bison' can be found in qt5/gnuwin32/bin -flex.commands = $$addGnuPath(flex) --noline --nounistd --outfile=${QMAKE_FILE_OUT} ${QMAKE_FILE_NAME} -flex.output = $${BUILDSUBDIR}${QMAKE_FILE_BASE}_lex.cpp -flex.input = FLEX_SOURCES -flex.dependency_type = TYPE_C -flex.variable_out = GENERATED_SOURCES -QMAKE_EXTRA_COMPILERS += flex - -defineReplace(myDirName) { return($$dirname(1)) } -bison.commands = $$addGnuPath(bison) --no-lines --skeleton=yacc.c --defines=${QMAKE_FILE_OUT} \ - --output=${QMAKE_FUNC_FILE_OUT_myDirName}$$QMAKE_DIR_SEP${QMAKE_FILE_OUT_BASE}.cpp \ - ${QMAKE_FILE_NAME}$$escape_expand(\\n\\t) \ - @echo // EOF>>${QMAKE_FUNC_FILE_OUT_myDirName}$$QMAKE_DIR_SEP${QMAKE_FILE_OUT_BASE}.cpp -bison.output = $${BUILDSUBDIR}${QMAKE_FILE_BASE}_tab.h -bison.input = BISON_SOURCES -bison.dependency_type = TYPE_C -bison.variable_out = GENERATED_SOURCES -QMAKE_EXTRA_COMPILERS += bison - -# This is a dummy compiler to work around the fact that an extra compiler can only -# have one output file even if the command generates two. -MAKEFILE_NOOP_COMMAND = @echo -n -msvc: MAKEFILE_NOOP_COMMAND = @echo >NUL -bison_impl.output = $${BUILDSUBDIR}${QMAKE_FILE_BASE}_tab.cpp -bison_impl.input = BISON_SOURCES -bison_impl.commands = $$MAKEFILE_NOOP_COMMAND -bison_impl.depends = $${BUILDSUBDIR}${QMAKE_FILE_BASE}_tab.h -bison_impl.variable_out = GENERATED_SOURCES -QMAKE_EXTRA_COMPILERS += bison_impl diff --git a/src/angle/src/config.pri b/src/angle/src/config.pri deleted file mode 100644 index c64a59a91f..0000000000 --- a/src/angle/src/config.pri +++ /dev/null @@ -1,95 +0,0 @@ -# This file contains build options that are relevant for both the compilers -# and the khronos implementation libraries. - -ANGLE_DIR = $$(ANGLE_DIR) -isEmpty(ANGLE_DIR) { - ANGLE_DIR = $$absolute_path(../../3rdparty/angle) -} else { - !build_pass:message("Using external ANGLE from $$ANGLE_DIR") -} - -!exists($$ANGLE_DIR/src) { - error("$$ANGLE_DIR does not contain ANGLE") -} - -defineReplace(addGnuPath) { - gnuPath = $$1 - !isEmpty(gnuPath):!isEmpty(gnutools.name) { - QT_TOOL_NAME = $$1 - qtAddToolEnv(gnuPath, gnutools) - silent: gnuPath = @echo generating sources from ${QMAKE_FILE_IN} && $$gnuPath - } - return($$gnuPath) -} - -# Defines for modifying Win32 headers -DEFINES += _WINDOWS \ - _UNICODE \ - _CRT_SECURE_NO_DEPRECATE \ - _HAS_EXCEPTIONS=0 \ - NOMINMAX \ - WIN32_LEAN_AND_MEAN=1 - -CONFIG += angle_d3d11 # Remove to disable D3D11 renderer - -angle_d3d11 { - DEFINES += ANGLE_ENABLE_D3D11 ANGLE_DEFAULT_D3D11=1 - !build_pass: message("Enabling D3D11 mode for ANGLE") -} - -CONFIG(debug, debug|release) { - DEFINES += _DEBUG -} else { - !static: CONFIG += rtti_off - DEFINES += NDEBUG -} - -!isEmpty(BUILD_PASS): BUILDSUBDIR = $$lower($$BUILD_PASS)/ -else: BUILDSUBDIR = $$PWD/ - -# c++11 is needed by MinGW to get support for unordered_map. -CONFIG += stl exceptions c++11 c++14 - -INCLUDEPATH += . .. $$PWD/../include - -msvc { - # Disabled Warnings: - # 4100: 'identifier' : unreferenced formal parameter - # 4127: conditional expression is constant - # 4189: 'identifier' : local variable is initialized but not referenced - # 4239: nonstandard extension used : 'token' : conversion from 'type' to 'type' - # 4244: 'argument' : conversion from 'type1' to 'type2', possible loss of data - # 4245: 'conversion' : conversion from 'type1' to 'type2', signed/unsigned mismatch - # 4267: coversion from 'size_t' to 'int', possible loss of data - # 4275: non - DLL-interface classkey 'identifier' used as base for DLL-interface classkey 'identifier' - # 4480: nonstandard extension used: specifying underlying type for enum - # 4512: 'class' : assignment operator could not be generated - # 4702: unreachable code - # 4996: Function call with parameters that may be unsafe - QMAKE_CFLAGS_WARN_ON -= -W3 - QMAKE_CFLAGS_WARN_ON += -W4 -wd"4100" -wd"4127" -wd"4189" -wd"4239" -wd"4244" -wd"4245" -wd"4267" -wd"4275" -wd"4512" -wd"4702" -wd"4996" -wd"4480" - # Optimizations - # /Oy: Omits frame pointer (x86 only). - # /Gy: Enables function-level linking. - # /GS: Buffers security check. - # /RTC1: Run time error checking - QMAKE_CFLAGS_RELEASE += -Oy- -Gy -GS - QMAKE_CFLAGS_DEBUG += -Oy- -Gy -GS -RTC1 - QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO = -Zi $$QMAKE_CFLAGS_RELEASE - - QMAKE_CXXFLAGS_WARN_ON = $$QMAKE_CFLAGS_WARN_ON -} - -gcc { - QMAKE_CFLAGS_WARN_ON += -Wno-unknown-pragmas -Wno-comment -Wno-missing-field-initializers \ - -Wno-switch -Wno-unused-parameter -Wno-write-strings -Wno-sign-compare -Wno-missing-braces \ - -Wno-unused-but-set-variable -Wno-unused-variable -Wno-narrowing -Wno-maybe-uninitialized \ - -Wno-strict-aliasing -Wno-type-limits -Wno-unused-local-typedefs - - QMAKE_CXXFLAGS_WARN_ON = $$QMAKE_CFLAGS_WARN_ON -Wno-reorder -Wno-conversion-null -Wno-delete-non-virtual-dtor -} - -QMAKE_CXXFLAGS_DEBUG = $$QMAKE_CFLAGS_DEBUG -QMAKE_CXXFLAGS_RELEASE = $$QMAKE_CFLAGS_RELEASE - -load(qt_helper_lib) diff --git a/src/angle/src/libEGL/libEGL.pro b/src/angle/src/libEGL/libEGL.pro deleted file mode 100644 index 912ff7825e..0000000000 --- a/src/angle/src/libEGL/libEGL.pro +++ /dev/null @@ -1,28 +0,0 @@ -include(../common/common.pri) -DEF_FILE_TARGET = $${TARGET} -TARGET = $$qtLibraryTarget($${LIBEGL_NAME}) -winrt: QMAKE_USE_PRIVATE += d3d11 -QMAKE_USE_PRIVATE += dxguid - -LIBS_PRIVATE += -L$$QT_BUILD_TREE/lib -l$$qtLibraryTarget($${LIBGLESV2_NAME}) - -DEFINES += GL_APICALL= GL_GLEXT_PROTOTYPES= EGLAPI= LIBEGL_IMPLEMENTATION - -HEADERS += \ - $$ANGLE_DIR/src/libEGL/resource.h - -SOURCES += \ - $$ANGLE_DIR/src/libEGL/libEGL.cpp - -!static { - DEF_FILE = $$ANGLE_DIR/src/libEGL/$${DEF_FILE_TARGET}.def - mingw:equals(QT_ARCH, i386): DEF_FILE = $$ANGLE_DIR/src/libEGL/$${DEF_FILE_TARGET}_mingw32.def -} - -egl_headers.files = \ - $$ANGLE_DIR/include/EGL/egl.h \ - $$ANGLE_DIR/include/EGL/eglext.h \ - $$ANGLE_DIR/include/EGL/eglext_angle.h \ - $$ANGLE_DIR/include/EGL/eglplatform.h -egl_headers.path = $$[QT_INSTALL_HEADERS]/QtANGLE/EGL -INSTALLS += egl_headers diff --git a/src/angle/src/libGLESv2/libGLESv2.pro b/src/angle/src/libGLESv2/libGLESv2.pro deleted file mode 100644 index b84314dd71..0000000000 --- a/src/angle/src/libGLESv2/libGLESv2.pro +++ /dev/null @@ -1,12 +0,0 @@ -include(../common/gles_common.pri) - -DEF_FILE_TARGET = $${TARGET} - -TARGET = $$qtLibraryTarget($${LIBGLESV2_NAME}) - -!static { - DEF_FILE = $$ANGLE_DIR/src/libGLESv2/$${DEF_FILE_TARGET}.def - mingw: equals(QT_ARCH, i386): DEF_FILE = $$ANGLE_DIR/src/libGLESv2/$${DEF_FILE_TARGET}_mingw32.def -} else { - DEFINES += DllMain=DllMain_ANGLE # prevent symbol from conflicting with the user's DllMain -} diff --git a/src/angle/src/src.pro b/src/angle/src/src.pro deleted file mode 100644 index b1f9572edc..0000000000 --- a/src/angle/src/src.pro +++ /dev/null @@ -1,11 +0,0 @@ -TEMPLATE = subdirs -SUBDIRS += compiler - -QT_FOR_CONFIG += gui - -# needed as angle is built before gui -include($$OUT_PWD/../../gui/qtgui-config.pri) - -qtConfig(combined-angle-lib): SUBDIRS += QtANGLE -else: SUBDIRS += libGLESv2 libEGL -CONFIG += ordered |