diff options
author | V3n3RiX <venerix@redcorelinux.org> | 2017-10-09 18:53:29 +0100 |
---|---|---|
committer | V3n3RiX <venerix@redcorelinux.org> | 2017-10-09 18:53:29 +0100 |
commit | 4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch) | |
tree | ba5f07bf3f9d22d82e54a462313f5d244036c768 /dev-cpp/libcutl/files |
reinit the tree, so we can have metadata
Diffstat (limited to 'dev-cpp/libcutl/files')
-rw-r--r-- | dev-cpp/libcutl/files/libcutl-1.10.0-boost-1.65-tr1.patch | 162 | ||||
-rw-r--r-- | dev-cpp/libcutl/files/libcutl-1.10.0-fix-c++14.patch | 53 |
2 files changed, 215 insertions, 0 deletions
diff --git a/dev-cpp/libcutl/files/libcutl-1.10.0-boost-1.65-tr1.patch b/dev-cpp/libcutl/files/libcutl-1.10.0-boost-1.65-tr1.patch new file mode 100644 index 000000000000..ebb15ee9b404 --- /dev/null +++ b/dev-cpp/libcutl/files/libcutl-1.10.0-boost-1.65-tr1.patch @@ -0,0 +1,162 @@ +Use regex from C++11 instead of boost/tr1's version (the latter is gone as of boost 1.65). +Patch: https://svnweb.freebsd.org/ports/head/devel/libcutl/files/patch-cutl_re_re.cxx?view=markup&pathrev=445764 +Bug: https://bugs.gentoo.org/show_bug.cgi?id=630016 + +--- a/cutl/re/re.cxx ++++ b/cutl/re/re.cxx +@@ -9,7 +9,7 @@ + #ifndef LIBCUTL_EXTERNAL_BOOST + # include <cutl/details/boost/tr1/regex.hpp> + #else +-# include <boost/tr1/regex.hpp> ++# include <regex> + #endif + + using namespace std; +@@ -40,17 +40,17 @@ + struct basic_regex<C>::impl + { + typedef basic_string<C> string_type; +- typedef tr1::basic_regex<C> regex_type; ++ typedef std::basic_regex<C> regex_type; + typedef typename regex_type::flag_type flag_type; + + impl () {} + impl (regex_type const& r): r (r) {} + impl (string_type const& s, bool icase) + { +- flag_type f (tr1::regex_constants::ECMAScript); ++ flag_type f (std::regex_constants::ECMAScript); + + if (icase) +- f |= tr1::regex_constants::icase; ++ f |= std::regex_constants::icase; + + r.assign (s, f); + } +@@ -118,15 +118,15 @@ + impl_ = s == 0 ? new impl : new impl (*s, icase); + else + { +- impl::flag_type f (tr1::regex_constants::ECMAScript); ++ impl::flag_type f (std::regex_constants::ECMAScript); + + if (icase) +- f |= tr1::regex_constants::icase; ++ f |= std::regex_constants::icase; + + impl_->r.assign (*s, f); + } + } +- catch (tr1::regex_error const& e) ++ catch (std::regex_error const& e) + { + throw basic_format<char> (s == 0 ? "" : *s, e.what ()); + } +@@ -146,15 +146,15 @@ + impl_ = s == 0 ? new impl : new impl (*s, icase); + else + { +- impl::flag_type f (tr1::regex_constants::ECMAScript); ++ impl::flag_type f (std::regex_constants::ECMAScript); + + if (icase) +- f |= tr1::regex_constants::icase; ++ f |= std::regex_constants::icase; + + impl_->r.assign (*s, f); + } + } +- catch (tr1::regex_error const& e) ++ catch (std::regex_error const& e) + { + throw basic_format<wchar_t> (s == 0 ? L"" : *s, e.what ()); + } +@@ -166,28 +166,28 @@ + bool basic_regex<char>:: + match (string_type const& s) const + { +- return tr1::regex_match (s, impl_->r); ++ return std::regex_match (s, impl_->r); + } + + template <> + bool basic_regex<wchar_t>:: + match (string_type const& s) const + { +- return tr1::regex_match (s, impl_->r); ++ return std::regex_match (s, impl_->r); + } + + template <> + bool basic_regex<char>:: + search (string_type const& s) const + { +- return tr1::regex_search (s, impl_->r); ++ return std::regex_search (s, impl_->r); + } + + template <> + bool basic_regex<wchar_t>:: + search (string_type const& s) const + { +- return tr1::regex_search (s, impl_->r); ++ return std::regex_search (s, impl_->r); + } + + template <> +@@ -196,13 +196,13 @@ + string_type const& sub, + bool first_only) const + { +- tr1::regex_constants::match_flag_type f ( +- tr1::regex_constants::format_default); ++ std::regex_constants::match_flag_type f ( ++ std::regex_constants::format_default); + + if (first_only) +- f |= tr1::regex_constants::format_first_only; ++ f |= std::regex_constants::format_first_only; + +- return tr1::regex_replace (s, impl_->r, sub, f); ++ return std::regex_replace (s, impl_->r, sub, f); + } + + template <> +@@ -211,13 +211,13 @@ + string_type const& sub, + bool first_only) const + { +- tr1::regex_constants::match_flag_type f ( +- tr1::regex_constants::format_default); ++ std::regex_constants::match_flag_type f ( ++ std::regex_constants::format_default); + + if (first_only) +- f |= tr1::regex_constants::format_first_only; ++ f |= std::regex_constants::format_first_only; + +- return tr1::regex_replace (s, impl_->r, sub, f); ++ return std::regex_replace (s, impl_->r, sub, f); + } + } + } +--- a/m4/libboost.m4 ++++ b/m4/libboost.m4 +@@ -129,13 +129,13 @@ + AC_DEFUN([LIBBOOST_REGEX], [ + LIBBOOST_LIB([regex],[ + AC_LANG_SOURCE([ +-#include <boost/tr1/regex.hpp> ++#include <regex> + + int + main () + { +- std::tr1::regex r ("te.t", std::tr1::regex_constants::ECMAScript); +- return std::tr1::regex_match ("test", r) ? 0 : 1; ++ std::regex r ("te.t", std::regex_constants::ECMAScript); ++ return std::regex_match ("test", r) ? 0 : 1; + } + ])], + [$1], diff --git a/dev-cpp/libcutl/files/libcutl-1.10.0-fix-c++14.patch b/dev-cpp/libcutl/files/libcutl-1.10.0-fix-c++14.patch new file mode 100644 index 000000000000..a6f1a505485b --- /dev/null +++ b/dev-cpp/libcutl/files/libcutl-1.10.0-fix-c++14.patch @@ -0,0 +1,53 @@ +Make dtors noexcept(false) when compiling in C++11 and above. This avoids silent +breakage due to the semantic exception changes between C++98 and C++11. + +--- a/cutl/fs/auto-remove.cxx ++++ b/cutl/fs/auto-remove.cxx +@@ -13,6 +13,9 @@ + { + auto_remove:: + ~auto_remove () ++#if __cplusplus >= 201103L ++ noexcept(false) ++#endif + { + if (!canceled_) + { +@@ -23,6 +26,9 @@ + + auto_removes:: + ~auto_removes () ++#if __cplusplus >= 201103L ++ noexcept(false) ++#endif + { + if (!canceled_) + { +--- a/cutl/fs/auto-remove.hxx ++++ b/cutl/fs/auto-remove.hxx +@@ -26,7 +26,11 @@ + { + } + +- ~auto_remove (); ++ ~auto_remove () ++#if __cplusplus >= 201103L ++ noexcept(false) ++#endif ++ ; + + void + cancel () +@@ -51,7 +55,11 @@ + struct LIBCUTL_EXPORT auto_removes + { + auto_removes (): canceled_ (false) {} +- ~auto_removes (); ++ ~auto_removes () ++#if __cplusplus >= 201103L ++ noexcept(false) ++#endif ++ ; + + void + add (path const& p) |