| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
Change-Id: I80dccfacb749ecfc8bfb8000bdc26c684f2afa52
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
|
|
|
|
| |
Change-Id: I865d28b8fd930820c7145a3bf8aa76b2dd677550
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
| |
Change-Id: Ia19dd5f696accb9680c958b05676d79aaaefb4b8
Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
| |
To be able to use in constexpr context
Change-Id: If17e7346828a9c9561b0c0a1240b8d5515bae16e
Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
| |
This allows to avoid unneseccary allocations and use architecture "set"
in a constexpr context
Change-Id: I2352e899572978b3d1d7924e6f807b7441603aa7
Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
There is no need to check if marketing version is a "known" version
since all generators are created only based on the list on known
versions, i.e. there is no way how "unknown" version object can be
created
If this will be required in the future, it's better to use templates or
overloaded functions instead of virtual functions here
Change-Id: I85367c0722dc8561b2a937d4b496677af8f901f3
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
Use more pass-by-const-ref since there is no point in passing objects by
value in these cases
Also, treat this warning as error
Change-Id: I5382dcd56639f535cf240205cc5c3ac667c4ece3
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
Also, treat that warning as error
In some places move is redundant (e.g. when moving int or enum), in
others it wasn't working as expected (i.e. not moving, but copying
instead), in some, const-ref was (uselessly) moved. Fix those places
Change-Id: I0b38667a71967fa35ca627990d3c12124fb62af0
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
| |
Change-Id: I93783cfa3267f69237b0ad888d0747e4272cda0a
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
| |
Change-Id: Iabdc777d2e8492d9903109365b0f3b1a5441ca11
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Right now it is possible to generate a native projects for the
IAR Embedded Workbench IDE, e.g. using the following command:
qbs generate -g iarew7 -d <path/to/build/directory> -f <path/to/qbs/project> profile:<your/qbs/profile>
We need in a valid IAR EW QBS profile, from which the generator take
a desired target architecture and other stuff.
The IAR EW generator has a semi-intelligent logic, it parses a source
QBS project and converts a compiler flags and other stuff to an
appropriate configurations of the native IAR EW project.
Currently it is supported only one 'iarew7' generator which allow to
generate a projects for the IAR EW for MSP430 for all versions of 7 series.
Tested with the IAR EW for MSP430 v7.12.4, using as the QBS
bare-metal examples, and as other projects.
Change-Id: Ic0bbc82e6ebb3b04bced639797976e432809171f
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Right now it is possible to generate a native projects for the
KEIL UVision IDE, e.g. using the following command:
qbs generate -g keiluv5 -d <path/to/build/directory> -f <path/to/qbs/project> profile:<your/qbs/profile>
We need in a valid KEIL QBS profile, from which the generator take
a desired target architecture and other stuff.
The KEIL UV generator has a semi-intelligent logic, it parses a source
QBS project and converts a compiler flags and other stuff to an
appropriate configurations of the native KEIL UVsion project.
Currently it is supported only one 'keiluv5' generator which allow to
generate a projects for the KEIL UVision v5 for ARM architecture.
Tested with the KEIL UVision v5.23 for ARM, using as the QBS
bare-metal examples, and as other projects.
Change-Id: I3af9d01f25a9570a99a62d4ce2c30fec3566b9a1
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
| |
This fixes compiler warnings about hidden virtual functions in derived classes
Change-Id: I3b53d07263f66133a41353eb6cfe05e1f3b20cc3
Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|\
| |
| |
| | |
Change-Id: Ib40a6fb77dfb1653910e802276571fc5dcea4d64
|
| |
| |
| |
| |
| | |
Change-Id: I90cece156033b5d223a86016401a2199f5b6c11e
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Right now it is possible to generate a native projects for the
IAR Embedded Workbench IDE, e.g. using the following command:
qbs generate -g iarew3 -d <path/to/build/directory> -f <path/to/qbs/project> profile:<your/qbs/profile>
We need in a valid IAR EW QBS profile, from which the generator take
a desired target architecture and other stuff.
The IAR EW generator has a semi-intelligent logic, it parses a source
QBS project and converts a compiler flags and other stuff to an
appropriate configurations of the native IAR EW project.
Currently it is supported only one 'iarew3' generator which allow to
generate a projects for the IAR EW for STM8 for all versions of 3 series.
Tested with the IAR EW for STM8 v3.11.1, using as the QBS
bare-metal examples, and as other projects.
Change-Id: I47880d62cd1e81ed7bbfba840a5af0c558065013
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|/
|
|
|
|
|
|
|
|
|
| |
Common code which are used for the 'iarew' and 'keiluv'
generators was moved to the corelib/generators library.
Besides, this code also can be used in future for the
XML-based generators.
Change-Id: I79a21e3e078d563600d7f365785731fe9e847045
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
| |
Missing override is a warning in clang
Change-Id: I90b899df37e690aebb942bffc65db54d9aa4050f
Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
| |
This fixes -Wmodernize-pass-by-value
Change-Id: I85a732867866e43c39c1d77937fbc645433c96bd
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
| |
This fixes -Wclazy-range-loop
Change-Id: I08a435b700017cdbe27fbfdbda6e26840d9a3568
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
|
|
|
|
|
|
|
|
|
| |
This fixes this clang-tidy warning:
warning: avoid repeating the return type from the declaration; use a braced initializer list instead [modernize-return-braced-init-list]
Change-Id: I421e1e47462fe0e97788672684d47943af7df850
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
| |
Change-Id: I7419cc3fbc1e8776de3943852dcedab4c95d1c32
Reviewed-by: Anton Kudryavtsev <antkudr@mail.ru>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
| |
One exception is that the 'typedef' for function pointers
were skipped due to an additional work is required.
Change-Id: I2112fded3abeaee1d1f49f56adfd2914d5db0324
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
| |
Add overrides to function, except for destructors.
Change-Id: I1a1337b01dfef81b74ba56c5f00bf4d4cfc10935
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
| |
As per our policy not to let exceptions cross the API boundary.
Change-Id: I52e1fb9448466181b73fcd0e4c74ef33f71de98e
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|\
| |
| |
| | |
Change-Id: Iebe7584bd2978a8f8be093c6b366033076f83e74
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Configuration names must be prefixed by "config:".
This amends commit caa7d868.
Task-number: QBS-1303
Change-Id: Iac72218990f94a27f74bb7f9dd5ea57b92fbb0aa
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Make the virtual generate() function private; it is only supposed to be
called from within this class. Merge the two "private:" sections while
we're at it.
Change-Id: I43dbd5d45e8c5d803f1bfbf088dbe1944a59c05b
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|/
|
|
|
| |
Change-Id: Idb590beabb1b31f88ebb47705947a31dd3da545a
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
| |
Change-Id: I2fb8540ceba602f88d7bae16b09b1d95e5047abf
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|\
| |
| |
| | |
Change-Id: I29a74f96381a1b77c6cb1959547314786690baa4
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Default-constructed GeneratableProjectData objects may be passed to
generator methods as placeholders (in the case of the Visual Studio
generator) and calling methods on such objects must not dereference
invalid iterators.
Task-number: QBS-1257
Change-Id: I1c2bfff015efc98cbfb66d02b497320429b6c6da
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
It was and is meant for internal use only.
Change-Id: Ibe15f5838f9b728ec397a668a94128abe4ef5efa
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The same string literals appeared over and over again in the code base,
causing redundancy in the sources as well as at run-time. We now give
them a name and make sure they get instantiated at most once.
String literals that occur only once are converted from QLatin1String to
QStringLiteral unless they appear only in contexts that make use of
QLatin1String overloads or they are clearly outside of any hot code
paths.
This seems to result in small, but measurable performance improvements,
even if we assume the 1% changes to be noise:
========== Performance data for Resolving ==========
Old instruction count: 3266514138
New instruction count: 3209355927
Relative change: -2 %
Old peak memory usage: 29649896 Bytes
New peak memory usage: 29436264 Bytes
Relative change: -1 %
========== Performance data for Rule Execution ==========
Old instruction count: 3367804753
New instruction count: 3319029596
Relative change: -2 %
Old peak memory usage: 19577760 Bytes
New peak memory usage: 19091328 Bytes
Relative change: -3 %
========== Performance data for Null Build ==========
Old instruction count: 608946535
New instruction count: 604566001
Relative change: -1 %
Old peak memory usage: 14606384 Bytes
New peak memory usage: 14579936 Bytes
Relative change: -1 %
Change-Id: Ia055a52e0a4b6fe6fd0f1e7ba4bfa583cba1b0ef
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
...or operator<< if the argument was itself a list, or brace init where
appropriate.
This is a simple find and replace with manual sanity check.
Change-Id: I94b79cbf3752192dd258001bf1dfcd46f58ca352
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|/
|
|
|
|
|
| |
This is a simple find and replace with manual sanity check.
Change-Id: Iab6d46dcc3be246d1650aae2b1730f933b717be8
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
| |
These will be used in a subsequent commit.
Change-Id: I004da66d0cb334d6de3083d63c85d153403fd56b
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
|
| |
These will be used in a subsequent commit.
Change-Id: I768a3b4fa01329b43e4c993b9b4bee7d3dfb3a34
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
| |
Change-Id: I7613d221fba6d343726418837ce5f3013b9a8d96
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
|
| |
Replace a qDebug usage with it.
Change-Id: I4fa34c2e48100a6ec7c10bae8d2ca186dbab9d29
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
| |
...and fit the generator plugins into this new plugin structure.
Plugins are now handled entirely by the build system in a generic manner
and no part of qbscore (code or build files) has a direct reference to
any plugin regardless of whether qbs is being built as shared or static
libraries.
Change-Id: I4a20546ce275df71083ee22c2cb67f781c4de764
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|\
| |
| |
| | |
Change-Id: I2fcb2113a24c8807467aa03aa3e7590d53761706
|
| |
| |
| |
| |
| |
| |
| | |
This fixes a regression introduced in e68a7a5.
Change-Id: Ic1df82c636b8505e83fdca58c28062bd54bbea17
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
Task-number: QBS-1128
Change-Id: I632096fd350472c7274a6cb38b4ddbdf8ec04515
Reviewed-by: Thomas Epting <thomas.epting@stryker.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
While Qbs product names must be unambiguous, using the same project
name several times is perfectly valid, as long as all projects with
the same name belong to a different root project.
Utilize the project's source file location to distinguish projects
that have the same name. Use this in conjunction with the name to
create an ID that is used as the key for the solutionFolders map.
Change-Id: I47079cd4207d505892e79755a3986614025d2749
Task-number: QBS-1082
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
Reviewed-by: Thomas Epting <thomas.epting@stryker.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|/
|
|
|
| |
Change-Id: I2915c578968bed425a8d8b617b56df88ed3f2882
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
| |
Change-Id: Idd41fc4d9819649a85739f984862bed6480fddd5
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
| |
Change-Id: I0ba0a39b4f7d8c7c76b869584317b53b85cffc81
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
| |
Change-Id: I1cde37fcf30b066130b9f5ff13743af009a6cb4f
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|\
| |
| |
| | |
Change-Id: I4ca26628cb30ca75ceab0ca38d8bb253193b6166
|