summaryrefslogtreecommitdiff
path: root/src/plugins/qmakeprojectmanager
Commit message (Collapse)AuthorAgeFilesLines
* Lower priority on buildOrgad Shaneh2019-09-181-0/+1
| | | | | | | | | This should prevent slowdown of the IDE (and the rest of the system) while building with all the CPU cores. Fixes: QTCREATORBUG-5155 Change-Id: Icaadc53958f2d8e918035463e3c9344c91235615 Reviewed-by: hjk <hjk@qt.io>
* Android multi arch supportBogDan Vatra2019-09-163-17/+75
| | | | | | | [ChangeLog][Android] Android multi arch support for qmake Change-Id: Ib8b1874604a3392130c96fbc00b26713b3d788ae Reviewed-by: hjk <hjk@qt.io>
* QMakeProjectManager: Remove unused QtModulesInfoAlessandro Portale2019-09-115-238/+0
| | | | | | | amends bd7f53cef8714b923d4d096b585fc20117584878 Change-Id: I1b193230d2f05abe68e22d87b4b8b0193299af42 Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* CppTools: Move RawProjectPart to ProjectExplorerEike Ziller2019-09-111-6/+6
| | | | | | | | Doesn't have any dependencies into CppTools anymore, therefore moving it reduces the dependencies of the project managers to CppTools as well. Change-Id: Ibe728abe59eb88a8877943dca1f48a85163e27ac Reviewed-by: hjk <hjk@qt.io>
* CppTools: Move QtVersion and BuildTargetTypeEike Ziller2019-09-101-5/+3
| | | | | | | | | | | | | QtVersion to utils/cpplanguage_details.h which already contains similar flags. BuildTargetType to ProjectExplorer, next to BuildTargetInfo (but not in the same header to not pull that in everywhere). Removes dependency on ProjectPart from RawProjectPart. Change-Id: I5791065e4266f20c2657ee4b1b594df04b238a1c Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
* CppTools: Remove dependency of RawProjectPart to ProjectFileEike Ziller2019-09-031-3/+1
| | | | | | | | | | | | The feature to category files to ProjectFiles was used by the qmake project manager to specify if the file is "active", and by the Qbs project manager to avoid unnecessary MIME type checking. Make these two different use-cases explicit in the API. Change-Id: Ia5a7da37f100149366fc75060fe04687e15f2bd3 Reviewed-by: hjk <hjk@qt.io> Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
* Remove usages of deprecated APIs of QLayoutSona Kurazyan2019-09-021-1/+1
| | | | | | | | | | Replaced: QLayout::setMargin() -> QLayout::setContentsMargins() QLayout::margin() -> QLayout::getContentsMargins() Task-number: QTBUG-76491 Change-Id: If28ef6910b3afe5d04e4746b74f9362a3e3b3c8e Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* Project: Rename Project::activeBuildEnvironment to ↵Tobias Hunger2019-08-281-1/+1
| | | | | | | | | | | | | Project::activeParseEnvironment This is used for parsing the project only, so reflect that in the name. Not all projects have build configurations, so the old name did not make too much sense for what this has been used for. Eventually this code should move into the BuildSystem. Change-Id: Iff766150b5fe370f2912b0b3b15348b1c1fad5b5 Reviewed-by: hjk <hjk@qt.io>
* QmakePM: Remove unused explicit shadow build flaghjk2019-08-232-5/+0
| | | | | | | | | Looks like the information has been based derived from buildDirectory() != target()->project()->projectDirectory() for a while. Change-Id: Ieb64e72d8fd1d4a6a339b695422fff6355cd3969 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* QmakeProjectManager: Mark disabled source files in project treeChristian Kandeler2019-08-223-35/+66
| | | | | | | | | | | | | | | We show all source files in the project tree, including those which are listed in scopes that evaluate to false in the current configuration. This is intended, as we want users to be able to navigate to all files, not just the ones that are part of the build for the current target. However, it'd be nice for users to be able to tell which files are "active" and which ones are not. Therefore, we now mark the non-active ones as "disabled" in the project tree, just like the QbsProjectManager does. Task-number: QTCREATORBUG-22855 Change-Id: Icfb48d4f6a247de76fc109acb84b34f03866e754 Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
* ProjectExplorer: Set up hack to funnel information to buildstep ctorshjk2019-08-222-7/+8
| | | | | | | | | | | | For now, store most of BuildInfo in the BuildConfiguration. This will allow accessing it in the BuildStep ctors so the BuildSteps can be fully setup without polishing afterwards (as currently done in the main build steps of the three buildsystems, and Nim) This in meant to be temporary to a large degree. Change-Id: If6ade6052f4b96670995399ae97ef7d2313f632a Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* ProjectExplorer: Handle parsingStarted/Finished in BuildConfigurationTobias Hunger2019-08-214-43/+0
| | | | | | | | | Make all buildconfigurations disabled while the project parses. This unifies how this is handled in different build systems. Change-Id: I6afca3743ad1433529a4f9d3bfdf73042799e456 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Utils::Environment: Use expanded valuesChristian Kandeler2019-08-201-1/+1
| | | | | | | | | The Environment class is supposed to support values with references to other variables, but we failed to actually expand them in most places. Fixes: QTCREATORBUG-22687 Change-Id: I108cb59d3b4571471423455240f6f4f1cf64bf05 Reviewed-by: hjk <hjk@qt.io>
* ProjectExplorer: Hide parts of BuildStep's QObject-ness from usershjk2019-08-202-4/+3
| | | | | | | | This lets the compiler catch issues like QTCREATORBUG-22818 and saves visible casts on the user side. Change-Id: I5a307a55364daa0bec039a4c38cc9827841ff9c1 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* QmakeProjectManager: Remove unused modules handling from wizardsChristian Stenger2019-08-149-266/+8
| | | | | | Change-Id: If943fc306c8aaf7f8dccaeb4b833988e651108e6 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io> Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* QmakeProjectManager: Fix possible assertionChristian Kandeler2019-08-141-2/+2
| | | | | | | Amends 6c40fec9b0. Change-Id: I11426f17a7e7a81bf4adcba742c6298f224b7ef1 Reviewed-by: hjk <hjk@qt.io>
* QmakeProjectManager: Try harder to find include paths in sysrootChristian Kandeler2019-08-131-1/+20
| | | | | | | | | | As opposed to qmake itself, Qt Creator tries to resolve the value of INCLUDEPATH against the sysroot. Therefore we should not reject Unix- type absolute paths as candidates for sysrootification on Windows hosts. Fixes: QTCREATORBUG-21164 Change-Id: If4be103061ad3edc64f8d1f5cfeb7c6b48e961c8 Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
* Drop connections to active target and build config changeshjk2019-08-131-8/+0
| | | | | | | | ... for build step related widgets. These are specifig to a build step which in turn is only interested in its own build config and target. Change-Id: I5ec277ba279932d18a615e528acffaccdc41e307 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* ProjectExplorer: De-virtualize some more virtual methodsTobias Hunger2019-08-132-1/+1
| | | | | | | | | Use setters/getters for the bool flags in Project::needsBuildConfigurations() and Project::hasMakeInstallEquivalent. Change-Id: I5ce937c3a5e8e0db627cda02a9007f8c28ccda0c Reviewed-by: hjk <hjk@qt.io>
* QmakePM: QtWizard Code cosmeticshjk2019-08-132-23/+10
| | | | | | | Unused code, namespaces, foreach. Change-Id: I1a4fd2be2f4005a35b1d9ab0e38cc260ae459fda Reviewed-by: Christian Stenger <christian.stenger@qt.io>
* ProjectExplorer: Use RAII pattern for parsing start/stop signallingTobias Hunger2019-08-092-4/+7
| | | | | Change-Id: I13de537140f265db3e3d0ab1cd924d6897cd90c8 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* QMake: Re-export the qmake buildstep id constanthjk2019-08-092-4/+3
| | | | | | | Will help with iOS later. Change-Id: Id4d1899e117ae5aa05ed14a42bc80f474b9c659c Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Unification of desktop run configurations, step 1hjk2019-08-076-219/+0
| | | | | | | | | | | | First step, move {DesktopQt,Qbs,CMake}RunConfiguration{,Factory} into the same new files. This only moves down to QtSupport, not ProjectExplorer, as there are in all three cases direct dependencies on QtSupport. Long term I would expect them to move further down. Change-Id: Ib16b19df7f3f642ed7f7db89a1f6904601d976ba Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* ProjectExplorer: Replace Project::projectConfigurationChangedhjk2019-08-021-5/+3
| | | | | | | | | | | | | | | | ... by a Project::buildConfigurationChanged. That's the only case used, and saves filtering on the receiver side. Also, the passed bc is (in non-null) the active one, so isActive checks are not necessary. The null case seems to be only possible to trigger when removing the currently active build configuration manually i.e. happens rarely, so having it trigger an unneeded final display update on the dying build config is tolerable, so drop the null check in such cases to achieve a more uniform pattern. Change-Id: I46f72e9e277767214dbd6920dd86b026a7084f46 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Update build step widgets only on changes to the owning build confighjk2019-08-021-4/+3
| | | | | | | | Updating on changes to other build config seem excessive, as the updated details only depend the owning build config. Change-Id: Iba86f2b56033ac55381d452dd2a435e5dda72674 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* QmakeProjectManager: List .ts files in the project treeChristian Kandeler2019-07-311-4/+1
| | | | | | | | | ...without the user having to add them to DISTFILES or OTHER_FILES in addition to TRANSLATIONS. Task-number: QTCREATORBUG-7453 Change-Id: Ic9621e66079a52f22272c945b92d183eec852f68 Reviewed-by: hjk <hjk@qt.io>
* ProjectExplorer: Remove ProjectConfiguration base from Targethjk2019-07-311-0/+4
| | | | | | | | | Targets are different from {Run,Build,Deployment}Configurations, both regarding the level in the ProjectExplorer hierarchy, and also by the set of supported operations (e.g. aspects). Change-Id: Ia8490e2280a9ecc518395c5e48ce2fd5d6d58fd2 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* QmakeProject: Move QmakeBC::isShadowBuildhjk2019-07-293-14/+12
| | | | | | | ... to the config widget implementation, which is the only user. Change-Id: I7cc70b6219dacedf1ef431a1fe21345b9ad69e7b Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Qmake: Replace QmakeBC::emitQmakeBuildConfigurationChangedhjk2019-07-293-16/+5
| | | | | | | | ... by direct emission of the signal. Signals are public nowadays, so the indirection is not needed anymore. Change-Id: I82328a8fa05458e0478a52157863b7265f0a42ad Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* ProjectExplorer: Propagate build environment changes more directlyhjk2019-07-261-1/+1
| | | | | | | | | | | | | | | To check this still works I used a CustomRunConfiguration with a executable name $AAA, the tooltip there tries to expand that (and complains that $AAA is not an executable). By inserting a AAA=/bin/ls in the build environment, the tool tip on the run config exectable path chooser changes appropriately, same for changing the AAA value. The connection seems also needed, dropping it destroys that updating. Change-Id: I28965cbd3ce530a83d98808ca7624a6799cd9800 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Import wizards: Visually improve the selected state of iconsAlessandro Portale2019-07-252-0/+0
| | | | | | | | | | This change adds a thin gray outline to the cvs, git and qmake/generic import wizard icons. In the selected state, they should now have a better visual contrast. Task-number: QTCREATORBUG-18936 Change-Id: I2a0f5dab74cdc5958f869a63756a4fc974ccad32 Reviewed-by: André Hartmann <aha_1980@gmx.de>
* QmakeProjectManager: Preserve line endingsChristian Kandeler2019-07-252-17/+24
| | | | | | | | ... when adding and removing files via the project tree. Fixes: QTCREATORBUG-2196 Change-Id: Ie4ee3a244c9089953cf414d9777fc65b6a8b9689 Reviewed-by: David Schulz <david.schulz@qt.io>
* Replace remaining Utils::FileName occurrences by Utils::FilePathhjk2019-07-231-1/+1
| | | | | Change-Id: Ic3120f18b4fbe90219de9128dba53d7453630b03 Reviewed-by: Christian Stenger <christian.stenger@qt.io>
* Avoid warning on empty expressionshjk2019-07-233-3/+3
| | | | | | | | For some reason, Q_UNUSED includes already a semicolon, adding one on the user side creates an additional empty statement. Change-Id: I9c5e8fac381345a60792cb75e2938fd53958d3b0 Reviewed-by: Christian Stenger <christian.stenger@qt.io>
* "New class" wizard: Respect the project's "no Qt keywords" settingChristian Kandeler2019-07-221-0/+3
| | | | | | Fixes: QTCREATORBUG-6812 Change-Id: I3f51c61f7a1ed1e4626be6bc31fa2e3affed2084 Reviewed-by: hjk <hjk@qt.io>
* ProjectExplorer: Update run config list centrallyChristian Kandeler2019-07-222-8/+0
| | | | | | | | | | | | | | This prodecure requires no further information from the specific project managers, so we can start it from the ProjectExplorer itself. Also wait until after project parsing has officially finished and the run configurations have updated their "enabled" state. Otherwise, RunConfiguration::isEnabled() will always return false, potentially leading to the active run configuration getting switched unintentionally. Fixes: QTCREATORBUG-21692 Change-Id: I32f4f758b5baa6222329d07b811993568eff1ee3 Reviewed-by: hjk <hjk@qt.io>
* Merge remote-tracking branch 'origin/4.10'Tim Jenssen2019-07-123-8/+9
|\ | | | | | | Change-Id: Iaf27911e4e9fb762c1a24c84c458462bafe95728
| * Remove more deprecation warningshjk2019-07-051-3/+3
| | | | | | | | | | Change-Id: Ie50e41737a4bf7bea41f550df7cc765267e8a144 Reviewed-by: Christian Stenger <christian.stenger@qt.io>
| * Avoid more deprecation warningshjk2019-07-053-5/+6
| | | | | | | | | | Change-Id: Icc7bb7a4ccf7fc9f89f6f668c194ccd440e5231c Reviewed-by: Christian Stenger <christian.stenger@qt.io>
* | Make the project managers tell the code model about include pathsChristian Kandeler2019-07-121-1/+1
| | | | | | | | | | | | | | | | ... from the environment. Fixes: QTCREATORBUG-17985 Change-Id: I9b54e550121cfcc0684a6e173337d59d235c6107 Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
* | Merge remote-tracking branch 'origin/4.10'Tim Jenssen2019-07-043-8/+12
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | Conflicts: qbs/modules/qtc/qtc.qbs qtcreator_ide_branding.pri src/libs/utils/synchronousprocess.cpp src/plugins/baremetal/iarewtoolchain.cpp src/plugins/cmakeprojectmanager/cmakeproject.cpp tests/unit/unittest/CMakeLists.txt Change-Id: I124ad492df403286751e175d27fe36487ddf6d07
| * More Utils::toSet/toListhjk2019-07-041-1/+1
| | | | | | | | | | | | | | ... and unrelated cosmetic changes. Change-Id: I591b17fd5289831e701b683f8fb47816efd1fa67 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
| * QmakeProjectManager: Take "executable" CONFIG value into accountChristian Kandeler2019-07-043-7/+11
| | | | | | | | | | | | | | | | ... when setting up deployment data. Fixes: QTCREATORBUG-22663 Change-Id: I88c428177b76a7bb59fc884c0b727fd0f26a780f Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
* | ProjectExplorer: Reduce ProjectExplorer::configureAsExampleProject()hjk2019-07-012-12/+8
| | | | | | | | | | | | | | ... to the bits that are actually used. Change-Id: I39a6ed1f4136d75b776bb89eec6165479097a4ec Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Merge remote-tracking branch 'origin/4.10'Eike Ziller2019-06-282-2/+2
|\ \ | |/ | | | | | | | | | | | | Conflicts: CMakeLists.txt tests/unit/unittest/unittest.pro Change-Id: I64296ad31502d9b35012da129a28e9277e9fcf8e
| * qmake Project Manager: Fix UI textLeena Miettinen2019-06-252-2/+2
| | | | | | | | | | Change-Id: I6048c952ca36d953d7667676435440615d756c45 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | ProjectExplorer: Merge BuildConfigurationFactory::availableBuildshjk2019-06-272-20/+15
| | | | | | | | | | | | | | ... and availableSetups as far as mechanically possible. Change-Id: Ia1d7babe943eea25da97cef7838187c234378673 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | ProjectExplorer: Align signatures of BuildConfigurationhjk2019-06-272-7/+5
| | | | | | | | | | | | | | | | | | | | ... availableBuilds() and availableSetups(). Goal is to merge them and inline all the local createBuildInfo() functions. Change-Id: I9f19093163808b6da6dc83977894420e08a1edd9 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | ProjectExplorer etc: More FilePath usagehjk2019-06-266-26/+23
| | | | | | | | | | | | | | Mostly for project files. Change-Id: Icb6059f80758865e42cc9f9c092ec6782770dfd7 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Use build step ids for construction in more caseshjk2019-06-263-6/+5
| | | | | | | | | | Change-Id: If2deb7c02c082e29cc6b1f0408c0d0e06d1c584b Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>