diff --git a/crlcore/python/coriolisInit.py b/crlcore/python/coriolisInit.py index 11b243f5..7253ec14 100644 --- a/crlcore/python/coriolisInit.py +++ b/crlcore/python/coriolisInit.py @@ -160,7 +160,7 @@ def coriolisConfigure(): #sys.stdout.write(CRL.AllianceFramework.get().getEnvironment().getPrint()) - if Cfg.getParamString('stratus1.mappingName').asString() == 'not_set': + if not Cfg.getParamString('stratus1.mappingName').asString(): vendorTech = helpers.realTechno.split('/')[-1] mappingFile = os.path.join( helpers.realDir, 'stratus.xml' ) if not os.path.isfile(mappingFile): diff --git a/crlcore/python/helpers/stratus1.py b/crlcore/python/helpers/stratus1.py deleted file mode 100644 index 3db3b676..00000000 --- a/crlcore/python/helpers/stratus1.py +++ /dev/null @@ -1,14 +0,0 @@ - -import Cfg - -print " - Loading Stratus 1 configuration." - -# Status1 parameters. -Cfg.getParamString("stratus1.mappingName").setString ("./stratus2sxlib.xml" ) -Cfg.getParamString("stratus1.mappingName").flags |= Cfg.Parameter.Flags.NeedRestart|Cfg.Parameter.Flags.MustExist - -# Stratus1 tab layout. -layout = Cfg.Configuration.get().getLayout() -layout.addTab ( "Stratus1", "stratus1" ) -layout.addTitle ( "Stratus1", "Stratus1 - Netlist & Layout Capture" ) -layout.addParameter ( "Stratus1", "stratus1.mappingName", "Virtual Library Translation", 0, 2 ) diff --git a/etesian/src/EtesianEngine.cpp b/etesian/src/EtesianEngine.cpp index b38ce3a5..9f95a24c 100644 --- a/etesian/src/EtesianEngine.cpp +++ b/etesian/src/EtesianEngine.cpp @@ -468,8 +468,8 @@ namespace Etesian { Cell* masterCell = instance->getMasterCell(); if (not masterCell->getAbutmentBox().isEmpty() - and ( (instance->getPlacementStatus() != Instance::PlacementStatus::PLACED) - or (instance->getPlacementStatus() != Instance::PlacementStatus::FIXED ) ) ) { + and (instance->getPlacementStatus() != Instance::PlacementStatus::PLACED) + and (instance->getPlacementStatus() != Instance::PlacementStatus::FIXED ) ) { throw Error( "EtesianEngine::toColoquinte(): Non-leaf instance \"%s\" of \"%s\" has an abutment box but is *not* placed." , getString(instance ->getName()).c_str() , getString(masterCell->getName()).c_str() diff --git a/hurricane/src/isobar/PyEntity.cpp b/hurricane/src/isobar/PyEntity.cpp index 6c0c4e9a..af93d882 100644 --- a/hurricane/src/isobar/PyEntity.cpp +++ b/hurricane/src/isobar/PyEntity.cpp @@ -77,7 +77,7 @@ extern "C" { PyMethodDef PyEntity_Methods[] = { { "getCell" , (PyCFunction)PyEntity_getCell , METH_NOARGS , "Returns the entity cell." } - , { "destroy" , (PyCFunction)PyEntity_destroy , METH_NOARGS + , { "destroy" , (PyCFunction)PyEntity_destroy , METH_NOARGS , "Destroy associated hurricane object, the python object remains." } , {NULL, NULL, 0, NULL} /* sentinel */ }; diff --git a/stratus1/src/stratus/st_getrealmodel.py b/stratus1/src/stratus/st_getrealmodel.py index 6f3e8e42..4e28a3bb 100644 --- a/stratus1/src/stratus/st_getrealmodel.py +++ b/stratus1/src/stratus/st_getrealmodel.py @@ -55,6 +55,8 @@ def InitBV () : myP = InitParser() mapping = Cfg.getParamString('stratus1.mappingName').asString() + if not mapping: + print '[ERROR] \"stratus1.mappingName\" configuration variable has not been set.' myP.Parse ( mapping ) return diff --git a/stratus1/src/stratus/st_parser.py b/stratus1/src/stratus/st_parser.py index 45611b0a..2fa7ac9f 100644 --- a/stratus1/src/stratus/st_parser.py +++ b/stratus1/src/stratus/st_parser.py @@ -47,7 +47,7 @@ # x-----------------------------------------------------------------x import xml.parsers.expat -import re, types +import re, types, os.path BV = [] BVg = [] @@ -165,6 +165,8 @@ class InitParser : # Parsing a file ################ def Parse ( self, nameFile ) : + if not os.path.isfile(nameFile): + print '[ERROR] Parser.Parse(): stratus1.mappingName (\"%s\") file not found.' % nameFile self._p.ParseFile ( open ( nameFile, "r" ) ) # Given the tab of the name of the cells, contruction of a tab giving the name of the generators (first letter uppered)