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>
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>
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>
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>
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>
- 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>
This is needed to build plugins "out of source".
Change-Id: If842cde86e1eb54daa3daf7f9d6f27751f657d9e
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
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>
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>
- 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>
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>
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>
...since we had crash issues on OS X with 3.6.0/3.6.1.
Released packages are already shipped with 3.6.2.
Change-Id: I364288d5c7dc32beacbbdbc231c2be4e6a6818bf
Reviewed-by: Marco Bubke <marco.bubke@theqtcompany.com>
The icns files have also been moved into an asset catalog because
"source code" as a rule should be stored in the preferred form of
modification.
Change-Id: I883db5704a46d8d7cf601f7fb4471619ebbc34bf
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
When using rpaths on OS X, the install name prefix should always be set
to "@rpath" and the rpaths should be appropriately set to the locations
in which that binary looks for its dependencies.
While this change is behaviorally identical, it brings the project
setup in line with how developers expect these properties to be set, and
thus reduces confusion.
As an aside, it now correctly follows the principle of relocatability
(install name prefixes like @rpath/Frameworks are only partially
relocatable as opposed to @rpath alone which is fully relocatable).
Change-Id: I7b5cc7a316d2608037ea9ab087029baa85aee2ba
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
type: application actually does nothing now, as the application type is
used for both bundled and unbundled products on Apple platforms.
Instead, consoleApplication being set to true influences Qbs not to use
a bundle.
cpp.infoPlistFile became bundle.infoPlistFile in Qbs 1.4.
Change-Id: I6540aa91b2db61ed4cbf2ff30bd46d69db5f9d92
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
...otherwise, if the compilation fails, the user is left without any
hint.
Change-Id: I753aefac0c9fbd24b148235e792fe3b3a2aea21b
Reviewed-by: Marco Bubke <marco.bubke@theqtcompany.com>
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
Such items behave "module-like" and one should therefore not count on
them having access to the scope of their parent item.
Change-Id: I8a323ae31218c6b1ee721ffaa65c04ccf08943bc
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
This is a partial result of wip/clang-oop. More will follow.
This allows us to invoke the completion out of the Qt Creator process
and thus safes us as against libclang crashes.
At this point only the completion use case is supported.
Some notes on the individual components:
src/libs/codemodelbackendipc
* library encapsulating the inter process communication handling
* used by the backend application and in a follow-up change by the
creator integration
src/libs/3rdparty/sqlite
* version 3.8.10.2
* dependency of codemodelbackendipc, will be used to storage indexing
data, among others
src/tools/codemodelbackend
* the backend application
tests/unit:
* unit tests
Change-Id: I91a48e27467581a22fb760a18d8eb926008fea60
Reviewed-by: Alessandro Portale <alessandro.portale@theqtcompany.com>
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
Reviewed-by: Marco Bubke <marco.bubke@theqtcompany.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
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>
The respective items are available without it.
Change-Id: Idc840cf08e7bec84f561c096afe8de25b1fb8468
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
Like we have now for the qmake build too.
Change-Id: I00a4cc01f35a4d93b52951c5591dadd4b6aa5e79
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>