Commit Graph

132 Commits

Author SHA1 Message Date
Cristian Adam
94008aa71e CMake: Fix compilation error when QmlPlugin is not built
Ammends 6fe11f80d6

Change-Id: Ifa909d8e2946c4fdd8e2a5301bab2686a615d89a
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
2020-09-25 10:00:47 +00:00
Cristian Adam
de580388bb CMake Build: Enable PCH for tests
Because the tests were missing the visibility flags, and PCH targets
that didn't have the visibility flags were skipped, tests were build
without PCH.

Change-Id: I56ddc81fadcb9e1004032a7e6096ea2c0a480a19
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-09-21 10:45:02 +00:00
Orgad Shaneh
1c53cff4fa CMake build: Fix unittest linkage
GoogleTest depends on pthread.

Change-Id: I2ed93257a7c8fa73d47d51a3a0a4c25b2fb88dae
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2020-09-11 13:07:39 +00:00
Eike Ziller
102d8d48db CMake build: Make Qt6::Core5Compat available in a portable way
While porting to Qt6 we'll need the compat library at some places.
Add a custom Qt6Core5Compat target that we can unconditionally use.
For Qt5 it refers to a dummy target.
For Qt6 it refers to the actual compat library.

Task-number: QTCREATORBUG-24098
Change-Id: Idd2b9f285352f685cfe715eee3fa046dfb468873
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2020-09-07 10:13:39 +00:00
Eike Ziller
43ee53c233 CMake build: Qt6 build fixes
Set Qt5_VERSION for version checks (e.g. currently still JavaScript
locator filter).

Export special FindQt5.cmake for external plugins and super-repo builds.

Change-Id: I5edb8b0e8bef1a341cd2ff04a13d0a6ce22f6558
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2020-09-04 07:41:57 +00:00
Eike Ziller
0ceb9f487c CMake build: Check minimum Qt version
Change-Id: I81244c2480d647a2cf48885b2a125a02b11767b4
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2020-09-03 12:11:34 +00:00
Eike Ziller
6cff79d377 CMake build: Support building clang tooling without static libs
Create a FindClang.cmake and move all Clang configuration there.
Find Clang and choose static libraries if available, otherwise use
clang-cpp if available.
Add option to link to clang-cpp even if static libraries are available.

Fixes: QTCREATORBUG-23172
Change-Id: If40304d174469df0c786259e724cbee8de0e2d0e
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2020-09-03 10:03:45 +00:00
Eike Ziller
00ced26f47 Merge remote-tracking branch 'origin/4.13' into master
Change-Id: Ib60df85a85fc1c94d8cc0dc23ea9fcdb4822bcab
2020-08-25 12:42:04 +02:00
Alessandro Portale
2555627b25 CMake build system: Avoid duplicated include paths
Clean the paths before adding them to targets.

This prevents the code completion from showing multiple identical
entries when completing an #include.

It also removes ~2MB from build.ninja.

Task-number: QTCREATORBUG-24514
Change-Id: I19f3df400e65d8dfc4747415a8e14dae05d4b88c
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2020-08-21 10:39:08 +00:00
Cristian Adam
d6c3846ab1 CMake Build: Add Google Testing 1.10.x as submodule
Fixes: QTCREATORBUG-24510
Change-Id: I763d72524f2e581671e18bcd9cda42d5bf7bccdf
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2020-08-19 15:50:37 +00:00
Eike Ziller
e9f74df8cf Bump version to 4.13.0
Change-Id: Id1d2ebca1c2bca86683a3172bfe2f95123e1b897
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-08-14 10:06:21 +00:00
Tobias Hunger
2eb9e12b5d CMake: Use Qt5::DesignerComponents
QTBUG-75867 about missing Qt5::DesignerComponents support has been
fixed, so use that over our own hand-rolled version.

