summaryrefslogtreecommitdiff
path: root/dev-cpp/range-v3
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2020-11-25 22:39:15 +0000
committerV3n3RiX <venerix@redcorelinux.org>2020-11-25 22:39:15 +0000
commitd934827bf44b7cfcf6711964418148fa60877668 (patch)
tree0625f358789b5e015e49db139cc1dbc9be00428f /dev-cpp/range-v3
parent2e34d110f164bf74d55fced27fe0000201b3eec5 (diff)
gentoo resync : 25.11.2020
Diffstat (limited to 'dev-cpp/range-v3')
-rw-r--r--dev-cpp/range-v3/Manifest4
-rw-r--r--dev-cpp/range-v3/files/0.11.0-gcc10.patch133
-rw-r--r--dev-cpp/range-v3/files/0.11.0-no-werror.patch39
-rw-r--r--dev-cpp/range-v3/range-v3-0.11.0.ebuild46
4 files changed, 222 insertions, 0 deletions
diff --git a/dev-cpp/range-v3/Manifest b/dev-cpp/range-v3/Manifest
index b1dd1b9e9b7e..4841c95bd43c 100644
--- a/dev-cpp/range-v3/Manifest
+++ b/dev-cpp/range-v3/Manifest
@@ -1,3 +1,7 @@
+AUX 0.11.0-gcc10.patch 5360 BLAKE2B 2b679699a6c98004322caa0cc3334a898010263afff7ee870576855993f9cca8887066306d154ca63f53af224e2601e998deed0eff8c48f93c4b1b91d8bc0e77 SHA512 081032ea9f458f0d3bdc5931e89cab49ae32d4e0cf5a8a5a7ebbc7fd0e103469c78822d5f1ccba75b0425fa8c9b8b9057069a786a6f4fdb229b94a583172cbf7
+AUX 0.11.0-no-werror.patch 1543 BLAKE2B 31a87abcfbfd23d1f585053befaa869a7299c74d903028b4c2c4b19194787cc325f6dda2dc5d9255d6aa38ce3b4b3182e9b9a133fa61d24569c56ac344cde643 SHA512 8ddc6073e1386cb667e66e5496d2566b60bc64f9670bd94d3d66582a43db66466e4f57995c68bf1ceca500c07f8f7feccfaeeb1c0cf9fafa14de5a81482eca5c
DIST range-v3-0.10.0.tar.gz 525765 BLAKE2B 7dd3aed9b35920e058fe43bccd364831a52ad8d50179d1057ab7a37cdef82df021bb09a9913018ae78982fe136c855ba4101e31d35cfc21747af994d0103b95e SHA512 4db089dcbf638eb30fa20dcf6785dd460c5a074a8912984a484592753cfee9f5b9a0e2c56b5bc5921d1b6120877aa2c83ac0a6fe428088ef2854033a635e9723
+DIST range-v3-0.11.0.tar.gz 533136 BLAKE2B d325b14a9d812cb7a600a947126bcecf9384bec987edbad42eec38560415d075815ab92e3f92dad291029fc3e1b1afa1ceaf54443b4a536078047fd32d344394 SHA512 9d6cdcbc1e50104206ba731c3bdc9aab3acfcf69cd83f0e0b4de18b88df2a9e73d64e55638421768d4433c542b6619f6e5af6b17cccd3090cf8b4d4efe9863e4
EBUILD range-v3-0.10.0-r1.ebuild 854 BLAKE2B 17533e47f71866b1b7be5b7323e7179513dad88287a61506bb1fb145004927a64a2809682b91c548cc89f544238ee3cbbc2ec42159a3686f5a5c8cc4d63a9f0c SHA512 9d326cb93b3bc3fd32adf43ee6229ea672d56be1c711afe0724cd012451d570ac4ea9404992bee1faa64c4cdffacfef78193192953626a771780bb17939cd5cc
+EBUILD range-v3-0.11.0.ebuild 1161 BLAKE2B f001f5d4a642692e9c6399421fc3baf89e07a28dcbc1e3652a593c3cdbc691f83d9f406fa27f08dc5bd9cce5be46ee8980618332f1bd016c0e7841bc08f02472 SHA512 b345ec01463b82499681c2604453df2f9305be3ef5ccfbbff8a0aa5bc4e4b6298b254ab805d950e065ba8cef5cea2092f70b2cdc6c0cc381d72d334699e3ce8a
MISC metadata.xml 251 BLAKE2B e9e9d48943645d8b737bc1f7ab0efb05db0f8eddad759c9bb40d07dc008fbfb8f5cca2020de71a9ff6945f5d66292ac02355773545010cd49c77fe6dd5ab7b40 SHA512 1b6a6955118c1a74cc89a77d6de9be8f4ff9c7137c186753462670a5b93457dfd034ad5d1f4d2507ac95cc149c2a042fa5324220b58702a56b09d91de40151c9
diff --git a/dev-cpp/range-v3/files/0.11.0-gcc10.patch b/dev-cpp/range-v3/files/0.11.0-gcc10.patch
new file mode 100644
index 000000000000..caebf0a63162
--- /dev/null
+++ b/dev-cpp/range-v3/files/0.11.0-gcc10.patch
@@ -0,0 +1,133 @@
+From a91f0e1be27a31c446452a753001d4518ef83a6b Mon Sep 17 00:00:00 2001
+From: Eric Niebler <eniebler@boost.org>
+Date: Mon, 17 Aug 2020 17:48:09 -0700
+Subject: [PATCH] work around premature instantiation problem on gcc; fixes
+ #1545
+
+---
+ include/range/v3/view/chunk.hpp | 6 +++---
+ include/range/v3/view/split.hpp | 26 +++++++++++++-------------
+ 2 files changed, 16 insertions(+), 16 deletions(-)
+
+diff --git a/include/range/v3/view/chunk.hpp b/include/range/v3/view/chunk.hpp
+index 0c03cf1eb..b8df13303 100644
+--- a/include/range/v3/view/chunk.hpp
++++ b/include/range/v3/view/chunk.hpp
+@@ -313,8 +313,8 @@ namespace ranges
+
+ public:
+ inner_view() = default;
+- constexpr explicit inner_view(chunk_view_ & view) noexcept
+- : rng_{&view}
++ constexpr explicit inner_view(chunk_view_ * view) noexcept
++ : rng_{view}
+ {}
+ CPP_auto_member
+ constexpr auto CPP_fun(size)()(
+@@ -338,7 +338,7 @@ namespace ranges
+ constexpr inner_view read() const
+ {
+ RANGES_EXPECT(!done());
+- return inner_view{*rng_};
++ return inner_view{rng_};
+ }
+ constexpr bool done() const
+ {
+diff --git a/include/range/v3/view/split.hpp b/include/range/v3/view/split.hpp
+index facf1b37f..496220e4a 100644
+--- a/include/range/v3/view/split.hpp
++++ b/include/range/v3/view/split.hpp
+@@ -389,19 +389,19 @@ namespace ranges
+ split_outer_iterator() = default;
+
+ CPP_member
+- constexpr explicit CPP_ctor(split_outer_iterator)(Parent & parent)(
++ constexpr explicit CPP_ctor(split_outer_iterator)(Parent * parent)(
+ /// \pre
+ requires (!forward_range<Base>))
+- : parent_(&parent)
++ : parent_(parent)
+ {}
+
+ CPP_member
+- constexpr CPP_ctor(split_outer_iterator)(Parent & parent,
++ constexpr CPP_ctor(split_outer_iterator)(Parent * parent,
+ iterator_t<Base> current)(
+ /// \pre
+ requires forward_range<Base>)
+ : Current{std::move(current)}
+- , parent_(&parent)
++ , parent_(parent)
+ {}
+
+ template(bool Other)(
+@@ -519,7 +519,7 @@ namespace ranges
+ ranges::equal_to> &&
+ (forward_range<V> || detail::tiny_range<Pattern>)
+ #endif
+- struct RANGES_EMPTY_BASES split_view
++ struct RANGES_EMPTY_BASES split_view
+ : view_interface<split_view<V, Pattern>, is_finite<V>::value ? finite : unknown>
+ , private detail::split_view_base<iterator_t<V>>
+ {
+@@ -537,17 +537,17 @@ namespace ranges
+ #if RANGES_CXX_IF_CONSTEXPR < RANGES_CXX_IF_CONSTEXPR_17
+ outer_iterator<simple_view<V>()> begin_(std::true_type)
+ {
+- return outer_iterator<simple_view<V>()>{*this, ranges::begin(base_)};
++ return outer_iterator<simple_view<V>()>{this, ranges::begin(base_)};
+ }
+ outer_iterator<false> begin_(std::false_type)
+ {
+ this->curr_ = ranges::begin(base_);
+- return outer_iterator<false>{*this};
++ return outer_iterator<false>{this};
+ }
+
+ outer_iterator<simple_view<V>()> end_(std::true_type) const
+ {
+- return outer_iterator<true>{*this, ranges::end(base_)};
++ return outer_iterator<true>{this, ranges::end(base_)};
+ }
+ default_sentinel_t end_(std::false_type) const
+ {
+@@ -580,11 +580,11 @@ namespace ranges
+ {
+ #if RANGES_CXX_IF_CONSTEXPR >= RANGES_CXX_IF_CONSTEXPR_17
+ if constexpr(forward_range<V>)
+- return outer_iterator<simple_view<V>()>{*this, ranges::begin(base_)};
++ return outer_iterator<simple_view<V>()>{this, ranges::begin(base_)};
+ else
+ {
+ this->curr_ = ranges::begin(base_);
+- return outer_iterator<false>{*this};
++ return outer_iterator<false>{this};
+ }
+ #else
+ return begin_(meta::bool_<forward_range<V>>{});
+@@ -596,7 +596,7 @@ namespace ranges
+ /// \pre
+ requires forward_range<V> && forward_range<const V>)
+ {
+- return {*this, ranges::begin(base_)};
++ return {this, ranges::begin(base_)};
+ }
+ CPP_member
+ constexpr auto end() //
+@@ -604,14 +604,14 @@ namespace ranges
+ /// \pre
+ requires forward_range<V> && common_range<V>)
+ {
+- return outer_iterator<simple_view<V>()>{*this, ranges::end(base_)};
++ return outer_iterator<simple_view<V>()>{this, ranges::end(base_)};
+ }
+ constexpr auto end() const
+ {
+ #if RANGES_CXX_IF_CONSTEXPR >= RANGES_CXX_IF_CONSTEXPR_17
+ if constexpr(forward_range<V> && forward_range<const V> &&
+ common_range<const V>)
+- return outer_iterator<true>{*this, ranges::end(base_)};
++ return outer_iterator<true>{this, ranges::end(base_)};
+ else
+ return default_sentinel;
+ #else
diff --git a/dev-cpp/range-v3/files/0.11.0-no-werror.patch b/dev-cpp/range-v3/files/0.11.0-no-werror.patch
new file mode 100644
index 000000000000..1894fcc93b6c
--- /dev/null
+++ b/dev-cpp/range-v3/files/0.11.0-no-werror.patch
@@ -0,0 +1,39 @@
+From 66e847d4e14be3a369b7e26a03a172b20e62c003 Mon Sep 17 00:00:00 2001
+From: eksi <eksi@eksi.eksi>
+Date: Wed, 4 Nov 2020 20:37:01 +0300
+Subject: [PATCH] Add an option to disable -Werror. Fixes #1528
+
+---
+ cmake/ranges_flags.cmake | 4 +++-
+ cmake/ranges_options.cmake | 3 +++
+ 2 files changed, 6 insertions(+), 1 deletion(-)
+
+diff --git a/cmake/ranges_flags.cmake b/cmake/ranges_flags.cmake
+index 76d893043..9b09ddcb8 100644
+--- a/cmake/ranges_flags.cmake
++++ b/cmake/ranges_flags.cmake
+@@ -88,7 +88,9 @@ else()
+ # Enable "normal" warnings and make them errors:
+ ranges_append_flag(RANGES_HAS_WALL -Wall)
+ ranges_append_flag(RANGES_HAS_WEXTRA -Wextra)
+- ranges_append_flag(RANGES_HAS_WERROR -Werror)
++ if (RANGES_ENABLE_WERROR)
++ ranges_append_flag(RANGES_HAS_WERROR -Werror)
++ endif()
+ endif()
+
+ if (RANGES_ENV_LINUX AND RANGES_CXX_COMPILER_CLANG)
+diff --git a/cmake/ranges_options.cmake b/cmake/ranges_options.cmake
+index 4ec39c7f0..8455af306 100644
+--- a/cmake/ranges_options.cmake
++++ b/cmake/ranges_options.cmake
+@@ -16,6 +16,9 @@ option(RANGES_MODULES "Enables use of Clang modules (experimental)." OFF)
+ option(RANGES_NATIVE "Enables -march/-mtune=native." ON)
+ option(RANGES_VERBOSE_BUILD "Enables debug output from CMake." OFF)
+ option(RANGES_LLVM_POLLY "Enables LLVM Polly." OFF)
++option(RANGES_ENABLE_WERROR
++ "Enables -Werror. Only effective if compiler is not clang-cl or MSVC. ON by default"
++ ON)
+ option(RANGES_PREFER_REAL_CONCEPTS
+ "Use real concepts instead of emulation if the compiler supports it"
+ ON)
diff --git a/dev-cpp/range-v3/range-v3-0.11.0.ebuild b/dev-cpp/range-v3/range-v3-0.11.0.ebuild
new file mode 100644
index 000000000000..a12572613b50
--- /dev/null
+++ b/dev-cpp/range-v3/range-v3-0.11.0.ebuild
@@ -0,0 +1,46 @@
+# Copyright 2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake
+
+DESCRIPTION="Range library for C++14/17/20, basis for C++20's std::ranges"
+HOMEPAGE="https://github.com/ericniebler/range-v3"
+SRC_URI="https://github.com/ericniebler/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Boost-1.0"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc64"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+PATCHES=(
+ "${FILESDIR}/0.11.0-no-werror.patch"
+ "${FILESDIR}/0.11.0-gcc10.patch"
+)
+
+src_prepare() {
+ # header-only libraries go to arch-independent dirs
+ sed -i -e 's@lib/cmake@share/cmake@g' CMakeLists.txt || die
+ rm include/module.modulemap || die # https://bugs.gentoo.org/755740
+ cmake_src_prepare
+}
+
+src_configure() {
+ mycmakeargs=(
+ -DRANGES_BUILD_CALENDAR_EXAMPLE=OFF
+ -DRANGES_NATIVE=OFF
+ -DRANGES_DEBUG_INFO=OFF
+ -DRANGES_NATIVE=OFF
+ -DRANGES_ENABLE_WERROR=OFF
+ -DRANGES_VERBOSE_BUILD=ON
+ -DRANGE_V3_EXAMPLES=OFF
+ -DRANGE_V3_PERF=OFF
+ -DRANGE_V3_DOCS=OFF
+ -DRANGE_V3_HEADER_CHECKS="$(usex test ON OFF)"
+ -DRANGE_V3_TESTS=$(usex test ON OFF)
+ #TODO: clang support + -DRANGES_MODULES=yes
+ )
+ cmake_src_configure
+}