From e120407c0fbef92a1a02885d1dfa5ab2c07b1248 Mon Sep 17 00:00:00 2001 From: JonLiu1993 <63675417+JonLiu1993@users.noreply.github.com> Date: Tue, 18 May 2021 08:42:11 +0800 Subject: [PATCH] [wxWidgets] update to 3.1.5 (#17527) * [wxWidgets] update to 3.1.5 * update version --- .../wxwidgets/fix-stl-build-vs2019-16.6.patch | 202 ------------------ ports/wxwidgets/portfile.cmake | 5 +- ports/wxwidgets/vcpkg.json | 3 +- versions/baseline.json | 4 +- versions/w-/wxwidgets.json | 5 + 5 files changed, 10 insertions(+), 209 deletions(-) delete mode 100644 ports/wxwidgets/fix-stl-build-vs2019-16.6.patch diff --git a/ports/wxwidgets/fix-stl-build-vs2019-16.6.patch b/ports/wxwidgets/fix-stl-build-vs2019-16.6.patch deleted file mode 100644 index e028112e7e..0000000000 --- a/ports/wxwidgets/fix-stl-build-vs2019-16.6.patch +++ /dev/null @@ -1,202 +0,0 @@ -From 590e32c60b1dfb32b34632f3d1b0b5cf7c8e4b84 Mon Sep 17 00:00:00 2001 -From: Maarten Bent -Date: Sat, 1 Aug 2020 11:54:26 +0200 -Subject: [PATCH] Fix building with wxUSE_STL enabled in VS2019 16.6 - -Exporting standard C++ library types is not allowed any more, see - -https://developercommunity.visualstudio.com/content/problem/1042081/142628801includexhash201332-error-c2338-this-funct.html - -so don't use DLL export declarations for wxHash{Map,Set} classes, which -derive from std::{map,set}. - -Since the classes are header-only, this should have no direct -consequences. Only classes that extend wxHashMap or wxHashSet, like -wxImageHistogram, have to be made header only as well. - -Remove the wxLogError message in wxImageHistogram::FindFirstUnusedColour, so -log.h and translation.h do not have to be included in the header. - -Closes https://github.com/wxWidgets/wxWidgets/pull/2009 ---- - include/wx/hashmap.h | 9 ++++++--- - include/wx/hashset.h | 6 ++++-- - include/wx/image.h | 42 ++++++++++++++++++++++++++++++++++++++---- - src/common/image.cpp | 43 ------------------------------------------- - 4 files changed, 48 insertions(+), 52 deletions(-) - -diff --git a/include/wx/hashmap.h b/include/wx/hashmap.h -index df9092a3823..86700f40ca9 100644 ---- a/include/wx/hashmap.h -+++ b/include/wx/hashmap.h -@@ -678,24 +678,27 @@ public: \ - - // and these do exactly the same thing but should be used inside the - // library -+// note: DECL is not used since the class is inline - #define WX_DECLARE_HASH_MAP_WITH_DECL( KEY_T, VALUE_T, HASH_T, KEY_EQ_T, CLASSNAME, DECL) \ -- _WX_DECLARE_HASH_MAP( KEY_T, VALUE_T, HASH_T, KEY_EQ_T, CLASSNAME, DECL ) -+ _WX_DECLARE_HASH_MAP( KEY_T, VALUE_T, HASH_T, KEY_EQ_T, CLASSNAME, class ) - - #define WX_DECLARE_EXPORTED_HASH_MAP( KEY_T, VALUE_T, HASH_T, KEY_EQ_T, CLASSNAME) \ - WX_DECLARE_HASH_MAP_WITH_DECL( KEY_T, VALUE_T, HASH_T, KEY_EQ_T, \ - CLASSNAME, class WXDLLIMPEXP_CORE ) - -+// note: DECL is not used since the class is inline - #define WX_DECLARE_STRING_HASH_MAP_WITH_DECL( VALUE_T, CLASSNAME, DECL ) \ - _WX_DECLARE_HASH_MAP( wxString, VALUE_T, wxStringHash, wxStringEqual, \ -- CLASSNAME, DECL ) -+ CLASSNAME, class ) - - #define WX_DECLARE_EXPORTED_STRING_HASH_MAP( VALUE_T, CLASSNAME ) \ - WX_DECLARE_STRING_HASH_MAP_WITH_DECL( VALUE_T, CLASSNAME, \ - class WXDLLIMPEXP_CORE ) - -+// note: DECL is not used since the class is inline - #define WX_DECLARE_VOIDPTR_HASH_MAP_WITH_DECL( VALUE_T, CLASSNAME, DECL ) \ - _WX_DECLARE_HASH_MAP( void*, VALUE_T, wxPointerHash, wxPointerEqual, \ -- CLASSNAME, DECL ) -+ CLASSNAME, class ) - - #define WX_DECLARE_EXPORTED_VOIDPTR_HASH_MAP( VALUE_T, CLASSNAME ) \ - WX_DECLARE_VOIDPTR_HASH_MAP_WITH_DECL( VALUE_T, CLASSNAME, \ -diff --git a/include/wx/hashset.h b/include/wx/hashset.h -index bb713b87f4f..311aeca9a6e 100644 ---- a/include/wx/hashset.h -+++ b/include/wx/hashset.h -@@ -159,8 +159,9 @@ public: \ - - // and these do exactly the same thing but should be used inside the - // library -+// note: DECL is not used since the class is inline - #define WX_DECLARE_HASH_SET_WITH_DECL( KEY_T, HASH_T, KEY_EQ_T, CLASSNAME, DECL) \ -- _WX_DECLARE_HASH_SET( KEY_T, HASH_T, KEY_EQ_T, wxPTROP_NORMAL, CLASSNAME, DECL ) -+ _WX_DECLARE_HASH_SET( KEY_T, HASH_T, KEY_EQ_T, wxPTROP_NORMAL, CLASSNAME, class ) - - #define WX_DECLARE_EXPORTED_HASH_SET( KEY_T, HASH_T, KEY_EQ_T, CLASSNAME) \ - WX_DECLARE_HASH_SET_WITH_DECL( KEY_T, HASH_T, KEY_EQ_T, \ -@@ -173,8 +174,9 @@ public: \ - // common compilers (notably Sun CC). - #define WX_DECLARE_HASH_SET_PTR( KEY_T, HASH_T, KEY_EQ_T, CLASSNAME) \ - _WX_DECLARE_HASH_SET( KEY_T, HASH_T, KEY_EQ_T, wxPTROP_NOP, CLASSNAME, class ) -+// note: DECL is not used since the class is inline - #define WX_DECLARE_HASH_SET_WITH_DECL_PTR( KEY_T, HASH_T, KEY_EQ_T, CLASSNAME, DECL) \ -- _WX_DECLARE_HASH_SET( KEY_T, HASH_T, KEY_EQ_T, wxPTROP_NOP, CLASSNAME, DECL ) -+ _WX_DECLARE_HASH_SET( KEY_T, HASH_T, KEY_EQ_T, wxPTROP_NOP, CLASSNAME, class ) - - // delete all hash elements - // -diff --git a/include/wx/image.h b/include/wx/image.h -index f2b5866d2d7..d53ff0b1165 100644 ---- a/include/wx/image.h -+++ b/include/wx/image.h -@@ -190,7 +190,7 @@ WX_DECLARE_EXPORTED_HASH_MAP(unsigned long, wxImageHistogramEntry, - wxIntegerHash, wxIntegerEqual, - wxImageHistogramBase); - --class WXDLLIMPEXP_CORE wxImageHistogram : public wxImageHistogramBase -+class wxImageHistogram : public wxImageHistogramBase - { - public: - wxImageHistogram() : wxImageHistogramBase(256) { } -@@ -211,9 +211,43 @@ class WXDLLIMPEXP_CORE wxImageHistogram : public wxImageHistogramBase - bool FindFirstUnusedColour(unsigned char *r, - unsigned char *g, - unsigned char *b, -- unsigned char startR = 1, -- unsigned char startG = 0, -- unsigned char startB = 0 ) const; -+ unsigned char r2 = 1, -+ unsigned char g2 = 0, -+ unsigned char b2 = 0 ) const -+ { -+ unsigned long key = MakeKey(r2, g2, b2); -+ -+ while ( find(key) != end() ) -+ { -+ // color already used -+ r2++; -+ if ( r2 >= 255 ) -+ { -+ r2 = 0; -+ g2++; -+ if ( g2 >= 255 ) -+ { -+ g2 = 0; -+ b2++; -+ if ( b2 >= 255 ) -+ { -+ return false; -+ } -+ } -+ } -+ -+ key = MakeKey(r2, g2, b2); -+ } -+ -+ if ( r ) -+ *r = r2; -+ if ( g ) -+ *g = g2; -+ if ( b ) -+ *b = b2; -+ -+ return true; -+ } - }; - - //----------------------------------------------------------------------------- -diff --git a/src/common/image.cpp b/src/common/image.cpp -index 096f823f0c1..880c1c4ea74 100644 ---- a/src/common/image.cpp -+++ b/src/common/image.cpp -@@ -3381,49 +3381,6 @@ wxImageHandler::GetResolutionFromOptions(const wxImage& image, int *x, int *y) - // image histogram stuff - // ---------------------------------------------------------------------------- - --bool --wxImageHistogram::FindFirstUnusedColour(unsigned char *r, -- unsigned char *g, -- unsigned char *b, -- unsigned char r2, -- unsigned char g2, -- unsigned char b2) const --{ -- unsigned long key = MakeKey(r2, g2, b2); -- -- while ( find(key) != end() ) -- { -- // color already used -- r2++; -- if ( r2 >= 255 ) -- { -- r2 = 0; -- g2++; -- if ( g2 >= 255 ) -- { -- g2 = 0; -- b2++; -- if ( b2 >= 255 ) -- { -- wxLogError(_("No unused colour in image.") ); -- return false; -- } -- } -- } -- -- key = MakeKey(r2, g2, b2); -- } -- -- if ( r ) -- *r = r2; -- if ( g ) -- *g = g2; -- if ( b ) -- *b = b2; -- -- return true; --} -- - bool - wxImage::FindFirstUnusedColour(unsigned char *r, - unsigned char *g, diff --git a/ports/wxwidgets/portfile.cmake b/ports/wxwidgets/portfile.cmake index 8869d2af0d..331747bc06 100644 --- a/ports/wxwidgets/portfile.cmake +++ b/ports/wxwidgets/portfile.cmake @@ -3,12 +3,11 @@ vcpkg_fail_port_install(ON_TARGET "uwp") vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO wxWidgets/wxWidgets - REF v3.1.4 - SHA512 108e35220de10afbfc58762498ada9ece0b3166f56a6d11e11836d51bfbaed1de3033c32ed4109992da901fecddcf84ce8a1ba47303f728c159c638dac77d148 + REF 9c0a8be1dc32063d91ed1901fd5fcd54f4f955a1 #v3.1.5 + SHA512 33817f766b36d24e5e6f4eb7666f2e4c1ec305063cb26190001e0fc82ce73decc18697e8005da990a1c99dc1ccdac9b45bb2bbe5ba73e6e2aa860c768583314c HEAD_REF master PATCHES disable-platform-lib-dir.patch - fix-stl-build-vs2019-16.6.patch ) set(OPTIONS) diff --git a/ports/wxwidgets/vcpkg.json b/ports/wxwidgets/vcpkg.json index f419affbd0..994b49e922 100644 --- a/ports/wxwidgets/vcpkg.json +++ b/ports/wxwidgets/vcpkg.json @@ -1,7 +1,6 @@ { "name": "wxwidgets", - "version-semver": "3.1.4", - "port-version": 8, + "version-semver": "3.1.5", "description": "a widget toolkit and tools library for creating graphical user interfaces (GUIs) for cross-platform applications.", "homepage": "https://github.com/wxWidgets/wxWidgets", "supports": "!uwp", diff --git a/versions/baseline.json b/versions/baseline.json index e1e87d0b17..75e4049447 100644 --- a/versions/baseline.json +++ b/versions/baseline.json @@ -6497,8 +6497,8 @@ "port-version": 1 }, "wxwidgets": { - "baseline": "3.1.4", - "port-version": 8 + "baseline": "3.1.5", + "port-version": 0 }, "x-plane": { "baseline": "3.0.3", diff --git a/versions/w-/wxwidgets.json b/versions/w-/wxwidgets.json index 93b4d8d604..78a9dd378f 100644 --- a/versions/w-/wxwidgets.json +++ b/versions/w-/wxwidgets.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "09e00eb06f1870d88caadf9e5e23719b197deda4", + "version-semver": "3.1.5", + "port-version": 0 + }, { "git-tree": "8fc2d91de4a0a86698c67e6bb662c14cbfd29732", "version-semver": "3.1.4",