@@ -19,6 +19,7 @@ public static class AOTGenerater
19
19
static string WorkDir ;
20
20
static string ManagedDir ;
21
21
static string AotDir ;
22
+ static bool needAOT ;
22
23
public static void Init ( string workDir , Dictionary < string , List < string > > stripDic )
23
24
{
24
25
WorkDir = workDir ;
@@ -30,6 +31,8 @@ public static void Init(string workDir, Dictionary<string, List<string>> stripDi
30
31
NinjaWriter . _eol = "" ;
31
32
AotDir = Path . Combine ( workDir , "aot" ) ;
32
33
ModuleRegisterWriter = new CodeWriter ( File . CreateText ( Path . Combine ( workDir , "generated" , "aot_module_register.c" ) ) ) ;
34
+
35
+ needAOT = ! Utils . IsWin32 ( ) ;
33
36
}
34
37
public static void AddAOTAssembly ( string file )
35
38
{
@@ -40,28 +43,32 @@ public static void AddAOTAssembly(string file)
40
43
41
44
AOTDic [ Path . GetFileName ( file ) ] = assembly . Name . Name . Replace ( "." , "_" ) . Replace ( "-" , "_" ) ;
42
45
43
- var fName = Path . GetFileName ( file ) ;
44
- if ( StrpDic . TryGetValue ( fName , out var sList ) )
46
+ if ( needAOT )
45
47
{
46
- foreach ( var strips in sList )
48
+ var fName = Path . GetFileName ( file ) ;
49
+ if ( StrpDic . TryGetValue ( fName , out var sList ) )
47
50
{
48
- var info = strips . Split ( ':' ) ;
49
- var type = assembly . MainModule . GetType ( info [ 0 ] ) ;
50
- var method = type ? . Methods . FirstOrDefault ( m => m . Name == info [ 1 ] ) ;
51
- if ( method != null )
52
- type ? . Methods . Remove ( method ) ;
53
- }
51
+ foreach ( var strips in sList )
52
+ {
53
+ var info = strips . Split ( ':' ) ;
54
+ var type = assembly . MainModule . GetType ( info [ 0 ] ) ;
55
+ var method = type ? . Methods . FirstOrDefault ( m => m . Name == info [ 1 ] ) ;
56
+ if ( method != null )
57
+ type ? . Methods . Remove ( method ) ;
58
+ }
54
59
55
- assembly . Write ( tmp ) ;
56
- }
60
+ assembly . Write ( tmp ) ;
61
+ }
57
62
58
- assembly . Dispose ( ) ;
63
+ assembly . Dispose ( ) ;
59
64
60
- if ( File . Exists ( tmp ) )
61
- {
62
- File . Copy ( tmp , file , true ) ;
63
- File . Delete ( tmp ) ;
65
+ if ( File . Exists ( tmp ) )
66
+ {
67
+ File . Copy ( tmp , file , true ) ;
68
+ File . Delete ( tmp ) ;
69
+ }
64
70
}
71
+
65
72
}
66
73
67
74
public static void End ( )
@@ -100,7 +107,7 @@ public static void End()
100
107
CS . Writer . EndAll ( ) ;
101
108
}
102
109
103
- if ( ! Utils . IsWin32 ( ) )
110
+ if ( needAOT )
104
111
{
105
112
var res = Utils . RunCMD ( "ninja" , new string [ ] { } , ManagedDir ) ;
106
113
if ( res != 0 )
0 commit comments