Commit Graph

130 Commits

Author SHA1 Message Date
Christian Kandeler
31ce111727 Embed the qbs documentation also when building with qbs
Task-number: QTCREATORBUG-13124
Change-Id: I214a92a03a6d0fa75c1cceca1909c68add09d2c8
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2017-03-10 15:47:54 +00:00
Eike Ziller
cec29f34ea Merge remote-tracking branch 'origin/4.2' into 4.3
Conflicts:
	doc/src/qtcreator.qdoc
	tests/system/suite_general/suite.conf

Change-Id: Ia298b177d6920a1d853e342b62cf98f7c48a278a
2017-03-09 12:14:55 +01:00
Eike Ziller
461a7483e3 Doc: Remove unused QTC_LICENSE_TYPE define
Change-Id: Iba49e6fc6b1d857cc0f87b5bf833f42a4a8a976f
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
2017-03-06 07:46:13 +00:00
Eike Ziller
d64e17ad55 Move mimetype definitions to plugin specs
- Avoids the hassle of QRC files and manually registering mime types
- Avoids performance regressions because of mime types that are
  registered after mime database has been used
- Makes it technically possible to detect that a disabled plugin could
  handle a mime type if it was enabled

Change-Id: I373008b1b56e9c6b4853055f20b3eeb112a6eff9
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: hjk <hjk@qt.io>
2017-02-27 13:54:59 +00:00
Eike Ziller
7f12aab68f Version bump
Change-Id: I013dc48c3aedc3d586f626e47a9e1f306b4bcefe
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2017-01-23 15:41:41 +00:00
Marco Bubke
ddbe6117b3 Bump C++ version to 14
Our compilers support some features which are part of the C++ 14 feature
set. Some off them are silently compiled with the C++ 11 setting.

For example:

[foo=bar] {}

is actually working with GCC but is part of C++ 14.

Change-Id: Icf2c3806e26c675f8251768c6ad54ba4da186d11
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2017-01-05 10:34:29 +00:00
Eike Ziller
c42c023022 Bump version
Change-Id: Ia998360a90a2decc6a7e81f11b64adb367c217b0
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2016-12-20 09:34:17 +00:00
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
Eike Ziller
6b0495d997 Version bump
Change-Id: I25f835a66200a1f578deff65ca83aeb02c217790
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2016-12-01 11:23:43 +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
Christian Kandeler
c32ef98c0f qbs build: Don't use relative paths in product parent items
We should be explicit about where we assume the source files to be. The
base directory might change in the future.

Change-Id: Ifd53c2586f5c67a72ed928130647083d467a3e30
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
2016-11-23 09:11:43 +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
Orgad Shaneh
9c09ca9e42 Merge remote-tracking branch 'origin/4.2'
Change-Id: Ia98031eb87f1859c3736faa0cdd8b655e8a50689
2016-11-14 11:17:13 +02:00
Christian Kandeler
77ba40603a qbs build: Fix the names of some Qt modules in Depends items
It's "testlib", not "test". And "designercomponents" is actually a
private module.

Change-Id: I1a14d107bb5568b4f3807558ec6ed11937ac816a
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2016-11-10 16:36:17 +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
1853f01a5b Merge remote-tracking branch 'origin/4.1'
Change-Id: Ia442f30f387fe9292217582260bbe79e54608810
2016-08-05 11:40:07 +02:00
Christian Kandeler
d004203b13 qbs build: Fix warnings on Windows
Change-Id: Ic62200d30be054128fd810ae85e7b8eb1900be89
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
2016-08-05 07:12:20 +00:00
Christian Kandeler
5d34676fdc qbs build: Remove "-s" from linker flags
It is unclear why this was added, the qmake build does not have it
either, and it breaks linking on some versions of macOS.

Change-Id: I878273e072808416a12cf5c973f2ceacde549f74
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
2016-08-01 07:27:01 +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
Eike Ziller
546df37c98 Merge remote-tracking branch 'origin/4.1'
Conflicts:
	README.md
	src/plugins/modeleditor/actionhandler.cpp

Change-Id: I65c2885593b881eda94872168a3891cab9cafe71
2016-07-11 10:46:05 +02: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
Eike Ziller
7812390b0b Update requirements for building Qt Creator
Change-Id: I462c496a6998862d1f1d09fc323342429115b67b
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
Reviewed-by: hjk <hjk@theqtcompany.com>
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: Ralf Nolden <nolden@kde.org>
2016-07-06 08:11:51 +00:00
Christian Kandeler
35c17ac73a qbs build: Remove version part from plugin file names
The files now have the same names as in the qmake build (e.g. libCore.so
rather than libCore.so.4.0.82).

Change-Id: I426a8b3ff55525cc9b066bfa4288d993fe3c1b6e
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2016-07-05 11:24:35 +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
Jake Petroules
b6a6796d5b Change installNamePrefix to sonamePrefix in accordance with Qbs 1.5.
Task-number: QTCREATORBUG-16428
Change-Id: I219a388460ba359aec76671ba1a3b01ac4509372
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
2016-06-13 12:33:34 +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
Christian Kandeler
94d7d18404 qbs build: Remove some differences to qmake build results.
- Install library symlinks.
- Do not create symlinks for plugins.
- Skip some translations.
- Rename some binaries.
- Do not install the ptracepreload library.

Change-Id: I0faa98034154e3840cd2695cab14b72c34cfc5c3
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2016-05-17 09:10:34 +00:00
Christian Kandeler
87e8f03c03 Set the right version number on our binaries.
While we have not encountered issues so far with using the default
values, it seems more correct to set the version so that e.g. on Unix
a library's soname contains the actual Qt Creator major version etc.
For good measure, also set the compatibility version on OS X.

Change-Id: I956c473e0b440fc87ffe1aaf99af626da733b5fb
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2016-05-13 10:42:18 +00:00
Christian Kandeler
4d5a8368a7 Build documentation also when using qbs.
Change-Id: I17330fa27effc633a06bc8f0a5864e771b831476
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
2016-04-27 07:05:19 +00:00
Oswald Buddenhagen
3c2f0096ea Merge remote-tracking branch 'origin/4.0' 2016-03-22 15:23:12 +01:00
Christian Kandeler
ed224796f1 Fix autotests build.
Change-Id: I5b0ea5df0a7321c6938146a5a03b089c837ff642
Reviewed-by: hjk <hjk@theqtcompany.com>
2016-03-22 14:19:07 +00:00
Christian Kandeler
0bbd8a85d3 Fix project resolving with qbs master.
Change-Id: Iee12398a4897d795ea5b8b6cadfec8f234ba069d
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
2016-03-22 14:00:51 +00:00
hjk
2baa1f8b77 Bump required Qt version to 5.5
Change-Id: I4f152bde842c20b0dade863ffea118fe32322c5b
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2016-03-21 13:44:13 +00:00
Christian Kandeler
a57f930036 qbs build: Adapt to new implementation of qbs.FileInfo.
We cannot pass in a relative path as the first argument of
FileInfo.relativePath() anymore, which we relied on in some places. The
old implementation assumed that if both arguments were relative paths,
they had an implicit common base directory.

Change-Id: I55ee62e478da761cf085587c57220d5fb1ac990e
Reviewed-by: Jake Petroules <jake.petroules@theqtcompany.com>
2016-03-02 09:46:37 +00:00