17
17
#
18
18
19
19
import sys , re , os , signal
20
- import resource , subprocess
20
+ import subprocess
21
+ if os .name == "posix" :
22
+ import resource
21
23
from copy import deepcopy
22
24
from select import select
23
25
from time import time
27
29
28
30
# This is needed so that the recursive SMT2 S-expression parser
29
31
# does not run out of stack frames when parsing large expressions
30
- smtio_reclimit = 64 * 1024
31
- smtio_stacksize = 128 * 1024 * 1024
32
- if sys .getrecursionlimit () < smtio_reclimit :
33
- sys .setrecursionlimit (smtio_reclimit )
34
- if resource .getrlimit (resource .RLIMIT_STACK )[0 ] < smtio_stacksize :
35
- resource .setrlimit (resource .RLIMIT_STACK , (smtio_stacksize , - 1 ))
32
+ if os .name == "posix" :
33
+ smtio_reclimit = 64 * 1024
34
+ smtio_stacksize = 128 * 1024 * 1024
35
+ if sys .getrecursionlimit () < smtio_reclimit :
36
+ sys .setrecursionlimit (smtio_reclimit )
37
+ if resource .getrlimit (resource .RLIMIT_STACK )[0 ] < smtio_stacksize :
38
+ resource .setrlimit (resource .RLIMIT_STACK , (smtio_stacksize , - 1 ))
36
39
37
40
38
41
# currently running solvers (so we can kill them)
@@ -51,8 +54,9 @@ def force_shutdown(signum, frame):
51
54
os .kill (p .pid , signal .SIGTERM )
52
55
sys .exit (1 )
53
56
57
+ if os .name == "posix" :
58
+ signal .signal (signal .SIGHUP , force_shutdown )
54
59
signal .signal (signal .SIGINT , force_shutdown )
55
- signal .signal (signal .SIGHUP , force_shutdown )
56
60
signal .signal (signal .SIGTERM , force_shutdown )
57
61
58
62
def except_hook (exctype , value , traceback ):
@@ -1053,4 +1057,3 @@ def set_time(self, t):
1053
1057
print ("b0 %s" % self .nets [path ][0 ], file = self .f )
1054
1058
else :
1055
1059
print ("b1 %s" % self .nets [path ][0 ], file = self .f )
1056
-
0 commit comments