Commit Graph

53 Commits

Author SHA1 Message Date
Tobias Hunger
5c651c9f2a /target/buildtarget/g in cmakeprojectmanager
This is in preparation of the addition of "targets" in the
sense of "platforms to develop for" into the codebase.

Reviewed-by: dt
2010-02-02 12:59:29 +01:00
Friedemann Kleint
2fd8b2d7ff Fix some code scanning issues.
QString: Use QChar where appropriate.
2010-02-01 12:43:56 +01:00
Tobias Hunger
1726688434 Make use of ProjectConfiguration class in BuildSteps
* Use new BuildSteps interface (as seen in ProjectConfiguration).
 * Use new factory to construct/clone/restore them.

Reviewed-by: dt
2010-02-01 12:23:12 +01:00
Tobias Hunger
a6ad773722 Make method naming more consistent.
* Use id() for methods returning a string used to represent
    some type of object.
  * Use displayName() for strings that are meant to be user
    visible.
  * Quieten some warnings while touching the files anyway.
  * Move Factories to their products in the plugins where that
    was not done before.

Reviewed-by: dt
2010-01-07 18:17:24 +01:00
Tobias Hunger
ec025c6dbf Rework Build Parser handling
* Rework IBuildParser:
    * Remove name() method.
    * Remove enterDirectory and leaveDirectory signals.
    * Allow chaining of parsers.
 * Rename IBuildParser to IOutputParser.
 * Implement GnuMakeParser.
    * Remove entering/leaving directory related code from all other parsers
    * Move filename fixup heuristic based on entering/leaving directory
      massages from gnumake here from AbstractMakeStep.
 * Add outputParser method to ToolChain: This removes the need to map
   toolchains to BuildParser names in the BuildSteps.
 * Enhance AbstractProcessStep to accept a IOutputParser to parse its output.
 * Remove AbstractMakeStep.
 * Set the appropriate Parsers in all classes deriving from AbstractProcessStep
   and append the ToolChain's parser to the parser chain.
 * Remove BuildParserFactories: There is no more need for them.
 * Remove constants used to identify the BuildParsers.
 * Clean up some names:
    * Replace stdOut with stdOutput.
    * Replace addToTaskWindow with addTask and addToOutputWindow with
      addOutput. Do this wherever it is not yet clear that this will end up
      in the Task/Output window.

Reviewed-by: dt
2009-12-09 18:39:03 +01:00
dt
24a4590767 Cmake: Let the generator determine the toolchain
Otherwise we need to parse the cbp file, which happens only if the
buildconfiguration gets active. Also try to decouple a few internals a
little bit by using signals. The CMakeProject still handles a few things
directly instead of via signals, more to come eventually.
2009-12-07 15:00:17 +01:00
dt
808bbf6436 Fix crash on adding cmake build configuration 2009-11-30 15:24:33 +01:00
dt
d6d48fa23c Some cleanup after BuildConfiguration refactoring 2009-11-30 15:24:32 +01:00
dt
801e9948f5 Hide static cast in accessor methods 2009-11-30 15:24:32 +01:00
dt
0e4e35f876 Rename method to the more correct canCreateForBuildConfiguration 2009-11-30 15:24:31 +01:00
dt
a7a7e4d002 Change IBuildStepFactory::canCreate to take a BuildConfiguration
instead of a Project. Since BuildSteps "should" only care about the
BuildConfiguration not the Project. (Not 100% doable, but still.)
2009-11-30 15:24:31 +01:00
dt
a312206306 Move most of the BuildConfiguration specific functions
Note: I didn't fix all the connects and there are a few missing things.
This compiles, more work is coming.
2009-11-30 15:24:31 +01:00
dt
7904544b84 Remove BuildConfiguration::name()
The pointers can be used to distinguish BuildConfigurations
2009-11-30 15:24:31 +01:00
dt
60a1ee12ba Remove project() from BuildStep
The project() should in most cases not matter, instead the
BuildConfiguration should. This shows all the information that needs to
move into the BuildConfiguration classes.
2009-11-30 15:24:31 +01:00
dt
0d162be22f Make BuildSteps one instance per BuildConfiguration
Enables users to change which buildsteps get run per buildconfiguration.
Some further tweaks are probably necessary. This is a rather big
change, though it should work. :)
2009-11-19 16:36:48 +01:00
dt
72fe54db77 Remove value(name) and setValue(name, value) from BuildStep 2009-11-19 16:35:19 +01:00
dt
833b86d5e2 Fix that the cmake plugin did not allow removing build targets 2009-10-27 16:15:04 +01:00
con
acbd4513e3 Changing string based api to BuildConfiguration based api.
Builds, but I'm pretty sure it doesn't *work* :)
2009-10-01 10:05:05 +02:00
Friedemann Kleint
ad294f8467 Project explorer: Make public headers compile with NO_CAST_FROM_ASCII
.. and purge unneeded includes.
2009-09-29 11:39:55 +02:00
dt
156db18592 Fix not trying hard enough to find the correct file on build errors.
If there are multiple files with the same name, then we try harder to
find the correct one. That is for jom and nmake we have a relative path
so we try to find a file which matches the relative path completly.
Instead of just comparing the last part.
2009-09-03 15:15:20 +02:00
hjk
93cbef8724 long live the king 2009-08-14 09:30:56 +02:00
dt
45e514ca37 Check/Unchecking useJom should update various makestep config widgets. 2009-08-12 17:02:28 +02:00
dt
b6087aff74 Add a missing space in the summary text 2009-08-06 17:35:11 +02:00
dt
109cb04102 Fix CMake Project to work with new project settigns pane. 2009-08-06 17:30:49 +02:00
dt
dbe5a6f34b Rework the project settings.
This has still a few missing things, but this enough to start getting
some feedback. Missing are non qt projects, a solution for the
runconfiguration, a missing black line between the treeview on top and
the project settings at the bottom. Some flickering with removing/adding
widgets to the QScrollArea and not showing the expanded widget if the
Details button is right at the bottom.
2009-08-06 15:31:32 +02:00
con
2afea9ddf5 CMake project settings margins and field growths. 2009-07-23 17:23:26 +02:00
dt
4c1b1e1a67 Another small tweak to the build settigns page. 2009-07-20 16:12:40 +02:00
dt
40ff6ab2c4 Make msvc and cmake play together.
Note: This requires a cvs cmake and is not fully tested yet. This adds a
few missing pieces, so now opening new never built projects without a
.user file on systems with just one VS installation should work.
2009-07-02 16:44:51 +02:00
dt
daaf652fcd Add a way to configure what cleaning does.
Task-Nr: 235965
2009-06-23 11:16:43 +02:00
Jason McDonald
884b7af769 Update license headers and sales contact details.
Reviewed-by: Trust Me
2009-06-17 00:01:27 +10:00
dt
19f7f99b61 Report finished in all cases. 2009-05-25 17:09:38 +02:00
dt
617ddf03e3 Implement a AbstractMakeStep which takes the common code from 3 places.
The common code for all makesteps i mainly tracking in which directories
we are currently building. And guessing the filename from that
information. And creating a buildparser from a name.
2009-05-05 15:08:29 +02:00
dt
84ee1653f4 Allow changing the build directory, and reparse.
Task:  250418

