aboutsummaryrefslogtreecommitdiffstats
path: root/tools
Commit message (Collapse)AuthorAgeFilesLines
* Fix WinCE build.v5.2.0-alpha1Sérgio Martins2013-09-251-1/+1
| | | | | Change-Id: Ie0536ad94f88efe1e54226ed7f1d9e1042ffcc19 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* qmlimportscanner: Print usage when no arguments are passed.Friedemann Kleint2013-09-251-1/+1
| | | | | Change-Id: I2ba5e18fff635705b1f5e8e19c104ba078c8e3a1 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* qml: handle all possible QtMsgType in switch because of -WerrorShawn Rutledge2013-09-251-0/+1
| | | | | | | | | | | Perhaps this illustrates why having -Werror is more of an annoyance than whatever it was supposed to help: https://codereview.qt-project.org/#change,65253 cannot be merged until the new enum value that it adds is handled _everywhere_ that it can be. Change-Id: I2bba730b471683487e38693c9ace2d09be4c874d Reviewed-by: hjk <hjk121@nokiamail.com>
* Add qmlimportscanner.Morten Johan Sørvig2013-09-233-0/+339
| | | | | | | | | | | | qmlimportscanner scans for import statements in qml files and returns a JSON-formatted list of imports. This is done recursively in order to get all dependencies. Usage: "qmlimportscanner path/to/app/qml/" -importPath path/to/qtbase/qml Change-Id: I0e99caaf4216058c52a4706f7fdbeaf1eba0bbc1 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* Prevent objects from being collected while in their constructorLars Knoll2013-09-221-4/+2
| | | | | | | | | | | | | While objects are being constructed, we don't have a reference to them on the JS stack yet. So the constructor needs to protect itself against being collected by putting the this object onto the JS stack. Added an environment switch MM_EXACT_GC to test exact garbage collection. Change-Id: Ie37665a954de800359c272ffbebbe1488e7a8ace Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com> Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* convert Managed::put() API to be GC safeLars Knoll2013-09-221-5/+5
| | | | | Change-Id: I09198ce372fa545372db389fac26828d21ad5731 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* Use a StringRef for Managed::get()Lars Knoll2013-09-221-1/+3
| | | | | | | | | also store "toString" and "valueOf" as identifiers in the engine and fix two places where we compared strings the wrong way. Change-Id: I70612221e72d43ed0e3c496e4209681bf254cded Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* Fix build logic for host_build tools.Morten Johan Sørvig2013-09-211-1/+9
| | | | | | | | Link against bootstrap-private instead QtCore when cross-compiling. Change-Id: I7aeb9d693b0dd041aea72b6b3dcb8614a9a92b89 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* Merge branch 'dev' of ssh://codereview.qt-project.org/qt/qtdeclarative into HEADSimon Hausmann2013-09-2013-75/+934
|\ | | | | | | | | | | | | | | | | | | Conflicts: src/qml/compiler/qv4isel_masm.cpp src/qml/jsruntime/qv4script.cpp src/qml/qml/qml.pri src/qml/qml/qqmltypeloader_p.h Change-Id: Ia784d855a2131e3289454f12d841ca2c65be15c1
| * qmlplugindump: adding verbose output for the instantiation operationsFawzi Mohamed2013-09-191-2/+18
| | | | | | | | | | Change-Id: Ic18d85de92f05c01b6ce00b071ef9b94d878434f Reviewed-by: Caroline Chao <caroline.chao@digia.com>
| * qmlplugindump: Update the description for the generated fileCaroline Chao2013-09-181-2/+3
| | | | | | | | | | | | | | | | | | | | The full command was written in the generated file including the full path to the qmlplugindump tool. Now only the tool name without its full path will be printed with the adjacent arguments. Change-Id: I03aa7350d1cd6b96ce00341796f8944669989793 Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
| * qmlplugindump: Add --defaultplatform argumentCaroline Chao2013-09-181-2/+15
| | | | | | | | | | | | | | | | | | | | QT_QPA_PLATFORM is set to minimal by default unless --defaultplatform is set when running the qmlplugindump tool. This is for example useful for the QtQuick.Dialogs module. Change-Id: I1194526ee0641d11802c4db20bd3043aebd1e261 Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
| * qmlplugindump: QMetaMethod signals have public accessCaroline Chao2013-09-181-1/+1
| | | | | | | | | | | | | | | | | | Since 56bbf3c2d5b31142e5a1b872a0118479edcf874b (qtbase) So public signals must be dumped. Change-Id: Ic7047660fbac40f78c7a205e760c059256c71d6f Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
| * Convert more methods to use ReturnedValueLars Knoll2013-09-181-5/+8
| | | | | | | | | | | | | | Change Exception.value() and a few other places. Change-Id: I53ce17e5656e260138b1ac7f6d467e4636c0a0b9 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
| * Use ReturnedValue for Managed::get().Lars Knoll2013-09-181-1/+1
| | | | | | | | | | Change-Id: Ia8f35d227b69d32e1f6a041283abbbd083aa34ca Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
| * Use a ReturnedValue for Managed::call()Lars Knoll2013-09-181-4/+4
| | | | | | | | | | Change-Id: Ief2d75e9789dd367c603d90dc0fe5316a0d055e3 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
| * qmlplugindump: fix prototypes identification for composite typesCaroline Chao2013-09-171-11/+11
| | | | | | | | | | | | | | | | | | The prototype name for the composite type is the first "default" prototype found in the reachable types. If none is found then the default value is QObject. Change-Id: I40b4fefaab40e4c9f83d24c89bd026579be63e7b Reviewed-by: Fawzi Mohamed <fawzi.mohamed@digia.com>
| * Add qml toolAlan Alpert2013-09-179-0/+737
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This tool simply runs QML files using a QQmlApplicationEngine. It is configurable so as to behave, by default, like qmlscene in that it will automatically place non-Window QtQuick 2 Items inside a QQuickWindow with the size of the root item. The configuration is extensible so that other GUI scenes can also use it by altering the configuration files in their installation. On OS X, it is an app bundle, and handles the QFileOpenEvent so that it can be the tool with which qml files are usually launched by double-clicking. (This does not break the ability to use it on the command line too: the options still work, you just have to give the path to the executable inside the bundle.) Change-Id: I6bac813ce188be54842a78d7b532fcf2d54dc443 Reviewed-by: Alan Alpert (Personal) <416365416c@gmail.com>
| * Merge remote-tracking branch 'origin/stable' into devSergio Ahumada2013-09-131-0/+1
| |\ | | | | | | | | | Change-Id: I6fc67bf30a901f8078a5b99a9e290190b3f64b81
| | * Fix a warning about not using a set variableLaszlo Papp2013-09-051-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | 6a36bcb7945109daebd6464ee6d0a3f6724fb18b fixed similar warnings, but apparently the tools folder was left out. Change-Id: If7f889e404264688fa6208afcd3bfdba5a161714 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Alan Alpert <aalpert@blackberry.com>
| * | qmlplugindump: Add support for composite typesCaroline Chao2013-09-131-54/+139
| | | | | | | | | | | | | | | | | | | | | Task-number: QTBUG-33106 Change-Id: I80fc817eb59256e860f3fdd591104930688ef84c Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
| * | Remove qSort usages from declarativeGiuseppe D'Angelo2013-09-132-3/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | QtAlgorithms is getting deprecated, see http://www.mail-archive.com/development@qt-project.org/msg01603.html Change-Id: I8fa7d0186cc8f0ba562695974829e37f1eb87f2f Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
| * | Use a ReturnedValue when converting to String or ObjectLars Knoll2013-09-121-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Also rename Value::toQString() to Value::toQStringNoThrow(), and add a throwing toQString() method for JS use. Change-Id: I821b33fc61abb7d08839df965fd337685f61a545 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* | | Merge branch 'dev' of qtdeclarative into wip/v4Simon Hausmann2013-09-111-4/+4
|\| | | | | | | | | | | | | | | | | | | | Conflicts: src/qml/jsruntime/qv4script.cpp Change-Id: I20136cab29d86862b5bd9208003200bc24bcdacf
| * | Change signature of call/construct() to take a pointer to a CallDataLars Knoll2013-09-111-4/+4
| | | | | | | | | | | | | | | Change-Id: I5467aadba083e4b01fb0a7170946695207033680 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* | | Fix error reporting in the new object creatorSimon Hausmann2013-09-081-0/+4
|/ / | | | | | | | | | | | | | | | | | | Propagate error conditions from createVMEMetaObjectAndPropertyCache to the caller and properly clean up refcounts (using QQmlRefPointer) Also fixed qmlscene to report errors if create() failed. Change-Id: I75d984798a197c102078e5d5638ed92f167ab49f Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* | Cleanup calls to Object::setPrototype()Lars Knoll2013-09-021-2/+0
| | | | | | | | | | | | | | | | Rather use the correct internalClass directly when constructing the objects. Change-Id: I8e916f1ce8f83d291c08ca6332fe85b1f57b90b5 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* | Move prototype pointer into QV4::InternalClassLars Knoll2013-09-021-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | The prototype is actually the same for most objects. By moving it into the internal class, we can save 8 bytes per object, as well as allowing for some future optimizations. Also fix a bug in the implementation of the Error prototype objects. Change-Id: I4d4b641055f644a9b088f27be34bfdb0446279b7 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* | change calling convention for JS function callsLars Knoll2013-09-021-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | This allows faster pass through of the data if we have nested calls. Also make sure we always reserve at least QV4::Global::ReservedArgumentCount Values on the stack to avoid stack corruption. Change-Id: I42976460f1ef11a333d4adda70fba8daac66acf3 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* | Fix crashes when running tst_qqmlecmascript::importScripts with aggressive gcSimon Hausmann2013-09-021-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In the case of imported JavaScript files, it may happen that we parse the JS once and then re-use it across different places where it is imported. That means we parse and compile the JS once, keep the QV4::Script around and call it as a function closure with different qml global objects (contexts), depending on where it is imported from. In this situation it is possible that the QV4::Script's run() is called once, a new function object is created, we call it to return the JS library to "eval" itself into the qml scope and afterwards it may happen that the function object is garbage collected. It is at this point possible that the compilation unit's refcount therefore also drops to zero, and thus subsequent calls to QV4::Script::run() that create new QQmlBinding objects will access a dangling compilationUnit pointer. This patch fixes that by making QV4::Script - which is holding a QV4::Function pointer - also have a persistent, which maintainers a refcount on the compilation unit. If the script dies, the persistent will get collected and the last deref will delete the unit. A script can however outlive the engine, but PersistentValue has the mechanism built in to free itself on engine destruction, which will also deref the unit accordingly. Change-Id: I0a7f4e64497bde423ffa55c705af55cdb7d29cf2 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* | Merge branch 'wip/v4' of ssh://codereview.qt-project.org/qt/qtdeclarative ↵Simon Hausmann2013-08-201-0/+2
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into dev Conflicts: src/qml/compiler/qv4codegen.cpp src/qml/compiler/qv4codegen_p.h src/qml/compiler/qv4isel_moth.cpp src/qml/jsruntime/qv4context_p.h src/qml/jsruntime/qv4functionobject.cpp src/qml/jsruntime/qv4runtime.cpp src/qml/jsruntime/qv4runtime_p.h src/qml/jsruntime/qv4script.cpp sync.profile Change-Id: I1d785e2134bffac9553a1c16eed12816cbd1ad2c
| * | Refcount the compilation unit and remove refcount from runtime functionSimon Hausmann2013-08-161-0/+2
| | | | | | | | | | | | | | | Change-Id: Iaa2f96a6814f1b39589ffcfe3c84e3c229e25f1f Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* | | Remove QV4::DiagnosticMessageLars Knoll2013-08-201-13/+1
|/ / | | | | | | | | | | | | | | | | | | QQmlError provides the same functionality, so let's rather use that where required. Remove the dependency of codegen onto the ExecutionContext that was only required for error handling. Change-Id: Ib0b61c0e138f89ff989c32996c93c339e4b62223 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* | Remove the llvm isel backendLars Knoll2013-08-082-172/+1
| | | | | | | | | | | | | | This code never worked. Change-Id: I0fd7421ae983f3ad43e84e5d7579cdbb610ab2b2 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* | Initial support for debugging in the v4 interpreterSimon Hausmann2013-07-261-14/+0
| | | | | | | | | | | | | | | | | | This adds breakpoint support to the Debugger, a helper function in the engine for enabling debugging (which will switch from JIT to the interpreter) and a DebuggingAgent interface, for use by v4 clients. Change-Id: I78e17a6cbe7196b0dfe4ee157fc028532131caa3 Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
* | Fix FDE generation on Intel 32-bitSimon Hausmann2013-07-231-4/+7
| | | | | | | | | | | | | | | | | | | | Make the generated FDE program reflect that ESI and EDI are callee saved registers. For some reason the program we've had in qv4unwindhelper_p-dw.h for 32-bit was already correct, but the generator was broken (and even mixed up the registers). Change-Id: Id8132580d20636c8ea17f8460d161547227c95fc Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
* | Merge branch 'dev' of ssh://codereview.qt-project.org/qt/qtdeclarative into ↵Simon Hausmann2013-07-221-13/+10
|\| | | | | | | | | | | | | | | | | | | wip/v4 Conflicts: src/quick/items/context2d/qquickcontext2d.cpp tests/auto/quick/qquickvisualdatamodel/qquickvisualdatamodel.pro Change-Id: I36a4fd28b3156839aecd70039a3ba566bf19a0bc
| * qmlscene: ensure that the window & component get destructedJ-P Nurmi2013-07-041-13/+10
| | | | | | | | | | | | Task-number: QTBUG-32207 Change-Id: Ic7c45228cbdc049d3dfdb3482296d0e8c89a930c Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
| * Add --noinstantiate to qmlplugindumpAlan Alpert2013-06-131-38/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | This flag allows you to run qmlplugindump on plugins which cannot safely create objects, such as plugins with unusual requirements or missing essential dependencies. Reviewed-by: Fawzi Mohamed <fawzi.mohamed@digia.com> Reviewed-by: Kai Koehne <kai.koehne@digia.com> (cherry picked from commit 0462193b6fb97fbe7ccde496c33d82d4d5fce8c0) Change-Id: I0d1ff7f94e00a8aab94c0aff012d78db5193400f Reviewed-by: Alan Alpert <aalpert@blackberry.com>
* | Move QV4::Exception into a separate compilation unit with header fileSimon Hausmann2013-07-121-0/+1
| | | | | | | | | | | | | | | | This is in preparation for some platform specific code regarding throwing exceptions, as well as a general cleanup :) Change-Id: I23fb4f12fd09423a1f2cb225145780925002677b Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
* | Disable the JIT on Windows/AMD64 as well as on iOSSimon Hausmann2013-06-261-1/+6
| | | | | | | | | | Change-Id: I7402981caa2f73fd0712975e657488a4065f403f Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* | Merge branch 'dev' of ssh://codereview.qt-project.org/qt/qtdeclarative into ↵Simon Hausmann2013-06-246-52/+81
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | wip/v4 Conflicts: src/imports/qtquick2/plugins.qmltypes src/qml/debugger/qv8debugservice.cpp src/qml/qml/qml.pri src/qml/qml/qqmlcompiler.cpp src/qml/qml/qqmlcomponent.cpp src/qml/qml/qqmlcontext.cpp src/qml/qml/qqmldata_p.h src/qml/qml/qqmlengine_p.h src/qml/qml/qqmljavascriptexpression.cpp src/qml/qml/qqmlxmlhttprequest.cpp src/qml/qml/v4/qv4bindings.cpp src/qml/qml/v4/qv4irbuilder.cpp src/qml/qml/v4/qv4jsonobject_p.h src/qml/qml/v8/qqmlbuiltinfunctions.cpp src/qml/qml/v8/qv8bindings.cpp src/qml/qml/v8/qv8contextwrapper.cpp src/qml/qml/v8/qv8listwrapper.cpp src/qml/qml/v8/qv8qobjectwrapper.cpp src/qml/qml/v8/qv8qobjectwrapper_p.h src/qml/qml/v8/qv8sequencewrapper_p_p.h src/qml/qml/v8/qv8typewrapper.cpp src/qml/qml/v8/qv8valuetypewrapper.cpp src/qml/types/qqmldelegatemodel.cpp src/quick/items/context2d/qquickcanvasitem.cpp src/quick/items/context2d/qquickcontext2d.cpp sync.profile tests/auto/qml/qjsengine/tst_qjsengine.cpp tests/benchmarks/qml/animation/animation.pro tools/qmlprofiler/qmlprofiler.pro Change-Id: I18a76b8a81d87523247fa03a44ca334b1a2360c9
| * | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-06-123-2/+6
| |\| | | | | | | | | | Change-Id: I045587eac266e9b6296d9cd9e3c73031fe18bbd1
| | * Make qtdeclarative compile with QT_NO_NETWORKPROXYTasuku Suzuki2013-06-111-0/+2
| | | | | | | | | | | | | | | Change-Id: Ie7bf1e1d15da323f901f2c6b851a7b1e8ae0d832 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
| | * Make qtdeclarative compile with -no-guiTasuku Suzuki2013-06-101-1/+1
| | | | | | | | | | | | | | | Change-Id: I0c5a55c8f6b78450b2bce693bb55e12f8a224172 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
| | * qmlscene: if top-level is a QQuickWindow, set incubation controllerShawn Rutledge2013-06-041-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The necessity for this is documented in the QQuickWindow::incubationController() accessor. Bug 31203 is about writing a custom main() with a QQmlApplicationEngine, not about qmlscene, but the same workaround is necessary for both. Hopefully soon we find a way to make it unnecessary, but for now it is. This fix also doesn't take care of the QtObject { Window { } } use case. Task-number: QTBUG-31203 Change-Id: Ic9a5e4a23ac918593138dc9cab3de6cd36453eaf Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com> Reviewed-by: Alan Alpert <aalpert@blackberry.com>
| * | Add --noinstantiate to qmlplugindumpAlan Alpert2013-05-291-38/+44
| |/ | | | | | | | | | | | | | | | | | | This flag allows you to run qmlplugindump on plugins which cannot safely create objects, such as plugins with unusual requirements or missing essential dependencies. Change-Id: Ifcc542b8dec5358fc8a76d78a2a272c9cbf5d78a Reviewed-by: Fawzi Mohamed <fawzi.mohamed@digia.com> Reviewed-by: Kai Koehne <kai.koehne@digia.com>
| * qmlscene: Set window flags correctly.Friedemann Kleint2013-05-231-1/+3
| | | | | | | | | | | | | | Task-number: QTBUG-31258 Change-Id: I13dfc17c75075de155505d20c57400753de0a71d Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
| * qmlscene: don't call show() on the window if it's already showingShawn Rutledge2013-05-221-1/+1
| | | | | | | | | | | | | | | | | | | | That way Component.onCompleted() can optionally do showMaximized() without being overridden. Task-number: QTBUG-31260 Change-Id: I6f5c3025efd3b38809be85da4172241695168a6c Reviewed-by: Nikita Krupenko <krnekit@gmail.com> Reviewed-by: Alan Alpert <aalpert@blackberry.com>
| * Tools: unnecessary to make qmlplugindump a bundleLiang Qi2013-05-201-9/+7
| | | | | | | | | | | | | | | | Embed Info.plist in qmlplugindump executable in a special way. Change-Id: I7eb73d0f832ab53d352c1fd2275f77e853269c2c Reviewed-by: Fawzi Mohamed <fawzi.mohamed@digia.com> Reviewed-by: Kai Koehne <kai.koehne@digia.com>