[Development] qtsystems doesn't compile - mtcore mandatory dependency
Thiago Macieira
thiago at kde.org
Tue Nov 1 15:44:33 CET 2011
On Tuesday, 1 de November de 2011 15:06:57 Robin Burchell wrote:
> !contains(QT_CONFIG, jsondb): {
> PRIVATE_HEADERS += qscreensaver_linux_p.h
> SOURCES += qscreensaver_linux.cpp
>
> DEFINES += QT_NO_JSONDB
> } else {
> PRIVATE_HEADERS += qjsondbwrapper_p.h \
> qscreensaver_jsondb_p.h
>
> SOURCES += qjsondbwrapper.cpp \
> qscreensaver_jsondb.cpp
>
> QT += jsondb
> PKGCONFIG += mtcore
> LIBS += -L$$[QT_INSTALL_PREFIX]/opt/mt/lib -lmtcore
> -Wl,-rpath,$$[QT_INSTALL_PREFIX]/opt/mt/lib
> }
>
> Whoever maintains this, you should probably change that contains()
> conditional to also check packagesExist(mtcore). For an example, see:
I'm not sure that's the proper solution.
Look at the files it's turning off because jsondb was found: the screensaver
files. I have no clue what a database has to do with screensavers, but I doubt
my KDE will react to it, so the proper solution is to fix
qscreensaver_linux.cpp.
And now I've looked at qscreensaver_linux.cpp. First of all, it should be
called qscreensaver_x11.cpp, since it's an X11 implementation. Second, in
Qt 5, there's no more Q_WS_X11, so this code will never work. It needs to be
replaced with a QPA equivalent, getting the name of the QPA plugin loaded at
runtime (like we discussed) and do the proper thing.
At minimum, this file needs to be qscreensaver_unix.cpp and deal with X11/XCB
and Wayland, plus the Mac and Windows implementations. Also note a Mac
implementation (a reference platform) is missing.
I have no clue what the jsondb implementation is for, but it looks extremely
non-standard to me. If anyone wants it, they should set a flag when compiling
qtsystems. The default should be to use the QPA solutions.
It seems to me we have two tasks here. The first is a P0, to fix the build. The
second is a P1, to implement the functionality for the reference platforms.
I'll create those tasks tomorrow.
--
Thiago Macieira - thiago (AT) macieira.info - thiago (AT) kde.org
Software Architect - Intel Open Source Technology Center
PGP/GPG: 0x6EF45358; fingerprint:
E067 918B B660 DBD1 105C 966C 33F5 F005 6EF4 5358
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 190 bytes
Desc: This is a digitally signed message part.
URL: <http://lists.qt-project.org/pipermail/development/attachments/20111101/7fe6f88b/attachment.sig>
More information about the Development
mailing list