Commit Graph

123 Commits

Author SHA1 Message Date
Oswald Buddenhagen
1fcadf2cd2 fix wording regarding toolchains
Change-Id: I09c2d94af6791fab255d1a72a8484e78d6a239d2
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2022-03-11 10:15:35 +00:00
Oswald Buddenhagen
691e3ff12d fix markup
Change-Id: I87f316aeff1d30c6df5758b7384c1020d8f7e55c
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2022-02-28 16:54:41 +00:00
Knud Dollereder
ebac821e9e Replace minitrace with nanotrace
Minitrace is a library to produce json traces suitable for chromes
built-in trace viewer. Unfortunately it lacks the ability to add
custom arguments to the json files which is needed in our case
in order to examine Design Studios state from within the evaluating
python script. Nanotrace is a rewrite of minitrace that adds this
ability. Additional benefits are higher precision and the fact that
it is written in c++.

Change-Id: Id2610b93188483d88547369c3fa8dacbe4dee9f7
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2022-01-25 14:25:04 +00:00
Eike Ziller
33f2074272 Bump requirement to Qt 5.15.2
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>
2022-01-17 10:20:32 +00:00
Cristian Adam
45e078541e Doc: Update Clang version / URL in README.md
Change-Id: Ic0e1865cf6761436a12d8f36d1af80e462118c2f
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2022-01-13 11:07:49 +00:00
Eike Ziller
c2e27bd927 Merge remote-tracking branch 'origin/5.0' into 6.0
Change-Id: I436d15f2aeefbf6fc80340f01398509c213fc1b1
2021-11-03 14:26:47 +01:00
Kai Köhne
75b6266694 Document third-party components by their upstream name
Also use a paragraph from the upstream documentation for
third-party code that missed it so far.

Change-Id: I2609d32eafca9810116f7a9ac2df9221541acb15
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
2021-11-02 13:22:51 +00:00
Eike Ziller
e8ba5b75cf Merge remote-tracking branch 'origin/5.0' into 6.0
Conflicts:
	src/plugins/android/androidpackageinstallationstep.cpp
	src/plugins/cppeditor/cppmodelmanager.cpp