Change-Id: I6d8bb7f7d5359050f20a095adb4a074f143e8d49
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-08-10 14:52:01 +00:00
Eike Ziller
3944162039 Merge remote-tracking branch 'origin/4.13' into master
Conflicts:
	cmake/QtCreatorIDEBranding.cmake
	qbs/modules/qtc/qtc.qbs
	qtcreator_ide_branding.pri
	src/plugins/cmakeprojectmanager/cmakebuildstep.cpp
	src/plugins/cmakeprojectmanager/cmakebuildstep.h
	tests/auto/debugger/tst_namedemangler.cpp
	tests/auto/qml/codemodel/check/tst_check.cpp

Change-Id: Iefd5f71c03c0078513b76a92af764a4fb22ee4c2
2020-08-10 15:56:54 +02:00
Orgad Shaneh
bafc8381c6 CMake: Replace QT_USE_FAST_{OPERATOR_PLUS,CONCATENTION} by QT_USE_QSTRINGBUILDER
Missed in commit 52b2ca55c9

Change-Id: I1f1862e5ad8fd5a29c3e0a56adbc7960e538f441
Reviewed-by: hjk <hjk@qt.io>
2020-08-10 02:57:48 +00:00
Eike Ziller
9dd28206cd Bump version to 4.13.0-rc1
Change-Id: Icc4b98903a16d05d978ad27c2aeffac8dbf22227
Reviewed-by: David Schulz <david.schulz@qt.io>
2020-07-27 08:40:11 +00:00
Eike Ziller
a065175d58 CMake build: Fix configuring with CMake 3.10 and external yaml-cpp
CMake 3.10 does not allow using target_include_directories with
INTERFACE on imported targets.

https://gitlab.kitware.com/cmake/cmake/-/issues/15689

Fixes: QTCREATORBUG-24356
Change-Id: I2427276f0851010cda2321c45eff0628713af2ff
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2020-07-17 06:34:35 +00:00
Eike Ziller
eac46f7f24 Bump version to 4.13 beta2
Change-Id: I836987b4c4e28c65cb67c2efba595ed92d071b6a
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-07-14 07:54:02 +00:00
Eike Ziller
1de74cceab Merge remote-tracking branch 'origin/4.13'
Change-Id: I015bac0cccdf466a923c706abdedd8bd8800b0cd
2020-07-06 10:30:54 +02:00
Knud Dollereder
9a4e65cc73 CMake Build: Ensure valid destinations for generated files
- Make the build system aware that empty_pch.c/.cpp are generated files
  to prevent invalid access from _add_pch_target.
- Force the creation of the translation output directory before copying
qm files into it.

Change-Id: Iaff5e5ebdbfec7e89a47d277d95f9dec760a5b6b
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-07-01 09:35:58 +00:00
Eike Ziller
f4bc5df89e Bump version to 4.14 beta
Change-Id: I299dfae2c9422c1f02c3357109d426beaadbec7e
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-07-01 08:32:35 +00:00
Eike Ziller
7f44d8582b CMake build: Remove timeout for dumper tests
They take much longer, but are also optional.
Makes it possible to run via e.g. "ctest -V -R tst_debugger_dumpers"

Change-Id: I8bbda6ca36e25cd896b1f3be5d1696a27b8acc53
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2020-06-30 11:39:24 +00:00
Eike Ziller
569ad98852 CMake build: Fix library version numbers on macOS
The plugin libraries got version 0 and compatibility version 0
and libraries compatibility version 4.0.0,
which is not compatible to plugins built with qmake and the runtime
linker prevents loading.
Use the correct IDE_VERSION and IDE_VERSION_COMPAT.

Change-Id: I9a17627c5d212052df644bbc6711dc8fb8307315
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2020-06-29 06:58:46 +00:00
Eike Ziller
e2670bf3e6 CMake build: Build tests with relaxed QString casting
Like in the qmake build.

Change-Id: I216649123b4f25e5c01f2a71162fc200e0a36d85
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2020-06-12 14:30:08 +00:00
Cristian Adam
be339abb16 CMake Build: Fix unittests
Change-Id: I4214954d880d19dbe9a070d031c417dc3caf068a
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2020-06-09 12:44:29 +00:00
Eike Ziller
8dff37f0d3 Disable ClangRefactoring by default
It is too unstable even for experimental status.

