aboutsummaryrefslogtreecommitdiff
path: root/ports/opencv/001-fix-uwp.patch
blob: fa047ee4e74095d7d253fed693203f829343f62c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
diff --git a/cmake/OpenCVCompilerOptions.cmake b/cmake/OpenCVCompilerOptions.cmake
index 0dcf7ed..c722a03 100644
--- "a/cmake/OpenCVCompilerOptions.cmake"
+++ "b/cmake/OpenCVCompilerOptions.cmake"
@@ -21,6 +21,9 @@ if(MSVC)
     string(REPLACE "/EHsc" "/EHa" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
     set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}"  CACHE STRING "Flags used by the compiler during all build types." FORCE)
   endif()
+  if(CMAKE_SYSTEM_NAME STREQUAL "WindowsStore")
+    set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /ZW")
+  endif()
 endif()
 
 set(OPENCV_EXTRA_FLAGS "")
 diff --git "a/modules/highgui/include/opencv2/highgui/highgui_winrt.hpp" "b/modules/highgui/include/opencv2/highgui/highgui_winrt.hpp"
index f4147f3..498f414 100644
--- "a/modules/highgui/include/opencv2/highgui/highgui_winrt.hpp"
+++ "b/modules/highgui/include/opencv2/highgui/highgui_winrt.hpp"
@@ -24,6 +24,8 @@
 // NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
 // POSSIBILITY OF SUCH DAMAGE.
 
+#include "opencv2/core/cvdef.h"
+
 using namespace Windows::UI::Xaml::Controls;
 
 namespace cv
diff --git "a/modules/highgui/src/window_winrt_bridge.hpp" "b/modules/highgui/src/window_winrt_bridge.hpp"
index 25f4aef..5429f0b 100644
--- "a/modules/highgui/src/window_winrt_bridge.hpp"
+++ "b/modules/highgui/src/window_winrt_bridge.hpp"
@@ -28,6 +28,7 @@
 
 #include <map>
 #include <opencv2\core.hpp>
+#include "opencv2/highgui/highgui_c.h"
 
 using namespace Windows::UI::Xaml::Controls;
 
diff --git "a/modules/videoio/src/cap_winrt/CaptureFrameGrabber.cpp" "b/modules/videoio/src/cap_winrt/CaptureFrameGrabber.cpp"
index 236e227..9f5970e 100644
--- "a/modules/videoio/src/cap_winrt/CaptureFrameGrabber.cpp"
+++ "b/modules/videoio/src/cap_winrt/CaptureFrameGrabber.cpp"
@@ -94,10 +94,10 @@ Media::CaptureFrameGrabber::~CaptureFrameGrabber()
 
 void Media::CaptureFrameGrabber::ShowCameraSettings()
 {
-#if WINAPI_FAMILY!=WINAPI_FAMILY_PHONE_APP
+#if (WINAPI_FAMILY!=WINAPI_FAMILY_PHONE_APP) && (WINAPI_FAMILY!=WINAPI_FAMILY_APP)
     if (_state == State::Started)
     {
-        CameraOptionsUI::Show(_capture.Get());
+        CameraOptionsUI::Show(_capture.Get()); // TODO: Turn it back by adding reference to UWP Desktop Extensions
     }
 #endif
 }