Adding Qt6 support#3711
Adding Qt6 support#3711sandman7920 merged 52 commits intosqlitebrowser:masterfrom sandman7920:qt6_port
Conversation
A more robust method for finding OpenSSL runtime libraries, now we search with version patterns **MAJOR**, **MAJOR_MINOR**, and **-x64**. This should help with Qt6 requirements for OpenSSL-3.
|
@sandman7920 Uh oh, it looks like you merged without squashing the (many) commits into a single one. Are you up for fixing the commit history on Note that you're not the first person to do that before, I think we've all done it at one time or another. 😇 |
|
@justinclift Sorry, can we do something? |
|
Yeah, it'll need to be fixed manually in the i.e. do a manual squash of the commits and push the fixed history Are you ok to do that? If you're a bit unsure, just let me know and I'll get it done. 😄 |
|
@justinclift Better you do it, my git/github skills are mediocre at best. |
|
No worries, I'll get it done. As as general guide, these are the steps I'll be taking in my local repo: Make sure my repo is clean and doesn't have leftover stuff from other thingsEnsure I have the latest sourceFind the last git commit that we want to rewind everything toSo, Rewind to that commitThe repository should now be at the last commit before the merge, but still have all of your PR changes applied to it. and: At this point, I'll use Does that make sense? 😄 |
|
Hmm, actually that might not be the right commit to wind back to. I think that would get some earlier ones as well. Doing some more investigation... |
|
Ahhh. Nah, that's the right commit it just has @lucydodo's one to update the On it now. 😄 |
|
Ok, done. At least, I think I got it right. Lets see if the CI passes, just in case I missed something somehow. 😉 |
|
Hmm, CI is failing so it looks like I missed something. Any ideas what I missed, as I'm not seeing anything obvious? |
|
After the merge, I pushed build/signing code to the master branch. |
|
I will pull and check the diff |
|
Hmmm, maybe do your pull and check in a separate branch, just to keep a full copy of the repo (before my attempted fix) around somewhere in case we need it? |
Ugh, I totally forgot about that. So those commits became part of the merged "Adding Qt6 support" squashed patch. |
|
With the CI errors happening at the moment, the errors are saying: I have those files on my system though: |
|
Yes, *.cmake is added to the ignore list by default (maybe not to be added by mistake?) and I have added them whit -f |
|
Should I push them back? |
|
Ahhh. Nah, I'll add them back to the source tree as part of the squashed commit. 1 sec... |
|
k, just force pushed an updated, squashed |
|
k, CI is passing with the new, squashed Oh, and your follow up signing commits... well, lets just leave them merged into this one for simplicity. 😁 |
|
Everything seems fine. |
|
Ahhh. @lucydodo might have some ideas about that then. 😄 |
|
It might just be a matter of us needing to include some additional .dll files in the .xml definition used to build the package. |
|
Yes, it is but in the future, it will be better for This also will make Qt5/Qt6 setup much easier. |
|
And there is some live patching done during GitHub actions |
|
@sandman7920 May I ask where the |
|
It should be in QT_DIR / "plugins/iconengines/qsvgicon.dll" |
|
Thanks for letting me know, I've changed the code to include that plugin and are testing it now. |
|
Resolved via 2c50024, @sandman7920 Thank you for your advice and assistance. |
This PR adds support for Qt6 and a new CMake configuration.
Both Qt 5 and 6 are supported.
The lowest-tested Qt5 version is 5.12.2 on Windows.
Qt5 is enabled by default, to build with Qt6 run cmake with -DQT_MAJOR=Qt6
Windows deployment is more automated:
This will build and deploy the project with all dependencies.
Currently, Qt6 depends on Qt6::Core5Compat, in the future, this should be dropped.