Commit Graph

1245 Commits

Author SHA1 Message Date
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
Eike Ziller
b43765b3e8 Merge remote-tracking branch 'origin/4.1'
Change-Id: I5cacf96b5be4053d3a32a7c2a78fad463b9600d0
2016-08-17 15:14:57 +02:00
Christian Kandeler
bfd0827811 QbsProjectManager: Make generated files available in project tree
Task-number: QTCREATORBUG-15978
Change-Id: Ia1890f1c4f8d1fa76568e42e15741281acb7dbb0
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2016-08-17 08:25:24 +00:00
Jake Petroules
6776b78655 Revert "QbsProjectManager: Write MSVC compiler version to profile"
This reverts commit 3c63b621d9.

This is no longer necessary because Qbs determines the version automatically.

Change-Id: I80161ddf366091eca8bb1e1b29657371e9a7b0fb
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2016-08-15 17:05:30 +00:00
Jake Petroules
ac19d0691d Don't set cpp.linkerName for Qbs kits
This is unnecessary now that Qbs handles the linker automatically.

Change-Id: I8c6270f74355bfa274717a7791daf8d1f4721e00
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2016-08-15 17:04:55 +00:00
Ulf Hermann
bac2d18405 ProjectExplorer: Resolve any CurrentProject:<foo> in default build path
If ProjectMacroExpander doesn't resolve it we fall back to the generic
ProjectExplorer resolution, which is likely to pick the wrong project.

Task-number: QTCREATORBUG-16724
Change-Id: I201b722c5fe184905f744a1f344ec46941f92ae3
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2016-08-15 16:27:50 +00:00
Christian Kandeler
7eacb25ded QbsProjectManager: Re-add null pointer check
That one was accidentally removed in 0b3abfcf6a.

Change-Id: I01d2654175260f9efd1d01e5997170ce0d1faf0e
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2016-08-15 08:53:31 +00:00
Christian Kandeler
0b3abfcf6a Update qbs submodule
To HEAD of master branch. Also do the necessary API adaptations in
QbsProjectManager.

Change-Id: I4709b7a0f35537f5b6f9fd04f4d95be16aef2c8d
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
2016-08-11 09:06:54 +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
Nazar Gerasymchuk
90629108fc UI files: Fix tab order in lots of UI forms
For unknown reasons tab order in listed UI files was set incorrectly and
behave unexpectedly. Now tab order behave naturally.

Changes made for listed objects and touches only UI.

Change-Id: I057b95eb21943ddb29b108682618382661db7be9
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2016-08-02 14:29:27 +00:00
Aaron Barany
6d3497d4e2 QBS DefaultPropertyProvider: Separate C and C++ compilers
Task-number: QBS-893
Change-Id: If811a34d6fecba8989b19089e8bac5df5621836f
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2016-07-25 18:41:18 +00:00
Orgad Shaneh
1b34f2a4b8 Merge remote-tracking branch 'origin/4.1'
Change-Id: Ia90424d479936a898705c433e5810c77ae088b2c
2016-07-22 15:18:00 +03:00
Christian Kandeler
6d4b944683 QbsProjectManager: Fix crash at project closing
The QbsProjectParser was mistakenly made the parent object of the qbs
build job.

Task-number: QTCREATORBUG-16273
Change-Id: I8e0f9736ac9d92c5c1fe3d82430532358b78fee4
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2016-07-19 13:23:51 +00:00
Christian Kandeler
2b3d4685db QbsProjectManager: Have one qbs::Project per target
The class qbs::Project corresponds to a Qt Creator target, not to a Qt
Creator project. It represents a project set up for a particular
configuration.

Task-number: QTCREATORBUG-16545
Change-Id: I9e4fa6a4bf763e49335f294609d7465545df4559
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2016-07-15 12:32:34 +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
Eike Ziller
57c2c595ca Merge remote-tracking branch 'origin/4.0' into 4.1
Conflicts:
	src/shared/qbs

Change-Id: Id363df58f4f9bda5128a486e942f14179160cb86
2016-07-05 11:15:19 +02:00
Christian Kandeler
fdb764b24b QbsProjectManager: Fix crash on Kit update
Before accessing qbs::Project methods, we need to check whether this
object is valid.

Change-Id: I6c54f5b1118a3960b4814af647d81f5786fa452d
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2016-07-04 09:36:21 +00:00
Christian Kandeler
700239c681 Update qbs submodule.
To HEAD of master branch. Plus some necessary adaptations due to API
change.

Change-Id: I906918223de3946ae532ae4042c2545dd53b66cc
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2016-06-30 11:35:29 +00:00
Orgad Shaneh
a22d8bcaa3 QbsPM: Use Qt5-style connects
The heavy lifting was done by clazy.

