Commit Graph

34 Commits

Author SHA1 Message Date
Eike Ziller
36b443dfba Add defines for relative data paths
Derive the relative paths used in code from the paths used by the build
system.

Change-Id: I208ee55d3c1ee76921734f5c1c6c40d3fcb9724c
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2016-12-01 14:24:53 +00:00
Orgad Shaneh
7b3642cce4 Merge remote-tracking branch 'origin/4.2'
Change-Id: I259a402bc896fc2e359cc96b7510453ac9a9a552
2016-11-28 15:27:51 +02:00
Nikolai Kosjar
84dd43f413 qbs build: Fix passing on include dir for intrinsics of libclang
In

    commit 31258ec555
    qbs build: Introduce libclang module.

"llvmVersion" was overlooked.

Because of this, the definition of CLANG_RESOURCE_DIR in
clangcodemodel.qbs led to an invalid path which eventually was
discarded.

Change-Id: Ia1eb50cf738df4affbedc99849bf5326a8e8fb19
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2016-11-24 13:51:32 +00:00
Eike Ziller
4026864f38 Merge remote-tracking branch 'origin/4.2'
Conflicts:
	src/plugins/clangrefactoring/refactoringengine.cpp
	src/tools/clangrefactoringbackend/source/symbolfinder.cpp

Change-Id: I7c1c87f3b8ade43a07f6668565501042e967fa8b
2016-11-16 16:04:59 +01:00
Nikolai Kosjar
fd1d10987c Clang: Require LLVM >= 3.9.0
We already ship with a cherry-picked change from version 3.9.

Change-Id: Iad09ac8db470506c5de0321f3a2346c549b11b31
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2016-11-15 08:46:46 +00:00
Eike Ziller
51e755d413 Version bump for after 4.2-beta
Change-Id: Ide9a51c899914531e9d23a2adf614d424a2746d8
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2016-10-27 11:45:52 +00:00
Eike Ziller
7480f58cf1 Merge remote-tracking branch 'origin/4.2'
Change-Id: Ied7c5b01ade2a71e92541fcced2935adcf143421
2016-10-24 13:17:28 +02:00
Nikolai Kosjar
19e026d7db Clang: Fix using forward slashes for CLANG_RESOURCE_DIR in qbs
Change-Id: I251567529ec33ef76043006c68749724208cc811
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2016-10-21 14:04:25 +00:00
Friedemann Kleint
e6b23dc2e5 clangcodemodel: Use forward slashes for CLANG_RESOURCE_DIR define
Adapt qmake and qbs files, fixing warnings on Windows:
clangutils.cpp(78): warning C4129: 'o': unrecognized character escape sequence
clangutils.cpp(78): warning C4129: 'L': unrecognized character escape sequence
clangutils.cpp(78): warning C4129: 'l': unrecognized character escape sequence

Change-Id: I7a5fe674665437582457645f2a081e1e38d5df77
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2016-10-21 10:29:40 +00:00
Eike Ziller
062fc3a58e Version bump
Change-Id: I673bd70a9a0df4466b3e1eb4197162fcbd4b2140
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2016-10-12 08:22:33 +00:00
Orgad Shaneh
0b6c2422b8 Project: Disable deprecated functions
Change-Id: Ifd26ab4237664c0887b521e867cf801a65d49fcd
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2016-10-10 08:16:46 +00:00
Orgad Shaneh
35d7352b3e Merge remote-tracking branch 'origin/4.1'
Change-Id: Ie96fa53a88bcd06fa688a579c1d84aaf6f5e905f
2016-07-29 16:13:18 +03:00
Christian Kandeler
b1477190de Fix qbs build on macOS
"osx" -> "macos"

Change-Id: Ie25e096b2759cf8f96411560fcca337169d80b08
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
2016-07-28 14:45:12 +00:00
Eike Ziller
fd3a082b84 Version bump
Change-Id: I6b125d5c86e8526281c46d1fbf4cebb36b5f592d
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2016-07-19 06:34:33 +00:00
Nikolai Kosjar
9650adad14 Clang: Require at least LLVM 3.8.0
Change-Id: I2de3eef7bc06cba6298d64a9a042a01decc05384
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2016-07-11 08:22:32 +00:00
Eike Ziller
3576b7e128 Version bump
Change-Id: I561cf077846c4bde8294eae7723830f1c8295a13
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2016-07-06 11:47:58 +00:00
Nikolai Kosjar
fcc0648ba1 Clang: Emit a warning if LLVM_INSTALL_DIR is not set
Change-Id: I18f02e0878e2037857ccd85943c13bbac9cade6b
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
Reviewed-by: hjk <hjk@theqtcompany.com>
2016-07-04 14:36:26 +00:00
Christian Kandeler
e54b53cdaa qbs build: Use precompiled headers.
It was an oversight that we haven't done this before.

Change-Id: Ic338503f6c1ca5e6c52c9af3bdbdb92b7776cac1
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
2016-06-23 11:45:37 +00:00
Christian Kandeler
31258ec555 qbs build: Introduce libclang module.
This is The Right Way to detect libclang. Using a Probe will also
slightly improve performance in qbs 1.6 due to the result caching.