This also moves us closer to supporting multiple build configurations
properly.
2009-04-20 17:59:36 +02:00
Oswald Buddenhagen
6d5eeb7afb add missing tr()s, etc., add some //: comments 2009-04-20 16:51:10 +02:00
dt
0a406dbe1f Add a makestep that cleans up
Make clean and rebuild all work.
2009-04-07 15:00:16 +02:00
dt
3d863b211a Show progress for building cmake projects.
Parse percent output of cmake, report via QtConcurrent and modify the
BuildManager to also report the progress to the ProgressManager.
2009-04-07 13:52:28 +02:00
Thorbjørn Lindeijer
cc995d13ee Allow updating of configuration or file list separately
Now it will only update the list of files when you edit [project].files,
and only reparse all files when you edit [project].config or
[project].includes. When updating the file list it will only parse the
added files.
2009-03-19 18:08:16 +01:00
Thorbjørn Lindeijer
3904b2ad3e Class name simplification for MakeStep related classes
Was a bit confusing that a MakeStep was constructed by a
MakeBuildStepFactory and configured by a MakeBuildStepConfigWidget.

The MakeStep of the generic project manager was renamed to
GenericMakeStep.
2009-03-18 13:55:13 +01:00
dt
b2ee911e1a Fixes: Add a linedit for make arguments for the cmake makestep.
Details:  One of the more common simple wishes, so just implement it.
2009-03-12 15:51:44 +01:00
dt
d73ac37b8a Fixes: Use the correct generator/make for MinGW
Details:  Patch by Antoine Requet
2009-03-10 11:48:37 +01:00
dt
488b04aa39 Fixes: Uninitialized value of m_buildParser
Details:  Patch by Antoine Requet
2009-03-10 11:47:23 +01:00
hjk
8ca887aae2 Fixes: change file license headers to include LGPL 2009-02-25 09:15:00 +01:00
dt
c6a02170b9 Fixes: Move Buildparser to the projectexplorer, use in cmakeplugin
Details:  This enables us to parse the build errors correctly.
          The makesteps of the qt4project and cmakeproject have some
          code dupliaction, which could be refactored. And the code
          to find out the correct build parser could probably also
          be done better, but we are now parsing the build output for
          cmake.
2009-02-16 13:12:12 +01:00
Daniel Molkentin
59affcfffc Bump year in licence header. 2009-01-13 19:22:14 +01:00
dt
cc4e0e3ad1 Fixes: Correctly restore BuildSteps and add configuration options to the cmakestep.
Details:  Forgot to add the factories, also the configuration options for the cmakestep don't work atm.
2009-01-12 15:29:05 +01:00
dt
0b21f2898f Fixes: Various stuff in the cmake project.
Details:  Not yet usable, but at least you get a list of build targets now.
2009-01-12 15:10:33 +01:00
Friedemann Kleint
d6fbb1b573 Fixes: gcc 4.3.2 compile warnings 2008-12-19 10:49:29 +01:00
dt
d402ed2955 Fixes: Replace QTC_ASSERT with QT_ASSERT. 2008-12-17 15:51:48 +01:00
dt
3ba192af7e Merge branch '0.9.1-beta' 2008-12-17 14:21:03 +01:00
hjk
da3cb14483 chancge Nokia GPL exception version from 1.2 to 1.3 2008-12-16 17:20:00 +01:00