summaryrefslogtreecommitdiff
path: root/qmake/generators/win32/msvc_objectmodel.h
Side-by-side diff
Diffstat (limited to 'qmake/generators/win32/msvc_objectmodel.h') (more/less context) (show whitespace changes)
-rw-r--r--qmake/generators/win32/msvc_objectmodel.h43
1 files changed, 29 insertions, 14 deletions
diff --git a/qmake/generators/win32/msvc_objectmodel.h b/qmake/generators/win32/msvc_objectmodel.h
index 1dca68d..9ce38d2 100644
--- a/qmake/generators/win32/msvc_objectmodel.h
+++ b/qmake/generators/win32/msvc_objectmodel.h
@@ -1,16 +1,16 @@
/****************************************************************************
-** $Id$
**
-** Definition of ________ class.
**
-** Copyright (C) 2002 Trolltech AS. All rights reserved.
+** Definition of VCProject class.
**
-** This file is part of the network module of the Qt GUI Toolkit.
+** Copyright (C) 2002-2003 Trolltech AS. All rights reserved.
+**
+** This file is part of qmake.
**
** This file may be distributed under the terms of the Q Public License
** as defined by Trolltech AS of Norway and appearing in the file
** LICENSE.QPL included in the packaging of this file.
**
** This file may be distributed and/or modified under the terms of the
** GNU General Public License version 2 as published by the Free Software
** Foundation and appearing in the file LICENSE.GPL included in the
@@ -27,16 +27,17 @@
** information about Qt Commercial License Agreements.
** See http://www.trolltech.com/qpl/ for QPL licensing information.
** See http://www.trolltech.com/gpl/ for GPL licensing information.
**
** Contact info@trolltech.com if any conditions of this licensing are
** not clear to you.
**
**********************************************************************/
+
#ifndef __MSVC_OBJECTMODEL_H__
#define __MSVC_OBJECTMODEL_H__
#include "project.h"
#include <qstring.h>
#include <qstringlist.h>
/*
@@ -51,17 +52,18 @@
corresponding property is not in the output,
forcing the tool to utilize default values.
False/True values will be in the output...
*/
enum customBuildCheck {
none,
moc,
uic,
- lexyacc
+ lexyacc,
+ resource
};
enum triState {
unset = -1,
_False = 0,
_True = 1
};
enum addressAwarenessType {
addrAwareDefault,
@@ -109,16 +111,17 @@ enum CompileAsOptions{
enum ConfigurationTypes {
typeUnknown = 0,
typeApplication = 1,
typeDynamicLibrary = 2,
typeStaticLibrary = 4,
typeGeneric = 10
};
enum debugOption {
+ debugUnknown = -1,
debugDisabled,
debugOldStyleInfo,
debugLineInfoOnly,
debugEnabled,
debugEditAndContinue
};
enum eAppProtectionOption {
eAppProtectUnchanged,
@@ -235,17 +238,18 @@ enum favorSizeOrSpeedOption {
};
enum genProxyLanguage {
genProxyNative,
genProxyManaged
};
enum inlineExpansionOption {
expandDisable,
expandOnlyInline,
- expandAnySuitable
+ expandAnySuitable,
+ expandDefault // Not useful number, but stops the output
};
enum linkIncrementalType {
linkIncrementalDefault,
linkIncrementalNo,
linkIncrementalYes
};
enum linkProgressOption {
linkProgressNotSet,
@@ -291,17 +295,18 @@ enum optFoldingType {
optNoFolding,
optFolding
};
enum optimizeOption {
optimizeDisabled,
optimizeMinSpace,
optimizeMaxSpeed,
optimizeFull,
- optimizeCustom
+ optimizeCustom,
+ optimizeDefault // Not useful number, but stops the output
};
enum optRefType {
optReferencesDefault,
optNoReferences,
optReferences
};
enum optWin98Type {
optWin98Default,
@@ -310,31 +315,33 @@ enum optWin98Type {
};
enum pchOption {
pchNone,
pchCreateUsingSpecific,
pchGenerateAuto,
pchUseUsingSpecific
};
enum preprocessOption {
+ preprocessUnknown = -1,
preprocessNo,
preprocessYes,
preprocessNoLineNumbers
};
enum ProcessorOptimizeOption {
procOptimizeBlended,
procOptimizePentium,
procOptimizePentiumProAndAbove
};
enum RemoteDebuggerType {
DbgLocal,
DbgRemote,
DbgRemoteTCPIP
};
enum runtimeLibraryOption {
+ rtUnknown = -1,
rtMultiThreaded,
rtMultiThreadedDebug,
rtMultiThreadedDLL,
rtMultiThreadedDebugDLL,
rtSingleThreaded,
rtSingleThreadedDebug
};
enum structMemberAlignOption {
@@ -374,16 +381,17 @@ enum useOfATL {
useATLDynamic
};
enum useOfMfc {
useMfcStdWin,
useMfcStatic,
useMfcDynamic
};
enum warningLevelOption {
+ warningLevelUnknown = -1,
warningLevel_0,
warningLevel_1,
warningLevel_2,
warningLevel_3,
warningLevel_4
};
class VCToolBase {
@@ -606,19 +614,19 @@ class VCCustomBuildTool : public VCToolBase
public:
// Functions
VCCustomBuildTool();
virtual ~VCCustomBuildTool(){}
bool parseOption( const char* ){ return FALSE; };
// Variables
QStringList AdditionalDependencies;
- QString CommandLine;
+ QStringList CommandLine;
QString Description;
- QString Outputs;
+ QStringList Outputs;
QString ToolName;
QString ToolPath;
};
class VCResourceCompilerTool : public VCToolBase
{
public:
// Functions
@@ -714,27 +722,34 @@ public:
class VcprojGenerator;
class VCFilter
{
public:
// Functions
VCFilter();
~VCFilter(){}
- void generateMOC( QTextStream &strm, QString str ) const;
- void generateUIC( QTextStream &strm, const QString& str ) const;
+ void addMOCstage( QTextStream &strm, QString str );
+ void addUICstage( QTextStream &strm, QString str );
+ bool addIMGstage( QTextStream &strm, QString str );
+ void modifyPCHstage( QTextStream &strm, QString str );
// Variables
QString Name;
QString Filter;
triState ParseFiles;
QStringList Files;
VcprojGenerator* Project;
- VCConfiguration* Config;
+ QValueList<VCConfiguration> *Config;
customBuildCheck CustomBuild;
+ bool useCustomBuildTool;
+ VCCustomBuildTool CustomBuildTool;
+ bool useCompilerTool;
+ VCCLCompilerTool CompilerTool;
+ bool flat_files;
};
class VCProject
{
public:
// Functions
VCProject();
~VCProject(){}
@@ -743,17 +758,17 @@ public:
QString Name;
QString Version;
QString ProjectGUID;
QString SccProjectName;
QString SccLocalPath;
QString PlatformName;
// XML sub-parts
- VCConfiguration Configuration;
+ QValueList<VCConfiguration> Configuration;
VCFilter SourceFiles;
VCFilter HeaderFiles;
VCFilter MOCFiles;
VCFilter UICFiles;
VCFilter FormFiles;
VCFilter TranslationFiles;
VCFilter LexYaccFiles;
VCFilter ResourceFiles;
@@ -762,12 +777,12 @@ public:
QTextStream &operator<<( QTextStream &, const VCCLCompilerTool & );
QTextStream &operator<<( QTextStream &, const VCLinkerTool & );
QTextStream &operator<<( QTextStream &, const VCMIDLTool & );
QTextStream &operator<<( QTextStream &, const VCCustomBuildTool & );
QTextStream &operator<<( QTextStream &, const VCLibrarianTool & );
QTextStream &operator<<( QTextStream &, const VCResourceCompilerTool & );
QTextStream &operator<<( QTextStream &, const VCEventTool & );
QTextStream &operator<<( QTextStream &, const VCConfiguration & );
-QTextStream &operator<<( QTextStream &, const VCFilter & );
+QTextStream &operator<<( QTextStream &, VCFilter & );
QTextStream &operator<<( QTextStream &, const VCProject & );
#endif //__MSVC_OBJECTMODEL_H__