Skip to content

Commit 3bcaa02

Browse files
committed
fix tests
1 parent 60605f8 commit 3bcaa02

11 files changed

+133
-114
lines changed

CHANGELOG.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,11 @@
11
# native_toolchain_cmake
22

3+
## 0.0.5
4+
5+
- fix: only add `-A` when using Visual Studio Generators
6+
- new: add `useVcvars` to add environment variables from vcvarsXXX.bat
7+
- bump native_assets_cli to 0.13.0
8+
39
## 0.0.4
410

511
- fix: android should use Ninja for android builds

example/add/pubspec.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ dependencies:
1212
native_toolchain_cmake:
1313
path: ../..
1414
logging: ^1.3.0
15-
native_assets_cli: ^0.12.0
15+
native_assets_cli: ^0.13.0
1616

1717
dev_dependencies:
1818
lints: ^5.0.0

pubspec.yaml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,10 +18,10 @@ dependencies:
1818
glob: ^2.1.1
1919
logging: ^1.1.1
2020
meta: ^1.9.1
21-
native_assets_cli: ">=0.12.0 <0.13.0"
22-
native_assets_builder: ">=0.12.0 <0.13.0" # required for CMake Env Vars
21+
native_assets_cli: ^0.13.0
22+
native_assets_builder: ^0.13.0 # required for CMake Env Vars
2323
path: ^1.9.1
24-
pub_semver: ^2.1.3
24+
pub_semver: ^2.1.5
2525

2626
dev_dependencies:
2727
test: ^1.21.0

