Changes between Initial Version and Version 1 of QtWebKitRelease20Deployment

Mar 9, 2010 7:46:06 AM (12 years ago)



  • QtWebKitRelease20Deployment

    v1 v1  
     1= Work items for the deployment of !QtWebKit 2.x as a package separate from Qt =
     2== Requirements ==
     3 * The distribution of the release should be available in both source and binaries
     4 * A Qt user should be able to use the 2.x release as a replacement of the one shiped with their Qt SDK (at least for 4.6 and 4.7)
     5   * Components in Qt itself should use the new !QtWebKit (e.g. declarative and assistant)
     6 * It should be transparent to use the 2.x release with an application using the {{{QT += webkit}}} directive in their .pro file
     7 * Binary packages should probably be installed on Windows using an installation program
     9== Deployment mechanism ==
     10There is two way of replacing !QtWebKit in a Qt SDK (until Qt discouple itself completely from !QtWebKit):
     11 * Replace the !QtWebKit sources:
     12   * Replace the content of {{{src/3rdparty/webkit}}} with the source package of !QtWebKit 2.0
     13   * (re-)configure and (re-)compile Qt
     14 * Replace the !QtWebKit binaries:
     15   * Compile/download binaries of Qt
     16   * Compile/download binaries of !QtWebKit 2.x
     17   * Install the binaries, headers and .prl of !QtWebKit 2.x over the ones in the Qt installation directory
     19== Limitations ==
     20=== Limitation of the sources replacement mechanism ===
     21 * This might cause problems for people using Git. These people should be able to compile and install their own binaries anyway.
     22=== Limitation of the binary replacement mechanism ===
     23 * Recompiling or uninstalling Qt might present problems
     24   * Reinstalling or recompiling Qt might leave extra headers from !QtWebKit 2.x in the include/QtWebKit directory
     25   * Uninstalling might leave files and might cause problems especially if !QtWebKit is also installed using a NSInstall application
     26 * Because of the reasons above it will be tedious for the user to revert to the version of !QtWebKit that was shipped with Qt.
     28== Possible issues and questions to answer ==
     29 * What will be the supported mechanism to deploy !QtWebKit 2.0, source replacement? binary replacement? both?
     30 * Should !QtWebKit 2.0 be installed using an installation application on Windows? Qt itself don't have one, the Qt SDK has one, and !QtWebKit will still be shipped with the SDK in the future. So how do we want to support the installation of this module '''until''' we have an official module installation mechanism?
     31 * Qt 4.7 now includes Qml which links against !QtWebKit. We should think about how we will discouple it from !QtWebKit in future versions[[BR]]Compared to assistant which we wanted to distribute with Qt SDK but should still be easy to get out of the Qt repository once !QtWebKit gets out.
     32 * Any possible issues regarding linux distributions packaging? There will be common file paths between Qt and !QtWebKit 2.x.
     33 * How about freezing the API around a Qt SDK but allowind update of the !QtWebKit runtime? This would make the installation/upgrade/uninstallation easier.[[BR]]Then we would just need to update the dynamic libraries and to get the latest API we could provide a less official mechanism than {{{QT += webkit}}}[[BR]]Example including a .pri file in your application that would do something like:
     35QT -= webkit
     36INCLUDES += $$PWD/include/QtWebKit
     37LIBS += -L$$PWD/lib
     38LIBS += -lqtwebkit