Change-Id: I841454b0815bc697ae2372dbc6d2caa59d7dc3e8
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
2016-06-29 13:03:03 +00:00
Eike Ziller
0e923c2a75 Merge remote-tracking branch 'origin/4.1'
Change-Id: I5cdc704c827a6f5abf4dc39e2a131d53df328bd2
2016-06-22 11:29:12 +02:00
Eike Ziller
4f9016e03f Merge remote-tracking branch 'origin/4.0' into 4.1
Conflicts:
	qtcreator.pri
	qtcreator.qbs
	src/plugins/android/android.qbs
	src/plugins/android/androiddevice.cpp
	src/plugins/autotest/testcodeparser.cpp
	src/plugins/debugger/analyzer/analyzerstartparameters.h
	src/plugins/projectexplorer/devicesupport/desktopdevice.cpp
	src/plugins/projectexplorer/devicesupport/idevice.cpp
	src/plugins/projectexplorer/runconfiguration.h

Change-Id: I2474d06f2309fa71210a8401846bc2ef85bebf1d
2016-06-22 11:09:32 +02:00
Christian Kandeler
08dcad9c82 QbsProjectManager: Add GUI for forcing Probes re-execution.
Change-Id: I67e2f6d24bd923c9691a9b8aaec161d01f38a16c
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
2016-06-21 08:22:10 +00:00
Jake Petroules
069a4dc7dd Add macos value to qbs.targetOS.
Change-Id: I38f810ae72ff1f7ef428835b2eeeed6d726d4727
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
2016-06-20 16:17:17 +00:00
hjk
5718f12af5 Qbs: Fix build after build step factory changes
Change-Id: I1706bb886cdf224be6c81f212201ff317b7912e6
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2016-06-10 12:14:16 +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
Eike Ziller
1681066c37 Merge remote-tracking branch 'origin/4.0'
Conflicts:
	src/plugins/debugger/watchdata.cpp
	src/plugins/debugger/watchdata.h
	src/shared/qbs

Change-Id: I19b338b316d9c4c046074eb85b3fec79e86e6c32
2016-06-09 12:07:01 +02:00
Christian Kandeler
a0f956f050 qbs build: Introduce new module "qtc".
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>
2016-06-08 08:46:00 +00:00
Christian Kandeler
b50e9e546f QbsProjectManager: Do not pop up the message pane.
Only messages of type "info" appear there these days. They should not
force the message pane to open.

Change-Id: I2e0c01574eecffb7b9df41594df8abb6fd722397
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2016-06-03 10:36:22 +00:00
Eike Ziller
73bb92c5a6 Merge remote-tracking branch 'origin/4.0'
Change-Id: I89c52ca2145a43c94d3366367ba72fde605dd577
2016-05-31 12:02:13 +02:00
Christian Kandeler
299d93e77b QbsProjectManager: Fix crash on project unloading.
We can't just blindly delete the qbs jobs after cancelling them, as that
is not a synchronous operation.

Task-number: QTCREATORBUG-16273
Change-Id: I29787da857e70404a1be1b4bc54921f5a8ce448b
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2016-05-30 12:53:24 +00:00
Christian Kandeler
b4e11b191b QbsProjectManager: Prevent transient build dirs from becoming permanent.
If "dry run" is enabled for the project resolving step, then the rule
execution step needs it too.

Task-number: QTCREATORBUG-16343
Change-Id: I6db7ad68b447299d2b4848f128a262e6097786d4
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
2016-05-27 17:45:53 +00:00
Christian Kandeler
d89fc0bfea QbsProjectManager: Logging improvements.
- Make messages with level "warning" or "error" appear in the Issues
  pane.
- Do not suppress messages of level "info". People add "console.info()"
  calls into their projects for debugging and they expect to see the
  output in Creator.

Task-number: QTCREATORBUG-15983
Change-Id: I6c84bc1ef08dbf85d7e88af864b18f64fcedfe1a
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
2016-05-27 17:42:47 +00:00
Eike Ziller
0c5bae640b Merge remote-tracking branch 'origin/4.0'
Change-Id: I80bc3371c6d7cf9f2d46cbcf8e79e4761213d8aa
2016-05-27 12:01:36 +02:00
Christian Kandeler
5378b8ceb9 QbsProjectManager: Fix task emission from build step.
The connect() call was not updated after new default parameters had been
added to the slot, so the additional parameters emitted via the signal
never reached the slot. Fixed by converting to new connect style.

Task-number: QTCREATORBUG-16334
Change-Id: Ia418c2980e85fa41353e23f654587aac85462469
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
2016-05-25 14:32:41 +00:00
Tobias Hunger
b68be9e3d3 Qbs: Use Qt5-style connects in QbsBuildConfigurationWidget
Change-Id: I12626597a87a965a4a0b657b5ca19470637f30ab
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
2016-05-25 07:40:12 +00:00
Jake Petroules
1c04cce4d7 Remove unnecessary /FS flag in qbs property provider.
The current version of qbs handles this automatically.

