dogecoin / dogecoin

very currency
MIT License
14.4k stars 2.8k forks source link

[wip] depends: bump qt to 5.9.8 #3491

Closed xanimo closed 1 month ago

xanimo commented 1 month ago

-opening as draft while i work through this

(sidenote: extensively tested #3466 on x86_64-pc-linux-gnu ubuntu jammy)

xanimo commented 1 month ago

(i also know the goal is to support < 5.12 / 6, so disregard the change to 5.9.8, there will be more commits added in the coming days...)

xanimo commented 1 month ago

my mistake will adjust accordingly, i just stumbled upon #3474.

SoraKohaku commented 1 month ago

QT 6 not support yet? hope so....some compability on Debian higher than old.

patricklodder commented 1 month ago

Are you sure this is a good way to do it? Last couple of times - most recent: symbol check logic - this was proven to not be a great route for getting actual results. Perhaps better to just ignore 7 years of intermediate Bitcoin stuff and just make Qt6 work?

xanimo commented 1 month ago

Probably not. I'll try to put something together for Qt6.

patricklodder commented 1 month ago

The easiest way is to just get it to work without depends first. As in just allow it to be selected with autoconf and compile by inserting conditionals into our Qt code.

That allows everyone to get experience with it before trying to influence the build. Note that we're on a release clock constantly now, so large breaking changes like this that will impact release binaries can easily be delayed and take a million rebases. The larger the change set, the more painful it becomes. And it already was painful.

Per my note to Shafil - I've been assessing what's needed to just do a local compile without depends.

The Qt implementation in 1.14 - and with that 1.15 - has diverged a lot from Bitcoin. There's no point, imho, of looking at Bitcoin Core, unless we're looking to solve an issue in the final step of making the code compile with Qt6 that may already have been solved there, if any.

xanimo commented 1 month ago

Duly noted. Definitely don't want to introduce a large change set so will take a look more at what you've already actually done before I try messing with this.

patricklodder commented 1 month ago

What I can do is open a draft PR here once I have the macros done but compilation with Qt6 still fails (while CI succeeds.) And then that would be open to collaboration. Until then it's hard to collaborate, because it's all very sequential and blocking work.

xanimo commented 1 month ago

Absolutely. I'll wait until then before attempting to collaborate on Qt stuff but still going to explore what you've already done. I'm at a loss as to how I missed #3474 but it's neither here nor there. Excited to see someone finally do the work to ditch openssl though :+1:

Closing this per the discussion above.

patricklodder commented 1 month ago

Excited to see someone finally do the work to ditch openssl though 👍

Still needs more work after that one though, this only touches the Qt side. I think (but I've just glanced at the diffs) that the remainder actually can get backported from Bitcoin Core cleanly and safely...