aboutsummaryrefslogtreecommitdiffstats
path: root/tests
Commit message (Collapse)AuthorAgeFilesLines
...
* C++ scanner: Register for rc filesChristian Kandeler2019-01-174-6/+28
| | | | | | | | Windows resource files can have #include statements. This was either overlooked from the beginning or we broke it at some point. Change-Id: I3483e8caf352f557768429cf3c4f9b3293fec38d Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Scanner item: Do not re-use the searchPaths value for other inputsChristian Kandeler2019-01-158-0/+52
| | | | | | | | | | | For the C++ scanner, the search paths depend on module properties, not on the actual input file. This assumption does not generally hold for Scanner items, which was not taken into account when this feature was originally introduced. As a result, the first input to get scanned by a Scanner item erroneously provided the search paths for all others. Change-Id: I0159d826dac1f5605494d54cfe96fe468044ca34 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Fix buildChristian Kandeler2019-01-141-1/+1
| | | | | | | Amends 893b4dc56c. Change-Id: If4e5216bf24c97773c3c58983e3d4caccaac70ff Reviewed-by: Christian Stenger <christian.stenger@qt.io>
* Qt support: Use gold linker if Qt is configured that wayChristian Kandeler2019-01-144-0/+27
| | | | | | | Fixes: QBS-1421 Change-Id: I1f6d749eba38c9a4caa60341f19ee5e89e89d28a Reviewed-by: hjk <hjk@qt.io> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* SetupProjectParameters: Remove invalid assertionChristian Kandeler2019-01-073-0/+25
| | | | | | | It prevented users from overriding variant properties. Change-Id: I37c3e0a127048d7a6c6d396b20b424003ac25903 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* GCC: Make it possible to force the linker variantChristian Kandeler2019-01-074-0/+51
| | | | | | | | | | | | ...via cpp.linkerVariant. [ChangeLog] Added new cpp property linkerVariant to force use of gold, bfd or lld. Task-number: QBS-1421 Change-Id: I98f9d2581515ac8e9c984a2f8d70f4a7a3ab230b Reviewed-by: Orgad Shaneh <orgads@gmail.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Add atEnd() function to the Process serviceOla Røer Thorsen2019-01-032-1/+20
| | | | | | | | | | | | This makes it possible to use readLine in a while loop until the complete stream is read, even when reading empty lines. [ChangeLog] Added atEnd() function to the Process service, to make it possible to use readLine() in a while loop until the complete stream is read. Change-Id: Ie5f047651977195d6a93c4575bd7a8796b83ab5d Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Fix FileInfo.canonicalPath blackbox test for non-UnixJoerg Bornemann2019-01-022-2/+4
| | | | | | | The path passed to canonicalPath has to exist. Change-Id: Ibcc0a142ab5714e6a937c688fd1fd035fdfea9e3 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Add FileInfo.canonicalPathJoerg Bornemann2018-12-202-1/+3
| | | | | | | | | [ChangeLog] Added the canonicalPath() function to the FileInfo extension. Task-number: QBS-742 Change-Id: I8490b1bbdb3ac4ce84b80e82ca9f37bd2816e150 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Merge 1.12 into masterChristian Kandeler2018-12-174-0/+73
|\ | | | | | | Change-Id: I44f8e2c5f3fbe8fc67deada65a4136257572239e
| * Fix bogus error about duplicate source filesChristian Kandeler2018-12-134-0/+73
| | | | | | | | | | | | | | | | | | There is no conflict if the same file is pulled in both as a target artifact of a module and a normal source file. Fixes: QBS-1416 Change-Id: Ic7467af5a8728ebb1540381c845ffc0f40e06a9c Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | Rename PathProbe.pathPrefixes and PathProbe.platformPaths propertiesIvan Komissarov2018-12-103-4/+4
| | | | | | | | | | | | | | | | | | The naming was misleading - prefixes had the same logical meaning as platformPaths, despite the fact completely different PathProbe.pathSuffixes property exists. Change-Id: Ie593b5e03d27de4f8aafed821a3b37cc1b3b0b9e Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Android autotests: Add missing fileChristian Kandeler2018-12-071-0/+0
| | | | | | | | | | | | | | Amends 4ebb16fa78. Change-Id: I32b8651cf64a28605a77f45226c6697400b1a2bb Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | Support big Qt resourcesJoerg Bornemann2018-11-301-1/+28
| | | | | | | | | | | | | | | | [ChangeLog] Introduced the property Qt.core.enableBigResources for the creation of "big" Qt resources. Change-Id: Ic87aa70132240e67243c1cbe137583a371558261 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Fix protobuf autotestsChristian Kandeler2018-11-224-30/+18
| | | | | | | | | | | | | | | | | | | | Product-level probes run before module validate scripts, so we cannot use a Probe to determine whether the protobuf module was successfully set up. Change-Id: I6debc86f1b6b06c8bbdb276a7ff786828b9f9819 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | Add protobuf.cpp and protobuf.objc modulesIvan Komissarov2018-11-2214-0/+388
| | | | | | | | | | | | | | | | | | | | | | These modules implement google protobuf support for QBS for c++ and objective-c languages [ChangeLog] Added protobuf support for C++ and Objective-C. Fixes: QBS-563 Change-Id: I4bb7e0bdfc1e09ea26c0cd3d3739a741ff834e5d Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | qbs build: Fix look-up of qbs executable by autotestsChristian Kandeler2018-11-212-4/+5
| | | | | | | | | | | | | | | | The code worked only if qbs.installPrefix was empty. Change-Id: I9ba69f10c976b4a2b71ae4934c4cdac58895882a Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | Fix android autotest for the case of no Qt profile being presentChristian Kandeler2018-11-161-0/+2
| | | | | | | | | | Change-Id: If09515d070802cc6d34101c5662962436482bd55 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | Properly support building Qt apps for AndroidChristian Kandeler2018-11-167-12/+264
| | | | | | | | | | | | | | | | ... via the androiddeployqt tool. Fixes: QBS-991 Change-Id: I4a3abe977fee6a9d1657a4fd6c1b43709429da9f Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | Fix TestApi::generatedFilesList() for static QtChristian Kandeler2018-11-131-1/+2
| | | | | | | | | | | | | | Another fallout of 5f1b52e1c6. Change-Id: I9b574723c52c7f2b9fb7d66a5dd12033654e2ec7 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | Fix TestBlackboxQt::staticQtPluginLinking()Christian Kandeler2018-11-131-0/+1
| | | | | | | | | | | | | | | | Pulling in a platform plugin has no effect anymore if Qt.gui is not also loaded. Change-Id: I6e3e73c903192906722884dd7f566b228d938a8e Reviewed-by: Christian Stenger <christian.stenger@qt.io>
* | Fix pluginSupport autotestChristian Kandeler2018-11-125-11/+57
| | | | | | | | | | | | | | | | | | Our test machine does not have the image plugins we hardcoded, so be more flexible. This also tightens the test a bit. Change-Id: I0cc49b3066909ac3e4ec387515e689a00042f4d5 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Christian Stenger <christian.stenger@qt.io>
* | Qt support: Allow users to pull in plugins by typeChristian Kandeler2018-11-096-0/+44
| | | | | | | | | | | | | | | | | | | | ... and properly set the default values. Fixes: QBS-1409 Change-Id: Ib8f3573fcb48d395d9212ac4b01e5caf910c575f Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Mitch Curtis <mitch.curtis@qt.io> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | qbs module: Do not set default values for multiplexing propertiesChristian Kandeler2018-10-311-0/+1
| | | | | | | | | | | | | | | | | | | | We cannot know whether these values are what the user wants, or even whether they will work in a given environment. This violates the principle that modules should only pre-populate list properties if they are known to be correct under all sane circumstances. Change-Id: I81ba53fdb619639324a0f54d289d1183c909c4cb Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* | Add "show progress" support on WindowsAndreas Zieringer2018-10-301-8/+5
| | | | | | | | | | | | | | | | Should work with all console types. Fixes: QBS-1407 Change-Id: I5144469d70d79a263f9960092abda9a3d83462a1 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Merge 1.12 into masterChristian Kandeler2018-10-265-4/+82
|\| | | | | | | Change-Id: I5cf41522f027adac0889dc1df96613012216f092
| * Fix TestBlackbox::qbsConfig()Christian Kandeler2018-10-241-4/+20
| | | | | | | | | | | | | | | | ... for the case that it is run by a user with admin rights. We should not expect failure in that case. Change-Id: Ib045bf550dbedbfcaa3c38fc9f713a40541ddb61 Reviewed-by: Christian Stenger <christian.stenger@qt.io>
| * Do not try to evaluate the properties of non-present modulesChristian Kandeler2018-10-224-0/+62
| | | | | | | | | | | | | | It's unnecessary and potentially harmful. Change-Id: Iff5a9a52a7aeb518617104c5eaa41cfeededbea5 Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
* | Prevent "dynamic" values from getting assigned to command propertiesChristian Kandeler2018-10-254-7/+26
| | | | | | | | | | | | | | | | | | | | Values such as artifact objects are not plain data and we therefore must not attempt to make deep copies of them. Catch attempts to assign them to command properties. Fixes: QBS-1404 Change-Id: I1fa02720a3543cd8e2c734ed9437d31b5a573d57 Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@liri.io>
* | Fix Android autotests without a dedicated profileChristian Kandeler2018-10-232-0/+2
| | | | | | | | | | Change-Id: I95d21a41a7fdf879f45f59648ce1ba693d3a9c40 Reviewed-by: Christian Stenger <christian.stenger@qt.io>
* | Android: Enable building apps with native code and no multiplexingChristian Kandeler2018-10-195-10/+82
| | | | | | | | | | | | | | | | | | | | | | Until now, we needed to either put the native part into its own product or use multiplexing with the "APK product" serving as the aggregate. Now it is also possible to use a single product without multiplexing, which is a more natural approach in the case where there is only one architecture. Change-Id: I976168c99f75ad8e4940ac61f957c64ad29f5f5c Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* | Merge 1.12 into masterChristian Kandeler2018-10-1221-39/+120
|\| | | | | | | Change-Id: I96c735aeda89e02f1fa9107ecfc10ebf4b554dbc
| * Fix build with MSVCChristian Kandeler2018-10-111-1/+1
| | | | | | | | | | Change-Id: Iec49ba912161d5411a59440925dfd868a9c794fb Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
| * Remove bogus assertion from Properties item handlerChristian Kandeler2018-10-116-0/+58
| | | | | | | | | | | | | | | | | | It does not appear to serve a purpose, and it prevented deriving from the Properties item. Change-Id: Icf71e3358299ea7a0f697637967e65dd0fb9b743 Reviewed-by: Andy Shaw <andy.shaw@qt.io> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
| * Android support: Adapt to changes in newer revisionsChristian Kandeler2018-10-115-7/+18
| | | | | | | | | | | | | | | | Revision 17 dropped some architectures, revision 18 removed GCC. We also missed some earlier changes to clang-related paths. Change-Id: Ie2fa1891f7f4de28e18ea6caadce9eac964bb523 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
| * Fix autotests for Xcode < 10Christian Kandeler2018-10-081-1/+2
| | | | | | | | | | Change-Id: Ia162d7fb17e69e4d0c30678d0e2e3bf31418a711 Reviewed-by: Christian Stenger <christian.stenger@qt.io>
| * Fix autotests for Xcode 10Christian Kandeler2018-10-0510-31/+40
| | | | | | | | | | Change-Id: I0d218f415eedbfc75c2cf10877646f6831f38f89 Reviewed-by: Christian Stenger <christian.stenger@qt.io>
| * Fix TestBlackbox::cxxLanguageVersionChristian Kandeler2018-10-041-1/+1
| | | | | | | | | | | | | | One of the if-clauses was missing an else keyword. Change-Id: Ibbc7946adedf82902748521b9c550759a4405d23 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* | Android: Rewrite the rules gathering binaries for packagingChristian Kandeler2018-10-041-8/+6
| | | | | | | | | | | | | | | | | | | | | | These rules were unnecessarily complicated; in particular, the indirection via a text file for the gdbserver and STL binaries was not needed. This also fixed the gdbserver file name in the package: It has to be libgdbserver.so, rather than just gdbserver as on the host. Change-Id: I2315660983904e8b922164be9054d6bba51f852d Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Merge 1.12 into masterChristian Kandeler2018-09-043-0/+39
|\| | | | | | | Change-Id: Ia115255ae46772a83c1196fbe291ff295927ee92
| * Executor: Fix invalid assertionChristian Kandeler2018-09-033-0/+39
| | | | | | | | | | | | | | | | An artifact whose alwaysUpdated property is false does not need to exist and is therefore not required to have a valid timestamp. Change-Id: I642349c49a53e6e45d6b09d1acc87f4c9a0edae9 Reviewed-by: Christian Stenger <christian.stenger@qt.io>
* | MSVC: Give hint about possible reason for missing import libChristian Kandeler2018-09-046-0/+74
| | | | | | | | | | | | | | | | | | | | If an import lib is unexpectedly not present, the reason is usually that no symbols are exported from the DLL. This is not obvious at all, so catch this condition and explain what is happening. Task-number: QBS-1291 Change-Id: Ia2df8e1a27e0231e855413245703ffc05221722e Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | Filter references to importingProduct from exported list propertiesChristian Kandeler2018-09-041-1/+6
| | | | | | | | | | | | | | | | It's just a heuristic, because we don't have access to single elements of JS arrays, but it should cover the most common cases. Change-Id: I02f9ff215394d108f7ba52662eff7b4f5e8e1a62 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | Android: Properly support the aidl toolChristian Kandeler2018-08-276-1/+59
| | | | | | | | | | | | | | | | We now pull in the AIDL framework file and let the user set search paths for imports. Change-Id: I93460a77b064fa87849b93c0b0e4bd3bbfd7459f Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* | Fix race condition in TestBlackboxJobLimitsChristian Kandeler2018-08-132-11/+32
| | | | | | | | | | | | | | Do proper file locking in the test app. Change-Id: I985006c0e48a21b9412afd461edc3d7b9f02fcce Reviewed-by: Christian Stenger <christian.stenger@qt.io>
* | Merge 1.12 into masterChristian Kandeler2018-08-1010-0/+118
|\| | | | | | | Change-Id: I20256cb4a06cab8d191e389f08d77ace82e4d6b9
| * Fix potential false caching of module prototypesChristian Kandeler2018-08-107-0/+56
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Our code assumed that products with the same profile and the same multiplex configuration would also evaluate a module's condition to the same value, which is not true: Properties such as qbs.architecture, which are commonly checked in module conditions, can be set in a product item independently of multiplexing. We now evaluate the module condition for every product. According to our benchmarker, the slowdown is a very modest 2% and does not appear to increase for larger projects. This patch amends 08ce978733, which tried to address the same problem, but succeeded only for a subset of the possible cases. Change-Id: I992e0f0d5cf207949cf5d863f242b9476ecdfc05 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
| * ModuleLoader: Fix edge case in Depends.productTypesChristian Kandeler2018-08-083-0/+62
| | | | | | | | | | | | | | It makes no sense to consider multiplexed variants of the same product. Change-Id: I7ebee091264451dc587156a0c543932059ed9948 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | Enable the Application item to create Android appsChristian Kandeler2018-08-106-31/+45
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The formerly required AndroidApk item is no longer needed: We just tag the APK file as an application and let the Application item pull in the Android.sdk module for Android targets. It is also possible to have native code directly in the Application product; in that case, the multiplexed variants become dynamic libraries and the APK file is built for the aggregate. [ChangeLog] The AndroidApk item was deprecated, a normal Application item can be used instead. Change-Id: I04f5f3892f354ca9eb4f2da8055abcd8d072aba0 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | Fix JobLimits autotest on macOSChristian Kandeler2018-08-091-0/+4
| | | | | | | | | | Change-Id: I0fff631d5ddccf57ac67a7afd811ca319d589731 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>