aboutsummaryrefslogtreecommitdiffstats
path: root/share/qbs/modules/archiver
Commit message (Collapse)AuthorAgeFilesLines
* Rename PathProbe.pathPrefixes and PathProbe.platformPaths propertiesIvan Komissarov2018-12-101-1/+1
| | | | | | | | | 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>
* Remove the base module import from shared imports and modulesJoerg Bornemann2018-06-221-1/+0
| | | | | Change-Id: I5270e033dc41b5bd76a417099514c69cc073008b Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* archive module: improve error message when no archiver tool is availableJake Petroules2017-06-021-1/+3
| | | | | Change-Id: I84ee841d96e80a0477303f2db858ffcf34e29fd7 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Merge 1.5 into 1.6Jake Petroules2016-06-281-1/+1
|\ | | | | | | Change-Id: If1a2c368170d89d5e6e11b08a32b37901d51eb1d
| * Do the OS X to macOS rename.v1.5.2Jake Petroules2016-06-271-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [ChangeLog] The "osx" value in qbs.hostOS and qbs.targetOS has been replaced with "macos". For backwards compatibility, qbs.hostOS will still contain "osx" in addition to "macos", and an error will be printed if qbs.targetOS contains "osx" but not "macos". Specifying "macos" without "osx" is allowed. These checks are subject to be removed in a future version of qbs, so update your hostOS and targetOS checks accordingly. [ChangeLog] cpp.minimumOsxVersion has been deprecated and replaced with cpp.minimumMacosVersion. cpp.minimumOsxVersion is subject to be removed in a future version of qbs, so update your projects accordingly. Change-Id: I479891829dff6eb6750cb2a04e1395f085896f63 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* | archiver module: allow 7z to create more archive types.Jake Petroules2016-06-151-29/+78
|/ | | | | | | | 7zip can also create zip, tar, gzip, and bzip2 archives. Allow it to be used as a fallback for these. Change-Id: I40a2acd1e5e47aac27cd1c3003ac49bba4eba066 Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
* Replace 'the Qt build suite' with 'Qbs' in copyright notices.Jake Petroules2016-06-061-1/+1
| | | | | | Change-Id: I885d94bb14b325dc36767a840ebdb0be1fb59dd2 Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Do module validation and Probe resolving after module merging.Christian Kandeler2016-01-121-5/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Probes were running for every non-merged instance of a module. This had several drawbacks: a) Performance. Consider this product: Product { Depends { name: "cpp" } Depends { name: "Qt"; submodules: ["core", "gui", "network"] }; // ... } Now let's assume that the cpp module contains a Probe. Due to inter-module dependencies, that Probe would run four times when resolving the product. (Admittedly, the user could get rid of the explicit dependencies on cpp and Qt.core, but even then, the Probe would run twice). Obviously this does not scale, particularly if we consider that Probes usually access the file system. b) Correctness. Probes running in the non-merged instance only have a "local" view of the state, so they will not see properties attached by a "higher-level" module, as the linked bug report demonstrates. This patch attempts to solve these problems by merging the modules before running Probes. Note 1: In order to achieve the desired result, the process of module merging had to be extended so that all non-merged instances are now replaced by their merged counterparts. One consequence of this is that access to non-merged module instances via JavaScript is no longer possible (i.e. "moduleA.moduleB.property" and "moduleC.moduleB.property" can no longer yield different results). This feature does not seem to be used in any of our projects and there also is no autotest for it. Can anyone come up with a sensible use case? Note 2: I superficially thought about a different approach: Evaluate the Probes in the module prototype. This would be a much less intrusive change and it would further increase performance, because Probes would run only once per module instead of once per product. However, they would need to become "output-only" in the sense that they could only be parameterized via command-line parameters. This would break existing usages e.g. in the android module, indicating that such a design might be too limiting. Task-number: QBS-833 Change-Id: I0c14ade3dcf73ad419208cbd570942f778f2e871 Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* archiver: Don't continue when the zip tool is unknown.Christian Kandeler2015-08-191-0/+2
| | | | | | | | | Without this patch, we simply run the unknown executable without any arguments, which can hang forever if it takes its input from stdin by default. Change-Id: I846821c3bb7321435b84d6fae5e26d97254b20bd Reviewed-by: Jake Petroules <jake.petroules@petroules.com>
* Make project resolving with the Java module significantly faster.Jake Petroules2015-07-151-0/+5
| | | | | | | | | | | | Building the qbs "vehicles" test would previously invoke javac -version 159 times due to repeated indirect evaluations of java.rawCompilerVersion when running the java module's validate script. Now javac -version is only run once each time the java module is loaded (4 times in the vehicles test, once for each product). Change-Id: I662d2e5a87b40e64532410f1cbe7ed7f6e3aac78 Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
* Add support for creating ZIP archives in the archiver module.Jake Petroules2015-07-141-9/+60
| | | | | | Task-number: QBS-420 Change-Id: Ib01627e652f1061bad602146ad63e5efc4ba657e Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
* Use product.targetName as the default value of archiver.archiveBaseName.Jake Petroules2015-06-121-1/+1
| | | | | | | This keeps the file naming indirection consistent with other modules. Change-Id: Ia42c5b3c6ce97854e1828ed9bc14e012f7e7db0e Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
* add missing license headersJoerg Bornemann2015-04-151-0/+30
| | | | | | Change-Id: I49d8886b0f9811fb9a8b6e33cb7974534b4a1b35 Task-number: QBS-750 Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
* Add module for creating archives.Christian Kandeler2015-01-221-0/+107
This first implementation supports tar and 7-Zip. Change-Id: I432cd4e7d3a020adec133fb8b40c6548e9c83fea Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>