Commit Graph

215 Commits

Author SHA1 Message Date
Orgad Shaneh
98f76ff26f Qmake: Expand variables in the arguments preview
Change-Id: I422417fbbfa86c39c8a79a593cedd87b208735f4
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2017-03-20 10:21:01 +00:00
Vikas Pachdha
7136162047 add extra arguments for qmake
unlike user arguments, extra arguments are not user editable

Change-Id: I0413c2da699c6d2fce1db10a8bc3dd938c8477b0
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2017-03-14 15:51:31 +00:00
Tim Jenssen
2631ffabd5 Remove spaces in initializer lists
Format initializer lists code style like.

Change-Id: Ib82c235e4ba7dc75ee96a7abc0c47eff7b0a9013
Reviewed-by: hjk <hjk@qt.io>
2017-02-22 16:25:09 +00:00
Tobias Hunger
f9eab73dad qmake: move over from QmakeProjectNodes to QmakeParserNodes
Change-Id: Iab87e0c248b0f651a1774336c3bddf83baa9d057
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-02-22 16:00:49 +00:00
Eike Ziller
00b22e40fe QMake build step: Add missing error messages
Print error messages whenever initialization of the QMake build
step fails.

Change-Id: Id39795219ec74591a78b8db4d0a381e072261f51
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2017-02-20 12:56:47 +00:00
Tobias Hunger
086733a2c9 qmake: Use ProjectType enum consistently
Change-Id: I633a7150202fcbf420a33b4173d2b4451f46eb11
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-02-14 15:40:11 +00:00
Ulf Hermann
c70b689526 Unify projectexplorer language IDs
We don't need two IDs for C++ and the QmlJS ID should look the same as
as the others.

Change-Id: Ib9747f6b36a90bb652951d85eec69666615670c4
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2017-01-30 15:34:46 +00:00
Filippo Cucchetto
4b1f8f3609 ProjectExplorer: Added support for registering custom languages
Change-Id: I728a2ed1ef7d9f44d7c2b59d27d6e23444cd3bb5
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2017-01-23 11:19:11 +00:00
Christian Kandeler
c05a3fdb3d Give the values of BuildStep::OutputFormat better names
The old ones did not convey their meaning very well. In particular,
NormalOutput and MessageOutput were easily confused.

Change-Id: Ia0a8c1b1c366ab3f5c59f751b37b8b1f68f6831d
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2017-01-19 16:08:57 +00:00
Tobias Hunger
a2e3f716a8 QMake: Clean up Qmakestep
Change-Id: I3a2baa4e15a48f99652cec6151803f20341e339a
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2016-12-08 14:16:53 +00:00
Eike Ziller
841778ed69 Merge remote-tracking branch 'origin/4.1'
Change-Id: I80f96f100046625f24b6ab5d13fdb05660365abc
2016-08-22 16:30:56 +02:00
Tobias Hunger
c55db42c28 QMake: Fix crash when removing Qt version from kit
Fix crash when removing Qt version from kit while a qmake project
is open.

Task-number: QTCREATORBUG-16760
Change-Id: I697eceb6b165985ae9a225e79bf1205947300954
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2016-08-22 13:40:52 +00:00
Jake Petroules
f41b48ef5d Rename Abi::MacOS/GenericMacFlavor to DarwinOS/GenericDarwinFlavor
This makes clear that the ABI encompasses all Darwin platforms (macOS,
iOS, tvOS, watchOS) in the wake of the OS X to macOS rename, and would
have been more technically correct anyways since ABIs are far below the
"macOS" parts of our favorite desktop Unix operating system.

Change-Id: I16d1477f44ffe70e5d8cddd67199a1602ba6fd97
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2016-08-22 12:54:06 +00:00
Ulf Hermann
15fbfaf2e9 Move icons to Utils
This way we can use them from libraries, not only from plugins.

Change-Id: Ic35cfd5f04d638d87606bf272b2c00ded1267c1b
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2016-08-05 10:52:53 +00:00
Tobias Hunger
cb14fb0d71 Kits: Save several ToolChains per kit
BREAKS BACKWARD COMPATIBILITY OF TOOLCHAIN SETTINGS!

* Convert old ToolChainKitInformation to new version
* Store several toolchains in one kit (one per language)

