X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=bin%2Fappliskel%2Fsalome;h=1bcae77fa2d19aecd706a525e147ba81925521f1;hb=7e6982e9ccf83f3ede551d990d5a80807dcf1a87;hp=7914df12466de675f2934d49a2c1478040dd90be;hpb=128e8a9c4f218409f4a0471313677a4c395dcf29;p=modules%2Fkernel.git diff --git a/bin/appliskel/salome b/bin/appliskel/salome index 7914df124..1bcae77fa 100755 --- a/bin/appliskel/salome +++ b/bin/appliskel/salome @@ -1,64 +1,66 @@ #! /usr/bin/env python +# Copyright (C) 2013-2015 CEA/DEN, EDF R&D, OPEN CASCADE +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# + import os import sys -# 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 = os.path.relpath(currentPath, homePath) - - pattern = "/bin/salome/appliskel" - if appliPath.endswith(pattern): - appliPath = appliPath[:-len(pattern)] - - 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 salomeLauncherUtils 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() + currentPath = os.path.realpath(os.path.dirname(os.path.abspath(__file__))) + launcherFile = os.path.basename(__file__) + from salome_starter import initialize + initialize(currentPath, launcherFile) - if args == ['--help']: - from salomeRunner import usage + if len(args) == 1 and args[0] in ['--help', 'help', '-h', '--h']: + from salomeContext import usage usage() sys.exit(0) - from salomeLauncherUtils import getConfigFileNames + 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 SalomeRunner which parses configFileNames to initialize environment + # Create a SalomeContext which parses configFileNames to initialize environment + from salomeContextUtils import SalomeContextException try: - from salomeRunner import SalomeRunner, SalomeRunnerException - runner = SalomeRunner(configFileNames) + from salomeContext import SalomeContext + context = SalomeContext(configFileNames) # Here set specific variables, if needed - # runner.addToPath('mypath') - # runner.addToLdLibraryPath('myldlibrarypath') - # runner.addToPythonPath('mypythonpath') - # runner.setEnviron('myvarname', 'value') + # context.addToPath('mypath') + # context.addToLdLibraryPath('myldlibrarypath') + # context.addToPythonPath('mypythonpath') + # context.setVariable('myvarname', 'value') # Start SALOME, parsing command line arguments - runner.go(args) - print 'Thank you for using SALOME!' - - except SalomeRunnerException, e: + (out, err), returncode = context.runSalome(args) + if out: + sys.stdout.write(out) + if err: + sys.stderr.write(err) + #print 'Thank you for using SALOME!' + sys.exit(returncode) + except SalomeContextException, e: import logging logging.getLogger("salome").error(e) sys.exit(1)