summaryrefslogtreecommitdiff
path: root/qmake/generators/win32/msvc_vcproj.h
authorzecke <zecke>2004-07-15 17:36:57 (UTC)
committer zecke <zecke>2004-07-15 17:36:57 (UTC)
commit323e9a7472a110b4befba7320540263147505bae (patch) (unidiff)
tree14c810bdb9c0603a30356b17b4bdf9ccb72741c6 /qmake/generators/win32/msvc_vcproj.h
parentaa292b322f1ecb43dd8f4e3cd295855730dd9f59 (diff)
downloadopie-323e9a7472a110b4befba7320540263147505bae.zip
opie-323e9a7472a110b4befba7320540263147505bae.tar.gz
opie-323e9a7472a110b4befba7320540263147505bae.tar.bz2
Manually updatet to qmake1.06a which includes support for precompiled
headers. Opies 'PRO' keyword was already reintroduced
Diffstat (limited to 'qmake/generators/win32/msvc_vcproj.h') (more/less context) (ignore whitespace changes)
-rw-r--r--qmake/generators/win32/msvc_vcproj.h14
1 files changed, 9 insertions, 5 deletions
diff --git a/qmake/generators/win32/msvc_vcproj.h b/qmake/generators/win32/msvc_vcproj.h
index 69e0c02..d1ca666 100644
--- a/qmake/generators/win32/msvc_vcproj.h
+++ b/qmake/generators/win32/msvc_vcproj.h
@@ -1,115 +1,119 @@
1
1/**************************************************************************** 2/****************************************************************************
2** $Id$ 3**
3** 4**
4** Definition of VcprojGenerator class. 5** Definition of VcprojGenerator class.
5** 6**
6** Created : 970521 7** Copyright (C) 1992-2003 Trolltech AS. All rights reserved.
7**
8** Copyright (C) 1992-2002 Trolltech AS. All rights reserved.
9** 8**
10** This file is part of the network module of the Qt GUI Toolkit. 9** This file is part of qmake.
11** 10**
12** This file may be distributed under the terms of the Q Public License 11** This file may be distributed under the terms of the Q Public License
13** as defined by Trolltech AS of Norway and appearing in the file 12** as defined by Trolltech AS of Norway and appearing in the file
14** LICENSE.QPL included in the packaging of this file. 13** LICENSE.QPL included in the packaging of this file.
15** 14**
16** This file may be distributed and/or modified under the terms of the 15** This file may be distributed and/or modified under the terms of the
17** GNU General Public License version 2 as published by the Free Software 16** GNU General Public License version 2 as published by the Free Software
18** Foundation and appearing in the file LICENSE.GPL included in the 17** Foundation and appearing in the file LICENSE.GPL included in the
19** packaging of this file. 18** packaging of this file.
20** 19**
21** Licensees holding valid Qt Enterprise Edition licenses may use this 20** Licensees holding valid Qt Enterprise Edition licenses may use this
22** file in accordance with the Qt Commercial License Agreement provided 21** file in accordance with the Qt Commercial License Agreement provided
23** with the Software. 22** with the Software.
24** 23**
25** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE 24** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
26** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. 25** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
27** 26**
28** See http://www.trolltech.com/pricing.html or email sales@trolltech.com for 27** See http://www.trolltech.com/pricing.html or email sales@trolltech.com for
29** information about Qt Commercial License Agreements. 28** information about Qt Commercial License Agreements.
30** See http://www.trolltech.com/qpl/ for QPL licensing information. 29** See http://www.trolltech.com/qpl/ for QPL licensing information.
31** See http://www.trolltech.com/gpl/ for GPL licensing information. 30** See http://www.trolltech.com/gpl/ for GPL licensing information.
32** 31**
33** Contact info@trolltech.com if any conditions of this licensing are 32** Contact info@trolltech.com if any conditions of this licensing are
34** not clear to you. 33** not clear to you.
35** 34**
36**********************************************************************/ 35**********************************************************************/
36
37#ifndef __MSVC_VCPROJ_H__ 37#ifndef __MSVC_VCPROJ_H__
38#define __MSVC_VCPROJ_H__ 38#define __MSVC_VCPROJ_H__
39 39
40#include "winmakefile.h" 40#include "winmakefile.h"
41#include "msvc_objectmodel.h" 41#include "msvc_objectmodel.h"
42 42
43enum target { 43enum target {
44 Application, 44 Application,
45 SharedLib, 45 SharedLib,
46 StaticLib 46 StaticLib
47}; 47};
48 48
49struct QUuid; 49struct QUuid;
50class VcprojGenerator : public Win32MakefileGenerator 50class VcprojGenerator : public Win32MakefileGenerator
51{ 51{
52 bool init_flag; 52 bool init_flag;
53 bool writeVcprojParts(QTextStream &); 53 bool writeVcprojParts(QTextStream &);
54 54
55 bool writeMakefile(QTextStream &); 55 bool writeMakefile(QTextStream &);
56 virtual void writeSubDirs(QTextStream &t); 56 virtual void writeSubDirs(QTextStream &t);
57 QString findTemplate(QString file); 57 QString findTemplate(QString file);
58 void init(); 58 void init();
59 59
60public: 60public:
61 VcprojGenerator(QMakeProject *p); 61 VcprojGenerator(QMakeProject *p);
62 ~VcprojGenerator(); 62 ~VcprojGenerator();
63 63
64 QString defaultMakefile() const; 64 QString defaultMakefile() const;
65 virtual bool doDepends() const { return FALSE; } //never necesary 65 virtual bool doDepends() const { return FALSE; } //never necesary
66 QString precompH, precompHFilename,
67 precompObj, precompPch;
68 bool usePCH;
66 69
67protected: 70protected:
68 virtual bool openOutput(QFile &file) const; 71 virtual bool openOutput(QFile &file) const;
69 virtual void processPrlVariable(const QString &, const QStringList &); 72 virtual void processPrlVariable(const QString &, const QStringList &);
70 virtual bool findLibraries(); 73 virtual bool findLibraries();
71 virtual void outputVariables(); 74 virtual void outputVariables();
72 QString fixFilename(QString ofile) const; 75 QString fixFilename(QString ofile) const;
73 76
74 void initOld(); 77 void initOld();
75 void initProject(); 78 void initProject();
76 void initConfiguration(); 79 void initConfiguration();
77 void initCompilerTool(); 80 void initCompilerTool();
78 void initLinkerTool(); 81 void initLinkerTool();
79 void initLibrarianTool(); 82 void initLibrarianTool();
80 void initIDLTool(); 83 void initIDLTool();
81 void initCustomBuildTool(); 84 void initCustomBuildTool();
82 void initPreBuildEventTools(); 85 void initPreBuildEventTools();
83 void initPostBuildEventTools(); 86 void initPostBuildEventTools();
84 void initPreLinkEventTools(); 87 void initPreLinkEventTools();
85 void initSourceFiles(); 88 void initSourceFiles();
86 void initHeaderFiles(); 89 void initHeaderFiles();
87 void initMOCFiles(); 90 void initMOCFiles();
88 void initUICFiles(); 91 void initUICFiles();
89 void initFormsFiles(); 92 void initFormsFiles();
90 void initTranslationFiles(); 93 void initTranslationFiles();
91 void initLexYaccFiles(); 94 void initLexYaccFiles();
92 void initResourceFiles(); 95 void initResourceFiles();
93 96
94 VCProject vcProject; 97 VCProject vcProject;
95 target projectTarget; 98 target projectTarget;
96 99
97private: 100private:
101 QUuid getProjectUUID(const QString &filename=QString::null);
98 QUuid increaseUUID(const QUuid &id); 102 QUuid increaseUUID(const QUuid &id);
99 friend class VCFilter; 103 friend class VCFilter;
100}; 104};
101 105
102inline VcprojGenerator::~VcprojGenerator() 106inline VcprojGenerator::~VcprojGenerator()
103{ } 107{ }
104 108
105inline QString VcprojGenerator::defaultMakefile() const 109inline QString VcprojGenerator::defaultMakefile() const
106{ 110{
107 return project->first("TARGET") + project->first("VCPROJ_EXTENSION"); 111 return project->first("TARGET") + project->first("VCPROJ_EXTENSION");
108} 112}
109 113
110inline bool VcprojGenerator::findLibraries() 114inline bool VcprojGenerator::findLibraries()
111{ 115{
112 return Win32MakefileGenerator::findLibraries("MSVCVCPROJ_LIBS"); 116 return Win32MakefileGenerator::findLibraries("MSVCVCPROJ_LIBS");
113} 117}
114 118
115#endif /* __MSVC_VCPROJ_H__ */ 119#endif /* __MSVC_VCPROJ_H__ */