Change-Id: Ia59a2ad067c57971ec34ce9b2e43758344443755
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
2016-07-14 15:34:06 +00:00
Thiago Macieira
74fed1d5b7 Fix build on PPC: PPC is defined to 1
$ powerpc-poky-linux-gcc -dM -E -xc /dev/null | grep -i PPC
 #define _ARCH_PPC 1
 #define __PPC__ 1
 #define __PPC 1
 #define PPC 1

Not on PPC64, though (only __PPC__ and __PPC64__ are defined).

Change-Id: Ib57b52598e2f452985e9fffd145812f5098e441d
Reviewed-by: Lisandro Damián Nicanor Pérez Meyer <perezmeyer@gmail.com>
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2016-06-22 17:51:20 +00:00
Orgad Shaneh
9ed97cb732 QmakePM: Fix support for custom Makefile names
Task-number: QTCREATORBUG-16431
Change-Id: Ice2b18114c0d71e0a09ee63cd37559eb28b42034
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2016-06-14 12:24:25 +00:00
hjk
519cc8ded6 ProjectExplorer: De-duplicate code in IBuildStepFactory derived classes
This removes 900 lines of duplicated code, some duplicated checks at
runtime and some (minor) quadratic behavior when gathering display names.

canClone(), canRestore() and canCreate() and restore() use the same
pattern. Handle that on the core side once. Leave retore() virtual to let
the ios code unmodified (which is likely not needed, later...). Introduce
'Unclonable' and 'Uncreatable' flags to keep Android package installation
and WinRT deployment (non-)functionality unchanged.

Change-Id: I0325479aff818a4038b2f241ca733b8d8cd66f2f
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2016-06-10 10:34:51 +00:00
Orgad Shaneh
547d18c0b9 QmakePM: Use Qt5-style connects
The heavy lifting was done by clazy.

Change-Id: Ibcc1bc772c6cc4413ae5834a442f7d270dc4cd75
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2016-05-26 14:05:28 +00:00
Tobias Hunger
4f76fdaded QMake: Fix crash when canceling qmake run
Change-Id: I24d286210086bd85825b8fd300a69b4bb8778367
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
2016-04-29 09:20:58 +00:00
Tobias Hunger
452ea6a662 Qmake: Do not use qmake -r for Qt5
Run the much more obvious qmake && make qmake_all instead.

Task-number: QTCREATORBUG-12652
Change-Id: Iec0776477fe861d657bcd5969193590cf924408e
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
2016-04-25 11:23:56 +00:00
Tobias Hunger
2e5102f45e BuildStep: Remove finished() signal and use FutureInterface to report
Remove the finished() signal that is (sometimes) used to report that
a buildstep is done and use the FutureInterface for that purpose
consistently.

Change-Id: Ibe5520b562b91f1a7f4fc73ee898b33b930029ec
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
2016-04-25 11:23:42 +00:00
Tobias Hunger
e0efbb1ae8 QmakeStep: Use nullptr
Change-Id: I550f529923ee0a6b768818e57d42e6eac81b2713
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2016-04-20 14:43:14 +00:00
Eike Ziller
aa4a0d8920 iOS: Qt 5.7 changed the CONFIG values for device vs simulator builds
This is a quick fix, just adding the new values. It would be nicer to
make them depend on the actual Qt version, but that seems to be a bit
more involved.

Task-number: QTCREATORBUG-16102
Change-Id: I2dbd0e76f90e7aeabb0c354fe54a6a0eb041454e
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
Reviewed-by: Vikas Pachdha <vikas.pachdha@theqtcompany.com>
2016-04-18 15:10:05 +00:00
Tobias Hunger
66bdd60947 ProjectExplorer: Sprinkle overrides over the code
Sprinkle overrides over code derived from classes in ProjectExplorer

Change-Id: Ia4cc25649f7dc00b0ea126d8176a59afbc5ed574
Reviewed-by: hjk <hjk@theqtcompany.com>
2016-01-29 12:34:19 +00:00
Thomas Hartmann
e3a3792fd6 Removing support for DebuggingHelpers
This patch removes infrastructure and ui for DebuggingHelpers
and specifically qmldumptool.

