Upcoming Qt switch to OpenGL ES on arm64
Dmitry Shachnev
mitya57 at debian.org
Wed Nov 28 13:40:30 GMT 2018
Hi Steve and all,
On Tue, Nov 27, 2018 at 03:39:58PM -0800, Steve Langasek wrote:
> It is actually fairly easy to answer this question as well: simply identify
> all the packages in the archive that depend on one of the known dual-stack
> libraries, prepare dual stack packages that use the symbols file magic from
> Ubuntu, rebuild all the reverse-dependencies, and identify all those
> packages which are libraries and which end up with a dependency only on the
> GL version of the package instead of a dependency on GL | GLES.
>
> A fair amount of compile time required to do this analysis, but relatively
> little human time.
Let me explain what the mentioned “symbols file magic” is:
debian/libqt5gui5.symbols header has these lines:
libQt5Gui.so.5 libqt5gui5 #MINVER# | libqt5gui5-gles #MINVER#
| libqt5gui5 #MINVER# | libqt5gui5-gles #MINVER#, qtbase-abi-5-7-1
| libqt5gui5 #MINVER#
| libqt5gui5-gles #MINVER#
So symbols that exist in both desktop OpenGL and GL ES builds get a dependency
on libqt5gui5 | libqt5gui5-gles, and maybe on a -abi- virtual package if they
are private.
And symbols that exist in only one of flavours are getting the dependency
only on the particular binary package name, e.g.:
(optional)_ZN25QOpenGLFunctions_3_2_Core14versionProfileEv at Qt_5 5.2.0 2
→ gets a dependency on libqt5gui5 only
(optional|arch=!armhf !arm64 !armel)_ZN20QOpenGLFunctions_ES214versionProfileEv at Qt_5 5.2.0 3
→ gets a dependency on libqt5gui5-gles only
Most of these symbols are for QOpenGLFunctions* classes.
I will try to get an estimate of how many package are using them a bit later.
Also there are packages that build different things depending on OpenGL
variant, by using qtConfig(opengles2) in their .pro files or by checking
QT_OPENGL_ES macro in their C++ files. These will probably also need
dual stack packages.
--
Dmitry Shachnev
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://alioth-lists.debian.net/pipermail/pkg-kde-talk/attachments/20181128/26dc04b5/attachment.sig>
More information about the pkg-kde-talk
mailing list