On segunda-feira, 12 de março de 2012 09.31.11, Jørgen Lind wrote: > > This will be hard to do with qmake, so the easier way out is to remove the > > .a altogether and use .pri files only. That requires moving the Wayland > > platform plugin back into qtbase. > > Pretty please with sugar on top, do NOT do this. I understand that you > only see the "Wayland" side of things, But there are loads of people > interested in not having their plugin in the Qt source code. Using the > pri approach is STUPID! The hacks you will force upon people is just > not nice! We have been there, and we don't want to go back. Lets just > keep/"add again" the -l flags, and let configure figure out if their going > to be included or not. > > Building platform plugins outside the Qt source tree IS a usecase we'r > going to support. Not only because of QtWayland but because there might > be someone developing ie. an ios plugin that they don't want to have inside > QtBase. People might have special HW that where they just write a plugin > to do special ioctl to controll the display. We don't want all plugins to > be in QtBase but more importantly we can expect all plugins to be in > QtBase.
Building plugins outside of QtBase will continue to be permitted, provided they don't use QtPlatformSupport. That library is just convenience for us. There is absolutely no public API there. If there are things needed by many plugins, we should consider making proper, public API instead. Anyway, either way this library will be gone. The most likely solution is that we will break it up into many smaller .a libraries. Adding -l flags does not work because of the way qmake works. When you write: QT += platformsupport-private LIBS += -lfoo or when you write: LIBS += -lfoo QT += platformsupport-private This will always add to the command line: -lfoo -lQtPlatformSupport which is the wrong order. It needs to be the other way around. Writing: LIBS += -lQtPlatformSupport -lfoo QT += platformsupport-private produces: -lQtPlatformSupport -lfoo -lQtPlatformSupport which is even worse: not only does it not solve anything, it's wrong by not adding the proper library infix, version or debug status. As far as I can see, there's no way to do that with standard qmake options. We'd need to remove the library from "QT", which means we lose the -I (include) options too. And before anyone suggests "fixing the bug" note where the bug is: it is NOT a bug in qmake. The bug is that QtPlatformSupport fails to declare the libraries that it requires, so qmake cannot add them properly. -- Thiago Macieira - thiago.macieira (AT) intel.com Software Architect - Intel Open Source Technology Center Intel Sweden AB - Registration Number: 556189-6027 Knarrarnäsgatan 15, 164 40 Kista, Stockholm, Sweden
signature.asc
Description: This is a digitally signed message part.
_______________________________________________ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development