X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=bin%2Fserver.py;h=2712c880e731cbd51c661f05170716d0809e3619;hb=c08881e6e17a2480fb307ee4c92d784386bdb97d;hp=dcb9488f4068787b081217c6ee680cfe783a58e8;hpb=703cf8ca778de35a6b463d4b4fca7c36697d717f;p=modules%2Fkernel.git diff --git a/bin/server.py b/bin/server.py index dcb9488f4..2712c880e 100755 --- a/bin/server.py +++ b/bin/server.py @@ -1,6 +1,6 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 # -*- coding: iso-8859-1 -*- -# Copyright (C) 2007-2015 CEA/DEN, EDF R&D, OPEN CASCADE +# Copyright (C) 2007-2016 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 @@ -62,15 +62,19 @@ class Server: myargs=self.ARGS if self.args.get('xterm'): # (Debian) send LD_LIBRARY_PATH to children shells (xterm) - if sys.platform != "win32": + if sys.platform == "darwin": + env_ld_library_path=['env', 'DYLD_LIBRARY_PATH=' + + os.getenv("DYLD_FALLBACK_LIBRARY_PATH")] + myargs = myargs +['-T']+self.CMD[:1]+['-e'] + env_ld_library_path + elif sys.platform != "win32": env_ld_library_path=['env', 'LD_LIBRARY_PATH=' + os.getenv("LD_LIBRARY_PATH")] myargs = myargs +['-T']+self.CMD[:1]+['-e'] + env_ld_library_path command = myargs + self.CMD - #print "command = ", command + # print("command = ", command) if sys.platform == "win32": - import win32pm - pid = win32pm.spawnpid( command, '-nc' ) + import subprocess + pid = subprocess.Popen(command).pid elif Server.server_launch_mode == "fork": pid = os.spawnvp(os.P_NOWAIT, command[0], command) else: # Server launch mode is daemon @@ -117,12 +121,13 @@ class Server: pid = os.fork() if pid > 0: #send real pid to parent - os.write(c2pwrite,"%d" % pid) + pid_str = "%d" % pid + os.write(c2pwrite,pid_str.encode()) os.close(c2pwrite) # exit from second parent os._exit(0) - except OSError, e: - print >>sys.stderr, "fork #2 failed: %d (%s)" % (e.errno, e.strerror) + except OSError as e: + print("fork #2 failed: %d (%s)" % (e.errno, e.strerror), file=sys.stderr) os.write(c2pwrite,"-1") os.close(c2pwrite) sys.exit(1) @@ -132,6 +137,6 @@ class Server: os.open("/dev/null", os.O_RDWR) # redirect standard input (0) to /dev/null try: os.execvp(args[0], args) - except OSError, e: - print >>sys.stderr, "(%s) launch failed: %d (%s)" % (args[0],e.errno, e.strerror) + except OSError as e: + print("(%s) launch failed: %d (%s)" % (args[0],e.errno, e.strerror), file=sys.stderr) os._exit(127)