aboutsummaryrefslogtreecommitdiffstats
path: root/src/app/qbs/qbs.qbs
Commit message (Collapse)AuthorAgeFilesLines
* Add an LSP serverChristian Kandeler2023-11-071-1/+13
| | | | | | | | | | | | | | | This provides IDE-agnostic tooling via the Language Server Protocol (https://microsoft.github.io/language-server-protocol). The protocol implementation is taken from Qt Creator, plus a minimal set of dependencies. For now, our server provides only the "Goto definition" capability, which allows IDE users to click on a Depends item and get to the corresponding module or product. Task-number: QBS-395 Change-Id: Ia444aa7a6d1c114e4fd456098c74134ccdaadcec Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* Remove `import qbs` from all project filesDenis Shienkov2021-08-041-1/+0
| | | | | | | | | | | | | | ... because we don't need in this inclusion at all. But for some cases it is impossible to remove that inclusions (and even to move on next lines) because then the some tests are failed by unknown reason. For those tests were added the following comments on the inclusion lines: `// FIXME: Don't remove this import because then the test fails!` Change-Id: I9153fd0e38b94af08168e499ee46a23889ee4d73 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Fix static buildChristian Kandeler2019-10-101-0/+4
| | | | | | | | Make sure we link in the generator plugins. Fixes: QBS-1491 Change-Id: I8c48a73f972c4089cfc8c097a67e2945837e9ed4 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Introduce the session commandChristian Kandeler2019-09-181-0/+8
| | | | | | | | | | Offers a JSON-based API for interaction with other tools via stdin/ stdout. This allows for proper qbs support in IDEs that do not use Qt or even C++. Change-Id: Ib051a40b7ebe1c6e0c3147cca9bd96e7daec1fde Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
* Use Utilities.cStringQuote in qbs project filesChristian Kandeler2017-10-131-5/+5
| | | | | | | | This function has been available since 1.8. Change-Id: I0114bf8ec41f3be0c306be943d15599e09f69cc7 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io> Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* Introduce the qbsversion module for building QbsJake Petroules2017-06-021-2/+1
| | | | | | | | | | Use that instead of QbsFunctions.qbsVersion() and read it in qbs_version.pri; this has the advantage that simple text processing tools can retrieve the project version without having to parse JavaScript. It's also set from only one place now. Change-Id: Icfd2a6bf12b794b55c9ba31934a96b4483224eae Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Add a Utilities.cStringQuote functionJake Petroules2017-01-301-0/+1
| | | | | | | | This accepts a raw string and provides a C string literal, properly escaped and quoted. Change-Id: I61a02ce07f152f36ac31bf973932a7f88406bb75 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Give the two copies command.{cpp,h} non-ambiguous namesJake Petroules2017-01-051-2/+2
| | | | | | | | | | | The pair in tools/buildgraph becomes rulecommands.{cpp,h} The pair in parser becomes parsercommand.{cpp,h} This resolves a conflict which prevented compilation of the entire set of qbs sources with MSVC and the /Fo option. Change-Id: Ic909d02a230d8e59f3bf4d00fc895bf54739961a Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* qbs build: Move build config properties into a dedicated module.Christian Kandeler2016-06-071-3/+3
| | | | | | | | | | Qt Creator will do the same in order to be able to build plugins that are not part of the main source tree. This means the qbs build and install settings can no longer be controlled by properties in a higher- level project file, but need to come from a module. Change-Id: I20c0a4538395c8ee838b33f35be84ee59f601f90 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Add support for building internal executables (libexec) as part of Qbs.Jake Petroules2015-05-191-0/+1
| | | | | | | This will be used by the upcoming Java output artifact scanner. Change-Id: I04dd36ee6a6a7913b604bdda73c14879b2854721 Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
* Add the "qbs resources" product as a dependency to the qbs frontend.Christian Kandeler2015-01-081-0/+1
| | | | | | | | So that things like "qbs run" or executing the autotest-runner will take changes in modules etc into account. Change-Id: I68de7eb4d98c0aa3371327fa2ffdd0c2d75a38a4 Reviewed-by: Jake Petroules <jake.petroules@petroules.com>
* qbs build: Introduce convenience item QbsProduct.Christian Kandeler2014-10-301-3/+2
| | | | | | | | As base product for QbsApp, QbsLibrary etc. Has little functionality at the moment, but will get more soon. Change-Id: I29ac78db2ff1ba109dd09a55e7593b2beeaba741 Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* remove qbsSettings() functionJoerg Bornemann2014-07-091-1/+0
| | | | | | | | Don't use a special Settings shared pointer. This simplifies the code a lot. Change-Id: I974cf9634d1760633744b1ed3cc18a9458ae2caf Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
* Command-line frontend: Make plugin and search paths configurable.Christian Kandeler2014-06-241-1/+2
| | | | | | | | | Projects embedding qbs might put these somewhere else. Task-number: QTCREATORBUG-12473 Change-Id: I13e1a1843586501bb3e17a314ccd11af6c25ee43 Reviewed-by: Jake Petroules <jake.petroules@petroules.com> Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
* Make the "lib" part of plugin and library locations configurable.Christian Kandeler2014-02-271-1/+4
| | | | | | | | Can now be set to e.g. "lib64" if required. Task-number: QBS-343 Change-Id: I6f34ade37f39400cc5fde63133a464565feb34c1 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* fix product/module name collisionJoerg Bornemann2013-10-301-1/+2
| | | | | Change-Id: I6a5d57b2ec0cfb5ca3eaf0e261a1b60f90c08258 Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
* Remove "showProperties" command.Christian Kandeler2013-08-201-2/+0
| | | | | | | | | Firstly, it's more of a debugging thing than something that should be exposed as a command to users. Secondly, it's not very useful, as all the groups and artifacts can have different properties. Change-Id: I4aec83550c2f8e597752a181437e580622a6a587 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* Prepare qbs project files for selective inclusion.Christian Kandeler2013-07-021-1/+2
| | | | | | | | | | | | Namely: - Move product "share" into its own file. - Move version number definition into its own file. This will make it easier to pull in only parts of the sources in an aggregating project (e.g. an IDE that does not need the executables). Change-Id: I41b724fe8a0b20d957b924fe0a827263add43dce Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* add qbs files to build qbsJoerg Bornemann2013-03-151-0/+43
Change-Id: I3aca8364a58ac26a495909c0313f8f0588784b9f Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>