=================================================================== RCS file: /home/cvs/OpenXM/src/kan96xx/Doc/oxasir-win.sm1,v retrieving revision 1.2 retrieving revision 1.9 diff -u -p -r1.2 -r1.9 --- OpenXM/src/kan96xx/Doc/oxasir-win.sm1 2001/12/28 01:20:26 1.2 +++ OpenXM/src/kan96xx/Doc/oxasir-win.sm1 2002/01/09 11:08:02 1.9 @@ -1,26 +1,67 @@ -% $OpenXM: OpenXM/src/kan96xx/Doc/oxasir-win.sm1,v 1.1 2001/12/21 03:00:41 takayama Exp $ +% $OpenXM: OpenXM/src/kan96xx/Doc/oxasir-win.sm1,v 1.8 2002/01/09 10:52:42 takayama Exp $ % It is empty for now. % /oxasir.sm1.loaded 1 def -(oxasir-win.sm1 (C) N.Takayama, 12/17, 2001) message +(oxasir-win.sm1 (C) N.Takayama, 1/9, 2002) message +[(getenv) (OPENXMHOMEWIN)] extension +/OpenXM_HOME_WIN set +OpenXM_HOME_WIN tag 0 eq { + [(getenv) (OpenXM_HOME)] extension + /OpenXM_HOME_WIN set +} { } ifelse + + %% Set constants for windows. +[(getenv) (OSTYPE)] extension tag 0 eq { + /oxasirpath.ostype (native-windows) def +}{ + [(getenv) (OSTYPE)] extension /oxasirpath.ostype set +} ifelse + +oxasirpath.ostype (cygwin) eq { /oxasirpath.oxasir [ [(getenv) (OpenXM_HOME)] extension (/bin/ox_asir) ] cat -% (\OpenXM-win\bin\ox_asir) def /oxasirpath.asirlib [ [(getenv) (OpenXM_HOME)] extension (/lib/sm1/oxasir.asir) ] cat -% (\OpenXM-win\lib\sm1\oxasir.asir) def /oxpath.ox -%% (\OpenXM-win\bin\ox.exe) (ox) def +}{ + /oxasirpath.oxasir + [ OpenXM_HOME_WIN + (\bin\ox_asir) ] cat + def + /oxasirpath.asirlib + [ OpenXM_HOME_WIN + (/lib/sm1/oxasir.asir) + ] cat + def + /oxpath.ox + [ OpenXM_HOME_WIN + (\bin\ox.exe) + ] cat + def +} ifelse %% Override asirconnectr /asirconnectr { + [(getenv) (OSTYPE)] extension tag 0 eq { + asirconnectr_win + }{ + [(getenv) (OSTYPE)] extension (cygwin) eq + { + asirconnectr_cygwin + }{ + asirconnectr_win + }ifelse + } ifelse +} def + +/asirconnectr_cygwin { [/in-asirconnectr /pass /peer /data /control /oxasir] pushVariables [ /pass [(oxGenPass)] extension def @@ -33,6 +74,42 @@ def ( -wait 5 ) oxpath.null ] cat system + [(oxCreateClient2) peer 0 pass] extension /oxasir set + %% 0 means connect from only localhost. + oxasir asirinit + /arg1 oxasir def + ] pop + popVariables + arg1 +} def + +/asirconnectr_win { + [/in-asirconnectr /pass /peer /data /control /oxasir] pushVariables + [ + /pass [(oxGenPass)] extension def + /peer [(oxGetPort) (localhost)] extension def + /data peer 1 get toString def + /control peer 3 get toString def + peer message + + + [(forkExec) [ + (start) + oxpath.ox + (-reverse) + (-ox) + oxasirpath.oxasir + (-data) + data + (-control) + control + (-pass) + pass + (-wait) + (5) + ] + [ ] 3] extension + [(oxCreateClient2) peer 0 pass] extension /oxasir set %% 0 means connect from only localhost. oxasir asirinit