[vlc-devel] [PATCH 3.0 1/6] extras: tools: Patch cmake to improve support for GCC/Clang targeting WindowsStore
Steve Lhomme
robux4 at ycbcr.xyz
Wed Jun 17 13:17:01 CEST 2020
It's not the full backport of patches to get to the current CMake that
we'll need for LLVM+MinGW. But this part doesn't require other patches
to be merged before. Yet it bumps the CMake requirement to a newer
version so I wanted to make sure it's OK to be merged.
On 2020-06-17 12:57, Steve Lhomme wrote:
> From: Martin Storsjö <martin at martin.st>
>
> This patch exists in upstream cmake in the master branch, and probably
> will be part of the next release after 3.12 (3.11 is currently the
> latest release).
>
> This is necessary if building for WindowsStore with clang.
>
> (cherry picked from commit 4f7f76348b8d31f9f1eb350a4d83034672466d3e)
>
> Signed-off-by: Steve Lhomme <robux4 at ycbcr.xyz>
> ---
> extras/tools/cmake-winstore.patch | 89 +++++++++++++++++++++++++++++++
> extras/tools/tools.mak | 1 +
> 2 files changed, 90 insertions(+)
> create mode 100644 extras/tools/cmake-winstore.patch
>
> diff --git a/extras/tools/cmake-winstore.patch b/extras/tools/cmake-winstore.patch
> new file mode 100644
> index 0000000000..1f363f4216
> --- /dev/null
> +++ b/extras/tools/cmake-winstore.patch
> @@ -0,0 +1,89 @@
> +From de5a4653d73aa601af9d08c91d4de2e09c430c1e Mon Sep 17 00:00:00 2001
> +From: =?UTF-8?q?Martin=20Storsj=C3=B6?= <martin at martin.st>
> +Date: Sun, 1 Jul 2018 23:16:00 +0300
> +Subject: [PATCH] Add WindowsPhone and WindowsStore platform modules for
> + Clang/GNU C/CXX
> +
> +Just like the existing WindowsPhone and WindowsStore platform modules
> +for MSVC, just include the corresponding Windows platform modules.
> +
> +MinGW tools (both with GCC and Clang) can be used for building for
> +Windows Store, even though it isn't a very common or simple setup.
> +---
> + Modules/Platform/WindowsPhone-Clang-C.cmake | 1 +
> + Modules/Platform/WindowsPhone-Clang-CXX.cmake | 1 +
> + Modules/Platform/WindowsPhone-GNU-C.cmake | 1 +
> + Modules/Platform/WindowsPhone-GNU-CXX.cmake | 1 +
> + Modules/Platform/WindowsStore-Clang-C.cmake | 1 +
> + Modules/Platform/WindowsStore-Clang-CXX.cmake | 1 +
> + Modules/Platform/WindowsStore-GNU-C.cmake | 1 +
> + Modules/Platform/WindowsStore-GNU-CXX.cmake | 1 +
> + 8 files changed, 8 insertions(+)
> + create mode 100644 Modules/Platform/WindowsPhone-Clang-C.cmake
> + create mode 100644 Modules/Platform/WindowsPhone-Clang-CXX.cmake
> + create mode 100644 Modules/Platform/WindowsPhone-GNU-C.cmake
> + create mode 100644 Modules/Platform/WindowsPhone-GNU-CXX.cmake
> + create mode 100644 Modules/Platform/WindowsStore-Clang-C.cmake
> + create mode 100644 Modules/Platform/WindowsStore-Clang-CXX.cmake
> + create mode 100644 Modules/Platform/WindowsStore-GNU-C.cmake
> + create mode 100644 Modules/Platform/WindowsStore-GNU-CXX.cmake
> +
> +diff --git a/Modules/Platform/WindowsPhone-Clang-C.cmake b/Modules/Platform/WindowsPhone-Clang-C.cmake
> +new file mode 100644
> +index 000000000..6e38572cd
> +--- /dev/null
> ++++ b/Modules/Platform/WindowsPhone-Clang-C.cmake
> +@@ -0,0 +1 @@
> ++include(Platform/Windows-Clang-C)
> +diff --git a/Modules/Platform/WindowsPhone-Clang-CXX.cmake b/Modules/Platform/WindowsPhone-Clang-CXX.cmake
> +new file mode 100644
> +index 000000000..bf47978c4
> +--- /dev/null
> ++++ b/Modules/Platform/WindowsPhone-Clang-CXX.cmake
> +@@ -0,0 +1 @@
> ++include(Platform/Windows-Clang-CXX)
> +diff --git a/Modules/Platform/WindowsPhone-GNU-C.cmake b/Modules/Platform/WindowsPhone-GNU-C.cmake
> +new file mode 100644
> +index 000000000..ff6acd56d
> +--- /dev/null
> ++++ b/Modules/Platform/WindowsPhone-GNU-C.cmake
> +@@ -0,0 +1 @@
> ++include(Platform/Windows-GNU-C)
> +diff --git a/Modules/Platform/WindowsPhone-GNU-CXX.cmake b/Modules/Platform/WindowsPhone-GNU-CXX.cmake
> +new file mode 100644
> +index 000000000..6adab6af3
> +--- /dev/null
> ++++ b/Modules/Platform/WindowsPhone-GNU-CXX.cmake
> +@@ -0,0 +1 @@
> ++include(Platform/Windows-GNU-CXX)
> +diff --git a/Modules/Platform/WindowsStore-Clang-C.cmake b/Modules/Platform/WindowsStore-Clang-C.cmake
> +new file mode 100644
> +index 000000000..6e38572cd
> +--- /dev/null
> ++++ b/Modules/Platform/WindowsStore-Clang-C.cmake
> +@@ -0,0 +1 @@
> ++include(Platform/Windows-Clang-C)
> +diff --git a/Modules/Platform/WindowsStore-Clang-CXX.cmake b/Modules/Platform/WindowsStore-Clang-CXX.cmake
> +new file mode 100644
> +index 000000000..bf47978c4
> +--- /dev/null
> ++++ b/Modules/Platform/WindowsStore-Clang-CXX.cmake
> +@@ -0,0 +1 @@
> ++include(Platform/Windows-Clang-CXX)
> +diff --git a/Modules/Platform/WindowsStore-GNU-C.cmake b/Modules/Platform/WindowsStore-GNU-C.cmake
> +new file mode 100644
> +index 000000000..ff6acd56d
> +--- /dev/null
> ++++ b/Modules/Platform/WindowsStore-GNU-C.cmake
> +@@ -0,0 +1 @@
> ++include(Platform/Windows-GNU-C)
> +diff --git a/Modules/Platform/WindowsStore-GNU-CXX.cmake b/Modules/Platform/WindowsStore-GNU-CXX.cmake
> +new file mode 100644
> +index 000000000..6adab6af3
> +--- /dev/null
> ++++ b/Modules/Platform/WindowsStore-GNU-CXX.cmake
> +@@ -0,0 +1 @@
> ++include(Platform/Windows-GNU-CXX)
> +--
> +2.15.2 (Apple Git-101.1)
> +
> diff --git a/extras/tools/tools.mak b/extras/tools/tools.mak
> index 1d058f521b..040dbf4499 100644
> --- a/extras/tools/tools.mak
> +++ b/extras/tools/tools.mak
> @@ -84,6 +84,7 @@ cmake-$(CMAKE_VERSION).tar.gz:
>
> cmake: cmake-$(CMAKE_VERSION).tar.gz
> $(UNPACK)
> + $(APPLY) cmake-winstore.patch
> $(MOVE)
>
> .cmake: cmake
> --
> 2.26.2
>
> _______________________________________________
> vlc-devel mailing list
> To unsubscribe or modify your subscription options:
> https://mailman.videolan.org/listinfo/vlc-devel
>
More information about the vlc-devel
mailing list