The qmldumptool was the last relevant DebuggingHelper and is only required
for Qt < 4.8.

Change-Id: I3767be0858e5eba16a33a3ab8436e95fc06a9e99
Reviewed-by: hjk <hjk@theqtcompany.com>
2016-01-25 08:55:27 +00:00
Tobias Hunger
397e7f4843 Update License according to agreement with Free Qt Foundation
* Update files in src/plugins

Change-Id: Ia5d77fad7d19d4bb3498e78661982f68729adb22
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
2016-01-19 15:57:01 +00:00
Tobias Hunger
d144ea58e0 Project: Add setRootProjectNode method
Add setRootProjectNode method and a default implementation of
rootProjectNode to Project. Use that in all derived classes.

Change-Id: Id28cde04457a20a8963d43020785ef9d77fea57c
Reviewed-by: Niels Weber <niels.weber@theqtcompany.com>
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
2016-01-11 15:33:26 +00:00
Alessandro Portale
033862f305 Themed Icons: Introduce Utils::Icon
Instead of describing icons via file name or in the themed icons case
via
a string that is a list of mask/color pairs, we have now a class for it.

Icons are now listed in per-plugin *icons.h headers.

RunControl::m_icon was The only place left where an icon property was in
fact a string. This patch changes that member to be a Utils::Icon.

Change-Id: Ibcfa8bb25e6d2e330c567ee7ccc0b97ead603177
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2015-11-25 12:30:52 +00:00
Tobias Hunger
79f82d0d0a BuildManager: Provide context of earlier build steps to init
This information can be used to get information from earlier steps,
which e.g. queried for android devices to deploy to.

Change-Id: Iefe1c9443915cb6211f86f98ff7aaf3cb75145ba
Reviewed-by: Niels Weber <niels.weber@theqtcompany.com>
2015-11-16 14:04:59 +00:00
Tobias Hunger
a110abeed7 Remove unnecessary destructors
Change-Id: Id0bc2d3a305e6af24838266195ab22e04e3a12a1
Reviewed-by: Niels Weber <niels.weber@theqtcompany.com>
2015-11-16 11:16:17 +00:00
Tobias Hunger
5d7f5a2a32 ProjectNode: Rename path() to filePath()
Change-Id: I78bb73f8c9457fd74c470eacbf54eb9195ac9681
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2015-11-03 11:01:50 +00:00
Eike Ziller
6d4135d8f0 Merge remote-tracking branch 'origin/3.6'
Change-Id: Iddfa0d2f3c0fb8ba65c0e5d479ad8e2f2cb95685
2015-10-26 10:55:50 +01:00
Alessandro Portale
b8bdc6f669 Icon refresh: First step towards the new Qt Creator themes
http://blog.qt.io/blog/author/didesous/ announced new designs/themes
for Qt Creator. This patch replaces many of the existing toolbar icons
with recolorizable masks for better theming support.

Change-Id: I557aa485205fe2624f33724226f698c303342b40
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
Reviewed-by: Alessandro Portale <alessandro.portale@theqtcompany.com>
2015-10-23 16:04:52 +00:00
Ulf Hermann
703ce02d4c Detach QML debugging option from qmakes build mode
The coupling of qml_debug to qmake's Debug profile is both brittle and
wrong. There are good reasons to also enable qml debugging in certain
Release builds and changing the build type of a specific build often
leaves the UI in an inconsistent state.

Change-Id: I89cb86849c984278ebfc54f66f139ec482b18d9a
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
2015-10-20 16:15:10 +00:00
Ulf Hermann
8db0a1b671 Remove QtQuick1 debugging option from build & run settings
We don't need to support QtQuick1 anymore. Consequently, the
minimum Qt version for QML debugging is bumped to 5.0.0.

Change-Id: I9528de3f6869fb391eaf9560a148e03f6067b9de
Reviewed-by: Daniel Teske <daniel.teske@theqtcompany.com>
2015-10-01 13:54:57 +00:00
Jarek Kobus
a73ad816a3 QMakeProjectManager: Introduce member initialization.
Change-Id: I69df0c22a215b2df12f63fdc47082e9797fc02ac
Reviewed-by: Daniel Teske <daniel.teske@theqtcompany.com>
2015-06-23 21:03:41 +00:00
Daniel Teske
51e6fc9416 Fix importing creating additional kits on OS X
Extract the whole makefile parsing code into a separate class, to
make the code more manageable. Also fix some bugs on importing additional
flags like qt quick compiler or separate debug info.

