]> git.proxmox.com Git - ceph.git/blobdiff - ceph/src/jaegertracing/opentelemetry-cpp/tools/vcpkg/ports/stxxl/0001-fix-visual-studio.patch
update ceph source to reef 18.1.2
[ceph.git] / ceph / src / jaegertracing / opentelemetry-cpp / tools / vcpkg / ports / stxxl / 0001-fix-visual-studio.patch
diff --git a/ceph/src/jaegertracing/opentelemetry-cpp/tools/vcpkg/ports/stxxl/0001-fix-visual-studio.patch b/ceph/src/jaegertracing/opentelemetry-cpp/tools/vcpkg/ports/stxxl/0001-fix-visual-studio.patch
new file mode 100644 (file)
index 0000000..3506c51
--- /dev/null
@@ -0,0 +1,272 @@
+diff --git a/include/stxxl/bits/algo/ksort.h b/include/stxxl/bits/algo/ksort.h\r
+index 33ec8cf..4079a57 100644\r
+--- a/include/stxxl/bits/algo/ksort.h\r
++++ b/include/stxxl/bits/algo/ksort.h\r
+@@ -299,11 +299,7 @@ create_runs(\r
+ template <typename BlockType,\r
+           typename prefetcher_type,\r
+           typename KeyExtractor>\r
+-struct run_cursor2_cmp : public std::binary_function<\r
+-                             run_cursor2<BlockType, prefetcher_type>,\r
+-                             run_cursor2<BlockType, prefetcher_type>,\r
+-                             bool\r
+-                             >\r
++struct run_cursor2_cmp\r
+ {\r
+     typedef run_cursor2<BlockType, prefetcher_type> cursor_type;\r
+     KeyExtractor keyobj;\r
+@@ -327,7 +323,7 @@ private:\r
+ };\r
\r
+ template <typename RecordType, typename KeyExtractor>\r
+-class key_comparison : public std::binary_function<RecordType, RecordType, bool>\r
++class key_comparison\r
+ {\r
+     KeyExtractor ke;\r
\r
+diff --git a/include/stxxl/bits/algo/sort_helper.h b/include/stxxl/bits/algo/sort_helper.h\r
+index 524e40d..69234c4 100644\r
+--- a/include/stxxl/bits/algo/sort_helper.h\r
++++ b/include/stxxl/bits/algo/sort_helper.h\r
+@@ -51,7 +51,6 @@ struct trigger_entry\r
\r
+ template <typename TriggerEntryType, typename ValueCmp>\r
+ struct trigger_entry_cmp\r
+-    : public std::binary_function<TriggerEntryType, TriggerEntryType, bool>\r
+ {\r
+     typedef TriggerEntryType trigger_entry_type;\r
+     ValueCmp cmp;\r
+@@ -67,11 +66,6 @@ template <typename BlockType,\r
+           typename PrefetcherType,\r
+           typename ValueCmp>\r
+ struct run_cursor2_cmp\r
+-    : public std::binary_function<\r
+-          run_cursor2<BlockType, PrefetcherType>,\r
+-          run_cursor2<BlockType, PrefetcherType>,\r
+-          bool\r
+-          >\r
+ {\r
+     typedef BlockType block_type;\r
+     typedef PrefetcherType prefetcher_type;\r
+diff --git a/include/stxxl/bits/compat/unique_ptr.h b/include/stxxl/bits/compat/unique_ptr.h\r
+index 9df12ff..7110246 100644\r
+--- a/include/stxxl/bits/compat/unique_ptr.h\r
++++ b/include/stxxl/bits/compat/unique_ptr.h\r
+@@ -22,12 +22,7 @@ STXXL_BEGIN_NAMESPACE\r
\r
+ template <class Type>\r
+ struct compat_unique_ptr {\r
+-#if __cplusplus >= 201103L && ((__GNUC__ * 10000 + __GNUC_MINOR__ * 100) >= 40400)\r
+     typedef std::unique_ptr<Type> result;\r
+-#else\r
+-    // auto_ptr is inherently broken and is deprecated by unique_ptr in c++0x\r
+-    typedef std::auto_ptr<Type> result;\r
+-#endif\r
+ };\r
\r
+ STXXL_END_NAMESPACE\r
+diff --git a/include/stxxl/bits/containers/btree/leaf.h b/include/stxxl/bits/containers/btree/leaf.h\r
+index d7c619f..c6b2fcc 100644\r
+--- a/include/stxxl/bits/containers/btree/leaf.h\r
++++ b/include/stxxl/bits/containers/btree/leaf.h\r
+@@ -66,7 +66,7 @@ public:\r
+     typedef node_cache<normal_leaf, btree_type> leaf_cache_type;\r
\r
+ public:\r
+-    struct value_compare : public std::binary_function<value_type, value_type, bool>\r
++    struct value_compare\r
+     {\r
+         key_compare comp;\r
\r
+diff --git a/include/stxxl/bits/containers/btree/node.h b/include/stxxl/bits/containers/btree/node.h\r
+index 13dec7b..a4c47d8 100644\r
+--- a/include/stxxl/bits/containers/btree/node.h\r
++++ b/include/stxxl/bits/containers/btree/node.h\r
+@@ -71,7 +71,7 @@ public:\r
+     typedef node_cache<normal_node, btree_type> node_cache_type;\r
\r
+ private:\r
+-    struct value_compare : public std::binary_function<value_type, value_type, bool>\r
++    struct value_compare\r
+     {\r
+         key_compare comp;\r
\r
+diff --git a/include/stxxl/bits/containers/hash_map/hash_map.h b/include/stxxl/bits/containers/hash_map/hash_map.h\r
+index 0759bd2..ecf19cd 100644\r
+--- a/include/stxxl/bits/containers/hash_map/hash_map.h\r
++++ b/include/stxxl/bits/containers/hash_map/hash_map.h\r
+@@ -1258,10 +1258,7 @@ protected:\r
+      * lexicographically by <hash-value, key> Note: the hash-value has already\r
+      * been computed.\r
+      */\r
+-    struct Cmp : public std::binary_function<\r
+-                     std::pair<internal_size_type, value_type>,\r
+-                     std::pair<internal_size_type, value_type>, bool\r
+-                     >\r
++    struct Cmp\r
+     {\r
+         self_type& map_;\r
+         Cmp(self_type& map) : map_(map) { }\r
+@@ -1520,7 +1517,7 @@ protected:\r
\r
+ public:\r
+     //! Construct an equality predicate from the comparison operator\r
+-    struct equal_to : public std::binary_function<key_type, key_type, bool>\r
++    struct equal_to\r
+     {\r
+         //! reference to hash_map\r
+         const self_type& m_map;\r
+diff --git a/include/stxxl/bits/io/wbtl_file.h b/include/stxxl/bits/io/wbtl_file.h\r
+index 933a216..30828a0 100644\r
+--- a/include/stxxl/bits/io/wbtl_file.h\r
++++ b/include/stxxl/bits/io/wbtl_file.h\r
+@@ -65,7 +65,7 @@ class wbtl_file : public disk_queued_file\r
+     size_type curpos;\r
+     request_ptr backend_request;\r
\r
+-    struct FirstFit : public std::binary_function<place, offset_type, bool>\r
++    struct FirstFit\r
+     {\r
+         bool operator () (\r
+             const place& entry,\r
+diff --git a/include/stxxl/bits/mng/block_alloc.h b/include/stxxl/bits/mng/block_alloc.h\r
+index 19ade8b..887f0e6 100644\r
+--- a/include/stxxl/bits/mng/block_alloc.h\r
++++ b/include/stxxl/bits/mng/block_alloc.h\r
+@@ -138,7 +138,7 @@ private:\r
+             perm[i] = i;\r
\r
+         stxxl::random_number<random_uniform_fast> rnd;\r
+-        std::random_shuffle(perm.begin(), perm.end(), rnd _STXXL_FORCE_SEQUENTIAL);\r
++        std::shuffle(perm.begin(), perm.end(), std::mt19937(std::random_device()()));\r
+     }\r
\r
+ public:\r
+diff --git a/include/stxxl/bits/mng/block_alloc_interleaved.h b/include/stxxl/bits/mng/block_alloc_interleaved.h\r
+index a82ee34..5aba23a 100644\r
+--- a/include/stxxl/bits/mng/block_alloc_interleaved.h\r
++++ b/include/stxxl/bits/mng/block_alloc_interleaved.h\r
+@@ -93,7 +93,7 @@ struct interleaved_RC : public interleaved_striping\r
+                 perms[i][j] = j;\r
\r
+             random_number<random_uniform_fast> rnd;\r
+-            std::random_shuffle(perms[i].begin(), perms[i].end(), rnd _STXXL_FORCE_SEQUENTIAL);\r
++            std::shuffle(perms[i].begin(), perms[i].end(), std::mt19937(std::random_device()()));\r
+         }\r
+     }\r
\r
+diff --git a/include/stxxl/bits/mng/disk_allocator.h b/include/stxxl/bits/mng/disk_allocator.h\r
+index 59ad085..c1e0f83 100644\r
+--- a/include/stxxl/bits/mng/disk_allocator.h\r
++++ b/include/stxxl/bits/mng/disk_allocator.h\r
+@@ -44,7 +44,7 @@ class disk_allocator : private noncopyable\r
+ {\r
+     typedef std::pair<stxxl::int64, stxxl::int64> place;\r
\r
+-    struct first_fit : public std::binary_function<place, stxxl::int64, bool>\r
++    struct first_fit\r
+     {\r
+         bool operator () (\r
+             const place& entry,\r
+@@ -189,7 +189,7 @@ void disk_allocator::new_blocks(BID<BlockSize>* begin, BID<BlockSize>* end)\r
\r
+     sortseq::iterator space;\r
+     space = std::find_if(free_space.begin(), free_space.end(),\r
+-                         bind2nd(first_fit(), requested_size) _STXXL_FORCE_SEQUENTIAL);\r
++                         std::bind(first_fit(), std::placeholders::_1, requested_size) _STXXL_FORCE_SEQUENTIAL);\r
\r
+     if (space == free_space.end() && requested_size == BlockSize)\r
+     {\r
+@@ -207,7 +207,7 @@ void disk_allocator::new_blocks(BID<BlockSize>* begin, BID<BlockSize>* end)\r
+         grow_file(BlockSize);\r
\r
+         space = std::find_if(free_space.begin(), free_space.end(),\r
+-                             bind2nd(first_fit(), requested_size) _STXXL_FORCE_SEQUENTIAL);\r
++                             std::bind(first_fit(), std::placeholders::_1, requested_size) _STXXL_FORCE_SEQUENTIAL);\r
+     }\r
\r
+     if (space != free_space.end())\r
+diff --git a/include/stxxl/bits/parallel.h b/include/stxxl/bits/parallel.h\r
+index d973861..c858d87 100644\r
+--- a/include/stxxl/bits/parallel.h\r
++++ b/include/stxxl/bits/parallel.h\r
+@@ -121,7 +121,6 @@ using __gnu_parallel::random_shuffle;\r
+ #elif STXXL_PARALLEL\r
\r
+ using std::sort;\r
+-using std::random_shuffle;\r
\r
+ #else\r
\r
+diff --git a/include/stxxl/bits/parallel/base.h b/include/stxxl/bits/parallel/base.h\r
+index 141d515..7dae74f 100644\r
+--- a/include/stxxl/bits/parallel/base.h\r
++++ b/include/stxxl/bits/parallel/base.h\r
+@@ -33,7 +33,6 @@ namespace parallel {\r
+  */\r
+ template <class Predicate, typename first_argument_type, typename second_argument_type>\r
+ class binary_negate\r
+-    : public std::binary_function<first_argument_type, second_argument_type, bool>\r
+ {\r
+ protected:\r
+     Predicate pred;\r
+@@ -80,7 +79,7 @@ static inline void decode2(lcas_t x, int& a, int& b)\r
+  * Constructs predicate for equality from strict weak ordering predicate\r
+  */\r
+ template <class Comparator, typename T1, typename T2>\r
+-class equal_from_less : public std::binary_function<T1, T2, bool>\r
++class equal_from_less\r
+ {\r
+ private:\r
+     Comparator& comp;\r
+@@ -126,7 +125,7 @@ median_of_three_iterators(RandomAccessIterator a, RandomAccessIterator b,\r
\r
+ /** Similar to std::equal_to, but allows two different types. */\r
+ template <typename T1, typename T2>\r
+-struct equal_to : std::binary_function<T1, T2, bool>\r
++struct equal_to\r
+ {\r
+     bool operator () (const T1& t1, const T2& t2) const\r
+     {\r
+@@ -136,7 +135,7 @@ struct equal_to : std::binary_function<T1, T2, bool>\r
\r
+ /** Similar to std::less, but allows two different types. */\r
+ template <typename T1, typename T2>\r
+-struct less : std::binary_function<T1, T2, bool>\r
++struct less\r
+ {\r
+     bool operator () (const T1& t1, const T2& t2) const\r
+     {\r
+diff --git a/include/stxxl/bits/parallel/multiseq_selection.h b/include/stxxl/bits/parallel/multiseq_selection.h\r
+index 57e7599..f41d9aa 100644\r
+--- a/include/stxxl/bits/parallel/multiseq_selection.h\r
++++ b/include/stxxl/bits/parallel/multiseq_selection.h\r
+@@ -35,7 +35,6 @@ namespace parallel {\r
+ //! Compare a pair of types lexcigraphically, ascending.\r
+ template <typename T1, typename T2, typename Comparator>\r
+ class lexicographic\r
+-    : public std::binary_function<std::pair<T1, T2>, std::pair<T1, T2>, bool>\r
+ {\r
+ protected:\r
+     Comparator& m_comp;\r
+@@ -60,7 +59,6 @@ public:\r
+ //! Compare a pair of types lexcigraphically, descending.\r
+ template <typename T1, typename T2, typename Comparator>\r
+ class lexicographic_rev\r
+-    : public std::binary_function<std::pair<T1, T2>, std::pair<T1, T2>, bool>\r
+ {\r
+ protected:\r
+     Comparator& m_comp;\r
+diff --git a/lib/io/wbtl_file.cpp b/lib/io/wbtl_file.cpp\r
+index 310d76a..6d52e2e 100644\r
+--- a/lib/io/wbtl_file.cpp\r
++++ b/lib/io/wbtl_file.cpp\r
+@@ -304,7 +304,7 @@ wbtl_file::offset_type wbtl_file::get_next_write_block()\r
+     // mapping_lock has to be aquired by caller\r
+     sortseq::iterator space =\r
+         std::find_if(free_space.begin(), free_space.end(),\r
+-                     bind2nd(FirstFit(), write_block_size) _STXXL_FORCE_SEQUENTIAL);\r
++                     std::bind(FirstFit(), std::placeholders::_1, write_block_size) _STXXL_FORCE_SEQUENTIAL);\r
\r
+     if (space != free_space.end())\r
+     {\r