This PR:
- uses Qt top-level build facilities without the need to download all-in-one archive
- is based on BlockMechanic’s idea, and is an alternative to #20600
- makes it easy to integrate new modules into static builds
- has the minimal diff
- makes the qt package build process streamlined by dropping some patches and hacks (an alternative to #21420 and #20642)
Fixes #18536 (a non-intrusive alternative to #21589 and #19785).
Fixes #14648.
Fixes #21588 (a non-intrusive alternative to #21591).
Required for adding Wayland support on Linux.
Note for reviewers: With 9046de8a4cbc3899fed9eae084115f423e7ac5bd from #21995 it is easy to verify that there are no changes in the resulted qt
package archive on the per commit basis. For example, for HOST=i686-pc-linux-gnu
no commit in this PR introduces any changes.