Task-number: QTCREATORBUG-13947
Change-Id: Id04bff191c188f95230274d990b1676e9b2f419d
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
Reviewed-by: Daniel Teske <daniel.teske@theqtcompany.com>
2015-03-11 16:02:40 +00:00
Daniel Teske
74f67ffef4 Remove support for !shadowBuild
In ancient times we needed to support some qt versions that didn't support shadow
building. This code has been unused for some versions now, so remove it completely.

Change-Id: I311f255d6bfed6841e94c9c383bd9929d0d55520
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
2015-03-09 10:45:31 +00:00
Ulf Hermann
6758b78ba6 Qmake: Add an option to put debug info into separate files
Also, prepare for setting this automatically once we get a
distinct "Profile" build configuration.

Task-number: QTCREATORBUG-14009
Change-Id: I70556806e33d47341360231aeff844e490675f6a
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@theqtcompany.com>
Reviewed-by: Daniel Teske <daniel.teske@theqtcompany.com>
2015-02-27 15:28:15 +00:00
Ulf Hermann
a316948868 Don't artificially prevent QML profiling
The QtQuick compiler should not prevent QML profiling. However, in
this case it does prevent the QML debug options from getting added
to the qmake command line. This effectively prevents QML profiling.

Change-Id: I533d1bd3f9cc6e41bd42f285c32127286b20d85b
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2015-02-27 09:56:50 +00:00
Tobias Hunger
655eed467e QmakeProjectManager: Fix typo in method name
Change-Id: I63a1ca0c9fd4ef1a6af758179e315fc7ec96eeb4
Reviewed-by: Daniel Teske <daniel.teske@theqtcompany.com>
2015-02-24 13:39:26 +00:00
Ulf Hermann
8b8f8ca2ba Allow QML profiling when using Qt Quick compiler
Change-Id: I40784b51e36c3c77fce6bf077613d19579336db6
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@theqtcompany.com>
2015-02-19 10:09:07 +00:00
Orgad Shaneh
88e7f935f4 ProjectExplorer: Use FileName for Node::path
Change-Id: I4a41cfb629be8bb06b4b0616cd4475525e617a51
Reviewed-by: BogDan Vatra <bogdan@kde.org>
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2015-02-13 13:14:03 +00:00
Eike Ziller
9926fc2ab1 Merge commit '3c85058694ee2e41658d17f524fb48f0b187d2fe'
Conflicts:
	src/libs/utils/tooltip/tipcontents.cpp
	src/libs/utils/tooltip/tipcontents.h
	src/plugins/android/androiddeployqtstep.cpp
	src/plugins/baremetal/baremetalconstants.h
	src/plugins/baremetal/baremetaldevice.cpp
	src/plugins/baremetal/baremetaldevice.h
	src/plugins/baremetal/baremetaldeviceconfigurationwidget.cpp
	src/plugins/baremetal/baremetaldeviceconfigurationwidget.h
	src/plugins/baremetal/baremetaldeviceconfigurationwizard.cpp
	src/plugins/baremetal/baremetaldeviceconfigurationwizardpages.cpp
	src/plugins/baremetal/baremetaldeviceconfigurationwizardpages.h
	src/plugins/baremetal/baremetalplugin.cpp
	src/plugins/baremetal/baremetalplugin.h
	src/plugins/baremetal/baremetalruncontrolfactory.cpp
	src/plugins/baremetal/baremetalruncontrolfactory.h
	src/plugins/cppeditor/cppcodemodelinspectordialog.cpp
	src/plugins/cppeditor/cppdoxygen_test.cpp
	src/plugins/cppeditor/cppdoxygen_test.h
	src/plugins/debugger/breakpointmarker.cpp
	src/plugins/debugger/debuggeritemmodel.cpp
	src/plugins/debugger/debuggeritemmodel.h
	src/plugins/debugger/loadcoredialog.cpp
	src/plugins/genericprojectmanager/cppmodelmanagerhelper.cpp
	src/plugins/projectexplorer/addnewmodel.cpp
	src/plugins/projectexplorer/addnewmodel.h
	src/plugins/projectexplorer/jsonwizard/jsonfieldpage.cpp
	src/plugins/qmlprofiler/abstracttimelinemodel.cpp
	src/plugins/qmlprofiler/abstracttimelinemodel.h
	src/plugins/qmlprofiler/notesmodel.cpp
	src/plugins/qmlprofiler/qml/CategoryLabel.qml
	src/plugins/qmlprofiler/qml/MainView.qml
	src/plugins/qmlprofiler/qml/Overview.js
	src/plugins/qmlprofiler/qml/Overview.qml
	src/plugins/qmlprofiler/qml/TimeDisplay.qml
	src/plugins/qmlprofiler/qml/TimeMarks.qml
	src/plugins/qmlprofiler/qmlprofilertimelinemodelproxy.cpp
	src/plugins/qmlprofiler/sortedtimelinemodel.cpp
	src/plugins/qmlprofiler/sortedtimelinemodel.h
	src/plugins/qmlprofiler/timelinemodelaggregator.cpp
	src/plugins/qmlprofiler/timelinemodelaggregator.h
	src/plugins/qmlprofiler/timelinerenderer.cpp
	src/plugins/qmlprofiler/timelinerenderer.h
	src/plugins/qmlprojectmanager/QmlProjectManager.json.in
	src/plugins/texteditor/findinfiles.cpp
	src/plugins/vcsbase/vcsconfigurationpage.cpp
	src/shared/qbs
	src/shared/scriptwrapper/interface_wrap_helpers.h
	src/shared/scriptwrapper/wrap_helpers.h
	tests/auto/qmlprofiler/abstracttimelinemodel/tst_abstracttimelinemodel.cpp
	tests/system/suite_debugger/tst_debug_empty_main/test.py
	tests/system/suite_debugger/tst_qml_js_console/test.py
	tests/system/suite_debugger/tst_qml_locals/test.py

