aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* Android.ndk: Fix wrong name in PropertyOptionChristian Kandeler2016-12-021-1/+1
| | | | | | Task-number: QBS-1065 Change-Id: I77cdd3397cb918a4f77188e1464bc0f96449b009 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* Change the default value and behavior of Qt.core.resourceSourceBaseDenis Klychkov2016-12-022-5/+7
| | | | | | | | | | | | | | | | | | | The default value "undefined" tells the qrc file generator to use only the input file name as a resource alias. The benefits of changing the default value are as follows: 1) It's a bit weird to reset a normal value to undefined in qbs code. 2) This simplifies feature usage for output Artifacts and single files. 3) If one wants to put a hierarchical structure into a qrc file there are a lot of cases in which they have to specify resourceSourceBase manually. 4) When a Group with a wildcard and a prefix is used this makes user's intention a bit clearer. This strongly separates "I want this set of files" from "I want this directory structure". Task-number: QBS-1053 Change-Id: Ib6413643398dca475b4b71ad884202c9e7fb823a Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Add possibility to specify the base name of the generated qrc fileDenis Klychkov2016-12-023-1/+18
| | | | | | | Task-number: QBS-1043 Change-Id: I5f537f148792b0e2647d08d6e8004d79ae402f07 Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Fix minimum supported macOS version in READMEJake Petroules2016-12-011-1/+1
| | | | | | | We require Qt 5.4 and therefore cannot possibly claim to support 10.6. Change-Id: I14fb3364a31aada5635f233013f655ca238b91f4 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Remove version checks on macOSJake Petroules2016-11-301-62/+24
| | | | | | | | | The Qbs build requirement, Qt 5.4, requires macOS 10.7 so none of these code paths are ever exercised. As a bonus, this fixes a deprecation warning. Change-Id: Ib7ae2973ca18aa4bb2e7e781a271c01ae613f0f5 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Fix change tracking for module properties requested from artifactsChristian Kandeler2016-11-3012-9/+66
| | | | | | | | | | ... in commands. For some strange reason, this particular case was missing. Task-number: QBS-1049 Change-Id: I2ceb000ef5b362754f9fcbccd44b3e3c3e396e46 Reviewed-by: Denis Klychkov <kd.snake@gmail.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Fix VS Qt version matchingJoerg Bornemann2016-11-301-3/+5
| | | | | | | | We must not compare the full compiler versions, but only the major and minor versions. This amends 26c5cbc1. Change-Id: I8e48047ce70ba237fdbb1a8593f2469b2eb7d60a Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Prepare VS Qt version matching for VS 2017Joerg Bornemann2016-11-302-19/+19
| | | | | | | | Comparing major versions is not enough for VS 2017 since its compiler has the version number 19.1. Change-Id: I689e2d5399661ed7fe323eea0215d92ea4560e1a Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Rename some symbols to disambiguateJake Petroules2016-11-301-12/+12
| | | | | | | | This helps with building an "amalgamation" build of Qbs where all source files are concatenated. Otherwise there are duplicate symbols. Change-Id: Idb92b98709930274aa667d53430f03ac57654c32 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Fully qualify referencesJake Petroules2016-11-303-12/+13
| | | | | | | | This helps with building an "amalgamation" build of Qbs where all source files are concatenated. Refereneces to these symbols are otherwise ambiguous. Change-Id: If8cb43b7822fc02df4957a9b5f6b132eae749d7a Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Add or improve header guards for some filesJake Petroules2016-11-304-6/+16
| | | | | | | | Header guards should be present for all header files and also be unique project-wide. Change-Id: I9943f471792f2944ccfe04cfccef23140cbdf555 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Fix MSVC warningOrgad Shaneh2016-11-291-1/+1
| | | | | | | MSVC2015-amd64 warns about size_t -> int implicit conversion Change-Id: I6b926e093b57bfbeedb2fbbe2b39c56d72a634f1 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Accurate handling of Qt.core.resourcePrefixDenis Klychkov2016-11-285-12/+34
| | | | | | | | | | | Previously the value of this property was taken only from the first input. That value became the only prefix for the whole qrc file. Now every unique value of resourcePrefix generates new <qresource> tag with the corresponding prefix. Change-Id: I2177b3bc38085014c41107225bcb4bd4c51ba58b Reviewed-by: Christian Kandeler <christian.kandeler@qt.io> Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* Executor: Fix undefined behaviorChristian Kandeler2016-11-281-1/+2
| | | | | | | | | | C++17 introduces new requirements on the template parameters of std::priority_queue. Task-number: QBS-1051 Change-Id: I9a22b8f2d3c1f0bd532b0a76f5d2a16bebc303f7 Reviewed-by: Raphael Kubo da Costa <rakuco@FreeBSD.org> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Benchmark effort for expanding wildcards during change trackingChristian Kandeler2016-11-282-0/+10
| | | | | | | | This operation is potentially performance-sensitive. Let's gather some real-world data on it. Change-Id: I430ce6c3bb35106b7f2bf37ab978996ba92f36ad Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* cpp module: Use libc++ for Darwin targets when C++ >= 11 is enabledChristian Kandeler2016-11-251-0/+2
| | | | | | | The libstdc++ shipped on these platforms does not support C++11. Change-Id: I147643a2684eb75604289491ed4f32e807f92425 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* Fix Qt 5.6+ main() support for iOS and tvOSAndrew Knight2016-11-251-2/+9
| | | | | | | | Don't link to qtmn in Qt 5.6; in that version it has been superseded by setting the entry point to _qt_main_wrapper. Change-Id: I9941f7347ffbe530550430ce93e1867edbc0985a Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Do not follow symbolic links in File.copy()Christian Kandeler2016-11-251-1/+1
| | | | | | | Doing that is very likely not what the user wants. Change-Id: I1681809e6840745f11f5495cc13e2f0778d08c9a Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Work around a QDirIterator peculiarity when expanding wildcardsChristian Kandeler2016-11-251-2/+4
| | | | | | | | | | If we set the filter to include files, symbolic links to directories are suppressed (presumably because QFileInfo::isDir() returns true for them). Task-number: QBS-964 Change-Id: Iab96a2371d99e772f3e1664e1e904f899d068116 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Cpp module: Don't set the C++ standard library explicitlyChristian Kandeler2016-11-241-6/+0
| | | | | | | | | | At the time this code was introduced, we observed problems on Linux when using clang to build C++11 code against libstdc++. I am no longer able to reproduce that problem on any distribution, so let's go back to using the platform default. Change-Id: If477b47c674696a0973a16924c2c0d5e91d6c1ea Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Separate file scope and imports scopeChristian Kandeler2016-11-249-0/+40
| | | | | | | | | | | | | | When evaluating, imported names need to have a higher precedence than names in the item scope, as otherwise they can clash with dependencies of the product (see bug report and autotest). We cannot simply move the file scope's precedence up, because in addition to imports and the "file" and "filePath" properties, it also potentially contains ids from e.g. a module prototype, which would then override the respective entry in the module scope. Task-number: QBS-930 Change-Id: Ifb8b7c933225f872ccc3e878b2bf01b7b0ac0f99 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Fix "baseValidation" autotest for inferior file systemsChristian Kandeler2016-11-242-1/+1
| | | | | Change-Id: I45a4ef9efa31afa5669fdacf4e2bc5622ea48a69 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Fix group-level module property evaluation for nested groupsChristian Kandeler2016-11-243-21/+181
| | | | | | | | | The original fix for module properties in groups was done in the 1.6 branch, which does not have nested groups. Task-number: QBS-1005 Change-Id: Ib173dc4d28458ffc0db3fc1e068be86b41096357 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* GCC module: Do not add assume libc++abi with libc++ on LinuxChristian Kandeler2016-11-241-4/+0
| | | | | | | | | | | | | We hardcoded the respective flag because it was observed that linking failed without it. However, this requirement seems to be a (questionable) peculiarity of one specific Linux distribution (namely ArchLinux). In general, one should not need to add the low-level ABI library. Where it is required, the user can add it to the list of libraries (possibly via a profile). Task-number: QBS-878 Change-Id: Iece8e1af566b0696419b84c82d076841e1cb9c66 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* Add autotest for calling a base item's validate scriptChristian Kandeler2016-11-235-0/+36
| | | | | | | | Because why not. Task-number: QBS-979 Change-Id: I6fce703e59b7806f634d749dbc90b8d28536d4de Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Fix input.fileName for Scanner itemsJoerg Bornemann2016-11-232-2/+4
| | | | | | | | | | | Let fileName contain the file name and filePath the file path like everywhere else. [ChangeLog] In Scanner items input.fileName now contains a file name, and input.filePath contains the file path. Change-Id: I3abc01989c56940df935047db56055936b3ab224 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* ModuleLoader: Check for cyclic dependencies between modulesChristian Kandeler2016-11-236-0/+52
| | | | | | | | Somewhat surprisingly, this was only done for products so far. Task-number: QBS-1044 Change-Id: I5f6cfb904430e42f159486159ead726b522e8f60 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Set product scope in nested groups from modulesChristian Kandeler2016-11-232-1/+3
| | | | | | | This was forgotten when we introduced nested groups. Change-Id: I824cba8c7958902268f188b5a3009d7e252fc39a Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* MSVC: Do not overwrite build environment with result from ProbeChristian Kandeler2016-11-231-2/+2
| | | | | | | | | We want to amend it instead. Task-number: QBS-1038 Change-Id: Ib1b87b654d92911473cd03f9c32243a54fb98635 Reviewed-by: Jake Petroules <jake.petroules@qt.io> Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* qbs build: Don't use relative paths in product parent itemsChristian Kandeler2016-11-232-2/+4
| | | | | | | | We should be explicit about where we assume the source files to be. The base directory might change in the future. Change-Id: Ia1668169e78ce8334d1807e54acf085756257a2e Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* Prohibit use of ambiguous idsJoerg Bornemann2016-11-224-0/+38
| | | | | | | | | Like in QML, we now yield an error if the same item id is defined multiple times in one QBS file. Task-number: QBS-1042 Change-Id: Icdae0a95eff34c432cc1a15b310748dfdbab92eb Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Fix usage of ambiguous ids in tst_language::propertiesBlocksJoerg Bornemann2016-11-221-26/+26
| | | | | Change-Id: Ice23078476aa36cf32695f773c6f9722151ff489 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Cpp Module: Remove default rpath entry for LinuxChristian Kandeler2016-11-222-2/+1
| | | | | | | | | | It is unclear why that was added in the first place; there is no apparent reason why every Linux application should have "$ORIGIN" in its rpath. Task-number: QBS-1035 Change-Id: Ibdf631f394bda4df4461d47aaa4ee13fe0a2f00c Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* Fix plugin-meta-data test on macOSJake Petroules2016-11-211-0/+3
| | | | | Change-Id: I1dcc72ea9b744b01c3f5925f79fd252eeaede151 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Handle some TODO items in test projectsChristian Kandeler2016-11-183-9/+3
| | | | | Change-Id: I519c0d116b4fac2b49278886febbaa31ec6e3790 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Android NDK module: Move I/O operation into ProbeChristian Kandeler2016-11-182-3/+4
| | | | | Change-Id: If6884dc0c6625932ca50d7b035357b2df660e9dc Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Remove the concept of an "Export Scope"Christian Kandeler2016-11-188-58/+50
| | | | | | | | | | It turns out that it is not (no longer?) needed, and it introduced subtle differences between Export items and normal modules. Task-number: QBS-1039 Change-Id: Iece1a4ee9ca3ceba16291b31552008ab0bcd60f7 Reviewed-by: Denis Klychkov <kd.snake@gmail.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Input scanner: Prevent resolving directories as included filesChristian Kandeler2016-11-181-1/+4
| | | | | | | | | This can otherwise easily happen, in particular with C++ standard library headers that don't have file extensions. Change-Id: I30529271278f567e6cb26054ea3b01df7efcfbfa Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io> Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
* qbs build: Use correct module name "Qt.testlib" instead of "Qt.test"Christian Kandeler2016-11-182-2/+2
| | | | | Change-Id: I124b339edf6f3c466e85a361ace9849003e51812 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* Merge "Merge 1.6 into 1.7" into 1.7Christian Kandeler2016-11-183-2/+12
|\
| * Merge 1.6 into 1.7Christian Kandeler2016-11-173-2/+12
| |\ | | | | | | | | | Change-Id: Ie25088c964f0d47ea8dde639667ebf85264615fe
| | * Fix bug that causes re-linking on every build on Linux1.6Christian Kandeler2016-11-143-2/+12
| | | | | | | | | | | | | | | | | | | | | Introduced by d0516e8473. Change-Id: I5bf9e9acab9485ba47c4f5b02e7b0c4ae2493266 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | | Use product.targetName for APK name instead of product.nameJake Petroules2016-11-171-2/+2
|/ / | | | | | | | | Change-Id: I45a94280a65744ebf967eef78277d35204246585 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Skip soversion test on Windows more reliablyChristian Kandeler2016-11-171-2/+2
| | | | | | | | | | | | | | | | Contrary to my expectations, we actually do find the readelf tool on some Windows machines. Change-Id: I922bd293aadc9384dfd59afba5cad376e12184d6 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* | Fix include path order in C++ dependency scannerJoerg Bornemann2016-11-171-27/+13
| | | | | | | | | | | | | | | | | | | | The list of include paths must not be stored in a temporary set. Otherwise the order of include paths is undefined. Also, since introduction of merged top-level modules in commit 16404c35 we don't need to recurse through the dependency hierarchy. Change-Id: I50a843fc85dbf1cb04883774d43e5904da815579 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Fix "generatedFilesList" API test with mingwChristian Kandeler2016-11-161-8/+7
| | | | | | | | | | Change-Id: I2251d6b122aaf69a7145488c1ba0326c6e7dd2b5 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | qbs_benchmarker: Fix interpretation of massif outputChristian Kandeler2016-11-161-1/+1
| | | | | | | | | | | | | | We mistakenly read the "extra" value rather than the "total" one. Change-Id: I06e584ffffb535687d72111ca7a884c94dac2878 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | Warn against possibly improper use of JS extensions in qbs project filesChristian Kandeler2016-11-1118-1/+269
| | | | | | | | | | | | | | | | | | | | For instance, we inform users when they are doing potentially slow File I/O operations during project resolving and advise them to use a Probe instead. Task-number: QBS-1033 Change-Id: I3e9d0eb36c6ddebc5f4a112c329f96d25856ac0a Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | Use a Probe in the ib moduleChristian Kandeler2016-11-101-1/+11
| | | | | | | | | | | | Task-number: QBS-1033 Change-Id: Ie37a15c884c1573ae69fda2aa256286c31f611e2 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* | Xcode: move SDK enumeration into a ProbeJake Petroules2016-11-101-1/+12
| | | | | | | | | | | | | | | | This should significantly speed up performance in the Xcode module. Task-number: QBS-1033 Change-Id: I723683dc42e3ea7a3ace0bdae15749bd06592d2a Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>