From fe458bc0e3658e23a0fc15faf431639568211332 Mon Sep 17 00:00:00 2001 From: Pierre Rossi <pierre.rossi@digia.com> Date: Tue, 14 Jan 2014 13:11:44 +0100 Subject: [PATCH] README fixes Separate the build instructions from getting the source. Also update some of the contents that were outdated. Change-Id: Ib0e02b69f616c0cd377a5f74df682542c21e49cc Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com> --- README.md | 58 ++++++++++++++++++++++++++++--------------------------- 1 file changed, 30 insertions(+), 28 deletions(-) diff --git a/README.md b/README.md index 275a550de..dc0ac84de 100644 --- a/README.md +++ b/README.md @@ -1,57 +1,59 @@ # QtWebEngine - Combining the power of Chromium and Qt # -To be able to build QtWebEngine you need Qt5 or newer. +To be able to build QtWebEngine you need Qt 5.2 or newer. -## Build Instructions## -### (1) Clone the QtWebEngine repository ### +## I. Getting the Code ## + +### 1) Clone the QtWebEngine repository ### git clone git://gitorious.org/qt-labs/qtwebengine.git -### (2) Initialize the repository ### +### 2) Initialize the repository ### + +This will fetch a snapshot of chromium sources we rely on. -This will clone a submodule called 3rdparty that contains a snapshot of chromium sources. -In case that any patches are necessary on top of the regular chromium sources, -they will already be included in this snapshot. + ./init-repository.py - git submodule init && git submodule update --recursive +## II. Build Instructions## -### (3) Generate the ninja build files by running qmake. ### +### 1) Generate the ninja build files by running qmake. ### -Use qmake -r to forcefully re-gyp (without relying on make to determine if it's necessary). +It's a also possible to use qmake -r to forcefully re-gyp (without relying on make to determine if it's necessary). qmake -### (4) build with make ;) ### +### 2) build with make ### -Release or debug builds can be obtained by running 'make release' or 'make debug' in the -top level directory (only lib and process for now, and not so smart with dependencies) +Everything should be set up properly now. make -## Additional tips and tricks ## - -### Complete Upstream Chromium Checkout ### -If you want to have a complete chromium checkout with the complete history instead of the snapshot, -then do not run step (2). Instead just run the init-repository.py script. - -This will then create a complete ninja and chromium checkout in the subdirectory 3rdparty_upstream. -qmake will automatically pickup the location and make use of the sources in the subsequent step (3) and (4). +### 3) [optional] make install ### +This step is required for installing l10n files and other resources (such as the resources for the remote inspector). - ./init-repository.py + make install -### Use shared libraries instead of static ones ### -Linking all the static libraries can be a slow and painful process when developing (especially with debug builds). -Use of shared libraries can be enforced by setting the GYP_DEFINES environment variable, like so: +## Additional tips and tricks ## +### Complete Upstream Chromium Checkout ### +If you want to have a complete chromium checkout with the complete history instead of the snapshot, +then you can run the init-repository script with the -u option. - export GYP_DEFINES=component=shared_library +This will then create a complete ninja and chromium checkout in the subdirectory src/3rdparty\_upstream. +qmake will automatically pickup the location and make use of the sources in the subsequent steps II.1) and II.2). - Or by using the ~/.gyp/include.gypi mechanism. + ./init-repository.py -u ### Use external Chromium sources ### If you want to use external chromium sources instead of the submodule provided in the QtWebEngine repository, -you can export the CHROMIUM_SRC_DIR variable pointint to your source directory. +you can export the CHROMIUM\_SRC\_DIR variable point it to your source directory. + +### Debug vs. Release builds ### + +By default, the configuration used for building Qt is followed. +It is possible to override this by passing CONFIG+=release or debug at qmake time. e.g: + qmake -r CONFIG+=debug -- GitLab