From 88738a70fa5c48f8aaefab6940e858a199731086 Mon Sep 17 00:00:00 2001 From: cascade Date: Fri, 13 Feb 2009 18:33:58 +0000 Subject: [PATCH] OCC20850 umake command do not work on SunOS10 --- src/WOKTclTools/WOKTclTools_Interpretor.cxx | 34 +++--- src/WOKTclTools/WOKTclTools_Messages.cxx | 8 +- src/WOKTclTools/WOKTclTools_MsgAPI.cxx | 106 +++++++++--------- .../WOKTclTools_TriggerHandler.cxx | 32 +++--- 4 files changed, 88 insertions(+), 92 deletions(-) diff --git a/src/WOKTclTools/WOKTclTools_Interpretor.cxx b/src/WOKTclTools/WOKTclTools_Interpretor.cxx index 003b8fa..fea7b3f 100755 --- a/src/WOKTclTools/WOKTclTools_Interpretor.cxx +++ b/src/WOKTclTools/WOKTclTools_Interpretor.cxx @@ -55,8 +55,6 @@ struct WOKCData { Handle(WOKTclTools_Interpretor) i; }; -Standard_EXPORT Handle(WOKTclTools_Interpretor) CurrentInterp; - // MKV 24.08.05 #if ((TCL_MAJOR_VERSION > 8) || ((TCL_MAJOR_VERSION == 8) && (TCL_MINOR_VERSION >= 4))) && !defined(USE_NON_CONST) static Standard_Integer CommandCmd (ClientData clientData, Tcl_Interp *, @@ -68,8 +66,10 @@ static Standard_Integer CommandCmd (ClientData clientData, Tcl_Interp *, { CData* C = (CData*) clientData; - // set de l'interprete en cours - CurrentInterp = C->i; + Handle(WOKTclTools_Interpretor)& CurrentInterp = WOKTclTools_Interpretor::Current(); + + // set de l'interprete en cours + CurrentInterp = C->i; // MKV 24.08.05 #if ((TCL_MAJOR_VERSION > 8) || ((TCL_MAJOR_VERSION == 8) && (TCL_MINOR_VERSION >= 4))) && !defined(USE_NON_CONST) @@ -78,12 +78,12 @@ static Standard_Integer CommandCmd (ClientData clientData, Tcl_Interp *, if (C->f(C->i,argc,argv) == 0) #endif { - CurrentInterp.Nullify(); + CurrentInterp.Nullify(); return TCL_OK; } else { - CurrentInterp.Nullify(); + CurrentInterp.Nullify(); return TCL_ERROR; } } @@ -100,7 +100,7 @@ static Standard_Integer WOKCommand(ClientData clientData, Tcl_Interp *, WOKCData* C = (WOKCData*) clientData; // set de l'interprete en cours - CurrentInterp = C->i; + WOKTclTools_Interpretor::Current() = C->i; WOKTclTools_WokCommand acmd = C->f; @@ -136,9 +136,9 @@ static Standard_Integer WOKCommand(ClientData clientData, Tcl_Interp *, astream << E << ends; // MKV 24.08.05 #if ((TCL_MAJOR_VERSION > 8) || ((TCL_MAJOR_VERSION == 8) && (TCL_MINOR_VERSION >= 4))) && !defined(USE_NON_CONST) - ErrorMsg << (char*)argv[0] << "Exception was raised : " << GetSString(astream) << endm; + ErrorMsg() << (char*)argv[0] << "Exception was raised : " << GetSString(astream) << endm; #else - ErrorMsg << argv[0] << "Exception was raised : " << GetSString(astream) << endm; + ErrorMsg() << argv[0] << "Exception was raised : " << GetSString(astream) << endm; #endif WOKUtils_ProcessManager::UnArm(); return TCL_ERROR; @@ -290,7 +290,7 @@ Standard_Integer WOKTclTools_Interpretor::TreatReturn(const WOKTools_Return& ret case WOKTools_String: { Handle(WOKTools_StringValue) astrval = Handle(WOKTools_StringValue)::DownCast(avalue); - InfoMsg << "WOKTclTools_Intepretor::TreatResult" + InfoMsg() << "WOKTclTools_Intepretor::TreatResult" << "Returned String " << astrval->Value() << endm; } break; @@ -299,12 +299,12 @@ Standard_Integer WOKTclTools_Interpretor::TreatReturn(const WOKTools_Return& ret Handle(WOKTools_EnvValue) aenval = Handle(WOKTools_EnvValue)::DownCast(avalue); if(aenval->ToSet()) { - InfoMsg << "WOKTclTools_Intepretor::TreatResult" + InfoMsg() << "WOKTclTools_Intepretor::TreatResult" << "Returned SetEnvironment " << aenval->Name() << "=" << aenval->Value() << endm; } else { - InfoMsg << "WOKTclTools_Intepretor::TreatResult" + InfoMsg() << "WOKTclTools_Intepretor::TreatResult" << "Returned UnSetEnvironment " << aenval->Name() << endm; } } @@ -312,14 +312,14 @@ Standard_Integer WOKTclTools_Interpretor::TreatReturn(const WOKTools_Return& ret case WOKTools_ChDir: { Handle(WOKTools_ChDirValue) achdirval = Handle(WOKTools_ChDirValue)::DownCast(avalue); - InfoMsg << "WOKTclTools_Intepretor::TreatResult" + InfoMsg() << "WOKTclTools_Intepretor::TreatResult" << "Returned Change dir " << achdirval->Path() << endm; } break; case WOKTools_InterpFile: { Handle(WOKTools_InterpFileValue) aifile = Handle(WOKTools_InterpFileValue)::DownCast(avalue); - InfoMsg << "WOKTclTools_Intepretor::TreatResult" + InfoMsg() << "WOKTclTools_Intepretor::TreatResult" << "Returned Source File " << aifile->File() << endm; } break; @@ -449,9 +449,9 @@ Standard_Integer WOKTclTools_Interpretor::TreatReturn(const WOKTools_Return& ret { if(afilevalue->InterpType() != WOKTools_TclInterp) { - ErrorMsg << "WOKTclTools_Intepretor::TreatResult" + ErrorMsg() << "WOKTclTools_Intepretor::TreatResult" << "Cannot eval not Tcl script without wok_source_proc defined" << endm; - ErrorMsg << "WOKTclTools_Intepretor::TreatResult" + ErrorMsg() << "WOKTclTools_Intepretor::TreatResult" << "Please provide wok_source_proc to use feature" << endm; return 1; } @@ -557,7 +557,6 @@ void WOKTclTools_Interpretor::Append(const Standard_Real i) //======================================================================= void WOKTclTools_Interpretor::AppendElement(const Standard_CString s) { - #ifdef IRIX //AppendElement is declared as (Tcl_Interp *interp, char *string) //on SGI 32 @@ -656,6 +655,7 @@ void WOKTclTools_Interpretor::Set(const WOKTclTools_PInterp& PI) //======================================================================= Handle(WOKTclTools_Interpretor)& WOKTclTools_Interpretor::Current() { + static Handle(WOKTclTools_Interpretor) CurrentInterp; return CurrentInterp; } diff --git a/src/WOKTclTools/WOKTclTools_Messages.cxx b/src/WOKTclTools/WOKTclTools_Messages.cxx index f90aacd..cf257a5 100755 --- a/src/WOKTclTools/WOKTclTools_Messages.cxx +++ b/src/WOKTclTools/WOKTclTools_Messages.cxx @@ -70,10 +70,10 @@ Standard_Integer WOKTclTools_MessageCmdSet(const Handle(WOKTclTools_Interpretor) WOKTools_MsgHandler ahandler = TclEndMsgHandler; - InfoMsg.SetEndMsgHandler(ahandler); - WarningMsg.SetEndMsgHandler(ahandler); - ErrorMsg.SetEndMsgHandler(ahandler); - VerboseMsg.SetEndMsgHandler(ahandler); + InfoMsg().SetEndMsgHandler(ahandler); + WarningMsg().SetEndMsgHandler(ahandler); + ErrorMsg().SetEndMsgHandler(ahandler); + VerboseMsg().SetEndMsgHandler(ahandler); return 0; } diff --git a/src/WOKTclTools/WOKTclTools_MsgAPI.cxx b/src/WOKTclTools/WOKTclTools_MsgAPI.cxx index ce3bece..993da6b 100755 --- a/src/WOKTclTools/WOKTclTools_MsgAPI.cxx +++ b/src/WOKTclTools/WOKTclTools_MsgAPI.cxx @@ -72,13 +72,13 @@ Standard_Integer WOKTclTools_MsgAPI::Set(const Standard_Integer argc, const WOKT if(opts.Failed()) return 1; - if(info) {InfoMsg.Set();} - if(warning) {WarningMsg.Set();} - if(error) {ErrorMsg.Set();} - if(verbose) {VerboseMsg.Set();} + if(info) {InfoMsg().Set();} + if(warning) {WarningMsg().Set();} + if(error) {ErrorMsg().Set();} + if(verbose) {VerboseMsg().Set();} if(Verbose) { - VerboseMsg.Set(); + VerboseMsg().Set(); TCollection_AsciiString astr(VClass->String()); @@ -96,10 +96,10 @@ Standard_Integer WOKTclTools_MsgAPI::Set(const Standard_Integer argc, const WOKT { } - if(info) InfoMsg.LogToFile(logfile); - if(warning) WarningMsg.LogToFile(logfile); - if(error) ErrorMsg.LogToFile(logfile); - if(verbose||Verbose) VerboseMsg.LogToFile(logfile); + if(info) InfoMsg().LogToFile(logfile); + if(warning) WarningMsg().LogToFile(logfile); + if(error) ErrorMsg().LogToFile(logfile); + if(verbose||Verbose) VerboseMsg().LogToFile(logfile); } return 0; @@ -148,10 +148,10 @@ Standard_Integer WOKTclTools_MsgAPI::UnSet(const Standard_Integer argc, const WO } if(opts.Failed()) return 1; - if(info) {InfoMsg.UnSet(); } - if(warning) {WarningMsg.UnSet();} - if(error) {ErrorMsg.UnSet();} - if(verbose) {VerboseMsg.UnSet();} + if(info) {InfoMsg().UnSet(); } + if(warning) {WarningMsg().UnSet();} + if(error) {ErrorMsg().UnSet();} + if(verbose) {VerboseMsg().UnSet();} if(Verbose) { TCollection_AsciiString astr(VClass->ToCString()); @@ -163,10 +163,10 @@ Standard_Integer WOKTclTools_MsgAPI::UnSet(const Standard_Integer argc, const WO if(endlogging) { - if(info) {InfoMsg.EndLogging(); } - if(warning) {WarningMsg.EndLogging();} - if(error) {ErrorMsg.EndLogging();} - if(verbose||Verbose) {VerboseMsg.EndLogging();} + if(info) {InfoMsg().EndLogging(); } + if(warning) {WarningMsg().EndLogging();} + if(error) {ErrorMsg().EndLogging();} + if(verbose||Verbose) {VerboseMsg().EndLogging();} } return 0; } @@ -206,10 +206,10 @@ Standard_Integer WOKTclTools_MsgAPI::IsSet(const Standard_Integer argc, const WO if(opts.Failed()) return 1; - if(info) {retval.AddBooleanValue(InfoMsg.IsSet()); return 0;} - if(warning) {retval.AddBooleanValue(WarningMsg.IsSet()); return 0;} - if(error) {retval.AddBooleanValue(ErrorMsg.IsSet()); return 0;} - if(verbose) {retval.AddBooleanValue(VerboseMsg.IsSet()); return 0;} + if(info) {retval.AddBooleanValue(InfoMsg().IsSet()); return 0;} + if(warning) {retval.AddBooleanValue(WarningMsg().IsSet()); return 0;} + if(error) {retval.AddBooleanValue(ErrorMsg().IsSet()); return 0;} + if(verbose) {retval.AddBooleanValue(VerboseMsg().IsSet()); return 0;} return 0; } @@ -248,10 +248,10 @@ Standard_Integer WOKTclTools_MsgAPI::DoPrintContext(const Standard_Integer argc, if(opts.Failed()) return 1; - if(info) {InfoMsg.DoPrintContext(); return 0;} - if(warning) {WarningMsg.DoPrintContext(); return 0;} - if(error) {ErrorMsg.DoPrintContext(); return 0;} - if(verbose) {VerboseMsg.DoPrintContext(); return 0;} + if(info) {InfoMsg().DoPrintContext(); return 0;} + if(warning) {WarningMsg().DoPrintContext(); return 0;} + if(error) {ErrorMsg().DoPrintContext(); return 0;} + if(verbose) {VerboseMsg().DoPrintContext(); return 0;} return 0; } @@ -290,10 +290,10 @@ Standard_Integer WOKTclTools_MsgAPI::DontPrintContext(const Standard_Integer arg if(opts.Failed()) return 1; - if(info) {InfoMsg.DontPrintContext();} - if(warning) {WarningMsg.DontPrintContext();} - if(error) {ErrorMsg.DontPrintContext();} - if(verbose) {VerboseMsg.DontPrintContext();} + if(info) {InfoMsg().DontPrintContext();} + if(warning) {WarningMsg().DontPrintContext();} + if(error) {ErrorMsg().DontPrintContext();} + if(verbose) {VerboseMsg().DontPrintContext();} return 0; } @@ -332,10 +332,10 @@ Standard_Integer WOKTclTools_MsgAPI::IsPrintContext(const Standard_Integer argc, if(opts.Failed()) return 1; - if(info) {retval.AddBooleanValue(InfoMsg.PrintContext()); return 0;} - if(warning) {retval.AddBooleanValue(WarningMsg.PrintContext()); return 0;} - if(error) {retval.AddBooleanValue(ErrorMsg.PrintContext()); return 0;} - if(verbose) {retval.AddBooleanValue(VerboseMsg.PrintContext()); return 0;} + if(info) {retval.AddBooleanValue(InfoMsg().PrintContext()); return 0;} + if(warning) {retval.AddBooleanValue(WarningMsg().PrintContext()); return 0;} + if(error) {retval.AddBooleanValue(ErrorMsg().PrintContext()); return 0;} + if(verbose) {retval.AddBooleanValue(VerboseMsg().PrintContext()); return 0;} return 0; } @@ -374,10 +374,10 @@ Standard_Integer WOKTclTools_MsgAPI::DoPrintHeader(const Standard_Integer argc, if(opts.Failed()) return 1; - if(info) {InfoMsg.DoPrintHeader(); return 0;} - if(warning) {WarningMsg.DoPrintHeader(); return 0;} - if(error) {ErrorMsg.DoPrintHeader(); return 0;} - if(verbose) {VerboseMsg.DoPrintHeader(); return 0;} + if(info) {InfoMsg().DoPrintHeader(); return 0;} + if(warning) {WarningMsg().DoPrintHeader(); return 0;} + if(error) {ErrorMsg().DoPrintHeader(); return 0;} + if(verbose) {VerboseMsg().DoPrintHeader(); return 0;} return 0; } @@ -416,10 +416,10 @@ Standard_Integer WOKTclTools_MsgAPI::DontPrintHeader(const Standard_Integer argc if(opts.Failed()) return 1; - if(info) {InfoMsg.DontPrintHeader();} - if(warning) {WarningMsg.DontPrintHeader();} - if(error) {ErrorMsg.DontPrintHeader();} - if(verbose) {VerboseMsg.DontPrintHeader();} + if(info) {InfoMsg().DontPrintHeader();} + if(warning) {WarningMsg().DontPrintHeader();} + if(error) {ErrorMsg().DontPrintHeader();} + if(verbose) {VerboseMsg().DontPrintHeader();} return 0; } @@ -458,10 +458,10 @@ Standard_Integer WOKTclTools_MsgAPI::IsPrintHeader(const Standard_Integer argc, if(opts.Failed()) return 1; - if(info) {retval.AddBooleanValue(InfoMsg.PrintHeader()); return 0;} - if(warning) {retval.AddBooleanValue(WarningMsg.PrintHeader()); return 0;} - if(error) {retval.AddBooleanValue(ErrorMsg.PrintHeader()); return 0;} - if(verbose) {retval.AddBooleanValue(VerboseMsg.PrintContext()); return 0;} + if(info) {retval.AddBooleanValue(InfoMsg().PrintHeader()); return 0;} + if(warning) {retval.AddBooleanValue(WarningMsg().PrintHeader()); return 0;} + if(error) {retval.AddBooleanValue(ErrorMsg().PrintHeader()); return 0;} + if(verbose) {retval.AddBooleanValue(VerboseMsg().PrintContext()); return 0;} return 0; } @@ -521,27 +521,27 @@ Standard_Integer WOKTclTools_MsgAPI::PrintMessage(const Standard_Integer argc, c WOKTools_Message *mess = NULL; - if(info) mess = &InfoMsg; - if(warning) mess = &WarningMsg; - if(error) mess = &ErrorMsg; + if(info) mess = &InfoMsg(); + if(warning) mess = &WarningMsg(); + if(error) mess = &ErrorMsg(); if(verbose) { if(!Verbose.IsNull()) { static WOKTools_Verbose averb; - averb = VerboseMsg.LocalSwitcher(Verbose->ToCString()); + averb = VerboseMsg().LocalSwitcher(Verbose->ToCString()); mess = &averb; } else { - mess = &VerboseMsg; + mess = &VerboseMsg(); } } if(mess == NULL) { - mess = &InfoMsg; + mess = &InfoMsg(); } const WOKTools_Message& mess1 = *mess; @@ -611,13 +611,13 @@ Standard_Integer WOKTclTools_MsgAPI::MessageInfo(const Standard_Integer argc, co if (Theinterp.IsNull()) { - ErrorMsg << argv[0] << "Current TCL interpretor not initialized" << endm; + ErrorMsg() << argv[0] << "Current TCL interpretor not initialized" << endm; return 1; } if (Theinterp->EndMessageProc()==NULL) { - InfoMsg << argv[0] << "No message handler procedure" << endm; + InfoMsg() << argv[0] << "No message handler procedure" << endm; return 0; } diff --git a/src/WOKTclTools/WOKTclTools_TriggerHandler.cxx b/src/WOKTclTools/WOKTclTools_TriggerHandler.cxx index aec2343..44e24a9 100755 --- a/src/WOKTclTools/WOKTclTools_TriggerHandler.cxx +++ b/src/WOKTclTools/WOKTclTools_TriggerHandler.cxx @@ -17,10 +17,6 @@ #include - -//extern Standard_IMPORT Handle(WOKTclTools_Interpretor) CurrentInterp; -Standard_IMPORT Handle(WOKTclTools_Interpretor) CurrentInterp; - Standard_EXPORT WOKUtils_TriggerStatus WOKTclTools_TriggerHandler(WOKUtils_Trigger &atrigger) { Standard_Integer i; @@ -40,10 +36,10 @@ Standard_EXPORT WOKUtils_TriggerStatus WOKTclTools_TriggerHandler(WOKUtils_Trigg if(afile->InterpType() == WOKTools_TclInterp) { WOK_TRACE { - VerboseMsg("WOK_TRIGGER") << "WOKTclTools_TriggerHandler" + VerboseMsg()("WOK_TRIGGER") << "WOKTclTools_TriggerHandler" << "LoadFile : " << afile->File() << endm; } - CurrentInterp->EvalFile(afile->File()->ToCString()); + WOKTclTools_Interpretor::Current()->EvalFile(afile->File()->ToCString()); } } break; @@ -54,13 +50,13 @@ Standard_EXPORT WOKUtils_TriggerStatus WOKTclTools_TriggerHandler(WOKUtils_Trigg if(!atrigger.Name().IsNull()) { - if(CurrentInterp->IsCmdName(atrigger.Name()->ToCString())) + if(WOKTclTools_Interpretor::Current()->IsCmdName(atrigger.Name()->ToCString())) { Handle(TCollection_HAsciiString) acmd = new TCollection_HAsciiString(atrigger.Name()); WOK_TRACE { - VerboseMsg("WOK_TRIGGER") << "WOKTclTools_TriggerHandler" + VerboseMsg()("WOK_TRIGGER") << "WOKTclTools_TriggerHandler" << "Handler called for trigger : " << atrigger.Name() << endm; // Prise en compte des resultats @@ -75,7 +71,7 @@ Standard_EXPORT WOKUtils_TriggerStatus WOKTclTools_TriggerHandler(WOKUtils_Trigg case WOKTools_String: { Handle(WOKTools_StringValue) astrval = Handle(WOKTools_StringValue)::DownCast(avalue); - VerboseMsg("WOK_TRIGGER") << "WOKTclTools_TriggerHandler" + VerboseMsg()("WOK_TRIGGER") << "WOKTclTools_TriggerHandler" << "Arg " << i << " is : " << astrval->Value() << endm; } break; @@ -105,21 +101,21 @@ Standard_EXPORT WOKUtils_TriggerStatus WOKTclTools_TriggerHandler(WOKUtils_Trigg } WOK_TRACE { - VerboseMsg("WOK_TRIGGER") << "WOKTclTools_TriggerHandler" + VerboseMsg()("WOK_TRIGGER") << "WOKTclTools_TriggerHandler" << "Command is : " << acmd << endm; } - if(CurrentInterp->Eval(acmd->ToCString())) + if(WOKTclTools_Interpretor::Current()->Eval(acmd->ToCString())) return WOKUtils_Failed; else { - CurrentInterp->GetReturnValues(atrigger.ChangeReturn()); + WOKTclTools_Interpretor::Current()->GetReturnValues(atrigger.ChangeReturn()); WOK_TRACE { - if(VerboseMsg("WOK_TRIGGER").IsSet()) + if(VerboseMsg()("WOK_TRIGGER").IsSet()) { Standard_Integer i; - VerboseMsg("WOK_TRIGGER") << "WOKTclTools_TriggerHandler" + VerboseMsg()("WOK_TRIGGER") << "WOKTclTools_TriggerHandler" << "Command returns : " << endm; const WOKTools_Return& rets = atrigger.Return(); @@ -128,7 +124,7 @@ Standard_EXPORT WOKUtils_TriggerStatus WOKTclTools_TriggerHandler(WOKUtils_Trigg { Handle(WOKTools_ReturnValue) aval = rets.Value(i); - VerboseMsg("WOK_TRIGGER") << "WOKTclTools_TriggerHandler" + VerboseMsg()("WOK_TRIGGER") << "WOKTclTools_TriggerHandler" << " "; switch(aval->Type()) @@ -136,7 +132,7 @@ Standard_EXPORT WOKUtils_TriggerStatus WOKTclTools_TriggerHandler(WOKUtils_Trigg case WOKTools_String: { Handle(WOKTools_StringValue) astrval = Handle(WOKTools_StringValue)::DownCast(aval); - VerboseMsg("WOK_TRIGGER") << "WOKTclTools_TriggerHandler" + VerboseMsg()("WOK_TRIGGER") << "WOKTclTools_TriggerHandler" << " " << i << " : " << astrval->Value() << endm; } break; @@ -152,7 +148,7 @@ Standard_EXPORT WOKUtils_TriggerStatus WOKTclTools_TriggerHandler(WOKUtils_Trigg else { WOK_TRACE { - VerboseMsg("WOK_TRIGGER") << "WOKTclTools_TriggerHandler" + VerboseMsg()("WOK_TRIGGER") << "WOKTclTools_TriggerHandler" << "Trigger : " << atrigger.Name() << " not setted" << endm; } return WOKUtils_NotSetted; @@ -161,7 +157,7 @@ Standard_EXPORT WOKUtils_TriggerStatus WOKTclTools_TriggerHandler(WOKUtils_Trigg else { WOK_TRACE { - VerboseMsg("WOK_TRIGGER") << "WOKTclTools_TriggerHandler" + VerboseMsg()("WOK_TRIGGER") << "WOKTclTools_TriggerHandler" << "No Trigger Name" << endm; } return WOKUtils_NotSetted; -- 2.39.5