=================================================================== RCS file: /home/cvs/OpenXM/src/kan96xx/Doc/oxasir-win.sm1,v retrieving revision 1.6 retrieving revision 1.14 diff -u -p -r1.6 -r1.14 --- OpenXM/src/kan96xx/Doc/oxasir-win.sm1 2001/12/28 08:33:20 1.6 +++ OpenXM/src/kan96xx/Doc/oxasir-win.sm1 2002/08/03 06:02:35 1.14 @@ -1,51 +1,98 @@ -% $OpenXM: OpenXM/src/kan96xx/Doc/oxasir-win.sm1,v 1.5 2001/12/28 08:18:23 takayama Exp $ +% $OpenXM: OpenXM/src/kan96xx/Doc/oxasir-win.sm1,v 1.13 2002/07/31 02:57:37 takayama Exp $ % It is empty for now. % /oxasir.sm1.loaded 1 def -(oxasir-win.sm1 (C) N.Takayama, 12/28, 2001) message +(oxasir-win.sm1 (C) N.Takayama, 1/9, 2002) message -%% Set constants for windows. -/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 +[(getenv) (OPENXMHOMEWIN)] extension +/OpenXM_HOME_WIN set +OpenXM_HOME_WIN tag 0 eq { + [(getenv) (OpenXM_HOME)] extension + /OpenXM_HOME_WIN set +} { } ifelse +OpenXM_HOME_WIN tag 0 eq { + %% Hard encoding: + /OpenXM_HOME_WIN + (\OpenXM-win) +% (\cygwin\home\nobuki\OpenXM\misc\packages\Windows\OpenXM-win) + def +} { } ifelse + + +ox.ostype 1 get (cygwin) eq { + /oxasirpath.oxasir + [ (c:/cygwin) OpenXM_HOME_WIN + (/bin/ox_asir) ] cat + def + /oxasirpath.asirlib + [ [(getenv) (OpenXM_HOME)] extension + (/lib/sm1/oxasir.asir) ] cat + def + /oxpath.ox + (ox) + def +}{ } ifelse + +ox.ostype 1 get (xcygwin) eq { + /oxasirpath.oxasir + [ [(getenv) (OpenXM_HOME)] extension + (/bin/ox_asir) ] cat + def + /oxasirpath.asirlib + [ [(getenv) (OpenXM_HOME)] extension + (/lib/sm1/oxasir.asir) ] cat + def + /oxpath.ox + (ox) + def +}{ } ifelse + +ox.ostype 1 get (native) eq { + /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 + ox.ostype 1 get (cygwin) eq { + asirconnectr_cygwin + }{ } ifelse + ox.ostype 1 get (xcygwin) eq { + asirconnectr_xcygwin + }{ } ifelse + ox.ostype 1 get (native) eq { + asirconnectr_win + }{ } ifelse } def /asirconnectr_cygwin { - [/in-asirconnectr /pass /peer /data /control /oxasir] pushVariables + [/in-asirconnectr /pass /peer /data /control /oxasir /sss ] pushVariables [ /pass [(oxGenPass)] extension def /peer [(oxGetPort) (localhost)] extension def /data peer 1 get toString def /control peer 3 get toString def peer message - [(start ) oxpath.ox ( -reverse -ox ) oxasirpath.oxasir + [ox.win.start { ( ) } map cat ox_backslash_to_slash + ( ox ) ( -reverse -ox ) + oxasirpath.oxasir ( -data ) data ( -control ) control ( -pass ) pass ( -wait 5 ) oxpath.null - ] cat system + ] cat /sss set + sss message sss system [(oxCreateClient2) peer 0 pass] extension /oxasir set %% 0 means connect from only localhost. oxasir asirinit @@ -55,6 +102,31 @@ def arg1 } def +/asirconnectr_xcygwin { + [/in-asirconnectr /pass /peer /data /control /oxasir /sss ] pushVariables + [ + /pass [(oxGenPass)] extension def + /peer [(oxGetPort) (localhost)] extension def + /data peer 1 get toString def + /control peer 3 get toString def + peer message + [(oxlog /usr/X11R6/bin/xterm -iconic -e ) + ( ox ) ( -reverse -ox ) + oxasirpath.oxasir + ( -data ) data ( -control ) control ( -pass ) pass + ( -wait 5 ) + oxpath.null + ] cat /sss set + sss message sss 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 [ @@ -64,16 +136,13 @@ def /control peer 3 get toString def peer message - /oxasirpath.asirlib - (\OpenXM-win\lib\sm1\oxasir.asir) - def [(forkExec) [ - (start) - (\OpenXM-win\bin\ox.exe) + ox.win.start aload pop + oxpath.ox (-reverse) (-ox) - (\OpenXM-win\bin\ox_asir) + oxasirpath.oxasir (-data) data (-control)