if not self.environ.is_defined("PATH"):
self.environ.set("PATH","")
+ if self.init_path:
+ self.output.write('\n'+self.indent)
+ self.add_echo("Modifier cette variable pour ne pas réinitialiser les PATHS")
+ self.output.write(self.indent+'reinitialise_paths=True\n\n')
def add_echo(self, text):
"""Add a comment
if separator in value:
raise Exception(msg % (key, value, separator))
- if (self.init_path and (not self.environ.is_defined(key))):
+ is_key_defined=self.environ.is_defined(key)
+ conditional_reinit=False
+ if (self.init_path and (not is_key_defined)):
# reinitialisation mode set to true (the default)
# for the first occurrence of key, we set it.
# therefore key will not be inherited from environment
+ self.output.write(self.indent+'if reinitialise_paths:\n'+self.indent)
self.set(key, value)
- return
+ self.output.write(self.indent+'else:\n'+self.indent)
+ conditional_reinit=True # in this case do not register value in self.environ a second time
# in all other cases we use append (except if value is already the key
do_append=True
- if self.environ.is_defined(key):
+ if is_key_defined:
value_list = self.environ.get(key).split(sep)
# rem : value cannot be expanded (unlike bash/bat case) - but it doesn't matter.
if value in value_list:
do_append=False # value is already in key path : we don't append it again
if do_append:
- self.environ.append_value(key, value,sep) # register value in self.environ
+ if not conditional_reinit:
+ self.environ.append_value(key, value,sep) # register value in self.environ
if key in self.specialKeys.keys():
#for these special keys we use the specific salomeContext function
self.output.write(self.begin+'addTo%s(r"%s")\n' %
if separator in value:
raise Exception(msg % (key, value, separator))
- if (self.init_path and (not self.environ.is_defined(key))):
+ is_key_defined=self.environ.is_defined(key)
+ conditional_reinit=False
+ if (self.init_path and (not is_key_defined)):
# reinitialisation mode set to true (the default)
# for the first occurrence of key, we set it.
# therefore key will not be inherited from environment
+ self.output.write(self.indent+'if reinitialise_paths:\n'+self.indent)
self.set(key, value)
- return
+ self.output.write(self.indent+'else:\n'+self.indent)
+ conditional_reinit=True # in this case do not register value in self.environ a second time
+
# in all other cases we use append (except if value is already the key
do_append=True
- if self.environ.is_defined(key):
+ if is_key_defined:
value_list = self.environ.get(key).split(sep)
# rem : value cannot be expanded (unlike bash/bat case) - but it doesn't matter.
if value in value_list:
do_append=False # value is already in key path : we don't append it again
if do_append:
- self.environ.append_value(key, value,sep) # register value in self.environ
+ if not conditional_reinit:
+ self.environ.append_value(key, value,sep) # register value in self.environ
if key in self.specialKeys.keys():
#for these special keys we use the specific salomeContext function
self.output.write(self.begin+'addTo%s(r"%s")\n' %
import sys
import subprocess
import os.path
-import imp
# Add the pwdPath to able to run the launcher after unpacking a package
# Used only in case of a salomeTools package
import sys
import subprocess
import os.path
-import imp
# Add the pwdPath to able to run the launcher after unpacking a package
# Used only in case of a salomeTools package
extradir=out_dir_Path + r"/extra.env.d"
if os.path.exists(extradir):
+ import imp
sys.path.insert(0, os.path.join(os.getcwd(), extradir))
for filename in sorted(
filter(lambda x: os.path.isfile(os.path.join(extradir, x)),
extradir=out_dir_Path + r"/extra.env.d"
if os.path.exists(extradir):
+ import imp
sys.path.insert(0, os.path.join(os.getcwd(), extradir))
for filename in sorted(
filter(lambda x: os.path.isfile(os.path.join(extradir, x)),