ToolChain: Refactor toolchain support

Refactor ToolChains in Qt Creator:

 * Allow for several toolchains of the same type
 * Be smarter wrt. guessing what kind of output a toolchain
   produces. This allows us to eventually handle e.g. embedded
   linux setups way better than before.
 * Be smarter wrt. guessing what kind of environment a Qt version
   needs.
 * Improve auto-detection of toolchains a bit
 * Decide on which debugger to use based on the kind of output
   produced by the compiler.
 * Add options page to configure toolchains
 * Remove toolchain related options from the Qt version dialog

Reviewed-by: dt
This commit is contained in:
Tobias Hunger
2011-02-01 18:36:00 +01:00
parent be31c80b02
commit 8d0c477245
112 changed files with 6498 additions and 3687 deletions

View File

@@ -48,6 +48,10 @@ namespace Utils {
class PathChooser;
}
namespace ProjectExplorer {
class ToolChain;
}
namespace CMakeProjectManager {
namespace Internal {
@@ -87,10 +91,11 @@ public:
CMakeManager *cmakeManager() const;
QString arguments() const;
void setArguments(const QString &args);
ProjectExplorer::ToolChain *toolChain() const;
void setToolChain(ProjectExplorer::ToolChain *);
Utils::Environment environment() const;
QString msvcVersion() const;
void setMsvcVersion(const QString &version);
bool existsUpToDateXmlFile() const;
private:
void init();
bool hasInSourceBuild() const;
@@ -98,9 +103,9 @@ private:
QString m_buildDirectory;
QString m_sourceDirectory;
QString m_arguments;
QString m_msvcVersion;
bool m_creatingCbpFiles;
Utils::Environment m_environment;
ProjectExplorer::ToolChain *m_toolChain;
};
class InSourceBuildPage : public QWizardPage