Change-Id: I38e483eaece00aec0211a81414c6c5a000bf283f
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2020-06-02 13:32:14 +00:00
Eike Ziller
63df649655 Packaging: Get rid of binary-artifacts repository usage
We removed the cdbextension and wininterrupt binaries from there a long time
ago, and instead package these for the installer. Package newest jom version
from its actual release in the installer as well.

Task-number: QTCREATORBUG-23908
Change-Id: Ic9bdc97774cbeb894fc261e57af127d6cdc71205
Reviewed-by: Antti Kokko <antti.kokko@qt.io>
2020-05-26 06:35:45 +00:00
Eike Ziller
b3ffd8d1eb CMake build: Move documentation functions to re-usable location
Removes "install_..._docs" and "clean_docs" special targets.
Instead install documentation with "--install . --component qch_docs"
and "--install . --component html_docs" which have the advantage that
the install prefix can be specified later on with --prefix.
Also removes export of IDE_SOURCE_DIR, which is not used.

Change-Id: I4fce0b9aa8c7fc40b7e94e065777ddf4c0b76c41
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2020-05-25 11:31:06 +00:00
Eike Ziller
d5443cea77 CMake build: Unify handling of qtc_add_... arguments
Unify handling of EXPLICIT_MOC, SKIP_AUTOMOC, EXTRA_TRANSLATIONS

Change-Id: I9f5cbe9fe6b58ec527edd5e25008153455857ed8
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2020-05-18 11:19:01 +00:00
Eike Ziller
d09c453ff1 CMake build: Use some more extend_qtc_target even internally
To avoid duplication.

Change-Id: Ida6c1e17a21cfdca9208e089760287ff55bae595
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2020-05-18 11:18:50 +00:00
Eike Ziller
3c535503cb CMake build: Avoid using extend_qtc_target directly
Also add a extend_qtc_test which checks if the test is known.

Change-Id: Idd3b3a02ac61fce2622cb8681233cfbd96a77bc4
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2020-05-18 11:18:26 +00:00
Eike Ziller
90612d14c7 CMake build: Move internal functions from QtCreatorAPI
Change-Id: Iade7ae7533abb8b8ed0ccba8bd246b4a734794b6
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2020-05-18 11:18:15 +00:00
Eike Ziller
172833bb1e CMake build: Allow files with relative paths in qtc_copy_to_builddir
Files with absolute paths still go directly into DESTINATION directory.
Follow-up of a9aa561234

Change-Id: I558616f78b3e49a8b3be4372791281f5ca9138c9
Reviewed-by: Alexis Murzeau <amubtdx@gmail.com>
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2020-05-13 10:37:12 +00:00
Alexis Murzeau
a9aa561234 CMake: copy clang and resource files only if necessary
Uses a timestamp file in the build directory to detect when the input
changes using DEPENDS from add_custom_command.

Total copied files size sum up to more than 260 MB. This was copied at every
incremental build, even if nothing changed.

This leads to faster build, especially when the copied files are not
cached in RAM or when not using a SSD.

Change-Id: I3a0b691b961e1d8591068bacf40ae2467c8637cf
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2020-05-11 22:36:30 +00:00
Eike Ziller
20ef5c6de3 Merge remote-tracking branch 'origin/4.12'
Change-Id: Ibbf9f16677a58bdcdd3ce63701ffa34db6f44916
2020-05-11 11:36:22 +02:00
Cristian Adam
646d26b9cb CMake Build: Set BUID_WITH_PCH to OFF if CMake version less 3.16
Change-Id: I11a58cf2e67272b9d45a877dfa20c089706cfc2a
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2020-05-07 16:29:13 +00:00
Eike Ziller
bf490b62e0 Merge remote-tracking branch 'origin/4.12'
Change-Id: I11936ad9e4515c3c6c9df1d949cc8116aeccd4c4
2020-05-06 09:43:20 +02:00
Eike Ziller
cc04c8d8e4 CMake build: Make translation function available to external plugins
And fix that the "ts_all" target did not get the custom target prefix.