Change-Id: I063a8d108d02b620dda2df75dd8c014c84f27ec7
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
2016-06-17 13:33:03 +00:00
Christian Kandeler
a0cceb2810 qbs build: Do not make the ProParser a static library after all.
If ProParser is a library, all plugins depending on it (to be able to
get at the include paths) will also link to it, but there must be only
one instance of its data present. So we go back to building the sources
as part of the QtSupport plugin, while the ProParser product is now only
responsible for exporting the necessary defines and include paths.

Change-Id: I9ad62343064d8aea8ddc4776a462308c4d6ae283
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2016-06-15 12:36:43 +00:00
Christian Kandeler
e1e203598d qbs build: Final steps to support building plugins "out of source".
- Use the entire Export block when creating a module, not just the
  Depends items. Adapt references to the product source directory
  and the "share" directory so that they point to the respective
  locations in the install tree.
- Install dev headers for some more plugins.
- Bug fixes & polishing.

Create a "dev installation" like this:
$ qbs qtc.make_dev_package:true qbs.installRoot:<install root>

Then build your plugin against it like this:
$ qbs qtc.make_dev_package:true qbs.installRoot:<install root>
project.qbsSearchPaths:<install root>/qbs-resources
(Using qbs from 1.5 branch; 1.5.1 requires a trivial wrapper project.)

That's all. Successfully tested with all commercial plugins on Linux.

Change-Id: Ie39c4717dafcd431c533421a15f2f898783d8521
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2016-06-15 12:35:55 +00:00
Christian Kandeler
44c5c6ac58 Add static library for qmake project file parser.
This is needed to build plugins "out of source".

Change-Id: If842cde86e1eb54daa3daf7f9d6f27751f657d9e
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2016-06-13 09:34:10 +00:00
Christian Kandeler
f085cb2236 qbs build: More steps toward creating a "development installation".
Namely:
    - Install header files.
    - Install imports and modules.
    - Create modules from products and install them.

This is most of what we need. The main thing still left to do is
dealing with paths in Export items. These have to be translated
somehow. (Currently we only copy the Depends items out of the
Export items and ignore everything else.)

Change-Id: I12d49fa31d1c1e05bc77a0e0ce3ec9c78c27192a
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2016-06-13 08:36:26 +00:00
Christian Kandeler
a0f956f050 qbs build: Introduce new module "qtc".
The qtc module gathers properties that used to live in the top-level
project file. This is the first step towards making it possible to build
plugins against an installed Qt Creator ("out of source build").

Change-Id: Ia1514cc9c888e80be01b308e908de48980fcbdb8
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2016-06-08 08:46:00 +00:00
Orgad Shaneh
044eeacde5 Load only tested plugins when invoked with -test
By default, a clean settings path is used for test environment.

All the default plugins are loaded, although they're not needed.

This change significantly improves loading time for tests.

Change-Id: I24254f3e538e3f0e6d233d0989738dc1ce238209
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@theqtcompany.com>
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2015-03-24 06:22:03 +00:00
Eike Ziller
b5b6a46b4e ExtensionSystem: Use Qt 5 plugin metadata instead of .pluginspec files
Change-Id: I2b2c704260c613985a4bda179658ec1f8879e70f
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
Reviewed-by: Daniel Teske <daniel.teske@digia.com>
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-09-02 15:11:24 +02:00
Joerg Bornemann
b354d86014 fix usage of internal module names in qbs project files
Change-Id: I4afdddfe4d92e80ea831f130716c7713103b1f26
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
2014-08-14 18:14:59 +02:00
Joerg Bornemann
6e333f0607 Qbs: Avoid some warnings
Change-Id: Id308bdcc916f7bdf931e45b0f02ea0b1ebe12320
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-07-23 15:12:59 +02:00
Christian Kandeler
01addecb8d qbs build: Get rid of CopyTransformer.
That item was using a directory as an output artifact, which was only
working by accident and often caused warning messages about failure to
remove files.
Use a proper module instead, which is the nicer solution anyway.

Change-Id: Ib75a0ce26a24c78eb5421367995a8fc72f6a3c2a
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2014-07-17 13:08:30 +02:00
Christian Kandeler
c18922a349 Replace deprecated construct in qbs files.
"{in,out}put.fileName" -> "{in,out}put.filePath".

Change-Id: Icf55489cdf2187f9f1a6f413054af1fba8025f4c
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2014-03-27 13:57:53 +01:00
Joerg Bornemann
84df758ec6 use new base import style in qbs files
Change-Id: Iecf32122df41f304ec6df538bb0dd8a263238a86
Reviewed-by: Jake Petroules <jake.petroules@petroules.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2014-03-11 14:20:22 +01:00
Christian Kandeler
d9c0362b76 qbs build: Fix warning about deprecated property.
Change-Id: Id1bbd4f3132a98aa981a82a23c85e90830c55583
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2014-02-21 15:38:13 +01:00
hjk
93b7528431 Rename pluginjsonmetadata.xsl -> qtcreatorplugin2json.xsl
The original name inconveniently starts with 'plugin', creating a
conflict for shell tab completion when trying to enter src/plugins/...
taking extra keystrokes to resolve.

Change-Id: I7fa59d767aa900f73cd643dfab0d5b2131652a2d
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-12-20 12:41:09 +01:00
Christian Kandeler
f1da03c73b qbs project files: Make use of new qbsSearchPaths property.
Change-Id: I396d970fafea1fd0b4c4d73883796662a1d0064b
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-10-09 18:08:56 +02:00