The functionality comes from Qt6 and will be enabled only for Qt6 builds.
/w3 level for MSVC, -Wall -Wextra for the rest of compilers.
Change-Id: Ib62a27e50ce37a6a860ba2bfa1bdb80a7ae60ace
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Introduced Package interface for mocking purposes.
Made some functions visible in headers for testing.
Added basic test skeleton for mcu plugin.
run cmd: `qtcreator -test McuSupport`
Change-Id: I1011d49052bd8c894da393d8a285b241682f1f94
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Add another option to mark a test as manual and use this for some
existing.
Manual tests will not be added as a ctest, but they can still get
executed explicitly.
Beside this allow to use a condition when using add_qtc_test().
Change-Id: I03d5397db36c0a2c9ee506a4214ed68fae6ad6e7
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Prepend our own relative RPATHs to CMAKE_INSTALL_RPATH (or
CMAKE_BUILD_RPATH respectively) instead of overriding them completely.
That allows adding an RPATH to e.g. a self-compiled and separately
installed Qt to the installed Qt Creator.
Fixes: QTCREATORBUG-27008
Change-Id: I8cd9167fdf5ba9838850fcfab8135da9b79e6695
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
On some systems IMPORTED_LOCATION isn't set, but configuration-specific
locations like IMPORTED_LOCATION_RELEASE are. In these cases, fall back to
the location of the release build if the default isn't found.
Fixes the build on Arch Linux.
Change-Id: Iff87a8356302a260b2ac5f959f835d1cdf8a5c65
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
CMake 3.16 is available on the major Linux distributions nowadays,
so we can get rid of some workarounds.
Change-Id: I32500375748f33c3e40fbd7a08824d823f817a8f
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Removes qmake as a build system for building Qt Creator itself.
Keep them for some tests that are not completely moved to CMake yet.
Change-Id: I846c6ef65626b6dfae6375fdc85d00677aa8c2fb
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Qt 5.15.2 includes API that makes transitioning to Qt 6 easier.
We currently have workarounds for Qt 5.14 in place that we can
remove when requiring 5.15.2, and we also can stop adding workarounds
for new code.
Change-Id: I920fdccc41d755a6ad39cb5161cd916999fee755
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: Robert Löhning <robert.loehning@qt.io>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Without SKIP_DEPENDENCY the source files would be treated as cmake
list files, which meant that for every source change cmake would
have been rerun.
Change-Id: Icc087fa951fa7e7aee25504367b6146e66bf9dcb
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
When running cmake after a build was done on Windows with MSVC will
get more files to build:
[1/15 9.0/sec] Running utility command for copy_python_dll
[2/15 3.6/sec] Automatic MOC and UIC for target ProjectExplorer
[3/15 2.2/sec] Building CXX object
src\plugins\projectexplorer\CMakeFiles\ProjectExplorer.dir\sessiondialog.cpp.obj
[4/15 2.9/sec] Building CXX object
src\plugins\projectexplorer\CMakeFiles\ProjectExplorer.dir\codestylesettingspropertiespage.cpp.obj
[5/15 3.6/sec] Building CXX object
src\plugins\projectexplorer\CMakeFiles\ProjectExplorer.dir\editorsettingspropertiespage.cpp.obj
[6/15 4.1/sec] Building CXX object
src\plugins\projectexplorer\CMakeFiles\ProjectExplorer.dir\projectexplorersettingspage.cpp.obj
[7/15 4.6/sec] Building CXX object
src\plugins\projectexplorer\CMakeFiles\ProjectExplorer.dir\sessionmodel.cpp.obj
[8/15 5.1/sec] Building CXX object
src\plugins\projectexplorer\CMakeFiles\ProjectExplorer.dir\customparserconfigdialog.cpp.obj
[9/15 5.2/sec] Building CXX object
src\plugins\projectexplorer\CMakeFiles\ProjectExplorer.dir\projectwizardpage.cpp.obj
[10/15 3.4/sec] Building CXX object
src\plugins\projectexplorer\CMakeFiles\ProjectExplorer.dir\ProjectExplorer_autogen\mocs_compilation.cpp.obj
[11/15 1.6/sec] Building CXX object
src\plugins\projectexplorer\CMakeFiles\ProjectExplorer.dir\projectexplorer.cpp.obj
[12/15 1.6/sec] Linking CXX shared library
lib\qtcreator\plugins\ProjectExplorer.dll
When adding "-d explain" to the build parameters ninja would print:
ninja explain: restat of output
src/plugins/projectexplorer/ProjectExplorer_autogen/timestamp older than
most recent input
src/plugins/projectexplorer/.rcc/generated_testdata.qrc.in
(6611078583964975 vs 6611078835307007)
ninja explain:
C:/Projects/QtCreator/build-repo-Desktop_Qt_5_15_2_MSVC2019_64bit-Release/src/plugins/projectexplorer/ProjectExplorer_autogen/mocs_compilation.cpp
is dirty
Change-Id: Iaa00478bb6d81f7235d25ad541fbf86c7ca593f6
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
get_filename_component called with incorrect number of arguments
Change-Id: I4f1c8dbc185c2e53bc596bf02a48f72b76ac6955
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
This was needed in the early days of the CMake port when the list of
source files would change due to being added to the qmake project
files.
Change-Id: I7afd219b24ab7a0d87fce26ba35dac75cf8caa5b
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Usually that is done by Qt, but not if reduce_relocations is off.
Fixes: QTCREATORBUG-26435
Change-Id: Idd337d59555fd6e732215b9c753820672f63c91f
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Christophe Giboudeaux <christophe@krop.fr>
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
This works around QTBUG-97023.
When building the Qt Creator super repo against the installer-provided Qt 6.2.0 on Linux,
Qt6Gui creates an imported library target named Qt6::ATSPI2_nolink.
This one must also be promoted to global scope.
Otherwise, subsequent find_package(Qt6 COMPONENTS Gui) calls fail with
Some (but not all) targets in this export set were already defined.
Targets Defined: Qt6::Gui;Qt6::GuiPrivate
Targets not yet defined: Qt6::ATSPI2_nolink
Add Qt6::ATSPI2_nolink to the components that are promoted and aliased.
Change-Id: I39c46e8f1c831e2fad2aa4e928b785da08a0407c
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Clang 13.0 has made CommonOptionsParser's constructor protected
and the test fails to build, and clang is considered as being
not found.
Change-Id: I7b28b5104bcb6541f3ee9c4bf56e9bb1898d58af
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
The named option is BUILD_LINK_WITH_QT, which when set to ON will
generate the QtCreator.ini file needed for Qt Creator to find the
installed Qt.
Change-Id: If3a47a463510fbfc90a314829378c6c4e505d2f7
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
This was done to have qmake parity when we compared the qmake and cmake
release builds.
Since we are past that now, and the cmake build is the one used to do
releases, we can drop the number from the dlls.
Change-Id: I60d1b368daf4258884c239204c2e3c18f244e930
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
dsymutil is shipped with libclang, but we usually don't want to use that.
Fixes universal builds while we don't have a universal build of libclang yet.
Change-Id: Ie5c435e1c391f7bb0a8f1faadbb7b3375d101990
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>