mirror of
https://github.com/microsoft/vcpkg.git
synced 2025-01-14 14:37:55 +08:00
[pybind11] Apply patch for alias templates
This commit is contained in:
parent
85c2fa9f0a
commit
c5acdcd20f
@ -1,4 +1,4 @@
|
||||
Source: pybind11
|
||||
Version: 2.2.3
|
||||
Version: 2.2.3-1
|
||||
Description: pybind11 is a lightweight header-only library that exposes C++ types in Python and vice versa, mainly to create Python bindings of existing C++ code.
|
||||
Build-Depends: python3 (windows)
|
45
ports/pybind11/aliastemplates.patch
Normal file
45
ports/pybind11/aliastemplates.patch
Normal file
@ -0,0 +1,45 @@
|
||||
From 598ec67e4d6727dd9455bcc9959e32fee02a80ac Mon Sep 17 00:00:00 2001
|
||||
From: Michael Goulding <Michael.Goulding@microsoft.com>
|
||||
Date: Wed, 18 Jul 2018 10:59:15 -0700
|
||||
Subject: [PATCH 1/2] VS 15.8.0 Preview 4.0 has a bug with alias templates
|
||||
|
||||
---
|
||||
include/pybind11/detail/common.h | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/include/pybind11/detail/common.h b/include/pybind11/detail/common.h
|
||||
index 3c6722891..89d922190 100644
|
||||
--- a/include/pybind11/detail/common.h
|
||||
+++ b/include/pybind11/detail/common.h
|
||||
@@ -476,7 +476,7 @@ template <typename...> struct void_t_impl { using type = void; };
|
||||
template <typename... Ts> using void_t = typename void_t_impl<Ts...>::type;
|
||||
|
||||
/// Compile-time all/any/none of that check the boolean value of all template types
|
||||
-#ifdef __cpp_fold_expressions
|
||||
+#if (!defined(_MSC_VER) || ( _MSC_VER >= 1916 )) && defined(__cpp_fold_expressions)
|
||||
template <class... Ts> using all_of = bool_constant<(Ts::value && ...)>;
|
||||
template <class... Ts> using any_of = bool_constant<(Ts::value || ...)>;
|
||||
#elif !defined(_MSC_VER)
|
||||
|
||||
From 7d534251ca67c5e725ed549900f04adeb5ddb99e Mon Sep 17 00:00:00 2001
|
||||
From: Michael Goulding <Michael.Goulding@microsoft.com>
|
||||
Date: Thu, 19 Jul 2018 10:27:41 -0700
|
||||
Subject: [PATCH 2/2] Address feedback
|
||||
|
||||
---
|
||||
include/pybind11/detail/common.h | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/include/pybind11/detail/common.h b/include/pybind11/detail/common.h
|
||||
index 89d922190..8d65b260d 100644
|
||||
--- a/include/pybind11/detail/common.h
|
||||
+++ b/include/pybind11/detail/common.h
|
||||
@@ -476,7 +476,7 @@ template <typename...> struct void_t_impl { using type = void; };
|
||||
template <typename... Ts> using void_t = typename void_t_impl<Ts...>::type;
|
||||
|
||||
/// Compile-time all/any/none of that check the boolean value of all template types
|
||||
-#if (!defined(_MSC_VER) || ( _MSC_VER >= 1916 )) && defined(__cpp_fold_expressions)
|
||||
+#if defined(__cpp_fold_expressions) && !(defined(_MSC_VER) && (_MSC_VER < 1916))
|
||||
template <class... Ts> using all_of = bool_constant<(Ts::value && ...)>;
|
||||
template <class... Ts> using any_of = bool_constant<(Ts::value || ...)>;
|
||||
#elif !defined(_MSC_VER)
|
@ -6,6 +6,8 @@ vcpkg_from_github(
|
||||
REF v2.2.3
|
||||
SHA512 3a43b43f44ae4a6453fe3b875384acc868310177216938cb564536e6b73c56002743137e5f61cf4ecbd6c56e3b39476ebf06aea33d460581fc7d8ba7b2a22a67
|
||||
HEAD_REF master
|
||||
PATCHES
|
||||
${CMAKE_CURRENT_LIST_DIR}/aliastemplates.patch
|
||||
)
|
||||
|
||||
vcpkg_find_acquire_program(PYTHON3)
|
||||
|
Loading…
x
Reference in New Issue
Block a user