Parse <compilationunit> Added: trunk/reactos/tools/rbuild/compilationunit.cpp Modified: trunk/reactos/tools/rbuild/doc/rbuild.txt Added: trunk/reactos/tools/rbuild/global.cpp Modified: trunk/reactos/tools/rbuild/module.cpp Modified: trunk/reactos/tools/rbuild/project.cpp Modified: trunk/reactos/tools/rbuild/rbuild.cpp Modified: trunk/reactos/tools/rbuild/rbuild.h Modified: trunk/reactos/tools/rbuild/rbuild.mak Modified: trunk/reactos/tools/rbuild/test.h Modified: trunk/reactos/tools/rbuild/tests/alltests.cpp Added: trunk/reactos/tools/rbuild/tests/compilationunittest.cpp Added: trunk/reactos/tools/rbuild/tests/data/compilationunit.xml Modified: trunk/reactos/tools/tools.mak _____
Copied: trunk/reactos/tools/rbuild/compilationunit.cpp (from rev 19411, trunk/reactos/tools/rbuild/compilationunit.cpp) _____
Modified: trunk/reactos/tools/rbuild/doc/rbuild.txt --- trunk/reactos/tools/rbuild/doc/rbuild.txt 2005-11-22 08:15:04 UTC (rev 19456) +++ trunk/reactos/tools/rbuild/doc/rbuild.txt 2005-11-22 08:18:03 UTC (rev 19457) @@ -129,7 +129,7 @@
None.
Elements: - bootstrap, component, define, dependency, directory, file, if, importlibrary, include, invoke, library, linkerscript, property. + bootstrap, component, compilationunit, define, dependency, directory, file, if, importlibrary, include, invoke, library, linkerscript, property.
Module types @@ -190,6 +190,25 @@ None.
+CompilationUnit element +----------------------- +A compilationunit element specifies that one or more source code files are to be compiled as a single compilation unit. + +Syntax: + <compilationunit> + ... + </compilationunit> + +Attributes: + None. + +Value: + None. + +Elements: + directory, file, if. + + Component element ----------------- A component element specifies that imports from a library are to be stubbed so tests can be run without actually calling the functions in the library. This element can only be used for modules of type test. @@ -313,7 +332,7 @@ None.
Elements: - compilerflag, define, directory, file, if, include, property. + compilationunit, compilerflag, define, directory, file, if, include, property.
Importlibrary element _____
Copied: trunk/reactos/tools/rbuild/global.cpp (from rev 19411, trunk/reactos/tools/rbuild/global.cpp) --- trunk/reactos/tools/rbuild/global.cpp 2005-11-21 18:02:28 UTC (rev 19411) +++ trunk/reactos/tools/rbuild/global.cpp 2005-11-22 08:18:03 UTC (rev 19457) @@ -0,0 +1,70 @@
+/* + * Copyright (C) 2005 Casper S. Hornstrup + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + */ +#include "rbuild.h" + +using std::string; +using std::vector; + +string ExePrefix; +string ExePostfix; +string sSep; +string sBadSep; +char cSep; +char cBadSep; + + +void +InitializeEnvironment () +{ + char *SepValue, *ExePostfixValue, *ExePrefixValue;; + + SepValue = getenv ( "SEP" ); + if ( SepValue && ( 0 == strcmp ( SepValue, DEF_SSEP ) || 0 == strcmp ( SepValue, DEF_SBAD_SEP ) ) ) + { + cSep = SepValue[0]; + sSep = SepValue; + } + else + { + cSep = DEF_CSEP; + sSep = DEF_SSEP; + } + if ( cSep == DEF_CSEP ) + { + cBadSep = DEF_CBAD_SEP; + sBadSep = DEF_SBAD_SEP; + } + else + { + cBadSep = DEF_CSEP; + sBadSep = DEF_SSEP; + } + ExePostfixValue = getenv ( "EXEPOSTFIX" ); + ExePrefixValue = getenv ( "EXEPREFIX" ); + if ( ( ExePostfixValue == NULL || 0 == strlen ( ExePostfixValue ) ) && + ( ExePrefixValue == NULL || 0 == strlen ( ExePrefixValue ) ) ) + { + ExePostfix = DEF_EXEPOSTFIX; + ExePrefix = DEF_EXEPREFIX; + } + else + { + ExePostfix = ExePostfixValue ? ExePostfixValue : ""; + ExePrefix = ExePrefixValue ? ExePrefixValue : ""; + } +} _____
Modified: trunk/reactos/tools/rbuild/module.cpp --- trunk/reactos/tools/rbuild/module.cpp 2005-11-22 08:15:04 UTC (rev 19456) +++ trunk/reactos/tools/rbuild/module.cpp 2005-11-22 08:18:03 UTC (rev 19457) @@ -182,20 +182,22 @@
IfableData::~IfableData() { size_t i; - for ( i = 0; i < files.size(); i++ ) + for ( i = 0; i < files.size (); i++ ) delete files[i]; - for ( i = 0; i < includes.size(); i++ ) + for ( i = 0; i < includes.size (); i++ ) delete includes[i]; - for ( i = 0; i < defines.size(); i++ ) + for ( i = 0; i < defines.size (); i++ ) delete defines[i]; - for ( i = 0; i < libraries.size(); i++ ) + for ( i = 0; i < libraries.size (); i++ ) delete libraries[i]; - for ( i = 0; i < properties.size(); i++ ) + for ( i = 0; i < properties.size (); i++ ) delete properties[i]; - for ( i = 0; i < compilerFlags.size(); i++ ) + for ( i = 0; i < compilerFlags.size (); i++ ) delete compilerFlags[i]; - for ( i = 0; i < ifs.size(); i++ ) + for ( i = 0; i < ifs.size (); i++ ) delete ifs[i]; + for ( i = 0; i < compilationUnits.size (); i++ ) + delete compilationUnits[i]; }
void IfableData::ProcessXML () @@ -215,6 +217,8 @@ compilerFlags[i]->ProcessXML (); for ( i = 0; i < ifs.size (); i++ ) ifs[i]->ProcessXML (); + for ( i = 0; i < compilationUnits.size (); i++ ) + compilationUnits[i]->ProcessXML (); }
Module::Module ( const Project& project, @@ -413,7 +417,10 @@
size_t i; for ( i = 0; i < node.subElements.size(); i++ ) - ProcessXMLSubElement ( *node.subElements[i], path ); + { + ParseContext parseContext; + ProcessXMLSubElement ( *node.subElements[i], path, parseContext ); + } for ( i = 0; i < invocations.size(); i++ ) invocations[i]->ProcessXML (); for ( i = 0; i < dependencies.size(); i++ ) @@ -434,8 +441,9 @@ void Module::ProcessXMLSubElement ( const XMLElement& e, const string& path, - If* pIf /*= NULL*/ ) + ParseContext& parseContext ) { + If* pOldIf = parseContext.ifData; bool subs_invalid = false; string subpath ( path ); if ( e.name == "file" && e.value.size () > 0 ) @@ -470,17 +478,19 @@ first, switches, false ); - if ( pIf ) - pIf->data.files.push_back ( pFile ); + if ( parseContext.ifData ) + parseContext.ifData->data.files.push_back ( pFile ); else non_if_data.files.push_back ( pFile ); + if ( parseContext.compilationUnit ) + parseContext.compilationUnit->files.push_back ( pFile ); subs_invalid = true; } else if ( e.name == "library" && e.value.size () ) { Library* pLibrary = new Library ( e, *this, e.value ); - if ( pIf ) - pIf->data.libraries.push_back ( pLibrary ); + if ( parseContext.ifData ) + parseContext.ifData->data.libraries.push_back ( pLibrary ); else non_if_data.libraries.push_back ( pLibrary ); subs_invalid = true; @@ -494,8 +504,8 @@ else if ( e.name == "include" ) { Include* include = new Include ( project, this, &e ); - if ( pIf ) - pIf->data.includes.push_back ( include ); + if ( parseContext.ifData ) + parseContext.ifData->data.includes.push_back ( include ); else non_if_data.includes.push_back ( include ); subs_invalid = true; @@ -503,15 +513,15 @@ else if ( e.name == "define" ) { Define* pDefine = new Define ( project, this, e ); - if ( pIf ) - pIf->data.defines.push_back ( pDefine ); + if ( parseContext.ifData ) + parseContext.ifData->data.defines.push_back ( pDefine ); else non_if_data.defines.push_back ( pDefine ); subs_invalid = true; } else if ( e.name == "invoke" ) { - if ( pIf ) + if ( parseContext.ifData ) throw InvalidBuildFileException ( e.location, "<invoke> is not a valid sub-element of <if>" ); @@ -520,7 +530,7 @@ } else if ( e.name == "dependency" ) { - if ( pIf ) + if ( parseContext.ifData ) throw InvalidBuildFileException ( e.location, "<dependency> is not a valid sub-element of <if>" ); @@ -529,7 +539,7 @@ } else if ( e.name == "importlibrary" ) { - if ( pIf ) + if ( parseContext.ifData ) throw InvalidBuildFileException ( e.location, "<importlibrary> is not a valid sub-element of <if>" ); @@ -542,29 +552,27 @@ } else if ( e.name == "if" ) { - If* pOldIf = pIf; - pIf = new If ( e, project, this ); + parseContext.ifData = new If ( e, project, this ); if ( pOldIf ) - pOldIf->data.ifs.push_back ( pIf ); + pOldIf->data.ifs.push_back ( parseContext.ifData ); else - non_if_data.ifs.push_back ( pIf ); + non_if_data.ifs.push_back ( parseContext.ifData ); subs_invalid = false; } else if ( e.name == "ifnot" ) { - If* pOldIf = pIf; - pIf = new If ( e, project, this, true ); + parseContext.ifData = new If ( e, project, this, true ); if ( pOldIf ) - pOldIf->data.ifs.push_back ( pIf ); + pOldIf->data.ifs.push_back ( parseContext.ifData ); else - non_if_data.ifs.push_back ( pIf ); + non_if_data.ifs.push_back ( parseContext.ifData ); subs_invalid = false; } else if ( e.name == "compilerflag" ) { CompilerFlag* pCompilerFlag = new CompilerFlag ( project, this, e ); - if ( pIf ) - pIf->data.compilerFlags.push_back ( pCompilerFlag ); + if ( parseContext.ifData ) + parseContext.ifData->data.compilerFlags.push_back ( pCompilerFlag ); else non_if_data.compilerFlags.push_back ( pCompilerFlag ); subs_invalid = true; @@ -601,7 +609,7 @@ } else if ( e.name == "pch" ) { - if ( pIf ) + if ( parseContext.ifData ) throw InvalidBuildFileException ( e.location, "<pch> is not a valid sub-element of <if>" ); @@ -613,13 +621,24 @@ e, *this, File ( FixSeparator ( path + cSep + e.value ), false, "", true ) ); subs_invalid = true; } + else if ( e.name == "compilationunit" ) + { + CompilationUnit* pCompilationUnit = new CompilationUnit ( project, this, e ); + if ( parseContext.ifData ) + parseContext.ifData->data.compilationUnits.push_back ( pCompilationUnit ); + else + non_if_data.compilationUnits.push_back ( pCompilationUnit ); + parseContext.compilationUnit = pCompilationUnit; + subs_invalid = false; + } if ( subs_invalid && e.subElements.size() > 0 ) throw InvalidBuildFileException ( e.location, "<%s> cannot have sub-elements", e.name.c_str() ); for ( size_t i = 0; i < e.subElements.size (); i++ ) - ProcessXMLSubElement ( *e.subElements[i], subpath, pIf ); + ProcessXMLSubElement ( *e.subElements[i], subpath, parseContext ); + parseContext.ifData = pOldIf; }
ModuleType _____
Modified: trunk/reactos/tools/rbuild/project.cpp --- trunk/reactos/tools/rbuild/project.cpp 2005-11-22 08:15:04 UTC (rev 19456) +++ trunk/reactos/tools/rbuild/project.cpp 2005-11-22 08:18:03 UTC (rev 19457) @@ -66,6 +66,11 @@
"reactos" ); }
+ParseContext::ParseContext () + : ifData (NULL), + compilationUnit (NULL) +{ +}
Project::Project ( const string& filename ) : xmlfile (filename), @@ -254,7 +259,10 @@
size_t i; for ( i = 0; i < node->subElements.size (); i++ ) - ProcessXMLSubElement ( *node->subElements[i], path ); + { + ParseContext parseContext; + ProcessXMLSubElement ( *node->subElements[i], path, parseContext ); + } for ( i = 0; i < modules.size (); i++ ) modules[i]->ProcessXML (); for ( i = 0; i < linkerFlags.size (); i++ ) @@ -269,13 +277,13 @@ void Project::ProcessXMLSubElement ( const XMLElement& e, const string& path, - If* pIf ) + ParseContext& parseContext ) { bool subs_invalid = false; string subpath(path); if ( e.name == "module" ) { - if ( pIf ) + if ( parseContext.ifData ) throw InvalidBuildFileException ( e.location, "<module> is not a valid sub-element of <if>" ); @@ -310,8 +318,8 @@ else if ( e.name == "include" ) { Include* include = new Include ( *this, &e ); - if ( pIf ) - pIf->data.includes.push_back ( include ); + if ( parseContext.ifData ) + parseContext.ifData->data.includes.push_back ( include ); else non_if_data.includes.push_back ( include ); subs_invalid = true; @@ -319,8 +327,8 @@ else if ( e.name == "define" ) { Define* define = new Define ( *this, e ); - if ( pIf ) - pIf->data.defines.push_back ( define ); + if ( parseContext.ifData ) + parseContext.ifData->data.defines.push_back ( define ); else non_if_data.defines.push_back ( define ); subs_invalid = true; @@ -328,8 +336,8 @@ else if ( e.name == "compilerflag" ) { CompilerFlag* pCompilerFlag = new CompilerFlag ( *this, e ); - if ( pIf ) - pIf->data.compilerFlags.push_back ( pCompilerFlag ); + if ( parseContext.ifData ) + parseContext.ifData->data.compilerFlags.push_back ( pCompilerFlag ); else non_if_data.compilerFlags.push_back ( pCompilerFlag ); subs_invalid = true; @@ -341,29 +349,29 @@ } else if ( e.name == "if" ) { - If* pOldIf = pIf; - pIf = new If ( e, *this, NULL ); + If* pOldIf = parseContext.ifData; + parseContext.ifData = new If ( e, *this, NULL ); if ( pOldIf ) - pOldIf->data.ifs.push_back ( pIf ); + pOldIf->data.ifs.push_back ( parseContext.ifData ); else - non_if_data.ifs.push_back ( pIf ); + non_if_data.ifs.push_back ( parseContext.ifData ); subs_invalid = false; } else if ( e.name == "ifnot" ) { - If* pOldIf = pIf; - pIf = new If ( e, *this, NULL, true ); + If* pOldIf = parseContext.ifData; + parseContext.ifData = new If ( e, *this, NULL, true ); if ( pOldIf ) - pOldIf->data.ifs.push_back ( pIf ); + pOldIf->data.ifs.push_back ( parseContext.ifData ); else - non_if_data.ifs.push_back ( pIf ); + non_if_data.ifs.push_back ( parseContext.ifData ); subs_invalid = false; } else if ( e.name == "property" ) { Property* property = new Property ( e, *this, NULL ); - if ( pIf ) - pIf->data.properties.push_back ( property ); + if ( parseContext.ifData ) + parseContext.ifData->data.properties.push_back ( property ); else non_if_data.properties.push_back ( property ); } @@ -373,7 +381,7 @@ "<%s> cannot have sub-elements", e.name.c_str() ); for ( size_t i = 0; i < e.subElements.size (); i++ ) - ProcessXMLSubElement ( *e.subElements[i], subpath, pIf ); + ProcessXMLSubElement ( *e.subElements[i], subpath, parseContext ); }
Module* @@ -405,5 +413,3 @@ { return xmlfile; } - - _____
Modified: trunk/reactos/tools/rbuild/rbuild.cpp --- trunk/reactos/tools/rbuild/rbuild.cpp 2005-11-22 08:15:04 UTC (rev 19456) +++ trunk/reactos/tools/rbuild/rbuild.cpp 2005-11-22 08:18:03 UTC (rev 19457) @@ -35,13 +35,6 @@
static string RootXmlFile = "ReactOS.xml"; static Configuration configuration;
-string ExePrefix; -string ExePostfix; -string sSep; -string sBadSep; -char cSep; -char cBadSep; - bool ParseAutomaticDependencySwitch ( char switchChar2, char* switchStart ) @@ -193,43 +186,8 @@ int main ( int argc, char** argv ) { - char *SepValue, *ExePostfixValue, *ExePrefixValue;; + InitializeEnvironment ();
- SepValue = getenv("SEP"); - if (SepValue && (0 == strcmp(SepValue, DEF_SSEP) || 0 == strcmp(SepValue, DEF_SBAD_SEP))) - { - cSep = SepValue[0]; - sSep = SepValue; - } - else - { - cSep = DEF_CSEP; - sSep = DEF_SSEP; - } - if (cSep == DEF_CSEP) - { - cBadSep = DEF_CBAD_SEP; - sBadSep = DEF_SBAD_SEP; - } - else - { - cBadSep = DEF_CSEP; - sBadSep = DEF_SSEP; - } - ExePostfixValue = getenv("EXEPOSTFIX"); - ExePrefixValue = getenv("EXEPREFIX"); - if ((ExePostfixValue == NULL || 0 == strlen(ExePostfixValue)) && - (ExePrefixValue == NULL || 0 == strlen(ExePrefixValue))) - { - ExePostfix = DEF_EXEPOSTFIX; - ExePrefix = DEF_EXEPREFIX; - } - else - { - ExePostfix = ExePostfixValue ? ExePostfixValue : ""; - ExePrefix = ExePrefixValue ? ExePrefixValue : ""; - } - if ( !ParseArguments ( argc, argv ) ) { printf ( "Generates project files for buildsystems\n\n" ); _____
Modified: trunk/reactos/tools/rbuild/rbuild.h --- trunk/reactos/tools/rbuild/rbuild.h 2005-11-22 08:15:04 UTC (rev 19456) +++ trunk/reactos/tools/rbuild/rbuild.h 2005-11-22 08:18:03 UTC (rev 19457) @@ -91,6 +91,7 @@
class PchFile; class StubbedComponent; class StubbedSymbol; +class CompilationUnit;
class SourceFileTest;
@@ -121,6 +122,7 @@ const std::string& defaultValue ); };
+ class FileSupportCode { public: @@ -128,9 +130,20 @@ std::string filename ); };
+ +class ParseContext +{ +public: + If* ifData; + CompilationUnit* compilationUnit; + ParseContext (); +}; + + class IfableData { public: + std::vector<CompilationUnit*> compilationUnits; std::vector<File*> files; std::vector<Include*> includes; std::vector<Define*> defines; @@ -177,7 +190,7 @@ void ReadXml (); void ProcessXMLSubElement ( const XMLElement& e, const std::string& path, - If* pIf = NULL ); + ParseContext& parseContext );
// disable copy semantics Project ( const Project& ); @@ -277,7 +290,7 @@ std::string GetDefaultModuleBaseaddress () const; void ProcessXMLSubElement ( const XMLElement& e, const std::string& path, - If* pIf = NULL ); + ParseContext& parseContext ); };
@@ -771,6 +784,26 @@ std::string StripSymbol ( std::string symbol ); };
+ +class CompilationUnit +{ +public: + const Project& project; + const Module* module; + const XMLElement& node; + std::vector<File*> files; + + CompilationUnit ( const Project& project, + const Module* module, + const XMLElement& node ); + ~CompilationUnit (); + void ProcessXML(); +}; + + +extern void +InitializeEnvironment (); + extern std::string Right ( const std::string& s, size_t n );
_____
Modified: trunk/reactos/tools/rbuild/rbuild.mak --- trunk/reactos/tools/rbuild/rbuild.mak 2005-11-22 08:15:04 UTC (rev 19456) +++ trunk/reactos/tools/rbuild/rbuild.mak 2005-11-22 08:18:03 UTC (rev 19457) @@ -152,9 +152,11 @@
RBUILD_COMMON_SOURCES = \ $(RBUILD_BACKEND_SOURCES) \ $(addprefix $(RBUILD_BASE_), \ + global.cpp \ automaticdependency.cpp \ bootstrap.cpp \ cdfile.cpp \ + compilationunit.cpp \ compilerflag.cpp \ configuration.cpp \ define.cpp \ @@ -219,6 +221,7 @@
RBUILD_TESTS = \ tests$(SEP)cdfiletest.cpp \ + tests$(SEP)compilationunittest.cpp \ tests$(SEP)definetest.cpp \ tests$(SEP)functiontest.cpp \ tests$(SEP)iftest.cpp \ @@ -256,6 +259,10 @@ $(ECHO_LD) ${host_gpp} $(RBUILD_OBJECTS) $(RBUILD_HOST_LFLAGS) -o $@
+$(RBUILD_INT_)global.o: $(RBUILD_BASE_)global.cpp $(RBUILD_HEADERS) | $(RBUILD_INT) + $(ECHO_CC) + ${host_gpp} $(RBUILD_HOST_CXXFLAGS) -c $< -o $@ + $(RBUILD_INT_)automaticdependency.o: $(RBUILD_BASE_)automaticdependency.cpp $(RBUILD_HEADERS) | $(RBUILD_INT) $(ECHO_CC) ${host_gpp} $(RBUILD_HOST_CXXFLAGS) -c $< -o $@ @@ -268,6 +275,10 @@ $(ECHO_CC) ${host_gpp} $(RBUILD_HOST_CXXFLAGS) -c $< -o $@
+$(RBUILD_INT_)compilationunit.o: $(RBUILD_BASE_)compilationunit.cpp $(RBUILD_HEADERS) | $(RBUILD_INT) + $(ECHO_CC) + ${host_gpp} $(RBUILD_HOST_CXXFLAGS) -c $< -o $@ + $(RBUILD_INT_)compilerflag.o: $(RBUILD_BASE_)compilerflag.cpp $(RBUILD_HEADERS) | $(RBUILD_INT) $(ECHO_CC) ${host_gpp} $(RBUILD_HOST_CXXFLAGS) -c $< -o $@ @@ -380,6 +391,10 @@ $(ECHO_CC) ${host_gpp} $(RBUILD_HOST_CXXFLAGS) -c $< -o $@
+$(RBUILD_TESTS_INT_)compilationunittest.o: $(RBUILD_TESTS_BASE_)compilationunittest.cpp $(RBUILD_HEADERS) | $(RBUILD_TESTS_INT) + $(ECHO_CC) + ${host_gpp} $(RBUILD_HOST_CXXFLAGS) -c $< -o $@ + $(RBUILD_TESTS_INT_)definetest.o: $(RBUILD_TESTS_BASE_)definetest.cpp $(RBUILD_HEADERS) | $(RBUILD_TESTS_INT) $(ECHO_CC) ${host_gpp} $(RBUILD_HOST_CXXFLAGS) -c $< -o $@ _____
Modified: trunk/reactos/tools/rbuild/test.h --- trunk/reactos/tools/rbuild/test.h 2005-11-22 08:15:04 UTC (rev 19456) +++ trunk/reactos/tools/rbuild/test.h 2005-11-22 08:18:03 UTC (rev 19457) @@ -21,6 +21,8 @@
#include "rbuild.h" #include "backend/mingw/mingw.h"
+#define SSEP DEF_SSEP + #define RBUILD_BASE "tools" SSEP "rbuild" SSEP class BaseTest @@ -153,4 +155,10 @@ void Run (); };
+class CompilationUnitTest : public BaseTest +{ +public: + void Run (); +}; + #endif /* __TEST_H */ _____
Modified: trunk/reactos/tools/rbuild/tests/alltests.cpp --- trunk/reactos/tools/rbuild/tests/alltests.cpp 2005-11-22 08:15:04 UTC (rev 19456) +++ trunk/reactos/tools/rbuild/tests/alltests.cpp 2005-11-22 08:18:03 UTC (rev 19457) @@ -196,6 +196,7 @@
tests.push_back(new SourceFileTest()); tests.push_back(new CDFileTest()); tests.push_back(new SymbolTest()); + tests.push_back(new CompilationUnitTest()); } };
@@ -203,6 +204,7 @@ int main(int argc, char** argv) { + InitializeEnvironment (); TestDispatcher testDispatcher; testDispatcher.Run(); return 0; _____
Copied: trunk/reactos/tools/rbuild/tests/compilationunittest.cpp (from rev 19411, trunk/reactos/tools/rbuild/tests/compilationunittest.cpp) _____
Copied: trunk/reactos/tools/rbuild/tests/data/compilationunit.xml (from rev 19411, trunk/reactos/tools/rbuild/tests/data/compilationunit.xml) _____
Modified: trunk/reactos/tools/tools.mak --- trunk/reactos/tools/tools.mak 2005-11-22 08:15:04 UTC (rev 19456) +++ trunk/reactos/tools/tools.mak 2005-11-22 08:18:03 UTC (rev 19457) @@ -5,9 +5,9 @@
TOOLS_OUT = $(OUTPUT_)$(TOOLS_BASE) TOOLS_OUT_ = $(TOOLS_OUT)$(SEP)
-TOOLS_CFLAGS = -Wall -Wpointer-arith -Wno-strict-aliasing -TOOLS_CPPFLAGS = -Wall -Wpointer-arith -TOOLS_LFLAGS = +TOOLS_CFLAGS = $(CFLAGS) -Wall -Wpointer-arith -Wno-strict-aliasing +TOOLS_CPPFLAGS = $(CPPFLAGS) -Wall -Wpointer-arith +TOOLS_LFLAGS = $(LFLAGS)
$(TOOLS_INT): | $(INTERMEDIATE) $(ECHO_MKDIR)