diff options
author | B Stack <bgstack15@gmail.com> | 2020-06-21 16:55:59 -0400 |
---|---|---|
committer | B Stack <bgstack15@gmail.com> | 2020-06-21 16:55:59 -0400 |
commit | 0a2f6acc189eaabc1dad595c3af76875f5645514 (patch) | |
tree | 6b12f288b907cbfa779f459f479b75f6b135ce20 /freefilesync/revert_zenju_aggressive_upstreamisms.patch | |
parent | WIP: ffs rpm (diff) | |
download | stackrpms-0a2f6acc189eaabc1dad595c3af76875f5645514.tar.gz stackrpms-0a2f6acc189eaabc1dad595c3af76875f5645514.tar.bz2 stackrpms-0a2f6acc189eaabc1dad595c3af76875f5645514.zip |
ffs rpm: remove files from revert usptreamisms
zen/legacy_compiler.h and zen/string_base.h
Unfortunately I don't have the chops to modify the codebase
to compile on std=c++17 so gcc < 10 is incapable of building
FreeFileSync.
Diffstat (limited to 'freefilesync/revert_zenju_aggressive_upstreamisms.patch')
-rw-r--r-- | freefilesync/revert_zenju_aggressive_upstreamisms.patch | 165 |
1 files changed, 2 insertions, 163 deletions
diff --git a/freefilesync/revert_zenju_aggressive_upstreamisms.patch b/freefilesync/revert_zenju_aggressive_upstreamisms.patch index 355f5f0..522080d 100644 --- a/freefilesync/revert_zenju_aggressive_upstreamisms.patch +++ b/freefilesync/revert_zenju_aggressive_upstreamisms.patch @@ -1,8 +1,8 @@ Author: Ben Stack <bgstack15@gmail.com> -Date: 2020-05-17 14:11 -0400 +Date: 2020-06-21 16:45 -0400 Message: Use the following command to get this old contents. Zenju must be using some newer definition of -std=c++2a than what Devuan Ceres provides as of 2020-05-17, and probably wxwidgets. This is the 10.23 code for these files. - git checkout b4ecf755 zen/legacy_compiler.h zen/string_base.h wx+/choice_enum.h + git checkout b4ecf755 wx+/choice_enum.h Unfortunately with the removal of the wxWidgets-gtk2 code from Debian, we are stuck using all available at approximately November 1, 2019 snapshot of Debian: https://snapshot.debian.org/archive/debian/20191101T211023Z/pool/main/w/wxwidgets3.0/ libwxbase3.0-0v5_3.0.4+dfsg-14_amd64.deb @@ -16,167 +16,6 @@ libwxgtk3.0-dev_3.0.4+dfsg-14_i386.deb wx3.0-headers_3.0.4+dfsg-14_all.deb wx-common_3.0.4+dfsg-14_amd64.deb wx-common_3.0.4+dfsg-14_i386.deb -diff -x '*.rej' -x '*.orig' -Naur 10.25-0/zen/legacy_compiler.h 10.25-1/zen/legacy_compiler.h ---- 10.25-0/zen/legacy_compiler.h 2020-06-19 16:17:16.000000000 -0400 -+++ 10.25-1/zen/legacy_compiler.h 2020-06-20 21:05:15.159166242 -0400 -@@ -7,7 +7,6 @@ - #ifndef LEGACY_COMPILER_H_839567308565656789 - #define LEGACY_COMPILER_H_839567308565656789 - -- #include <numbers> //C++20 - - - -@@ -20,6 +19,53 @@ - - //--------------------------------------------------------------------------------- - -+#if __cpp_lib_span -+ #error get rid of workaround: -+#endif -+ -+template <class T> -+class span -+{ -+public: -+ template <class Iterator> -+ span(Iterator first, Iterator last) : size_(last - first), data_(first != last ? &*first : nullptr) {} -+ -+ template <class Container> -+ span(Container& cont) : span(cont.begin(), cont.end()) {} -+ -+ using iterator = T*; -+ using const_iterator = const T*; -+ -+ iterator begin() { return data_; } -+ iterator end () { return data_ + size_; } -+ -+ const_iterator begin() const { return data_; } -+ const_iterator end () const { return data_ + size_; } -+ -+ const_iterator cbegin() const { return begin(); } -+ const_iterator cend () const { return end (); } -+ -+ T* data() const { return data_; } -+ size_t size() const { return size_; } -+ bool empty() const { return size_ == 0; } -+ -+private: -+ const size_t size_; -+ T* const data_; -+}; -+ -+ -+#if __cpp_lib_math_constants -+ #error get rid of workaround: -+#endif -+ -+namespace numbers -+{ -+const double pi = 3.14159265358979323846; -+const double e = 2.71828182845904523536; -+const double sqrt2 = 1.41421356237309504880; -+const double ln2 = 0.693147180559945309417; -+} - - - } -diff -x '*.rej' -x '*.orig' -Naur 10.25-0/zen/string_base.h 10.25-1/zen/string_base.h ---- 10.25-0/zen/string_base.h 2020-06-19 16:17:16.000000000 -0400 -+++ 10.25-1/zen/string_base.h 2020-06-20 21:06:05.705698462 -0400 -@@ -11,7 +11,9 @@ - #include <cassert> - #include <cstdint> - #include <atomic> -+#if __cpp_impl_three_way_comparison && __cpp_lib_three_way_comparison - #include <compare> -+#endif - #include "string_tools.h" - - -@@ -293,15 +295,29 @@ - }; - - -+#if __cpp_impl_three_way_comparison && __cpp_lib_three_way_comparison -+ #error implement! -+#endif -+ - - template <class Char, template <class> class SP> bool operator==(const Zbase<Char, SP>& lhs, const Zbase<Char, SP>& rhs); - template <class Char, template <class> class SP> bool operator==(const Zbase<Char, SP>& lhs, const Char* rhs); - template <class Char, template <class> class SP> inline bool operator==(const Char* lhs, const Zbase<Char, SP>& rhs) { return operator==(rhs, lhs); } - -+#if __cpp_impl_three_way_comparison && __cpp_lib_three_way_comparison - template <class Char, template <class> class SP> std::strong_ordering operator<=>(const Zbase<Char, SP>& lhs, const Zbase<Char, SP>& rhs); - template <class Char, template <class> class SP> std::strong_ordering operator<=>(const Zbase<Char, SP>& lhs, const Char* rhs); - template <class Char, template <class> class SP> std::strong_ordering operator<=>(const Char* lhs, const Zbase<Char, SP>& rhs); - -+#else -+template <class Char, template <class> class SP> inline bool operator!=(const Zbase<Char, SP>& lhs, const Zbase<Char, SP>& rhs) { return !operator==(lhs, rhs); } -+template <class Char, template <class> class SP> inline bool operator!=(const Zbase<Char, SP>& lhs, const Char* rhs) { return !operator==(lhs, rhs); } -+template <class Char, template <class> class SP> inline bool operator!=(const Char* lhs, const Zbase<Char, SP>& rhs) { return !operator==(lhs, rhs); } -+ -+template <class Char, template <class> class SP> bool operator<(const Zbase<Char, SP>& lhs, const Zbase<Char, SP>& rhs); -+template <class Char, template <class> class SP> bool operator<(const Zbase<Char, SP>& lhs, const Char* rhs); -+template <class Char, template <class> class SP> bool operator<(const Char* lhs, const Zbase<Char, SP>& rhs); -+#endif - - template <class Char, template <class> class SP> inline Zbase<Char, SP> operator+(const Zbase<Char, SP>& lhs, const Zbase<Char, SP>& rhs) { return Zbase<Char, SP>(lhs) += rhs; } - template <class Char, template <class> class SP> inline Zbase<Char, SP> operator+(const Zbase<Char, SP>& lhs, const Char* rhs) { return Zbase<Char, SP>(lhs) += rhs; } -@@ -482,11 +498,12 @@ - } - - -+#if __cpp_impl_three_way_comparison && __cpp_lib_three_way_comparison - template <class Char, template <class> class SP> inline - std::strong_ordering operator<=>(const Zbase<Char, SP>& lhs, const Zbase<Char, SP>& rhs) - { -- return std::lexicographical_compare_three_way(lhs.begin(), lhs.end(), //respect embedded 0 -- rhs.begin(), rhs.end()); // -+ return std::lexicographical_compare_three_way(lhs.begin(), lhs.end(), //respect embedded 0 -+ rhs.begin(), rhs.end()); - } - - -@@ -501,11 +518,35 @@ - template <class Char, template <class> class SP> inline - std::strong_ordering operator<=>(const Char* lhs, const Zbase<Char, SP>& rhs) - { -- return std::lexicographical_compare_three_way(lhs, lhs + strLength(lhs), -- rhs.begin(), rhs.end()); //respect embedded 0 -+ return std::lexicographical_compare_three_way(lhs, lhs + strLength(lhs), //respect embedded 0 -+ rhs.begin(), rhs.end()); -+} -+ -+#else -+template <class Char, template <class> class SP> inline -+bool operator<(const Zbase<Char, SP>& lhs, const Zbase<Char, SP>& rhs) -+{ -+ return std::lexicographical_compare(lhs.begin(), lhs.end(), //respect embedded 0 -+ rhs.begin(), rhs.end()); - } - - -+template <class Char, template <class> class SP> inline -+bool operator<(const Zbase<Char, SP>& lhs, const Char* rhs) -+{ -+ return std::lexicographical_compare(lhs.begin(), lhs.end(), //respect embedded 0 -+ rhs, rhs + strLength(rhs)); -+} -+ -+ -+template <class Char, template <class> class SP> inline -+bool operator<(const Char* lhs, const Zbase<Char, SP>& rhs) -+{ -+ return std::lexicographical_compare(lhs, lhs + strLength(lhs), //respect embedded 0 -+ rhs.begin(), rhs.end()); -+} -+#endif -+ - - template <class Char, template <class> class SP> inline - size_t Zbase<Char, SP>::length() const diff -x '*.rej' -x '*.orig' -x '*.git*' -Naur 10.24-0/wx+/choice_enum.h 10.24-1/wx+/choice_enum.h --- 10.24-0/wx+/choice_enum.h 2020-05-17 18:30:59.441499418 -0400 +++ 10.24-1/wx+/choice_enum.h 2020-05-17 18:53:59.893685507 -0400 |