aboutsummaryrefslogtreecommitdiffstats
path: root/tests
Commit message (Collapse)AuthorAgeFilesLines
* Add qt4 docker image for basic testingRaphaël Cotty2020-12-1811-5/+85
| | | | | Change-Id: Ied6d9eac49fcb20de72499ab7c39e83a90a98b75 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* Add TestBlackboxApple::appiconset testIvan Komissarov2020-12-1435-0/+341
| | | | | | | | | This test verifies the possibility to use "*.appiconset" assets for application icons Task-number: QBS-1627 Change-Id: I2480dcb76d046d91333295926db40cdd6d4c32bd Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Fix assetCatalog test for macOS 11.*Ivan Komissarov2020-12-141-1/+2
| | | | | Change-Id: I94755e03572003275483a4bac95660a007dff0bc Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Pass import paths as nanopb_opt to support `.options` filesKai Dohmen2020-12-033-0/+9
| | | | | | | | | | | To make use of nanopb specific options defined in a separate `.options` file pass import paths to nanopb generator script. This is needed because protoc doesn’t currently pass include path into plugins. Therefore if your .proto is in a subdirectory, nanopb may have trouble finding the associated .options file. Change-Id: I28eb2e9c2f353df88aa1a1e772dfb57a36800434 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* Disable moc for the aggregate product when multiplexingRaphaël Cotty2020-11-264-4/+31
| | | | | | | | | | | Running moc in the aggregate can't happen anymore because it generates an error when accessing cpp.defines. Before 527d5a8ec54e44291d4968754bdf574ebe57822b cpp.defines was not accessed for hpp files. Anyway it doesn't make sense to call moc in the aggregate as the generated files won't be compiled. Change-Id: I25ada3c8c54b199efb0877b59025fff88dc84dd8 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* macOS: Fix getNativeSetting() test on Big SurIvan Komissarov2020-11-201-4/+8
| | | | | Change-Id: I585fe2646339a7d7454570638bef2ad5e9ab502a Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Android: Update for Qt 6Raphaël Cotty2020-11-171-74/+169
| | | | | | | | | | Manage the new directory layout of Qt6. Update generation of the input file for androiddeployqt. Fixes: QBS-1613 Fixes: QBS-1609 Change-Id: Ie633fad467f310bfc4cd42e9c32d9cfc2e734582 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* GitHub actions: fix macOS buildIvan Komissarov2020-10-291-2/+1
| | | | | | | | Default Xcode was switched to 12.0 and we need to use Qbs 1.17 which supports it Change-Id: I4dfb0da7e1bdf99dd1fafe952395465dc8cdb267 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Implement missing check for allowed values in PropertyOptionsIvan Komissarov2020-10-284-1/+91
| | | | | | | | | | | | | | ========== Performance data for Resolving ========== Old instruction count: 10195378481 New instruction count: 10238464294 Relative change: 0 % [ChangeLog] Qbs now checks string and stringList values according to the allowedValues property in PropertyOptions Change-Id: Ide88987c74b35f4172ffaf71aacd991536131ee5 Reviewed-by: Richard Weickelt <richard@weickelt.de> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Xcode: fix apple-multiconfig test for ios-simulatorIvan Komissarov2020-10-261-2/+2
| | | | | Change-Id: I0db7d7104cd06521291970a51ddf0a6f55cc71a6 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Fix qbs.buildVariant in appleMultiConfig() testIvan Komissarov2020-10-262-10/+10
| | | | | | | Should be "profiling", not "profile" Change-Id: I79f1607a4a1880a67bb49b08dfabbe0a5715aaa7 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Merge branch '1.17'Ivan Komissarov2020-10-261-40/+35
|\ | | | | | | Change-Id: Ifcd65b201f060506d53dcffc0031d186a6dc227e
| * Android: Remove targetName suffix from QtApplicationRaphaël Cotty2020-10-231-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | From Qt 5.14 target suffix is required for the multi arch packaging. This only affects android applications using Qt. The suffix can't be applied in QtApplication because a project using CppApplication and depending on Qt.core won't have it. Beside using targetName is error prone as the user can change it. So instead of using targetName for the suffix this patch adds the suffix when deploying the "android.nativelibrary" for packaging and only for Qt applications. Fixes: QBS-1608 Change-Id: I0704d5433c8a1d513dfdef71cecbc99ea5458181 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
| * Android: Fix Qt 5.14 (and 5.15)Richard Weickelt2020-10-221-4/+6
| | | | | | | | | | | | | | Amends 2f5f049e. Change-Id: Ifa77899b3f5b206c1436f6ad6baea4c4d7a238ed Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
| * Android: Update for Qt 5.15Raphaël Cotty2020-10-211-40/+33
| | | | | | | | | | | | | | | | | | | | | | | | Use java.additionalClassPaths property to allow compilation of binding classes because starting with Qt 5.15 they depend on QtAndroid.jar Update AndroidManifest.xml with uses-sdk node using new properties Android.sdk.minVersion and Android.sdk.targetVersion because Qt 5.15 uses androiddeployqt to set it. Fixes: QBS-1580 Change-Id: I2fa5e77bb183be1b55e9dd9756fb7b6eb1f3c9d4 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
| * Android: Allow exporting of Qt modules by using importingProductRaphaël Cotty2020-10-213-1/+80
| | | | | | | | | | | | | | | | | | | | | | The product variable in the Export item refers to the exporting item. If a qbs property is changed (example: qbs.architecture for the multiplexing in Android) then the Depend failed because the qbs module was not loaded yet for the exporting item. Fixes: QBS-1576 Change-Id: I220c47b3094727fe169d3dccd244ab2785a782b7 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* | clang-tidy: Apply modernize-use-nullptr fix-itIvan Komissarov2020-10-263-81/+81
| | | | | | | | | | Change-Id: I404ac10a14517763daf656dd38dd560534cbf1fa Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Fix usage of @VAR@ in info plist filesIvan Komissarov2020-10-085-0/+72
| | | | | | | | | | | | | | Fixes: QBS-1601 Change-Id: Iead18bf5fd25f965cf9f9748469f2469488eabc8 Reviewed-by: Thorbjørn Lindeijer <bjorn@lindeijer.nl> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | tests: Add missing 'std' namespaceDenis Shienkov2020-09-3018-28/+28
| | | | | | | | | | | | Change-Id: Ib3bba4468bdf8851e61f48eecea597ae552c7647 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Remove cpp dependency from PathProbe blackbox testsRichard Weickelt2020-09-272-4/+1
| | | | | | | | | | | | | | | | This reduces execution time to 1s (was 10s) and simplifies PathProbe debugging because the cpp module contains probes as well. Change-Id: Iddd4de71143892d6815acbd1efff30f92d70a423 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* | GitHub actions: Run tests with Xcode 12Ivan Komissarov2020-09-251-0/+4
| | | | | | | | | | Change-Id: I339f855629c0d7cebfb4481b5516d4bfc5b778d3 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | xcode12: fix compiler warningsIvan Komissarov2020-09-251-4/+4
| | | | | | | | | | | | | | | | Clang says: "loop variable 'xxx' is always a copy because the range of type 'QJsonArray' does not return a reference [-Wrange-loop-analysis]" Change-Id: Ibb33f077dfaaf635300f6c75f6684d4a3d7632de Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Make protobuf.*.outputDir public againKai Dohmen2020-09-246-0/+126
| | | | | | | | | | | | | | | | | | | | Make protobuf outputDir public again for usage with installSourceBase when creating/installing a separate proto-only library product. Make outputDir readonly since it should not be set by the user. Changed artifacts tag hpp to protobuf.hpp for better filtering. Change-Id: I8697e880aacfe4d3029fd6f547a5d8c1eee7ee7e Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* | baremetal: Implement cpp.generateCompilerListingFiles for ARMCLANGDenis Shienkov2020-09-232-34/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The ARMCLANG compiler does not support generating of the listing files. Instead, it is recommended to use the disassembler: * https://www.keil.com/support/docs/4152.htm Take a note that the disassembler does not work with the evaluation license! Change-Id: If8b45e40523015d27e4439cf00028815211338ed Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* | Android: Change the product property to importingProduct to allow exporting ↵Raphaël Cotty2020-09-213-1/+80
| | | | | | | | | | | | | | | | | | | | | | | | | | Qt module The product variable in the Export item refers to the exporting item. If a qbs property is changed (example: qbs.architecture for the multiplexing in Android) then the Depend failed because the qbs module was not loaded yet for the exporting item. Fixes: QBS-1576 Change-Id: I220c47b3094727fe169d3dccd244ab2785a782b7 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | tests: Add 'std' prefix for printf() in blackbox::configure testDenis Shienkov2020-09-181-1/+1
| | | | | | | | | | | | | | | | | | We need to use the 'std' namespace prefix for all functions from the <cstdio> header. Otherwise the compilation may fails on some toolchains (e.g. on Open Watcom). Change-Id: I7824d96a9d0432c65e73f957653c865fd3754641 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* | baremetal: Pass 'generate-linker-map' test for SDCC toolchainDenis Shienkov2020-09-172-10/+0
| | | | | | | | | | | | | | | | | | | | | | A problem is that the SDCC toolchain has not an option to disable the generation for the linker MAP file. So, we need to remove this file explicitly after the linking, when the cpp.generateLinkerMapFile property is in false. Change-Id: Ic1e5cb08066441b51d86aece09acd5fae91a83f2 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* | Add protobuf.nanopb moduleKai Dohmen2020-09-164-0/+123
| | | | | | | | | | | | | | | | | | | | | | nanopb is a protobuffer implementation aimed for usage on microcontrollers. It uses its own generator scripts which are applied as a protoc-plugin. Generalized the doPrepare function to use the generator as a plugin. Change-Id: I43549f709f3cdff23c7bed84659636d18ea5fcf8 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | GitHub actions: fix the fallbackModuleProvider testIvan Komissarov2020-09-141-3/+0
| | | | | | | | | | | | | | | | The pkg-config executable found in PATH is broken and doesn't work at all. Fix that by installing the working version from choco. Change-Id: I3c3bdeba2215dd75685195375de586f0f2e67c82 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Remove extra semicolonsDenis Shienkov2020-09-115-9/+10
| | | | | | | | | | Change-Id: If2c25fb03a9c6429a4af66efcd703e4fefe65820 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* | Fix InnoSetupModule to support InnoSetup v6Ivan Komissarov2020-09-043-47/+24
| | | | | | | | | | | | | | | | Also, fix tests to check the presence of the innosetup in qbs files instead of the test itself Change-Id: I5fcb40cf301cf606c2cf3414a716ed66d1083868 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | joblimits: do not call --force-probe-executionIvan Komissarov2020-09-033-11/+20
| | | | | | | | | | | | | | | | ...and do the skip check once. This speeds up the iOS job and hopefully will fix the problems with the joblimits test on Windows. Change-Id: I423ff8543c8dbb220e8b2db5dffb9cf6625b066c Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Initial support for GitHub ActionsIvan Komissarov2020-09-015-0/+32
| | | | | | | | | | | | | | | | | | | | This commit adds jobs similar to what we have in Travis. Some tests are disabled when running on GitHub since they do not pass for various reasons. Note that those tests are usually skipped on Travis due to missing dependencies. Change-Id: Icec96dc22e2939d12568d2de1f1a4537c35977ad Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Skip sanitizer test when run using VS clang for x86_64Ivan Komissarov2020-08-311-1/+7
| | | | | | | | | | | | | | | | 32-bit clang doesn't support building 64-bit sanitized apps and the one shipped with VS is 32-bit Change-Id: I6b8b75ebe00ea7786be649128ea10a0789e207a0 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Fix setting base profiles in testsIvan Komissarov2020-08-315-1/+25
| | | | | | | | | | | | | | | | Some tests were run with the auto-detected toolchain instead of the one passed via QBS_AUTOTEST_PROFILE Change-Id: Iccbe08ba4a95b78e19e1d89eb3e989fa0512d35b Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Introduce an "exportingProduct" variableChristian Kandeler2020-08-2415-24/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ... for use in Export items. It's not obvious that "product" refers to the exporting product, and in fact setting it up this way pollutes the scope for modules loaded via Export items. Therefore, we introduce exportingProduct for symmetry with importingProduct. [ChangeLog] Deprecate the product variable inside Export items in favor of the new exportingProduct variable. Task-number: QBS-1576 Change-Id: Ie91752d1ae2160cb7701ae0167bccde0cd5c0e5d Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io> Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* | Bump c++ version to the 17th standardIvan Komissarov2020-08-214-4/+4
| | | | | | | | | | | | | | We can do that now as QtC moved to c++17 in master Change-Id: I91d7fc425f1b288f341ee3025fec61a53e98c8d9 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | qbsbuild: move logging to the static libraryIvan Komissarov2020-08-205-4/+5
| | | | | | | | | | Change-Id: I94bd7288a9ef3b7a785a76386ff7d395cdd01f81 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Merge branch '1.17' into masterIvan Komissarov2020-08-176-0/+81
|\| | | | | | | Change-Id: I733267955eb847f0de6148da3e2c210b2c9103e7
| * Fix passing compiler defines to mocIvan Komissarov2020-08-176-0/+81
| | | | | | | | | | | | | | | | | | This fixes the issue that Qbs doesn't pass the compiler defines to moc when processing header files which resulted to Q_OS_* being not defined. Fixes: QBS-1592 Change-Id: I58a0cc9af5cfa2fb4a370bb0d7204a3b100da437 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Initial CMake portIvan Komissarov2020-08-1710-0/+168
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change allows to build Qbs using CMake build tool Tested platforms - Linux (gcc) - macOS (clang) - Windows (msvc2017) Missing features (compared to Qbs build) - Documentation build - Bundled QtScript support - Static build - .pc file for qbscore - qbs module for qbscore Change-Id: I09b5dadd6723d5a47e5ef2a9a38d3300488718f2 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Merge branch 1.17 into masterRichard Weickelt2020-08-1428-22/+383
|\| | | | | | | Change-Id: Ibdf2afb9f05682e0624540af22330abc8580bafb
| * Tune search order of path probesIvan Komissarov2020-08-134-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Within the groups of user-provided and system-provided paths, environment variables need to take precedence over properties, because there is currently no other way to override the search paths of probes from the outside if the probe-using code did not explicitly bind them to Product/Module properties. We search directly user-provided paths before ones from system-provided environment variables to minimize the risk of surprises due to outside influence. [ChangeLog][Behavior Changes] The lookup order in PathProbe changed to [environmentPaths, searchPaths, platformEnvironmentPaths, platformSearchPaths] Change-Id: Ib0c3bc44e5a8efaaaa073f28f1f3a53feb0f78db Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@gmx.de> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
| * baremetal: Pass 'compiler-listing-files' test for KEIL ARM toolchainDenis Shienkov2020-08-133-3/+12
| | | | | | | | | | | | | | | | | | | | | | KEIL ARM compiler generates a listing files with 'short' names. For example, for the source 'main.c' file it will produce the listing 'main.lst' file, instead of the 'main.c.lst' file. Thus, we have to account for this behavior in our tests. Change-Id: I69ef693cbdd0aacf838eaf382e13e09d7fadbfb1 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
| * baremetal: Pass 'compiler-listing-files' test for SDCC toolchainDenis Shienkov2020-08-132-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | A problem was in that the SDCC compiler does not have an option to disable generation for listing files. Besides, it use listing files for a linking. So, we need to use a workaround to remove the generated listing files after linking in case if the cpp.generateCompilerListingFiles property is false. Change-Id: I5913e62d307d296bd8891654d20787cf3a54833c Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
| * Implement cpp.generateCompilerListingFiles for MSVC toolchainDenis Shienkov2020-08-123-1/+9
| | | | | | | | | | | | | | | | | | | | We need to use the /Fa compiler option as described here: * https://docs.microsoft.com/en-us/cpp/build/reference/fa-fa-listing-file?view=vs-2019 Change-Id: I81470bfbf84563a49bd5336e7204a07d5b2c910e Reviewed-by: Christian Kandeler <christian.kandeler@qt.io> Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
| * baremetal: Fix linker MAP file generation for KEIL C51/C251/C166Denis Shienkov2020-08-081-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | 1. We need to use the {NO}PRINT linker options: * https://www.keil.com/support/man/docs/bl51/bl51_noprint.htm 2. The KEIL C251 should generate the linker MAP file with the *.map extension. Change-Id: Ibc1f362c7010a1c2812c21382b617e246c81e100 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
| * baremetal: Add new 'generate-linker-map-file' testDenis Shienkov2020-08-076-3/+89
| | | | | | | | | | | | | | | | | | | | | | | | | | This test checks the cpp.generateLinkerMapFile property, which enables or disables generation for the linker map file. Take into account, that currently not all toolchains completely supports or implements this feature, and this test skips such toolchains. Change-Id: I5ba90116ab0481bb65ff866cf02f8a1963cf00a9 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
| * baremetal: Add new 'generate-compiler-listing-files' testDenis Shienkov2020-08-078-39/+113
| | | | | | | | | | | | | | | | | | | | | | | | | | This test checks the cpp.generateCompilerListingFiles property, which enables or disables generation for the compiler listing files. Take into account, that currently not all toolchains completely supports or implements this feature, and this test skips such toolchains. Change-Id: I533e6b2e5b4af5668cf24f851334b9530bc3a901 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
| * Add XFAIL-ing autotest for newly discovered bugChristian Kandeler2020-08-054-0/+22
| | | | | | | | | | | | Task-number: QBS-1576 Change-Id: I333164e160655492c1378d96673fc8c8ab6f6330 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>