Change-Id: I81905335fd3366198164436e7125944ad8a3d304
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
2016-05-18 15:31:59 +00:00
Eike Ziller
ec231b5910 Merge remote-tracking branch 'origin/4.0'
Conflicts:
	src/plugins/valgrind/valgrindruncontrolfactory.cpp

Change-Id: I96c0f8cc3b49f8f55f45ef1f839857f878f532f4
2016-05-18 12:12:46 +02:00
Jake Petroules
ac9360a2c1 qbs: apply compiler and linker flags from GCC toolchains.
Change-Id: I27ce0b11238a2a0c9e5f2f1f8d9e5ecfa3cc51f9
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
2016-05-18 09:17:33 +00:00
Joerg Bornemann
3c63b621d9 QbsProjectManager: Write MSVC compiler version to profile
Change-Id: Ibd8c559ffecf327eee6af8e6d5fbacb5c8c863d1
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
2016-05-18 02:56:47 +00:00
Christian Kandeler
93ad38da2d QbsProjectManager: Update "equivalent command line" on build dir change.
Task-number: QTCREATORBUG-16260
Change-Id: Ic18efbdf62a648aa4b524bb36dbcce581061981f
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
2016-05-17 09:11:25 +00:00
Tim Jenssen
7e08363052 qbs build: remove unnecessary script dependency
Change-Id: I0e5764ffc9a6146932c43d96a31138451260c161
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
2016-05-13 11:42:43 +00:00
Eike Ziller
9e66ce48e4 Merge remote-tracking branch 'origin/4.0'
Conflicts:
	src/plugins/autotest/testcodeparser.cpp
	src/tools/clangbackend/ipcsource/clangbackendclangipc-source.pri
	tests/unit/unittest/unittest.pro

Change-Id: I9db4fbea6ea7c9fdd0d8e1703735af20c92e754b
2016-05-09 16:37:41 +02:00
Christian Kandeler
c8d0ba8651 QbsProjectManager: Use IDE_LIBRARY_BASENAME to locate qbs' plugins.
This is a better try than hardcoding "lib" and likely to be correct in
real-world scenarios.

Change-Id: I380989b2d2c8389718bde941e081755f41be7f0c
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
2016-05-04 08:28:08 +00:00
Eike Ziller
0f94aa3f4d Merge remote-tracking branch 'origin/4.0'
Conflicts:
	src/plugins/debugger/debuggerruncontrol.cpp
	src/plugins/projectexplorer/projectwizardpage.cpp
	src/plugins/projectexplorer/xcodebuildparser.h
	src/plugins/qmldesigner/qmldesignerplugin.cpp
	src/tools/clangbackend/ipcsource/translationunits.cpp

Change-Id: Ibf0857cf8dbf95fc9ac13d5c2112b3f4a2ca7de6
2016-05-03 11:49:01 +02:00
Nikolai Kosjar
1cbb4cc954 QbsProjectManager: Fix SOFT ASSERT: "future.isFinished()"
...in file qbsproject.cpp, line 940.

The assert can be triggered with e.g.:
 1. Load a bigger qbs project, e.g. qtcreator.qbs.
 2. Trigger project build as soon as possible.
 3. Cancel the "Parsing C/C++" operation.
 4. Wait until the build finished and the assert occurs.

This happens because CppModelManager::updateProjectInfo() since

  commit  536ccc8a87
  CppTools: Fix incompletely indexed project

will check whether the previous indexer run was canceled or not. If it
was canceled, it will trigger a full-reindexing of the project.

Updating the compiler call data is a special case and it should never
trigger an indexing operation, so introduce a dedicated update function
for this case.

Change-Id: I456945ccf2bf697aaeada572ed87f3acb21a5eaf
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2016-05-03 08:03:24 +00:00
Orgad Shaneh
bb331566bd QbsPM: Support qtcRunnable property to filter out peripheral products
... by default.

Similar to qmake qtc_runnable.

Apply in app.qbs.

Change-Id: I8d43027f683ef18fc5a2745afe9775eb14075e69
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
2016-05-01 04:31:40 +00:00
Takumi ASAKI
89aa06e37d QbsProjectManager: Modify QbsBuildStepConfigWidget layout
Old layout was too tight for translated messages.

Change-Id: I98ffeb5bc6c9ac565edafdf5412e27db818b4052
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2016-04-29 08:26:43 +00:00
Christian Kandeler
7d9222970d QbsProjectManager: Re-parse project when build system files change.
This was accidentally broken in fdc552bda6 so that only changes to the
top-level project file would trigger re-parsing.

Change-Id: Iab2d6b0d3187f5875fec916fe4dccbef08b54669
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
2016-04-25 15:18:09 +00:00
Eike Ziller
a3880c4916 Merge remote-tracking branch 'origin/4.0'
Change-Id: If0ba896a083392a532f76bb26bec3540a7c17667
2016-04-25 13:27:14 +02: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