Change-Id: I3bad38e1cfe717e98209d49461c9813a8e555eff
2021-10-26 09:13:24 +02:00
Kai Köhne
c565846723 Update details about LLVM/Clang in acknowledgments
LLVM moved to github a while ago - the old svn repositories are dead.
Furthermore, (almost) all of the code is now under the "Apache 2.0
with LLVM Exception" main license
(see also https://foundation.llvm.org/docs/relicensing/)

Change-Id: I8319f8479357c6182c5bf78b1ee7fe202e666980
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2021-10-21 14:10:59 +00:00
Eike Ziller
6a02aa2574 Merge remote-tracking branch 'origin/5.0'
Change-Id: I75aab10a066ce0e2d322663db7723825043fa9c8
2021-09-22 13:31:25 +02:00
Eike Ziller
56d346018a Acknowledgments: Fix path to cpluscplus lib
Change-Id: Id1a2f9797bff6b07d75d40c3ce5e6541aeea585e
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
2021-09-21 07:35:30 +00:00
Eike Ziller
8e652e1586 Do not build Qbs by default
Compiling Qbs takes time and is not strictly necessary for the Qbs
integration in Qt Creator.
We still want to build it for the release, but let's not build it by
default anymore.

[ChangeLog][Building from Sources] Qbs is not built anymore by default.
Pass -DBUILD_QBS=ON on the CMake command line to enable it.

Change-Id: Ic5793e26c7f6a7ac92931777e5d77cef2c8bf888
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2021-09-07 13:16:11 +00:00
Eike Ziller
0777b65db3 Merge remote-tracking branch 'origin/5.0'
Conflicts:
	qbs/modules/qtc/qtc.qbs
	src/plugins/android/androidconfigurations.cpp

Change-Id: If8dc2cdf131811e08ca147c6f58dbb3ed3bf7227
2021-08-26 11:09:08 +02:00
Eike Ziller
13123fede6 Update information about supported platforms
Change-Id: Ic6e2de15f07133dd60896a82f27280272db0e860
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
2021-08-25 07:05:26 +00:00
Kai Köhne
ca885ee87a README.md: Document Qt Creator main licenses
Change-Id: I4d5803c746ebfc0a17e6c21745c1c8775e2d50f0
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
2021-08-24 07:07:47 +00:00
Knud Dollereder
caaad2107d Add minitrace library
Minitrace is a small C++ library used for adding trace points
into the code. When enabled with the build flag
BUILD_LIBRARY_MINITRACE set to true it will write a JSON file
containing these trace points to disk.
This file can be visualized with chromes builtin trace viewer
(about:tracing) which helps in profiling performance issues
and keeping track of performance regression.

Task-number: QDS-3766
Change-Id: I6109a72507b53c5e3ad8f9f504ff26a4fad206be
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2021-02-25 11:53:36 +00:00
Cristian Adam
cc0fa86ffd CMakeProjectManager: Add package manager auto-setup
Adds CMAKE_PROJECT_INCLUDE_BEFORE as initial CMake parameters
with a path to a auto-setup.cmake script that will run
conan install if a conanfile.txt is found in the prject.

A project can have a local QtCreatorPackageManager.cmake file
that will be loaded if exists.

The auto setup can be controlled via the following CMake variables:

* QT_CREATOR_SKIP_PACKAGE_MANAGER_SETUP
* QT_CREATOR_SKIP_CONAN_SETUP
* QT_CREATOR_SKIP_VCPKG_SETUP

conan.cmake is taken from https://github.com/conan-io/cmake-conan
which takes care of the conan specific compiler cruft. License
is MIT.

Fixes: QTCREATORBUG-25362
Change-Id: I70a6e1abc5600851d048f1590ca24204ce52a503
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2021-02-19 17:54:45 +00:00
Christian Kandeler
f7d8f8b704 ClangFormat: Do not refuse to build against unpatched clang
The plugin builds just fine and should be mostly (fully?) functional with
upstream clang, so it seems excessive to force-disable it entirely for
everybody not using our custom patch.

Change-Id: Id6a179c20325290a8205218c9514a16c1adc9076
Reviewed-by: hjk <hjk@qt.io>
2021-01-06 11:00:02 +00:00
Eike Ziller
45c2634166 Merge remote-tracking branch 'origin/4.14'
Change-Id: I62523c4733e617c46131048f5f62a2ca9be47d80
2021-01-06 08:42:15 +01:00
Alessandro Portale
16421d08d3 README.md: Use anchor links to "Getting LLVM/Clang..."
Finding a heading in the quite long README.md is challenging. If you try
to build with LLVM, you already have enough challenges. Use anchor links
to the "Getting LLVM/Clang for the Clang Code Model" heading.

Change-Id: Ie0b29cf2f0ad3331666be1f322de840db697cc7b
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2021-01-04 20:47:43 +00:00
Alessandro Portale
b5037eb8cf README.md: Turn URL to prebuilt libclang into a link
Change-Id: I53ff97da00d5e1671c6af9444ed20d82a28e33dc
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2021-01-04 20:47:40 +00:00
Eike Ziller
739eeec19d Explicitly state that only 64 bit Windows is supported
by our binary packages. Building on 32bit is still possible.

Fixes: QTCREATORBUG-25182
Change-Id: Ic88579bcd9bf3b6aef449e6ac3bcaa6430cd68f2
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
2021-01-04 10:14:03 +00:00
Eike Ziller
e2a2af5d18 Update and overhaul README
Our binaries no longer support Ubuntu 16.
Update LLVM requirements.
Move build instructions to use CMake and overhaul the complicated
Windows instructions.

Change-Id: Idf139fd76b0cfb91dbce11f7b814ec8abd9b21f6
Reviewed-by: David Schulz <david.schulz@qt.io>
2020-12-14 12:26:58 +00:00
Leena Miettinen
ec6b6f3671 Doc: Add link to Qbs attributions into toplevel Readme.md
Task-number: QTCREATORBUG-24622
Change-Id: Icff751b12fc03d18f5d1fd4f8dd191a344a9981b
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-11-20 09:41:48 +00:00
Eike Ziller
87ad222cb6 Merge remote-tracking branch 'origin/4.13' into 4.14
Change-Id: I3b48c76bbb456c487cec33383e7332b6a0a6752a
2020-10-06 09:49:57 +02:00
Leena Miettinen
7c1971e908 Doc: Point to the online docs from README.md
To advertise the docs on GitHub.

Task-number: QTCREATORBUG-21179
Change-Id: I39bac5cfb8f9749966c3b879b0a89c4e62d934f4
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-10-05 07:56:16 +00:00
Eike Ziller
423ea729f8 Merge remote-tracking branch 'origin/4.13' into master
Conflicts:
	cmake/QtCreatorIDEBranding.cmake
	qbs/modules/qtc/qtc.qbs
	qtcreator_ide_branding.pri
	src/plugins/mcusupport/mcusupportoptions.cpp

Change-Id: I3fd0d0a6a3ff30bb990da3dc0f78e69f9e1247ef
2020-09-23 10:11:44 +02:00
Leena Miettinen
1c26d6db68 Doc: Add OFL-1.1 to Acknowledgments
Fixes: QTCREATORBUG-24630
Change-Id: Iaaa64bb9936a80805affe992f64e24d1c586496a
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-09-21 07:49:01 +00:00
Eike Ziller
5ad724c61b Merge remote-tracking branch 'origin/4.13' into master
Conflicts:
	src/plugins/qmakeprojectmanager/qmakeproject.cpp

Change-Id: Ieb1c3e946f11d3c4fa1ee6b5afdf83cc532d8aed
2020-09-17 10:28:19 +02:00
Leena Miettinen
a489fc18eb Doc: Add LiteHTML license and related licenses to acknowledgments
Fixes: QTCREATORBUG-24619
Change-Id: I8d28bf8a579e8885b430cd7df292f53363990ffa
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-09-16 09:30:44 +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
b4d5ab2fb5 README: Bump LLVM version in build instructions
Change-Id: I3321d422f109f8f9c96adef2f944415ce2ec9569
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-07-14 08:15:25 +00:00
Eike Ziller
d400dce35d Require GCC 7 and enable C++17
Fix MSVC2019
- result type of conditional expression is ambiguous:
  types 'const char [1]' and 'QByteArray' can be converted
  to multiple common types

Fix MinGW 8.1
- undefined reference to SemanticHighlightNotification::methodName

Fix Utils::transform with std::vector for GCC & MSVC

Unfortunately we cannot get rid of the special variant and optional
implementations, because Apple Clang requires deployment target >= 10.14
for the functions that can throw std::bad_optional_access.

Fixes: QTCREATORBUG-20520
Change-Id: I5c36a70f21f8b0215d2f4fc5c0653a022778d928
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
Reviewed-by: David Schulz <david.schulz@qt.io>
2020-07-10 11:52:24 +00:00
Eike Ziller
5a64a0c5be Require Qt 5.14 or later
This is required for proceeding with support for building
Qt Creator with Qt 6.

Change-Id: Ibf8a3eef6d6da943c5ee7f4a2239f45ee49b1093
Reviewed-by: Robert Loehning <robert.loehning@qt.io>
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: David Schulz <david.schulz@qt.io>
2020-07-09 08:34:46 +00:00
hjk
f194b92d0a README.md: Re-use description bits from the manual
Change-Id: I880ddcd3aa6173120aed7a64ee8635b29b9f37df
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-06-23 07:53:04 +00:00
Eike Ziller
c644e7c80a Merge remote-tracking branch 'origin/qds-1.59'
Conflicts:
	src/plugins/qmldesigner/components/formeditor/formeditoritem.cpp
	src/plugins/qmlpreview/qmlpreviewconnectionmanager.cpp

Change-Id: Ifa7c66330c1995378280cdb4c57c30015dc11b68
2020-06-08 16:04:15 +02:00
Marco Bubke
b3f8a4a73c Utils: Include from future std::span
std::span is a universal class to represent a non owning contiguous data.
You can even manipulate the data but you can not change the size like sort.
It's very nice for interfaces which call in other code but don't need to
own the container or make an internal copy anyway.

https: //en.cppreference.com/w/cpp/container/span
https: //solarianprogrammer.com/2019/11/03/cpp-20-span-tutorial/

Change-Id: Iaced1bd60c14b2fd7ea6576bb6e1720ed8990da8
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-05-26 18:15:06 +02:00
hjk
0ce0ca0f36 README.md: Fix link to coding style
Change-Id: Id40592c5698af22ffccfc14ade7438c2e33a4fb0
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
2020-05-04 07:28:40 +00:00
Lars Knoll
47e576528e Port QtCreator over to use filterRegularExpression
QSortFilterProxyModel::filterRegExp is going to go away in Qt6,
so port over to use QRegularExpression instead.

This required some changes where setFilterWildcard/FixedString()
was being used, as those would instantiate QRegExp based filters
in Qt 5, and will use QRegularExpression in Qt 6. Use the generic
setFilterRegularExpression here, to keep things portable between
5 and 6.

Change-Id: I6379be781aa3821b10ba783c088f82c1a0970911
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-04-01 20:36:49 +00:00
Eike Ziller
6fc85b49fa Merge remote-tracking branch 'origin/4.11'
Conflicts:
	src/plugins/designer/codemodelhelpers.cpp

Change-Id: I78906f2fbbfd27d254589a272ebca423b0b80699
2019-11-28 08:24:10 +01:00
Cristian Adam
6160abb4f8 Documentation: Fix Ninja reference
Change-Id: I95967b62b46ebe08ac837c490c54f5f3fc24d443
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
2019-11-25 12:32:17 +00:00
Eike Ziller
4e6142c932 Merge remote-tracking branch 'origin/4.11'
Conflicts:
	src/plugins/autotest/testresultspane.cpp
	src/plugins/cmakeprojectmanager/cmaketool.cpp

Change-Id: Iade695ac9cab8bf3e3a1abd6e2c71f4a19132ac0
2019-11-21 22:18:35 +02:00
Cristian Adam
a646d0af26 Documentation: Add documentation how to build Qt Creator with CMake
Change-Id: I36617ce09301165f2e18a7524a18283264957ac6
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
2019-11-21 13:59:20 +00:00
Eike Ziller
748e5bd5b9 Update platform requirement for binary packages
Since these are now based on Qt 5.14

Change-Id: I36167ec73fcedc99f57d1dbc16d6e8efeca8e830
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
2019-11-20 08:07:34 +00:00
Camila San
70e8954402 Fix wrong link in the README
Fixes: QTCREATORBUG-23100
Change-Id: I8b4fca804ae872524ce80715385c01ac5b63223c
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
2019-10-22 12:19:19 +00:00
Eike Ziller
8df0653bf8 Merge remote-tracking branch 'origin/4.10'
Conflicts:
	cmake/QtCreatorIDEBranding.cmake
	qbs/modules/qtc/qtc.qbs
	qtcreator_ide_branding.pri
	src/plugins/projectexplorer/gcctoolchain.cpp
	src/plugins/qmldesigner/components/stateseditor/stateseditormodel.cpp

Change-Id: Iffdf48e782a734107ea170ebb3812e997cea0e7b
2019-09-12 09:08:04 +02:00
Nikolai Kosjar
038a03e95f README: State ClangFormat dependencies
Amends 4d3bb1c858.

Change-Id: I72319c39144a161e5957953de5f395f33a080e63
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2019-09-10 09:25:16 +00:00
Nikolai Kosjar
0ba729e527 Import YAML-Parser yaml-cpp
Version: tags/yaml-cpp-0.6.2
  License: MIT

yaml-cpp requires c++11 and since yaml-cpp 0.6 there is no dependency on
boost anymore.

A YAML parser is needed for the ClangTools plugin to parse exported
diagnostics from clang-tidy/clazy:

  $ clang-tidy -export-fixes=/tmp/tidy.yaml source.cpp

The imported source is stripped of unneeded files as documented with

  src/libs/3rdparty/yaml-cpp/patches/0001-yaml-cpp-Strip-unneeded-sources.patch
  (generated with "git format-patch -D")

Change-Id: Ib0a521b5aff4b1cd058eb480bfb99fde4b320dc7
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2019-08-30 08:42:22 +00:00
Tim Henning
7fec418205 Tracing: Add Chrome Trace Format Visualizer plugin
This new plugin adds a viewer for Chrome Trace Format (CTF) files
(aka Trace Event Format). It uses the same UI components as the
QML Profiler timeline and the Perf Profiler.

The Trace Event Format is generated by different kinds of tracing tools.
Usually the files are display with the trace-viewer, built into Chrome
(chrome://tracing). This plugin was developed because of the high memory
usage of trace-viewer, which makes it difficult to use with trace files
bigger than 100 MB.

The plugin fully supports all event types used in data generated by
LTTng, converted to CTF by https://github.com/KDAB/ctf2ctf.
Some of the more advanced event types used for example in Android system
traces, though, are not supported. The viewer will silently ignore
unsupported event types.

Supported Event Types:
- Begin, End, Duration and Instant events
- Counter events (graphs)
- Metadata events (process and thread name)

The plugin uses nlohmann/json instead of QJson because of the ~128 MB
object size limit by QJson.

[ChangeLog][Tracing][CtfVisualizer] Added Chrome Trace Format Visualizer plugin

Change-Id: I5969f7f83f3305712d4aec04487e2403510af64b
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
2019-08-29 13:37:04 +00:00
Nikolai Kosjar
9dac99eac0 README: Update clang instructions for mono repository
Change-Id: I0b817e4f245613cbae7c36cd5c36712a2cf1396d
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2019-06-19 11:46:42 +00:00