X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FKERNEL_PY%2Fsalome.py;h=8fca332b5a55680a108dcdd6ff059a56e77dd617;hb=cbeb1b9ad4789b0fe4ea7f8efcaf98f7f8fec2f6;hp=9f7b0b1f7e53a37849aac8b12467c79627a535bb;hpb=d205fdf681893f267f7202b2508bbc5ed897c48a;p=modules%2Fkernel.git diff --git a/src/KERNEL_PY/salome.py b/src/KERNEL_PY/salome.py index 9f7b0b1f7..8fca332b5 100755 --- a/src/KERNEL_PY/salome.py +++ b/src/KERNEL_PY/salome.py @@ -1,5 +1,5 @@ # -*- coding: iso-8859-1 -*- -# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE # # Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, # CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS @@ -20,6 +20,15 @@ # # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # + +# ================================================================================ +# WARNING: this file is deprecated and should not be used any more. It has been +# replaced by the file __init__.py of the python package named "salome". +# To prevent any error, a warning is raised in the case where this file is imported +raise RuntimeError("WRN - the file salome.py is deprecated. It should NOT be used any more.") +# ================================================================================ + + # File : salome.py # Author : Paul RASCLE, EDF # Module : SALOME @@ -81,12 +90,47 @@ variables: # \param salome.myStudyId : active Study Id # \param salome.myStudy : the active Study (interface SALOMEDS::Study) - +# from salome_kernel import * from salome_study import * from salome_iapp import * -import dl, sys -sys.setdlopenflags(dl.RTLD_NOW | dl.RTLD_GLOBAL) + + +# +# The next block is workaround for the problem of shared symbols loading for the extension modules (e.g. SWIG-generated) +# that causes RTTI unavailable in some cases. To solve this problem, sys.setdlopenflags() function is used. +# Depending on the Python version and platform, the dlopen flags can be defined in the dl, DLFUN or ctypes module. +# +import sys +flags = None +if not flags: + try: + # dl module can be unavailable + import dl + flags = dl.RTLD_NOW | dl.RTLD_GLOBAL + except: + pass + pass +if not flags: + try: + # DLFCN module can be unavailable + import DLFCN + flags = DLFCN.RTLD_NOW | DLFCN.RTLD_GLOBAL + except: + pass + pass +if not flags: + try: + # ctypes module can be unavailable + import ctypes + flags = ctypes.RTLD_GLOBAL + except: + pass + pass + +if flags: + sys.setdlopenflags(flags) + pass orb, lcc, naming_service, cm,sg=None,None,None,None,None myStudyManager, myStudyId, myStudy, myStudyName=None,None,None,None