From 2878d320eded71fbe837fbeba961f1f98d95685d Mon Sep 17 00:00:00 2001 From: cas Date: Fri, 5 Nov 1999 18:28:10 +0000 Subject: [PATCH] No comments --- src/WOKBuilder/FILES | 1 + src/WOKBuilder/WOKBuilder.cdl | 3 +- .../WOKBuilder_CompilerIterator.cdl | 2 + .../WOKBuilder_CompilerIterator.cxx | 5 +++ src/WOKBuilder/WOKBuilder_DLLinker.cxx | 8 +--- src/WOKBuilder/WOKBuilder_Linker.cxx | 41 +++++++++++++------ src/WOKBuilder/WOKBuilder_MSAction.cxx | 4 +- .../WOKBuilder_ToolInShellIterator.cdl | 3 ++ .../WOKBuilder_ToolInShellIterator.cxx | 2 +- 9 files changed, 45 insertions(+), 24 deletions(-) diff --git a/src/WOKBuilder/FILES b/src/WOKBuilder/FILES index 60c0be9..cf732da 100755 --- a/src/WOKBuilder/FILES +++ b/src/WOKBuilder/FILES @@ -1,3 +1,4 @@ WOKBuilder_MSExtractorExtractPtr.hxx WOKBuilder_MSExtractorTemplatesPtr.hxx WOKBuilder_MSTranslatorPtr.hxx + diff --git a/src/WOKBuilder/WOKBuilder.cdl b/src/WOKBuilder/WOKBuilder.cdl index 0ae96ca..a9290c2 100755 --- a/src/WOKBuilder/WOKBuilder.cdl +++ b/src/WOKBuilder/WOKBuilder.cdl @@ -117,7 +117,8 @@ is class MSServerExtractor; class MSClientExtractor; class MSEngineExtractor; - + class MSJiniExtractor; + class MSExtractorIterator; deferred class ToolInShell; diff --git a/src/WOKBuilder/WOKBuilder_CompilerIterator.cdl b/src/WOKBuilder/WOKBuilder_CompilerIterator.cdl index 388ea6c..4e2fbbd 100755 --- a/src/WOKBuilder/WOKBuilder_CompilerIterator.cdl +++ b/src/WOKBuilder/WOKBuilder_CompilerIterator.cdl @@ -51,6 +51,8 @@ is returns BuildStatus from WOKBuilder; CmdLine ( me ) returns HAsciiString from TCollection; + ---C++: return const & + fields myincdirs : HSequenceOfPath from WOKUtils; diff --git a/src/WOKBuilder/WOKBuilder_CompilerIterator.cxx b/src/WOKBuilder/WOKBuilder_CompilerIterator.cxx index fb784a6..c125d85 100755 --- a/src/WOKBuilder/WOKBuilder_CompilerIterator.cxx +++ b/src/WOKBuilder/WOKBuilder_CompilerIterator.cxx @@ -140,3 +140,8 @@ WOKBuilder_BuildStatus WOKBuilder_CompilerIterator::Execute(const Handle(WOKBuil return status; } +const Handle( TCollection_HAsciiString )& WOKBuilder_CompilerIterator :: CmdLine () const { + + return myCmdLine; + +} // end diff --git a/src/WOKBuilder/WOKBuilder_DLLinker.cxx b/src/WOKBuilder/WOKBuilder_DLLinker.cxx index 1794a0f..c2cba37 100755 --- a/src/WOKBuilder/WOKBuilder_DLLinker.cxx +++ b/src/WOKBuilder/WOKBuilder_DLLinker.cxx @@ -46,9 +46,6 @@ Handle(TCollection_HAsciiString) WOKBuilder_DLLinker::EvalFooter() Handle(WOKBuilder_Entity) outEnt[4]; Handle(TCollection_HAsciiString) tmp; Handle(TCollection_HAsciiString) retVal = EvalToolParameter("LinkerOutput"); - Standard_Boolean fDebug; - - //fDebug = Params().Value("%DebugMode")->IsSameString(new TCollection_HAsciiString("True")) ? Standard_True : Standard_False; tmp = EvalToolTemplate("LinkerDLL"); @@ -65,13 +62,10 @@ Handle(TCollection_HAsciiString) WOKBuilder_DLLinker::EvalFooter() outEnt[2] = new WOKBuilder_ExportLibrary(new WOKUtils_Path(EvalToolTemplate("LinkerEXP"))); - //if (fDebug) { - retVal -> AssignCat ( EvalToolParameter ( "LinkerPDBOption" ) ); tmp = EvalToolTemplate ( "LinkerPDB" ); retVal -> AssignCat ( tmp ); outEnt[3] = new WOKBuilder_SharedLibrary(new WOKUtils_Path(tmp)); - //} SetProduction(new WOKBuilder_HSequenceOfEntity()); @@ -79,7 +73,7 @@ Handle(TCollection_HAsciiString) WOKBuilder_DLLinker::EvalFooter() Produces()->Append(outEnt[1]); Produces()->Append(outEnt[2]); - //if( fDebug ) Produces()->Append(outEnt[3]); return retVal; } + diff --git a/src/WOKBuilder/WOKBuilder_Linker.cxx b/src/WOKBuilder/WOKBuilder_Linker.cxx index e6fc794..a4d38a1 100755 --- a/src/WOKBuilder/WOKBuilder_Linker.cxx +++ b/src/WOKBuilder/WOKBuilder_Linker.cxx @@ -461,25 +461,40 @@ WOKBuilder_BuildStatus WOKBuilder_Linker::Execute() #ifndef LIN Shell()->Execute(EvalFooter()); #else - static Handle( TCollection_HAsciiString ) skipStr = - new TCollection_HAsciiString ( "/usr/bin/ld: warning: cannot find entry symbol _start; defaulting to " ); + Handle( TCollection_HAsciiString ) target = Params ().Value ( "%Target", 0 ); + Shell () -> Send ( EvalFooter () ); - Handle( TCollection_HAsciiString ) paramH = EvalToolTemplate ( "CheckUndefHeader" ); - Handle( TCollection_HAsciiString ) paramF = EvalToolTemplate ( "CheckUndefFooter" ); + static Handle( TCollection_HAsciiString ) skipStr = + new TCollection_HAsciiString ( "/usr/bin/ld: warning: cannot find entry symbol _start" ); + + Handle( TCollection_HAsciiString ) uType = Params ().Value ( "%UnitType", 0 ); - if ( !paramH.IsNull () && !paramF.IsNull () && - !paramH -> IsEmpty () && !paramF -> IsEmpty () + if ( !uType.IsNull () && + ( !strcmp ( uType -> ToCString (), "toolkit" ) || + !strcmp ( uType -> ToCString (), "executable" ) + ) ) { - Shell () -> Send ( paramH ); - Shell () -> Send ( EvalLibSearchDirectives () ); - Shell () -> Send ( EvalDatabaseDirectives () ); - Shell () -> Send ( EvalObjectList () ); - Shell () -> Send ( EvalLibraryList () ); - Shell () -> Execute ( paramF ); + Handle( TCollection_HAsciiString ) paramH = EvalToolTemplate ( "CheckUndefHeader" ); + Handle( TCollection_HAsciiString ) paramF = EvalToolTemplate ( "CheckUndefFooter" ); + + if ( !paramH.IsNull () && !paramF.IsNull () && + !paramH -> IsEmpty () && !paramF -> IsEmpty () + ) { + + Shell () -> Send ( paramH ); + Shell () -> Send ( EvalLibSearchDirectives () ); + Shell () -> Send ( EvalDatabaseDirectives () ); + Shell () -> Send ( target ); + Shell () -> Send ( EvalLibraryList () ); + Shell () -> Send ( paramF ); + + } // end if + + } // end if - } else Shell () -> Execute ( new TCollection_HAsciiString ( "\n" ) ); + Shell () -> Execute ( new TCollection_HAsciiString ( "\n" ) ); #endif // LIN if(Shell()->Status()) diff --git a/src/WOKBuilder/WOKBuilder_MSAction.cxx b/src/WOKBuilder/WOKBuilder_MSAction.cxx index 239c6e9..04772d4 100755 --- a/src/WOKBuilder/WOKBuilder_MSAction.cxx +++ b/src/WOKBuilder/WOKBuilder_MSAction.cxx @@ -40,7 +40,7 @@ WOKBuilder_MSAction::WOKBuilder_MSAction(const Handle(WOKBuilder_MSAction)& anac //======================================================================= WOKBuilder_MSAction::WOKBuilder_MSAction(const Handle(WOKBuilder_MSEntity)& anentity, const WOKBuilder_MSActionType atype) -: myent(anentity), mytype(atype), mydate(-1), mystatus(WOKBuilder_NotDefined) +: myent(anentity), mytype(atype), mystatus(WOKBuilder_NotDefined), mydate(-1) { } @@ -50,7 +50,7 @@ WOKBuilder_MSAction::WOKBuilder_MSAction(const Handle(WOKBuilder_MSEntity)& anen //======================================================================= WOKBuilder_MSAction::WOKBuilder_MSAction(const Handle(TCollection_HAsciiString)& aname, const WOKBuilder_MSActionType atype) -: mytype(atype), mydate(-1), mystatus(WOKBuilder_NotDefined) +: mytype(atype), mystatus(WOKBuilder_NotDefined), mydate(-1) { myent = new WOKBuilder_MSEntity(aname); } diff --git a/src/WOKBuilder/WOKBuilder_ToolInShellIterator.cdl b/src/WOKBuilder/WOKBuilder_ToolInShellIterator.cdl index 2456538..5c78263 100755 --- a/src/WOKBuilder/WOKBuilder_ToolInShellIterator.cdl +++ b/src/WOKBuilder/WOKBuilder_ToolInShellIterator.cdl @@ -35,6 +35,9 @@ is Param : Param from WOKUtils) returns ToolInShellIterator from WOKBuilder; + Destroy ( me : out ); + ---C++: alias "Standard_EXPORT virtual ~WOKBuilder_ToolInShellIterator () {}" + Init(me:out; ashell : Shell from WOKUtils; adir : Path from WOKUtils) is virtual; diff --git a/src/WOKBuilder/WOKBuilder_ToolInShellIterator.cxx b/src/WOKBuilder/WOKBuilder_ToolInShellIterator.cxx index 6ee9abc..74cb351 100755 --- a/src/WOKBuilder/WOKBuilder_ToolInShellIterator.cxx +++ b/src/WOKBuilder/WOKBuilder_ToolInShellIterator.cxx @@ -49,7 +49,7 @@ WOKBuilder_ToolInShellIterator::WOKBuilder_ToolInShellIterator(const Handle(TCol const Handle(WOKUtils_Shell)& ashell, const Handle(WOKUtils_Path)& apath, const WOKUtils_Param& params) - : mygroup(agroup), myshell(ashell), myoutdir(apath), myparams(params) + : mygroup(agroup), myparams(params), myshell(ashell), myoutdir(apath) { } -- 2.39.5