Change-Id: I67540b648f8b162496f4aa606b04d50c7c9125c6
2015-02-12 17:29:21 +01:00
Orgad Shaneh
8b5dcc13c5 Replace QFileInfo::fileName() with FileName::fileName()
Change-Id: I4852ff215abf25649fc5eac1e922ae901839ca3d
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-01-29 11:15:43 +00:00
Eike Ziller
3c85058694 Update License
Change-Id: I711d5fb475ef814a1dc9d2822740e827f3f67125
Reviewed-by: Alessandro Portale <alessandro.portale@digia.com>
2015-01-16 12:37:56 +01:00
Alessandro Portale
245ea90817 Qt Quick Compiler Support: Only allow valid settings
If the Qt Quick Compiler binary is not present in the binary tools
directory of the Qt version, disable the checkbox. A warning will
be added in the next minor version, sind we already have string
freeze.

QML debugging does not work when using the Qt Quick Compiler. So,
in case the Qt Quick Compiler is checked, let's disable the QML
debugging checkbox.

Change-Id: I739b1f71dc53aca9cf00e6ffd15246184d89816b
Reviewed-by: hjk <hjk121@nokiamail.com>
Reviewed-by: Alessandro Portale <alessandro.portale@digia.com>
2014-12-01 08:45:22 +01:00
Kai Koehne
2d25e6290a Do not show rebuild dialog when checkboxes are changed from code
Only show the "Do you want to recompile now?" modal dialog if the
"Enable QML debugging" or "Enable Qt Quick Compiler" checkboxes have
been changed directly by the user.

The previous change let the QML debugging checkbox update also when the
.pro file has changed. Showing a modal dialog in such cases interrupts
the user's flow, and is unexpected.

Change-Id: I9304cbecee7e201694ff72ac8c0f38cedf5fb416
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2014-11-17 16:57:24 +01:00
Fawzi Mohamed
081115e5e6 qmakestep: correctly update qml debugging checkbox
A change of the project languages (for example when the qml code
model is updated, which happens quite late) can add or remove
the QMLJS language, and thus change the value of
linkQmlDebuggingLibrary. This should be shown in the UI.

Change-Id: I55b6a866be6d0e356ed516568124bf3e80045078
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
2014-11-17 16:57:20 +01:00