-
Notifications
You must be signed in to change notification settings - Fork 269
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Upgrade wxWidgets to 3.2.1 #249
Conversation
This is a necessary, but not sufficient, step towards that. I'm seeing some weird things in the diff here - the project files is clearly changed in much more significant ways than updating wx, and I'm pretty sure is broken as the result. I also don't understand some of the changes in setup.h - do you remember why you had to enabled some extra features? Generally the fewer are enabled, the better, as it results in smaller binaries. |
Is this related to the other changes, i.e. was vs2017 support previously working? |
Why? CI passes for vs2017 and vs2019, and my local vs2022 also works. The diff of project files is largely due to using the latest version of bakefile (Why use the latest? Because it claims to support vs2022). If you regenerate project files on my branch, you will notice a even bigger diff, which really makes the build fail, and I reverted them.
I understand the setup.h was a customized version of the setup.h in wxWidgets 3.1.1rc. So at first I compared the difference of them, copy the setup.h from wxWidgets 3.2.1, and apply the difference. It fails to compile, so I did the minimal edit to make it compile.
I'm pretty sure it's the latest bakefile that changes <WindowsTargetPlatformVersion Condition="$(VisualStudioVersion)>=16">10.0</WindowsTargetPlatformVersion> to <WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion> which make CI of my first commit fail, so I have to revert it. I don't want to modify generated file but I have to. |
@@ -44,7 +44,7 @@ | |||
// in the version after it completely. | |||
// | |||
// Recommended setting: 0 (please update your code) | |||
#define WXWIN_COMPATIBILITY_3_0 0 | |||
#define WXWIN_COMPATIBILITY_3_0 1 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Need this one because these 3 functions are deprecated
Lines 116 to 118 in 7ca9b99
icon.SetHICON(static_cast<WXHICON>(hIcon)); | |
icon.SetWidth(size); | |
icon.SetHeight(size); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Turned out to be straightforward, fortunately: 81e5fe3
I agree. Some default options that are imported due to upgrading setup.h may not be necessary, and I'll check them. |
@@ -271,7 +268,7 @@ | |||
// Default is 1 | |||
// | |||
// Recommended setting: 1 as setting it to 0 disables many other things | |||
#define wxUSE_STREAMS 0 | |||
#define wxUSE_STREAMS 1 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Rquired by src\common\dobjcmn.cpp
@@ -456,7 +441,7 @@ | |||
// Recommended setting: 1 (wxFile is highly recommended as it is required by | |||
// i18n code, wxFileConfig and others) | |||
#define wxUSE_FILE 1 | |||
#define wxUSE_FFILE 0 | |||
#define wxUSE_FFILE 1 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Required by src\common\image.cpp
@@ -910,12 +961,20 @@ | |||
#define wxUSE_STATLINE 0 // wxStaticLine | |||
#define wxUSE_STATTEXT 1 // wxStaticText | |||
#define wxUSE_STATBMP 1 // wxStaticBitmap | |||
#define wxUSE_TEXTCTRL 0 // wxTextCtrl | |||
#define wxUSE_TEXTCTRL 1 // wxTextCtrl |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Required by src\common\event.cpp
@vslavik Anything I should address here? |
Well, the extra noise in project files (yes, they need to be manually updated), but it's OK, I'll do it myself when merging. |
This reverts some parts of commit dad526f.
Thanks a lot; this is now merged with an extra project cleanup commit (to keep manual changes to bakefile-generated projects) and a small fix to remove the need for |
@vslavik Could you please release a new version? |
This is now in 0.8.0: https://github.com/vslavik/winsparkle/releases/tag/v0.8.0 |
Motivation: support building winsparkle on win arm64.
Rough steps I took: