summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Fix an Android testHEADmasterChristian Kandeler2023-05-171-1/+4
| | | | | | | This one must not use qbs.architectures from the profile Change-Id: Ia806e0f070a748b83303fdd794d70583f1b2b97e Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* Support Date propertiesChristian Kandeler2023-05-176-0/+61
| | | | | | Fixes: QBS-1735 Change-Id: Ide0800d397c5c45c9b4129b732bd27d0d374b7b2 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* Loader: Do not error out when encountering duplicate multiplex valuesChristian Kandeler2023-05-166-26/+50
| | | | | | | | | | | | | | | In qbs, values of list properties specified in a project file are merged with those from the profile. As of fb52fed84a1510a7de0172e643d6fd66a780e2e8, this is also true for the special multiplexing properties ("qbs.architectures", "qbs.buildVariants" etc). This means it can now happen that we end up with duplicate entries in these lists implicitly. Therefore, it no longer makes sense to throw an error when such duplicates are encountered, as they were not necessarily specified verbatim. Instead, we simply ignore the duplicate value and carry on normally. Change-Id: Ie4fed2081bebd2b0dd62aa873cafed769b308e97 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* js: represent QByteArray as JsArrayBufferIvan Komissarov2023-05-1611-3/+98
| | | | | | | | | | | | | | | On macOS, Info.plist can (rarely) contain binary data which is parsed into a QByteArray. However, since byte arrays were discarded when converting from variant, such keys were lost e.g. when doing plist merging. Fix that by converting QByteArray to a JS ArrayBuffer object. Using such types is a bit awkward as seen in the testcase, but conforms JS type system. Change-Id: I7a680aa7943ba3bde1ddf4ac84e3485fb0ba01d8 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Android: Fix syntax errors in modulesChristian Kandeler2023-05-152-17/+17
| | | | | | | Amends fb52fed84a1510a7de0172e643d6fd66a780e2e8. Change-Id: I25fd2f62db5fcc21dfd98d6dcbc29d62a2466bfb Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* Loader: Do not collect shadow products by typeChristian Kandeler2023-05-151-1/+2
| | | | | | | | | | | These should never be matched by Depends.productTypes. This amends fb52fed84a1510a7de0172e643d6fd66a780e2e8. The problem was that Depends.productTypes now considers Module.additionalProductTypes, which may come in via exported dependencies from the main product, which the shadow product has a dependency on. Change-Id: I73080949b3cb80642e28851517b58fd6a70affca Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* Merge branch '2.0' into masterIvan Komissarov2023-05-119-27/+51
|\ | | | | | | Change-Id: I0322637bf5e81873da34f36e108611b163076e5f
| * fix changelogsIvan Komissarov2023-05-113-16/+16
| | | | | | | | | | | | | | | | | | | | Choco complains about e-mails in nuspec which contains all release notes. Remove e-mails from old changelogs. Also, fix the name of the file for 1.24.0 release. Change-Id: I9e0e305283c224f7fc5c3a76456efe474b7ccd4c Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
| * cmake: fix qt5 buildv2.0.1Ivan Komissarov2023-05-081-0/+1
| | | | | | | | | | | | | | | | | | | | Without the DocTools package, Qt5::qdoc target is not available. This amends e7763d972a4404b283260d29ebf7720a981349cb. Change-Id: I10a9a32686e816e65bdfdcc7a70c34d89f71c448 Reviewed-by: Dmitry Shachnev <mitya57@gmail.com> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
| * docker: Update focal imagesIvan Komissarov2023-05-062-5/+13
| | | | | | | | | | Change-Id: Ide8cb42abc270bb691b2f4caff6412531cbaf50a Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
| * Update changelogIvan Komissarov2023-05-061-0/+14
| | | | | | | | | | Change-Id: Ie0f066ae6caddf2643f5b1696eab37fe2d5088e7 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
| * GitHub actions: Update Qt on Windows to 6.5Ivan Komissarov2023-05-052-6/+7
| | | | | | | | | | Change-Id: I47c9e736e3a453660379c14276922103c3bf5daf Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | doc: move Special Property Values to a separate pageIvan Komissarov2023-05-113-55/+165
| | | | | | | | | | | | | | | | Also, document values that were not documented such as path, filePath, product, project. Change-Id: Ibad64e2998697b4c8c625c3088b835c8be428f54 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Implement Pimpl class using std::unique_ptrIvan Komissarov2023-05-1022-44/+527
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ... and propagate_const from KDAB tools. The propagate_const class fixes the issue that d-pointer in const-methods is not const. Such Pimpl class has several advantages over the raw pointer. - the d-tor is trivial and removes the burden for the author/reviewer to remember to check if pointer is deleted correctly. - constness is now propageted correctly to the d-pointer in const methods. - makes the intention clear that we're using the PIMPL idiom Change-Id: Ibc42cdaeb6d3303fea81ac6edd63bea0da2ac08d Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Remove Loader classChristian Kandeler2023-05-0910-352/+154
| | | | | | | | | | | | | | It was just an unnecessary indirection in the end. Change-Id: I956ed4858dcc2b528be1e1fce9ab24862b99ff62 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* | Instantiate ProjectTreeBuilder in ProjectResolverChristian Kandeler2023-05-085-34/+78
| | | | | | | | | | | | | | | | It's silly to run the ProjectTreeBuilder elsewhere and forward the result to ProjectResolver when that's the only place it is needed. Change-Id: If6ce01be57e2f144bdc6a1409b8f1057eaa5218e Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* | Loader: Move out the setupProjectFilePath() methodChristian Kandeler2023-05-056-49/+50
| | | | | | | | | | | | | | ... into SetupProjectParameters, where it belongs. Change-Id: I5cae2842200a053827739b947d1cd06e1bbe5ef9 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* | Loader: Remove unnecessary search paths forwarding machineryChristian Kandeler2023-05-059-55/+15
| | | | | | | | | | Change-Id: Ia4a8c144431c413701707c024185ca54f49b0829 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* | Clean up ProjectResolver interfaceChristian Kandeler2023-05-043-466/+457
| | | | | | | | | | Change-Id: I67cea02050a21dc83c702116732dfeb46e828af1 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* | Introduce loader/ subdirectoryChristian Kandeler2023-05-0440-165/+168
| | | | | | | | | | | | | | | | Project loading functionality is implemented in various source files these days, so it makes sense to group them together. Change-Id: Iba42b0246c40610d2a03bf6cc7ed7d3bec9d5536 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* | Merge "Merge 2.0 into master"The Qt Project2023-05-0315-59/+129
|\ \
| * \ Merge 2.0 into masterChristian Kandeler2023-05-0315-59/+129
| |\ \ | | |/ | | | | | | Change-Id: I521dd5baab4b4374f9221a163ba8e83531edf8bb
| | * GitHub actions: bump Qt versions on mac to 6.5.0Ivan Komissarov2023-05-031-7/+14
| | | | | | | | | | | | | | | | | | | | | | | | ... and on iOS to 6.3.2 since newer versions are not supported yet. Change-Id: I7f021bedc59d7ae25793830db1e27f5f4a6f0a24 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
| | * Qt: Fix compiled-qml on iOS and Qt6Ivan Komissarov2023-05-032-11/+21
| | | | | | | | | | | | | | | | | | Task-number: QBS-1732 Change-Id: Id5e6a3aa65ea276093d25d8b939dd59bbe090eda Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
| | * install-qt.sh: Support Qt6 iOSIvan Komissarov2023-05-021-0/+7
| | | | | | | | | | | | | | | Change-Id: I32bfea051b52e96a60bc4410dd89a72fd7bb286e Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
| | * Qt support: workaround for broken iOS prfsIvan Komissarov2023-05-021-0/+2
| | | | | | | | | | | | | | | Change-Id: Ib0dcd880d963d25c0a8a20bb8bccfd85bcb3f510 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
| | * apple: fix detecting xcode via xcode-selectIvan Komissarov2023-05-021-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It appears, that xcode-select --print-path adds extra \n at the end of output. This also fixes the macOS 13.4.1 job since we set the target xcode as a default one via xcode-select. Change-Id: I6e2219c6b76682755f949ece63f43df33cf15481 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
| | * GitHub actions: bump Xcode version to 14.2Ivan Komissarov2023-05-021-10/+10
| | | | | | | | | | | | | | | Change-Id: Ia650a42f6b88fd8eceb1bf24663baeee17835e35 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
| | * ScriptEngine: Make import functionality exception safeChristian Kandeler2023-04-288-29/+69
| | | | | | | | | | | | | | | | | | Fixes: QBS-1730 Change-Id: I83324b7d859412580213dc4eb9f1f60e0f9063f2 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
| | * Update changelogIvan Komissarov2023-04-221-2/+6
| | | | | | | | | | | | | | | Change-Id: Ib0ff20ea53c0ba3620338f7615ccd92f3e5fa82d Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | | Do not merge deps in pkgconfig by defaultIvan Komissarov2023-05-032-5/+4
|/ / | | | | | | | | | | | | | | | | | | This was needed only as a workaround for packages with deep dependency tree. With the new module loader code, this is not needed anymore and we can start removing the prop. Fixes: QBS-1710 Change-Id: I47046049e89e705288f1b1ae04be625bd83302e8 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Use RAII in JSSourceValueCreator in tst_language.cppIvan Komissarov2023-05-021-9/+4
| | | | | | | | | | Change-Id: Ibd4dd3bf5e482442079f564fa3b4e8f5adcb74f1 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Remove unneeded QStringRef in tst_language.cppIvan Komissarov2023-05-021-1/+1
| | | | | | | | | | Change-Id: Ic97cde8cd54be6dc5455a83952c8ee6df00fdadd Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Cleanup unneded usages of qbs module in Qt providerIvan Komissarov2023-05-012-12/+10
| | | | | | | | | | Change-Id: Ibc8ee42bda7273d418c3cbaa69eecbc61674e6cd Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Move providers tests to a dedicated test suiteIvan Komissarov2023-04-3038-330/+458
| | | | | | | | | | | | | | | | We have quite a few test cases and will probably have more for new providers and/or Packages. Change-Id: Ia3685b47b6a533020f1696827381e8d48fa8c4d1 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Fix module provider search pathsIvan Komissarov2023-04-2910-51/+77
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Originally, provider added paths to the reader and they were reseted to project state deeper in the recursion. We lookup modules in the clean state so we do not pollute the search paths added by providers, otherwise existingModulePathCache is polluted with search paths from previous invocations of the fallback module provider. This amends fb52fed84a1510a7de0172e643d6fd66a780e2e8. Change-Id: I35ebe7987a0d1421a4b3753c7da2dae072a86542 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Fix Value copy constructorChristian Kandeler2023-04-283-1/+13
| | | | | | | | | | | | | | | | | | | | | | We forgot a member, which manifested itself when using module properties whose value referred to "original" on the group level. Also fix a check in Evaluator that prevented us from even trying to evaluate such properties. Amends fb52fed84a1510a7de0172e643d6fd66a780e2e8. Change-Id: I73cae5e6d9603f277862a1ccc8ea8f676d6a5ab1 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* | ProjectTreeBuilder: Fix clang-tidy complaintsChristian Kandeler2023-04-261-4/+4
| | | | | | | | | | | | | | Amends fb52fed84a1510a7de0172e643d6fd66a780e2e8. Change-Id: I5eb92e515dae3059b9ba3b118a683e0aedb97ddb Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* | Do not use ModUtils.moduleProperty in bundle moduleIvan Komissarov2023-04-251-43/+43
| | | | | | | | | | | | Task-number: QBS-889 Change-Id: I069b7f785f4ac21923ea976817147a4c3b5f56c5 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | ScriptEngine: Remove extra evaluation scopesChristian Kandeler2023-04-252-10/+22
| | | | | | | | | | | | | | | | | | | | These were only kept for temporary bug compatibility with the QtScript- based implementation. Apart from being more correct, this also yields a small, but consistent speed-up of about 2%. Change-Id: I857fed3bd64eb68ce5e1ded80647e46593f410b4 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* | Fix build for configuration that enables tests, but disables unit testsChristian Kandeler2023-04-243-10/+18
| | | | | | | | | | | | | | | | | | It's probably not worth adding an extra export macro for that, so just enable QBS_AUTOTEST_EXPORT if any tests are enabled. Amends b3509323a4552eb1c4a43218cb715904400d0d62. Change-Id: I3573ae59de98f192d6ae3630b973857f911b3eaa Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* | GitHub actions: Build release binaries without test codeChristian Kandeler2023-04-241-0/+3
| | | | | | | | | | Change-Id: I1addff78e199139b95b3dd6e904655adf1e20f51 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* | Fix export macro for some functionsChristian Kandeler2023-04-241-4/+4
| | | | | | | | | | Change-Id: I14621ffa3102d24518db0360eb71d37f2b517d60 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* | Move module file loading code into ModuleLoaderChristian Kandeler2023-04-244-226/+259
| | | | | | | | | | | | | | That's where it belongs, and now it is possible to put it there. Change-Id: I2bd041dcf2e1e8e1be804f4b31c72c2859615017 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* | Tests: Act on some FIXME commentsChristian Kandeler2023-04-244-7/+3
| | | | | | | | | | Change-Id: Id54960e308b96194b23515d6cf5a6e0e2e89cfa7 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* | doc: fix introIvan Komissarov2023-04-221-15/+5
| | | | | | | | | | Change-Id: I403a5a8f7716c88ed7c36d610cb1762e78be3e14 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Clean up ProjectTreeBuilder interfaceChristian Kandeler2023-04-212-123/+122
| | | | | | | | | | | | | | ProductContext is no longer used elsewhere. Change-Id: I6bf158d61153c9a05c4963bacd64801b3f0309ec Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* | Make Module::name read-onlyChristian Kandeler2023-04-211-1/+5
| | | | | | | | | | | | | | This property must only be set internally. Change-Id: I4232a734b34fc2a99d692e58afeba3026d28bb1f Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* | Clean up ModuleProviderLoader interfaceChristian Kandeler2023-04-214-71/+86
| | | | | | | | | | | | | | | | Most importantly, get rid of the reverse dependency on ProjectTreeBuilder. Change-Id: I1ad657767f9a083cdbd4c18779de15a4c5f2fbd5 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* | Merge branch '2.0' into masterRichard Weickelt2023-04-202-1/+2
|\ \ | |/ | | | | Change-Id: I483d3e0b7076c1df50594356da989d86fc0ec451