Salome HOME
Adapt SALOME non-regression test bases for salome test driver
[modules/kernel.git] / bin / appliskel / salome
index b9819eb146adb5d22239b716ead0f36950d5f761..2c408be42cff46ad267b3f46fd6a3b75775a26c4 100755 (executable)
@@ -1,6 +1,5 @@
-#! /usr/bin/env python
-
-# Copyright (C) 2013-2014  CEA/DEN, EDF R&D, OPEN CASCADE
+#! /usr/bin/env python3
+# Copyright (C) 2013-2020  CEA/DEN, EDF R&D
 #
 # This library is free software; you can redistribute it and/or
 # modify it under the terms of the GNU Lesser General Public
 # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 #
 
-import os
+import salome_common
 import sys
 
-def __detectAppliPath(fromPath):
-  detection_criterion = "USERS" # the application folder is found if it contains a USERS subfolder
-
-  users_folder = os.path.join(fromPath, detection_criterion)
-  if os.path.isdir(users_folder):
-    return fromPath
-
-  pattern = "/bin/salome/appliskel"
-  if fromPath.endswith(pattern):
-    currentPath = __detectAppliPath(fromPath[:-len(pattern)])
-    if not currentPath is None:
-      return currentPath
-
-  if sys.platform.startswith("linux"):
-    filename = os.path.basename(__file__)
-    link_target = os.readlink(os.path.join(fromPath,filename)) # LINUX ONLY
-    currentPath = os.path.dirname(os.path.abspath(link_target))
-    return __detectAppliPath(currentPath)
-
-  return None
-#
-
-# Preliminary work to initialize path to SALOME Python modules
-def __initialize():
-  currentPath = os.path.dirname( os.path.abspath( __file__ ) )
-  homePath = os.path.realpath(os.path.expanduser('~'))
-
-  appliPath = __detectAppliPath(currentPath)
-
-  if appliPath is None:
-    print "ERROR: Unable to find application folder"
-    sys.exit(0)
-
-  appliPath = os.path.relpath(appliPath, homePath)
-  absoluteAppliPath = os.path.join(homePath, appliPath)
-  os.environ['APPLI'] = appliPath # needed to convert .sh environment files
-  os.environ['ABSOLUTE_APPLI_PATH'] = absoluteAppliPath
-
-  sys.path[:0] = [absoluteAppliPath+'/bin/salome']
-
-  # define folder to store omniorb config (initially in virtual application folder)
-  try:
-    from salomeContextUtils import setOmniOrbUserPath
-    setOmniOrbUserPath()
-  except Exception, e:
-    print e
-    sys.exit(1)
-# End of preliminary work
-
-def main(args):
-  # Identify application path then locate configuration files
-  __initialize()
-
-  if args == ['--help']:
-    from salomeContext import usage
-    usage()
-    sys.exit(0)
-
-  from salomeContextUtils import getConfigFileNames
-  configFileNames, args, unexisting = getConfigFileNames(args, checkExistence=True)
-  if len(unexisting) > 0:
-    print "ERROR: unexisting configuration file(s): " + ', '.join(unexisting)
-    sys.exit(1)
-
-  # Create a SalomeContext which parses configFileNames to initialize environment
-  from salomeContextUtils import SalomeContextException
-  try:
-    from salomeContext import SalomeContext
-    context = SalomeContext(configFileNames)
-
-    # Here set specific variables, if needed
-    # context.addToPath('mypath')
-    # context.addToLdLibraryPath('myldlibrarypath')
-    # context.addToPythonPath('mypythonpath')
-    # context.setVariable('myvarname', 'value')
-
-    # Start SALOME, parsing command line arguments
-    (out, err), returncode = context.runSalome(args)
-    #print 'Thank you for using SALOME!'
-
-    if out:
-      sys.stdout.write(out)
-
-    if err:
-      sys.stderr.write(err)
-
-    sys.exit(returncode)
-  except SalomeContextException, e:
-    import logging
-    logging.getLogger("salome").error(e)
-    sys.exit(1)
-#
-
 if __name__ == "__main__":
-  args = sys.argv[1:]
-  main(args)
-#
+    salome_common.main(sys.argv[1:])