path: root/src/v8/
Commit message (Collapse)AuthorAgeFilesLines
* Remove QtV8 library from QtBaseSimon Hausmann2012-01-091-41/+0
| | | | | | | | | | The QtV8 library is going to live in the qtjsbackend module. Change-Id: I72251316163829411dda998b9503ce6f75b3606a Reviewed-by: Oswald Buddenhagen <> Reviewed-by: Aaron Kennedy <> Reviewed-by: Kent Hansen <> Reviewed-by: Rohan McGovern <>
* Make v8 snapshots work in debug-and-release modeKent Hansen2011-11-241-1/+1
| | | | | | | | | | | | | Debug snapshots and release snapshots aren't compatible. Both a debug version and release version of the mkv8snapshot tool must be built, and the corresponding executable selected when building v8. Adopt the library naming convention for naming the mkv8snapshot executable ("mkv8snapshot" in release, "mkv8snapshot_debug" in debug on Mac, "mkv8snapshotd" in debug on Windows). Change-Id: I7a94b09e7db7ed8bbaa293637c092a1d1d1dbaba Reviewed-by: Oswald Buddenhagen <>
* Add V8 snapshot supportKent Hansen2011-11-221-0/+16
| | | | | | | | | | | | | | | | | | | | | | | | | A V8 snapshot is a serialized representation of the JavaScript heap. Using a snapshot can vastly speed up V8 initialization. This commit introduces a new tool, mkv8snapshot. mkv8snapshot is automatically invoked as part of building QtV8, and generates a .cpp file which is compiled into the QtV8 library. Because mkv8snapshot itself needs to initialize the V8 environment the non-snapshot way (i.e., by evaluating thousands of lines of JavaScript), it needs to build all of V8. This means that V8 is effectively built twice when snapshots are enabled. When cross-compiling, only host=i386 and target=arm is supported, since that's the only relevant case for which V8 currently supports a simulator. mkv8snapshot is built and run as a host tool (using the simulator), and generates a snapshot that will be used on the target. Task-number: QTBUG-21152 Change-Id: I9270652f129505508f78db8b0a39fbf57dc8b86d Reviewed-by: Friedemann Kleint <> Reviewed-by: Lars Knoll <>
* Disable warnings while building QtV8Bradley T. Hughes2011-11-021-0/+1
| | | | | | | | | | | This is a 3rd-party submodule that we do not directly modify. Warnings from this code is of no value to people diagnosing and fixing warnings in Qt code itself. Change-Id: If17d9ce6509abb7d7aa1f00daf7e771fc6231993 Reviewed-by: Thiago Macieira <> Reviewed-by: Jędrzej Nowacki <> Reviewed-by: Aaron Kennedy <>
* Add QtV8 library to QtBaseKent Hansen2011-08-291-0/+24
This adds Aaron's copy of V8 to src/3rdparty/v8 (as a git submodule), and builds it as a "normal" Qt library (without any dependencies on Qt itself). The library can be added to a project with QT += v8-private V8 API headers are available as private includes, e.g. #include <private/v8.h> The API is private because we're exposing a third-party API directly, and we don't want to (and cannot) make source or binary compatibility guarantees for it. Since we want the V8 public API headers to be private headers in Qt, syncqt and sync.profile were extended to understand a new configuration option, the @allmoduleheadersprivate array, that tells syncqt whether all the library headers should be treated as private even though they don't follow the _p.h Qt convention. The V8 project files, patches and autotests are copied from the QtDeclarative repository. The next step after this commit is to remove QtDeclarative's copy of V8 and link with QtV8 instead. Task-number: QTBUG-20963 Change-Id: Ib8820362cdbc8fa662a5e97db841656cf38d1b62 Reviewed-on: Reviewed-by: Kent Hansen <> Reviewed-by: Lars Knoll <>