test/builder/cmake_builder_cross_android_test.dart

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -112,14 +112,15 @@ Future<Uri> buildLib(
112112
outputDirectoryShared: tempUriShared,
113113
)
114114
..config.setupBuild(linkingEnabled: false)
115-
..config.setupShared(buildAssetTypes: [CodeAsset.type])
116-
..config.setupCode(
117-
targetOS: OS.android,
118-
targetArchitecture: targetArchitecture,
119-
cCompiler: cCompiler,
120-
android: AndroidCodeConfig(targetNdkApi: androidNdkApi),
121-
linkModePreference:
122-
linkMode == DynamicLoadingBundled() ? LinkModePreference.dynamic : LinkModePreference.static,
115+
..addExtension(
116+
CodeAssetExtension(
117+
targetArchitecture: targetArchitecture,
118+
targetOS: OS.android,
119+
cCompiler: cCompiler,
120+
android: AndroidCodeConfig(targetNdkApi: androidNdkApi),
121+
linkModePreference:
122+
linkMode == DynamicLoadingBundled() ? LinkModePreference.dynamic : LinkModePreference.static,
123+
),
123124
);
124125

125126
final buildInput = BuildInput(buildInputBuilder.json);

test/builder/cmake_builder_cross_ios_test.dart

Lines changed: 21 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -57,16 +57,17 @@ void main() {
5757
outputDirectoryShared: tempUri2,
5858
)
5959
..config.setupBuild(linkingEnabled: false)
60-
..config.setupShared(buildAssetTypes: [CodeAsset.type])
61-
..config.setupCode(
62-
targetOS: OS.iOS,
63-
targetArchitecture: target,
64-
linkModePreference: LinkModePreference.dynamic,
65-
iOS: IOSCodeConfig(
66-
targetSdk: targetIOSSdk,
67-
targetVersion: flutteriOSHighestBestEffort,
60+
..addExtension(
61+
CodeAssetExtension(
62+
targetOS: OS.iOS,
63+
targetArchitecture: target,
64+
linkModePreference: LinkModePreference.dynamic,
65+
iOS: IOSCodeConfig(
66+
targetSdk: targetIOSSdk,
67+
targetVersion: flutteriOSHighestBestEffort,
68+
),
69+
cCompiler: cCompiler,
6870
),
69-
cCompiler: cCompiler,
7071
);
7172

7273
final buildInput = BuildInput(buildInputBuilder.json);
@@ -176,17 +177,18 @@ Future<Uri> buildLib(
176177
outputDirectoryShared: tempUri2,
177178
)
178179
..config.setupBuild(linkingEnabled: false)
179-
..config.setupShared(buildAssetTypes: [CodeAsset.type])
180-
..config.setupCode(
181-
targetOS: OS.iOS,
182-
targetArchitecture: targetArchitecture,
183-
linkModePreference:
184-
linkMode == DynamicLoadingBundled() ? LinkModePreference.dynamic : LinkModePreference.static,
185-
iOS: IOSCodeConfig(
186-
targetSdk: IOSSdk.iPhoneOS,
187-
targetVersion: targetIOSVersion,
180+
..addExtension(
181+
CodeAssetExtension(
182+
targetOS: OS.iOS,
183+
targetArchitecture: targetArchitecture,
184+
linkModePreference:
185+
linkMode == DynamicLoadingBundled() ? LinkModePreference.dynamic : LinkModePreference.static,
186+
iOS: IOSCodeConfig(
187+
targetSdk: IOSSdk.iPhoneOS,
188+
targetVersion: targetIOSVersion,
189+
),
190+
cCompiler: cCompiler,
188191
),
189-
cCompiler: cCompiler,
190192
);
191193

192194
final buildInput = BuildInput(buildInputBuilder.json);

test/builder/cmake_builder_cross_linux_host_test.dart

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -40,13 +40,15 @@ void main() {
4040
outputDirectoryShared: tempUri2,
4141
)
4242
..config.setupBuild(linkingEnabled: false)
43-
..config.setupShared(buildAssetTypes: [CodeAsset.type])
44-
..config.setupCode(
45-
targetOS: OS.linux,
46-
targetArchitecture: target,
47-
linkModePreference:
48-
linkMode == DynamicLoadingBundled() ? LinkModePreference.dynamic : LinkModePreference.static,
49-
cCompiler: cCompiler,
43+
..addExtension(
44+
CodeAssetExtension(
45+
targetOS: OS.linux,
46+
targetArchitecture: target,
47+
linkModePreference: linkMode == DynamicLoadingBundled()
48+
? LinkModePreference.dynamic
49+
: LinkModePreference.static,
50+
cCompiler: cCompiler,
51+
),
5052
);
5153

5254
final buildInput = BuildInput(buildInputBuilder.json);

test/builder/cmake_builder_cross_macos_host_test.dart

Lines changed: 16 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -49,13 +49,14 @@ void main() {
4949
outputDirectoryShared: tempUri2,
5050
)
5151
..config.setupBuild(linkingEnabled: false)
52-
..config.setupShared(buildAssetTypes: [CodeAsset.type])
53-
..config.setupCode(
54-
targetOS: OS.macOS,
55-
targetArchitecture: target,
56-
linkModePreference: LinkModePreference.dynamic,
57-
cCompiler: cCompiler,
58-
macOS: MacOSCodeConfig(targetVersion: defaultMacOSVersion),
52+
..addExtension(
53+
CodeAssetExtension(
54+
targetOS: OS.macOS,
55+
targetArchitecture: target,
56+
linkModePreference: LinkModePreference.dynamic,
57+
cCompiler: cCompiler,
58+
macOS: MacOSCodeConfig(targetVersion: defaultMacOSVersion),
59+
),
5960
);
6061
final buildInput = BuildInput(buildInputBuilder.json);
6162
final buildOutput = BuildOutputBuilder();
@@ -130,13 +131,14 @@ Future<Uri> buildLib(
130131
outputDirectoryShared: tempUri2,
131132
)
132133
..config.setupBuild(linkingEnabled: false)
133-
..config.setupShared(buildAssetTypes: [CodeAsset.type])
134-
..config.setupCode(
135-
targetOS: OS.macOS,
136-
targetArchitecture: targetArchitecture,
137-
linkModePreference: LinkModePreference.dynamic,
138-
macOS: MacOSCodeConfig(targetVersion: targetMacOSVersion),
139-
cCompiler: cCompiler,
134+
..addExtension(
135+
CodeAssetExtension(
136+
targetOS: OS.macOS,
137+
targetArchitecture: targetArchitecture,
138+
linkModePreference: LinkModePreference.dynamic,
139+
macOS: MacOSCodeConfig(targetVersion: targetMacOSVersion),
140+
cCompiler: cCompiler,
141+
),
140142
);
141143

142144
final buildInput = BuildInput(buildInputBuilder.json);

test/builder/cmake_builder_cross_windows_host_test.dart

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -63,13 +63,14 @@ void main() async {
6363
outputDirectoryShared: tempUri2,
6464
)
6565
..config.setupBuild(linkingEnabled: false)
66-
..config.setupShared(buildAssetTypes: [CodeAsset.type])
67-
..config.setupCode(
68-
targetOS: OS.windows,
69-
targetArchitecture: target,
70-
linkModePreference: linkMode == DynamicLoadingBundled()
71-
? LinkModePreference.dynamic
72-
: LinkModePreference.static,
66+
..addExtension(
67+
CodeAssetExtension(
68+
targetOS: OS.windows,
69+
targetArchitecture: target,
70+
linkModePreference: linkMode == DynamicLoadingBundled()
71+
? LinkModePreference.dynamic
72+
: LinkModePreference.static,
73+
),
7374
);
7475

7576
final buildInput = BuildInput(buildInputBuilder.json);
@@ -90,7 +91,7 @@ void main() async {
9091
logger: logger,
9192
);
9293

93-
final libUri = tempUri.resolve('install/lib/${OS.current.dylibFileName(name)}');
94+
final libUri = buildInput.outputDirectory.resolve('install/lib/${OS.current.dylibFileName(name)}');
9495
expect(await File.fromUri(libUri).exists(), true);
9596
final result = await runProcess(
9697
executable: dumpbinUri,

test/builder/cmake_builder_git_test.dart

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -66,14 +66,13 @@ void main() {
6666
outputDirectoryShared: tempDir,
6767
)
6868
..config.setupBuild(linkingEnabled: false)
69-
..config.setupShared(
70-
buildAssetTypes: [CodeAsset.type],
71-
)
72-
..config.setupCode(
73-
targetOS: targetOS,
74-
macOS: macOSConfig,
75-
targetArchitecture: Architecture.current,
76-
linkModePreference: LinkModePreference.dynamic,
69+
..addExtension(
70+
CodeAssetExtension(
71+
targetOS: targetOS,
72+
macOS: macOSConfig,
73+
targetArchitecture: Architecture.current,
74+
linkModePreference: LinkModePreference.dynamic,
75+
),
7776
);
7877
final input = BuildInput(buildInputBuilder.json);
7978
final output = BuildOutputBuilder();

test/builder/cmake_builder_test.dart

Lines changed: 34 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -41,14 +41,15 @@ void main() {
4141
outputDirectoryShared: tempUri2,
4242
)
4343
..config.setupBuild(linkingEnabled: false)
44-
..config.setupShared(buildAssetTypes: [CodeAsset.type])
45-
..config.setupCode(
46-
targetOS: targetOS,
47-
macOS: macOSConfig,
48-
targetArchitecture: Architecture.current,
49-
// Ignored by executables.
50-
linkModePreference: LinkModePreference.dynamic,
51-
cCompiler: cCompiler,
44+
..addExtension(
45+
CodeAssetExtension(
46+
targetOS: targetOS,
47+
macOS: macOSConfig,
48+
targetArchitecture: Architecture.current,
49+
// Ignored by executables.
50+
linkModePreference: LinkModePreference.dynamic,
51+
cCompiler: cCompiler,
52+
),
5253
);
5354

5455
final buildInput = BuildInput(buildInputBuilder.json);
@@ -64,9 +65,9 @@ void main() {
6465
await builder.run(input: buildInput, output: buildOutput, logger: logger);
6566

6667
final executableUri = switch (targetOS) {
67-
OS.macOS => tempUri.resolve('$name.app/Contents/MacOS/${OS.current.executableFileName(name)}'),
68-
OS.windows => tempUri.resolve('${buildMode.name.toCapitalCase()}/$name.exe'),
69-
_ => tempUri.resolve(OS.current.executableFileName(name)),
68+
OS.macOS => buildInput.outputDirectory.resolve('$name.app/Contents/MacOS/${OS.current.executableFileName(name)}'),
69+
OS.windows => buildInput.outputDirectory.resolve('${buildMode.name.toCapitalCase()}/$name.exe'),
70+
_ => buildInput.outputDirectory.resolve(OS.current.executableFileName(name)),
7071
};
7172
expect(await File.fromUri(executableUri).exists(), true);
7273
final result = await runProcess(
@@ -98,14 +99,15 @@ void main() {
9899
outputDirectoryShared: tempUri2,
99100
)
100101
..config.setupBuild(linkingEnabled: false)
101-
..config.setupShared(buildAssetTypes: [CodeAsset.type])
102-
..config.setupCode(
103-
targetOS: targetOS,
104-
macOS: macOSConfig,
105-
targetArchitecture: Architecture.current,
106-
// Ignored by executables.
107-
linkModePreference: LinkModePreference.dynamic,
108-
cCompiler: cCompiler,
102+
..addExtension(
103+
CodeAssetExtension(
104+
targetOS: targetOS,
105+
macOS: macOSConfig,
106+
targetArchitecture: Architecture.current,
107+
// Ignored by executables.
108+
linkModePreference: LinkModePreference.dynamic,
109+
cCompiler: cCompiler,
110+
),
109111
);
110112

111113
final buildInput = BuildInput(buildInputBuilder.json);
@@ -124,7 +126,7 @@ void main() {
124126
);
125127
await builder.run(input: buildInput, output: buildOutput, logger: logger);
126128

127-
final dylibUri = tempUri.resolve('install/lib/${OS.current.dylibFileName(name)}');
129+
final dylibUri = buildInput.outputDirectory.resolve('install/lib/${OS.current.dylibFileName(name)}');
128130
expect(await File.fromUri(dylibUri).exists(), true);
129131
final dylib = openDynamicLibraryForTest(dylibUri.toFilePath());
130132
final add = dylib.lookupFunction<Int32 Function(Int32, Int32), int Function(int, int)>('add');
@@ -150,14 +152,15 @@ Future<void> testDefines({BuildMode buildMode = BuildMode.debug}) async {
150152
outputDirectoryShared: tempUri2,
151153
)
152154
..config.setupBuild(linkingEnabled: false)
153-
..config.setupShared(buildAssetTypes: [CodeAsset.type])
154-
..config.setupCode(
155-
targetOS: targetOS,
156-
macOS: targetOS == OS.macOS ? MacOSCodeConfig(targetVersion: defaultMacOSVersion) : null,
157-
targetArchitecture: Architecture.current,
158-
// Ignored by executables.
159-
linkModePreference: LinkModePreference.dynamic,
160-
cCompiler: cCompiler,
155+
..addExtension(
156+
CodeAssetExtension(
157+
targetOS: targetOS,
158+
macOS: targetOS == OS.macOS ? MacOSCodeConfig(targetVersion: defaultMacOSVersion) : null,
159+
targetArchitecture: Architecture.current,
160+
// Ignored by executables.
161+
linkModePreference: LinkModePreference.dynamic,
162+
cCompiler: cCompiler,
163+
),
161164
);
162165

163166
final buildInput = BuildInput(buildInputBuilder.json);
@@ -177,9 +180,9 @@ Future<void> testDefines({BuildMode buildMode = BuildMode.debug}) async {
177180
);
178181

179182
final executableUri = switch (targetOS) {
180-
OS.macOS => tempUri.resolve('$name.app/Contents/MacOS/${OS.current.executableFileName(name)}'),
181-
OS.windows => tempUri.resolve('${buildMode.name.toCapitalCase()}/$name.exe'),
182-
_ => tempUri.resolve(OS.current.executableFileName(name)),
183+
OS.macOS => buildInput.outputDirectory.resolve('$name.app/Contents/MacOS/${OS.current.executableFileName(name)}'),
184+
OS.windows => buildInput.outputDirectory.resolve('${buildMode.name.toCapitalCase()}/$name.exe'),
185+
_ => buildInput.outputDirectory.resolve(OS.current.executableFileName(name)),
183186
};
184187
expect(await File.fromUri(executableUri).exists(), true);
185188
final result = await runProcess(

0 commit comments

Comments
 (0)