Change-Id: Iff6a5e328456f3d949c31f2e41b48c400fad773c
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2020-05-05 09:48:31 +00:00
Cristian Adam
f6042b257d CMake Build: Fix for building with Qt6
Qt5: :moc target is being used, and it had no alias.

Change-Id: I1350507b14089d70c64ed6632e6dcce8c4881f0f
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2020-04-29 08:57:14 +00:00
Eike Ziller
e9661e43cb Merge remote-tracking branch 'origin/4.12'
Conflicts:
	cmake/QtCreatorIDEBranding.cmake
	qbs/modules/qtc/qtc.qbs
	qtcreator_ide_branding.pri
	src/libs/qtcreatorcdbext/qtcreatorcdbextension.cpp

Change-Id: If6963d1ef7b5a1ea6343f68c8e7ce6fb5f482f21
2020-04-28 15:48:36 +02:00
Eike Ziller
106e0430ed Bump version
Change-Id: Ieb662d20d5bba2e410039bcdeb2459129601187a
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-04-28 06:11:58 +00:00
Eike Ziller
d79febdde9 Merge remote-tracking branch 'origin/4.12'
Conflicts:
	src/plugins/cmakeprojectmanager/cmakekitinformation.cpp

Change-Id: I90ef0063ed24e23bcb3d73fff086f50324faa1e2
2020-04-24 13:58:05 +02:00
Eike Ziller
ae080facf5 CMake build: export less generic public includes
Do not put every plugin's and lib's source folder into public includes.
We require includes of the style <somelib/foo.h> and <someplugin/bar.h>
if someone depends on somelib or someplugin.

Change-Id: I3a9f200b7c3879cf431b00a1bab4a70f7aa0a9ec
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2020-04-24 11:40:51 +00:00
Eike Ziller
49626f7ea9 CMake build: Fix devel package issues
Include paths and headers were missing for building a separator
Qt Quick Designer plugin.

Task-number: QTCREATORBUG-23778
Change-Id: Ib6ba96ad42a8b2b36e0ee2f0e3c51c27f3365d37
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2020-04-23 10:03:37 +00:00
Eike Ziller
deb0eaf795 Merge remote-tracking branch 'origin/4.12'
Conflicts:
	cmake/QtCreatorIDEBranding.cmake
	qbs/modules/qtc/qtc.qbs
	qtcreator_ide_branding.pri
	src/plugins/cmakeprojectmanager/cmakebuildsystem.cpp

Change-Id: I34c3d1fd5be90537e37d15e00b1a0d455d1bf81d
2020-04-14 09:47:38 +02:00
Eike Ziller
d347aa4003 CMake build: Support QTC_PLUGIN_REVISION
Change-Id: Icc3735b9b7d0d1fa8a9e8695da3cb39275b96219
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2020-04-09 10:22:52 +00:00
Eike Ziller
76617a5512 Bump version -> 4.12.0
Change-Id: I6894b5b095393981d9d42569ad43024e40711f94
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-04-08 08:28:40 +00:00
Eike Ziller
af29767857 Bump master->4.13.0-beta1
Change-Id: Ia25db16341e45f75c893c21c159775fd3428b538
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-03-20 07:21:45 +00:00
Eike Ziller
c6e03959d8 Bump version
Change-Id: I1139e1c10311fda9f46367dcb397fa674050f7da
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-03-19 16:26:44 +00:00
Eike Ziller
4894afee52 Bump version -> 4.12 beta2
Change-Id: I9da6834efe5d1423dc3d5a47d9472c50dc26d44c
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-03-06 14:19:52 +00:00
Cristian Adam
6d169ae7aa CMake Build: Less file creating during configure
Change-Id: I263853f0a903d81a8d869bc4f5683e1a1b0078e2
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2020-03-02 11:31:39 +00:00