pass
elif self.space == ["Configuration-list","modules-list","module","plugin"] and "name" in attrs.getNames():
key = str(self.currentModuleName)+"_plugins"
- if not self.opts.has_key("key"):
+ if not self.opts.has_key(key):
self.opts[key]=[]
pass
self.opts[key].append(attrs.getValue("name"))
# -----------------------------------------------------------------------------
-### searching for launch configuration file : $HOME/.$(application_name)/$(application_name).launch
-
-appname = None
-filename = None
-for bindir in glob.glob(os.environ["KERNEL_ROOT_DIR"]+"/bin/*"):
- appname = string.split(bindir, "/").pop()
- print 'Application name: "'+appname+'"'
- filename = os.environ["HOME"]+"/."+appname+"/"+appname+".launch"
- if not os.path.exists(filename) and \
- not os.path.exists(os.environ["KERNEL_ROOT_DIR"]+"/bin/"+appname+"/"+appname+".launch"):
- filename = None
- else:
- break
- pass
-if not appname:
- print "Can not find application name"
- if not os.have_key("KERNEL_ROOT_DIR"):
- print "KERNEL_ROOT_DIR environment variable must be set"
- pass
- sys.exit(1);
-elif not filename or not os.path.exists(filename):
- filename = os.environ["HOME"]+"/."+appname+"/"+appname+".launch"
- print "Launch configuration file does not exist. Create default:",filename
- os.system("mkdir -p "+os.environ["HOME"]+"/."+appname)
- os.system("cp -f "+os.environ["KERNEL_ROOT_DIR"]+"/bin/"+appname+"/"+appname+".launch "+filename)
- pass
+### searching for launch configuration file : $HOME/applipath()/salome.launch
+
+appname="salome"
+import Utils_Identity
+versnb=Utils_Identity.version()
+dirname = os.path.join(os.environ["HOME"],Utils_Identity.getapplipath())
+filename=os.path.join(dirname,"salome.launch")
+
+if not os.path.exists(filename):
+ print "Launch configuration file does not exist. Create default:",filename
+ os.system("mkdir -p "+dirname)
+ os.system("cp -f "+os.environ["KERNEL_ROOT_DIR"]+"/bin/salome/salome.launch "+filename)
### get options from launch configuration file
for aKey in ("containers","embedded","key","modules","standalone"):
if not args.has_key(aKey):
args[aKey]=[]
-for aKey in ("gui","logger","xterm","portkill","killall"):
+for aKey in ("gui","logger","file","xterm","portkill","killall","interp"):
if not args.has_key(aKey):
args[aKey]=0
+if args["file"]:
+ afile=args["file"]
+ args["file"]=[afile]
args["appname"] = appname
### searching for my port
s = file.read()
while len(s):
l = string.split(s, ":")
- if string.split(l[0], " ")[0] == "ORBInitRef":
+ if string.split(l[0], " ")[0] == "ORBInitRef" or string.split(l[0], " ")[0] == "InitRef" :
my_port = int(l[len(l)-1])
pass
s = file.read()
opterror=0
for opt in opts:
- if not opt in ("h","g","l","x","m","e","s","c","p","k","t"):
+ if not opt in ("h","g","l","f","x","m","e","s","c","p","k","t","i"):
print "command line error: -", opt
opterror=1
print """USAGE: runSalome.py [options]
[command line options] :
--help or -h : print this help
- --gui or -g : lancement du GUI
+ --gui or -g : launching with GUI
--terminal -t : launching without gui (to deny --gui)
- --logger or -l : redirection des messages dans un fichier
- --xterm or -x : les serveurs ouvrent une fenêtre xterm et les messages sont affichés dans cette fenêtre
- --modules=module1,module2,... : où modulen est le nom d'un module Salome à charger dans le catalogue
+ --logger or -l : redirect messages in a CORBA collector
+ --file=filename or -f=filename: redirect messages in a log file
+ --xterm or -x : execute servers in xterm console (messages appear in xterm windows)
+ --modules=module1,module2,... : salome module list (modulen is the name of Salome module to load)
or -m=module1,module2,...
--embedded=registry,study,moduleCatalog,cppContainer
or -e=registry,study,moduleCatalog,cppContainer
- : serveurs CORBA embarqués (par defaut: registry,study,moduleCatalog,cppContainer)
- : (logger,pyContainer,supervContainer ne peuvent pas être embarqués
+ : embedded CORBA servers (default: registry,study,moduleCatalog,cppContainer)
+ : (logger,pyContainer,supervContainer can't be embedded
--standalone=registry,study,moduleCatalog,cppContainer,pyContainer,supervContainer
or -s=registry,study,moduleCatalog,cppContainer,pyContainer,supervContainer
- : executables serveurs CORBA indépendants (par défaut: pyContainer,supervContainer)
- --containers=cpp,python,superv: (obsolete) lancement des containers cpp, python et de supervision
- or -c=cpp,python,superv : = on prend les defauts de -e et -s
+ : standalone CORBA servers (default: pyContainer,supervContainer)
+ --containers=cpp,python,superv: (obsolete) launching of containers cpp, python and supervision
+ or -c=cpp,python,superv : = get default from -e and -s
--portkill or -p : kill the salome with current port
- --killall or -k : kill salome
+ --killall or -k : kill all salome sessions
+ --interp=n or -i=n : number of additional xterm to open, with session environment
- La variable d'environnement <modulen>_ROOT_DIR doit etre préalablement
- positionnée (modulen doit etre en majuscule).
- KERNEL_ROOT_DIR est obligatoire.
+ For each Salome module, the environment variable <modulen>_ROOT_DIR must be set.
+ The module name (<modulen>) must be uppercase.
+ KERNEL_ROOT_DIR is mandatory.
"""
sys.exit(1)
pass
args['gui'] = 1
elif opt == 'l':
args['logger'] = 1
+ elif opt == 'f':
+ args['file'] = opts['f']
elif opt == 'x':
args['xterm'] = 1
+ elif opt == 'i':
+ args['interp'] = opts['i']
elif opt == 'm':
args['modules'] = opts['m']
elif opt == 'e':