There are a few issues with QtWebProcess right now: (1) It has to be in the PATH (2) However it should be in libexec (3) The file name should be versioned. We should implement something like Shane's proposal from http://lists.qt-project.org/pipermail/development/2012-October/007423.html
Zeno fixed the first part in http://trac.webkit.org/changeset/134161 by falling back to QLibraryInfo's BinariesPath. As discussed with Ossi, the next step is the introduction of libexec in Qt and then we can move QtWebProcess there.
After https://codereview.qt-project.org/#change,38225 landed in qtbase, libexecdir is now available :)
Created attachment 176498 [details] Patch
Comment on attachment 176498 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=176498&action=review > Source/WebKit2/Shared/qt/ProcessExecutablePathQt.cpp:51 > +#if USE(LIBEXECDIR) > + expectedPath = QLibraryInfo::location(QLibraryInfo::LibraryExecutablesPath) + QDir::separator() + baseName; > + if (QFile::exists(expectedPath)) > + return String(expectedPath); > +#endif > + > expectedPath = QLibraryInfo::location(QLibraryInfo::BinariesPath) + QDir::separator() + baseName; > if (QFile::exists(expectedPath)) > return String(expectedPath); This could be an #else ... #endif here. Feel free to change before landing :)
Comment on attachment 176498 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=176498&action=review >> Source/WebKit2/Shared/qt/ProcessExecutablePathQt.cpp:51 >> return String(expectedPath); > > This could be an #else ... #endif here. Feel free to change before landing :) Alternatively you could introduce a QLibraryInfo::LibraryLocation variable to pass to ::location() and set it according to the #ifdef. That might be cleaner/shorter.
Landed manually with suggested change for swift integration into qt5.git Committed r136116: <http://trac.webkit.org/changeset/136116>
Comment on attachment 176498 [details] Patch Thanks, Simon.