@@ -31,49 +31,54 @@ class DarwinTarget extends PluginTarget {
31
31
static const ios_arm64 = DarwinTarget (
32
32
platform: DarwinPlatform .ios,
33
33
architecture: 'arm64' ,
34
- buildTarget: 'aarch64-apple-darwin23' ,
34
+ buildTarget: 'aarch64-apple-darwin' ,
35
+ hostTarget: 'aarch64-apple-darwin23' ,
35
36
);
36
37
// ignore: constant_identifier_names
37
38
static const ios_arm64e = DarwinTarget (
38
39
platform: DarwinPlatform .ios,
39
40
architecture: 'arm64e' ,
40
- buildTarget: 'aarch64-apple-darwin23' ,
41
+ buildTarget: 'aarch64-apple-darwin' ,
42
+ hostTarget: 'aarch64-apple-darwin23' ,
41
43
);
42
44
// ignore: constant_identifier_names
43
45
static const ios_simulator_arm64 = DarwinTarget (
44
46
platform: DarwinPlatform .ios_simulator,
45
47
architecture: 'arm64' ,
46
- buildTarget: 'aarch64-apple-darwin23' ,
48
+ buildTarget: 'aarch64-apple-darwin' ,
49
+ hostTarget: 'aarch64-apple-darwin23' ,
47
50
);
48
51
// ignore: constant_identifier_names
49
52
static const ios_simulator_arm64e = DarwinTarget (
50
53
platform: DarwinPlatform .ios_simulator,
51
54
architecture: 'arm64e' ,
52
- buildTarget: 'aarch64-apple-darwin23' ,
55
+ buildTarget: 'aarch64-apple-darwin' ,
56
+ hostTarget: 'aarch64-apple-darwin23' ,
53
57
);
54
58
// ignore: constant_identifier_names
55
59
static const ios_simulator_x86_64 = DarwinTarget (
56
60
platform: DarwinPlatform .ios_simulator,
57
61
architecture: 'x86_64' ,
58
- buildTarget: 'x86_64-apple-darwin23' ,
62
+ buildTarget: 'aarch64-apple-darwin' ,
63
+ hostTarget: 'x86_64-apple-darwin23' ,
59
64
);
60
65
// ignore: constant_identifier_names
61
66
static const macos_arm64 = DarwinTarget (
62
67
platform: DarwinPlatform .macos,
63
68
architecture: 'arm64' ,
64
- buildTarget : 'aarch64-apple-darwin23' ,
69
+ hostTarget : 'aarch64-apple-darwin23' ,
65
70
);
66
71
// ignore: constant_identifier_names
67
72
static const macos_arm64e = DarwinTarget (
68
73
platform: DarwinPlatform .macos,
69
74
architecture: 'arm64e' ,
70
- buildTarget : 'aarch64-apple-darwin23' ,
75
+ hostTarget : 'aarch64-apple-darwin23' ,
71
76
);
72
77
// ignore: constant_identifier_names
73
78
static const macos_x86_64 = DarwinTarget (
74
79
platform: DarwinPlatform .macos,
75
80
architecture: 'x86_64' ,
76
- buildTarget : 'x86_64-apple-darwin23' ,
81
+ hostTarget : 'x86_64-apple-darwin23' ,
77
82
);
78
83
static const iosValues = [
79
84
ios_arm64,
@@ -85,11 +90,12 @@ class DarwinTarget extends PluginTarget {
85
90
static const macosValues = [macos_arm64, macos_arm64e, macos_x86_64];
86
91
static const values = [...iosValues, ...macosValues];
87
92
93
+ // Check here: https://github.com/jedisct1/libsodium/blob/master/dist-build/apple-xcframework.sh
88
94
// get hash: curl -sSL https://raw.githubusercontent.com/jedisct1/libsodium/refs/heads/master/dist-build/apple-xcframework.sh | b2sum
89
95
// last update: 2024-12-31
90
96
static const _appleXcframeworkScriptHash =
91
97
// ignore: lines_longer_than_80_chars
92
- '5aa4efd30f914f85da881e4cb4eeeeb8cc65864c0ecfaba854e96326e790e6151ee53f962c25532548c1f2ecbc2d9c514a4238750e74ee57c5eaee0e603bbe38 ' ;
98
+ 'df5a8478558938660f926d25e12066e6e8afe7cebd234f334b989c3bdf17fbb1c0d2fa8be924757753f49767152e53cc2f13aa00b2032cae5ffa2f3d09d9c4e6 ' ;
93
99
94
100
static final _frameworkInfoPlist =
95
101
'''
@@ -123,12 +129,14 @@ class DarwinTarget extends PluginTarget {
123
129
124
130
final DarwinPlatform platform;
125
131
final String architecture;
126
- final String buildTarget;
132
+ final String ? buildTarget;
133
+ final String hostTarget;
127
134
128
135
const DarwinTarget ({
129
136
required this .platform,
130
137
required this .architecture,
131
- required this .buildTarget,
138
+ this .buildTarget,
139
+ required this .hostTarget,
132
140
});
133
141
134
142
@override
@@ -151,7 +159,11 @@ class DarwinTarget extends PluginTarget {
151
159
152
160
await Github .exec (
153
161
'./configure' ,
154
- ['--host=$buildTarget ' , '--prefix=${prefixDir .path }' ],
162
+ [
163
+ if (buildTarget != null ) '--build=$buildTarget ' ,
164
+ '--host=$hostTarget ' ,
165
+ '--prefix=${prefixDir .path }' ,
166
+ ],
155
167
workingDirectory: buildDir,
156
168
environment: environment,
157
169
);
0 commit comments