aboutsummaryrefslogtreecommitdiffstats
path: root/src/qmldevtools
Commit message (Collapse)AuthorAgeFilesLines
* CMake: Regenerate projects to use new qt_internal_ APIAlexandru Croitor2020-10-062-4/+4
| | | | | | | | Modify special case locations to use the new API as well. Task-number: QTBUG-86815 Change-Id: I3b964e3baf0cc7040830156dac30358ea1152801 Reviewed-by: Cristian Adam <cristian.adam@qt.io>
* CMake: Fix framework buildsAlexandru Croitor2020-09-291-1/+1
| | | | | | | | | | | After 5c1ed8bb74ee4eed9ffc9537b880104445b43cd7 in qtbase, the framework version was changed from '6' to 'A'. qtdeclarative had the '6' hardcoded for the qmldevtools module. Switch it to 'A'. Fixes: QTBUG-87031 Change-Id: I21a9e83dfe27904cd67a14371bbc8bb008175dc1 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Deduplicate the import resolution algorithmUlf Hermann2020-06-102-0/+2
| | | | | | | We will need it in various other places, too. Change-Id: I61c55f88b66ab85448ae8fff125fe34108532fc4 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Don't hardcode the include directory nameChristophe Giboudeaux2020-05-051-3/+3
| | | | | | | | There's no guarantee that include files will be installed into 'include/'. Use INSTALL_INCLUDEDIR instead which can be changed when running CMake. Change-Id: I9af9fbdabd0b317a255f6c3e9e77af4ddf0792a9 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* CMake: Regenerate and adapt to merge from devwip/cmakeAlexandru Croitor2020-03-122-2/+2
| | | | | | Change-Id: If8daa6152a563d4309d7342414780ef75b9f5589 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io> Reviewed-by: Leander Beernaert <leander.beernaert@qt.io>
* Regenerate projects to handle private deps correctlyAlexandru Croitor2020-02-052-6/+2
| | | | | | Change-Id: Ifcbab0407e93dfc35d0459d7d29dee2cd3508a86 Reviewed-by: Leander Beernaert <leander.beernaert@qt.io> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Fix include paths of QmlDevTools[Private] for framework buildsJoerg Bornemann2020-01-071-11/+30
| | | | | | Change-Id: Ifd0d1751f3532773e9258189d4a2e930a41b7625 Reviewed-by: Leander Beernaert <leander.beernaert@qt.io> Reviewed-by: Liang Qi <liang.qi@qt.io>
* Regenerate all projects with new CMake API versionAlexandru Croitor2019-11-152-4/+4
| | | | | | Change-Id: Ie0db35f674137c229eaf049616f38f8e818f7092 Reviewed-by: Qt CMake Build Bot Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Regenerate projectsAlexandru Croitor2019-11-142-4/+2
| | | | | | Change-Id: I38044c382e4d84b5865a19cdd04cc8922bd72a77 Reviewed-by: Qt CMake Build Bot Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Fix up qlalr calls in preparation for API change in qtbaseSimon Hausmann2019-10-151-1/+1
| | | | | | | The target should come first, for consistency. Change-Id: I305781c119883189852fc5299522766bed90f09b Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Regenerate required projects after dev -> wip/cmake mergeAlexandru Croitor2019-10-141-1/+1
| | | | | Change-Id: Ic5f1909731ec11b4fb6bc8823506d272c529ecfb Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Regenerate qtdeclarative before mergeAlexandru Croitor2019-10-112-12/+17
| | | | | | Change-Id: I5710110679220c4e22bc7f8b540f18a51b735ddf Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> Reviewed-by: Qt CMake Build Bot
* Fix handling of QmlDevTools include headersAlexandru Croitor2019-09-101-0/+7
| | | | | | | | | | | | | When doing a prefix build, standalone tests need to include the QmlDevTools headers. This means that the installed headers need to be passed via INSTALL_INTERFACE genex, for prefix build case, and via BUILD_INTERFACE for non-prefix build case. Change-Id: I0d2a993e1ec0205e5b2a2d25e1e09e719e28a059 Reviewed-by: Liang Qi <liang.qi@qt.io> Reviewed-by: Qt CMake Build Bot
* Support standalone tests buildingLiang Qi2019-09-021-0/+1
| | | | | | | Also fix some build issues regarding tests. Change-Id: Ie9ba8a0b7932ae2b542614b6c824c4071ad0b548 Reviewed-by: Liang Qi <liang.qi@qt.io>
* Fix parallel buildSimon Hausmann2019-07-291-0/+9
| | | | | | | | | | | When the parallel build tries to build QmlQmlDevTools early on (can be triggered directly via ninja /path/to/lib/libQt6QmlDevTools.a), then we must make sure to build QtQml first, due to the dependency on syncqt generated header files, which in turn include build time generated files. Change-Id: I5a4ac01d48a791e2ee951e8dd5b418d989e4643c Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Merge remote-tracking branch 'origin/wip/qt6' into wip/cmakeAlexandru Croitor2019-07-242-14/+50
|\ | | | | | | Change-Id: I52b2d17d9334313e4b3d84b52432f2ebc77f7415
* | Merge remote-tracking branch 'origin/wip/qt6' into wip/cmakeAlexandru Croitor2019-07-113-6/+7
|\| | | | | | | Change-Id: I2963c1209316fb6755f572969f368970450d7991
| * Simplify errors and diagnosticsUlf Hermann2019-06-141-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We only need two classes to describe all possible diagnostics: * A low-level private POD DiagnosticMessage. This is easily copied and passed around internally. It doesn't need to adhere to a stable API and it doesn't carry any extra baggage. * The high-level public QQmlError with its stable interface. This can internally also use a DiagnosticMessage as storage. Change-Id: I52be88d9b5d9855a661b8032b01eedb43a0fb0b3 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | Fix declarative buildAlexandru Croitor2019-06-171-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | - qmltest examples should not be built for now (there's no ported CMakeLists.txt file) - when building QmlDevTools, qml_module_include_dir should only be included during building, because those are build directory paths. - QmlTest was missing some private dependencies to find private includes Change-Id: I22a77cd46f82bc61ab84aa7bc4c9d0e38a9d603a Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
* | Port the declarative toolsAlexandru Croitor2019-06-082-8/+28
| | | | | | | | | | | | | | | | | | Also fix up QmlDevTools module to not depend on QtQml, but instead make it include the headers / cpp files as it is done in the qmake project. Change-Id: I240c52d5357db150a7c0c819892fb0a3708ceee4 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | More porting of declarative modulesAlexandru Croitor2019-06-082-0/+136
|/ | | | | Change-Id: Ibe6d87998af1209518af87117b79778136110786 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Eliminate qmldevtools_buildUlf Hermann2019-05-311-4/+1
| | | | | | | | Move the relevant files into more fitting locations and build the devtools from only parser, compiler and qmldirparser. Change-Id: Ibf37a1187f36d02983f9f43c6622acb243785b7b Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Make QQmlDirParser and QQmlError available in QmlDevToolsUlf Hermann2018-10-251-0/+1
| | | | | | | | We will need them for the QML language server. Also, always build all of QQmlDirParser. The QT_CREATOR condition is mostly useless. Change-Id: I476864b55f6ff3953c11e7887525a043a9405e00 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* fix non-prefix builds with pre-synced headersOswald Buddenhagen2018-08-221-1/+1
| | | | | | | | | | | | unlike the real qml module, qmldevtools doesn't automatically get CONFIG+=generated_privates, because it has no own configuration. but the qlalr parser is generated and private. amends 1ea05eb775. Task-number: QTBUG-69874 Change-Id: I90d6610e4fcb599b3413bce1c6b852adbb69c82f Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Move the QML_COMPILE_HASH macro definition from the command-lineThiago Macieira2018-02-211-0/+1
| | | | | | | | | | | | If it's in the command-line, it is added to the precompiled header, which won't be regenerated if the macro changed. Instead, let's create a header that can be #included only in the file it needs to. Since qmldevtools compiles the file that has this new #include, we need to ensure it was created before the module is compiled. Change-Id: I940917d6763842499b18fffd1513b9c64cd98387 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Remove now unused filesLars Knoll2017-06-301-11/+0
| | | | | | | | | Remove all files from the old compiler pipeline that are now unused. This includes the whole IR, JIT code generation, and the old Moth Isel. Change-Id: I50d06abfbcf0e9755a54ed94638f8bb74f9512b1 Reviewed-by: Erik Verbruggen <erik.verbruggen@qt.io>
* Various compile fixesLars Knoll2017-06-221-0/+10
| | | | | | | | Make sure all libs and tests compile again after the latest changes. Change-Id: I749d3d2d0109cc97df2ecec93809ea8a1b3014a9 Reviewed-by: Erik Verbruggen <erik.verbruggen@qt.io>
* Merge remote-tracking branch 'origin/5.8' into 5.9Simon Hausmann2017-04-272-77/+2
|\ | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/qtqmlglobal.h src/qtqmlglobal_p.h src/jsruntime/qv4global_p.h src/qml/compiler/compiler.pri src/qml/compiler/qv4ssa.cpp src/qmldevtools/qtqmldevtoolsglobal_p.h tests/auto/qml/qqmlecmascript/tst_qqmlecmascript.cpp Change-Id: I55c5d015b2cb1053b83b9c61caaf004fb49ee486
| * fix QtQmlDevTools in framework builds in a better wayOswald Buddenhagen2017-04-112-66/+2
| | | | | | | | | | | | | | | | | | | | | | 6767fcfaf basically gave up and gave the module an own set of headers. however, we now have improved infrastructure for borrowing headers. while this may look uglier, the maintenance burden is lower, and it's consistent with other bootstrapped modules. Change-Id: I6ddcbbc01fa085a3c6bf333b03a9fdfc19061836 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io> Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* | Add Q_ALLOCA_VAR, Q_ALLOCA_DECLARE and Q_ALLOCA_ASSIGN macrosKimmo Ollila2017-02-151-0/+4
| | | | | | | | | | | | | | | | | | | | | | Define Q_ALLOCA_VAR macro to be used instead of #ifdeffing the occurrences of alloca() in case it's not supported. Q_ALLOCA_DECLARE and Q_ALLOCA_ASSIGN macros separate memory allocation from the declaration and RAII. Change-Id: Idc7551642c48a968a44bcade14d84800a3a1270e Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* | Fix MSVC warning about imported symbols when linking qmlcachegenFriedemann Kleint2017-02-091-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We don't have anything to export in qmldevtools, not even "autotest" exports. The warning was: qmlcachegen.obj : warning LNK4217: locally defined symbol ??0ExecutableAllocator@QV4@@QEAA@XZ (public: __cdecl QV4::ExecutableAllocator::ExecutableAllocator(void)) imported in function "bool __cdecl compileQmlFile(class QString const &,class QV4::EvalISelFactory *,struct Error *)" (?compileQmlFile@@YA_NAEBVQString@@PEAVEvalISelFactory@QV4@@PEAUError@@@Z) Change-Id: I5be9d905eee90615e2bb52fc110f81f2c558c7e6 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* | Include the JIT assembler in qmldevtoolsSimon Hausmann2017-01-281-0/+1
|/ | | | | | Change-Id: I69b74e01dcffe82caafb7aa8495b3036afc2b933 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Merge remote-tracking branch 'origin/5.6' into 5.7J-P Nurmi2016-03-011-2/+2
|\ | | | | | | | | | | | | Conflicts: src/plugins/qmltooling/qmldbg_native/qmldbg_native.pro Change-Id: I3ca8f0422828191b7e19539c25f31f2d048e9f18
| * consistently put {qt,qml}_{module,plugin} at the end of project filesOswald Buddenhagen2016-02-251-2/+2
| | | | | | | | | | | | | | | | this fixes static builds by ensuring that all dependencies are exported. Task-number: QTBUG-51071 Change-Id: I5928f853a1d13b6a73533f9c6f6eae9da0e52a26 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* | Updated license headersJani Heikkinen2016-01-191-14/+20
| | | | | | | | | | | | | | | | | | | | | | From Qt 5.7 -> LGPL v2.1 isn't an option anymore, see http://blog.qt.io/blog/2016/01/13/new-agreement-with-the-kde-free-qt-foundation/ Updated license headers to use new LGPL header instead of LGPL21 one (in those files which will be under LGPL v3) Change-Id: Ic36f1a0a1436fe6ac6eeca8c2375a79857e9cb12 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* | Use qtbase add/sub/mul with overflow implementations.Erik Verbruggen2015-11-271-1/+1
|/ | | | | | | | | | Those use compiler intrinsics when available. If not, the same code that was previously in qtdeclarative is used. Depends on 5ff7a3d96e0ce0dcb3d388b53d038cdd40c7a975 in qtbase. Change-Id: I8adf1a9d368ffc4e368260de518725ed7be6d2b8 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* QmlDevTools: Define QML export macros as empty.Friedemann Kleint2015-08-181-15/+2
| | | | | | | | | | | | | | Since QmlDevTools is a static library, no exports (Q_QML_EXPORT/Q_QML_PRIVATE_EXPORT) should be specified. Fixes link errors in qmlimportscanner and lupdate with MSVC2015: Qt5QmlDevToolsd.lib(qv4value.obj) : error LNK2019: unresolved external symbol "__declspec(dllimport) public: struct QV4::VTable * __cdecl QV4::Heap::Base::vtable(void)const " (__imp_?vtable@Base@Heap@QV4@@QEBAPEAUVTable@3@XZ) referenced in function "public: bool __cdecl QV4::Managed::isEqualTo(struct QV4::Managed const *)const " (?isEqualTo@Managed@QV4@@QEBA_NPEBU12@@Z) D:\dev\5-vs15-56\qt-56\qtbase\bin\qmlimportscanner.exe : fatal error LNK1120: 1 unresolved externals Change-Id: I6125b3d1eaacadba65a90047867779252dab6fbc Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* Merge remote-tracking branch 'origin/5.5' into devSimon Hausmann2015-03-172-8/+74
|\ | | | | | | Change-Id: I6033aba359ac551f450ad517d20a0986bf4655f6
| * Fix usage of QtQmlDevTools private headers on OSX with framework buildsSimon Hausmann2015-03-162-7/+73
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously this module borrowed its private headers from QtQml, so that when writing QT += qmldevtools-private, you'd get the private headers from QtQml. This doesn't work when QtQml is built as a framework. A cleaner solution is to give this module its headers proper by letting syncqt create the forwarding headers correctly (and consequently also include them in make install). In order for this to work, the included headers themselves cannot include any headers from QtQml, which this patch also takes care of, through a centralized inclusion of qv4global_p.h. Change-Id: I9bb8337956a2774cfaca6b338369face6c6ee785 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Frederik Gladhorn <frederik.gladhorn@theqtcompany.com>
| * Remove QQmlDirParser from QtQmlDevToolsSimon Hausmann2015-03-161-1/+0
|/ | | | | | | | This class is not needed in the library. Change-Id: Ie880086a849b62a2856d1f388a64d363b040cb56 Reviewed-by: Frederik Gladhorn <frederik.gladhorn@theqtcompany.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* Re-fix the warning from cached-powers.ccThiago Macieira2014-05-091-0/+6
| | | | | | | | | | This file is now getting included in a different module. See also e02cb2b31ab0b171f11d278305d9f532f005bc80, 60aed669345be33b916c44556555b922aa3ed928, and 66e72c2cf08c2d2c381c6c22e4760d0df758af52. Change-Id: Ic886bdf823d5dd6d9ae3df64608d8bb9d901661f Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* Extend the QML bootstrap library by the IR buildersSimon Hausmann2014-04-231-1/+5
| | | | | | | | | | | | | This is among other things needed to fix the qml import scanner to detect dependencies from .js files correctly. The patch also fixes the use of Q_QML_EXPORT towards Q_QML_PRIVATE_EXPORT where appropriate and corrects the wrong include path for the double conversion code to actually be relative to the file it is included from. This worked by accident because of other include paths present in the build. Change-Id: I338583dad2f76300819af8ab0dae8e5724c84430 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* simplify host_build logic againOswald Buddenhagen2013-10-251-7/+1
| | | | | | | | | | qt_tool handles bootstrapping fully automatically. This reverts commit 0fc040ef70513ccaeb9e96f7ca05a3df4d6c7879, and adds some more. Change-Id: Icffcf7f487dbf660678c7ee622f94b1063fef7e3 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* Fix build logic for host_build tools.Morten Johan Sørvig2013-09-211-1/+7
| | | | | | | | Link against bootstrap-private instead QtCore when cross-compiling. Change-Id: I7aeb9d693b0dd041aea72b6b3dcb8614a9a92b89 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* Move the parser folder from src/qml/qml to src/qmlLars Knoll2013-08-081-1/+1
| | | | | Change-Id: I5e5684f5b98b00f791ade99c4cb6bc2ed880ad6a Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* prepare for qt_module_pris.prf changesOswald Buddenhagen2013-06-101-2/+3
| | | | | Change-Id: Iba75fccfc143f09d443d50bc8dc75cde5739af9b Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* optionally bootstrap QmlDevTools and qmlminOswald Buddenhagen2013-03-161-1/+8
| | | | | | | | | QmlDevTools is really meant for host tools (the two only ones using this being qmlmin in this repo and lupdate in qttools). qmake magic will take care of bootstrapping them while x-building. Change-Id: I29d921af483659d5455be0ad080dc1a88540c036 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* centralize load(qt_build_config)s in .qmake.confOswald Buddenhagen2012-09-111-2/+0
| | | | | Change-Id: Ide2e054e9b5b58976410d16ca4f76fd55e61676d Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* follow rename of qt_module_config.prf to qt_module.prfOswald Buddenhagen2012-08-111-1/+1
| | | | | Change-Id: I8a13b3aca195b9e8331478d73cd338ab66d65d1f Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
* Mark some declarative libraries as internal.Stephen Kelly2012-07-241-1/+1
| | | | | | | | | | | | The QtQuickParticles module is actually a QML plugin, even though it is installed to lib/, and it doesn't have useful public API. The QmlDevTools module is internal and non-stable API. This avoids creating CMake files for those modules. Change-Id: Iae7a66b18728d65aa6abd660365f0878bc6574a4 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>