From 590c0879f6464817a179054370d16fa1c7e6c8d3 Mon Sep 17 00:00:00 2001 From: Daco Harkes Date: Mon, 6 Jan 2025 15:06:03 +0100 Subject: [PATCH 1/5] [native_assets_cli] Cleanup constructor names --- .../lib/src/code_assets/config.dart | 90 +++++++++++-------- 1 file changed, 55 insertions(+), 35 deletions(-) diff --git a/pkgs/native_assets_cli/lib/src/code_assets/config.dart b/pkgs/native_assets_cli/lib/src/code_assets/config.dart index 3d2c2cf1f..838d867bf 100644 --- a/pkgs/native_assets_cli/lib/src/code_assets/config.dart +++ b/pkgs/native_assets_cli/lib/src/code_assets/config.dart @@ -15,7 +15,7 @@ import 'os.dart'; /// code assets (only available if code assets are supported). extension CodeAssetBuildConfig on BuildConfig { /// Code asset specific configuration. - CodeConfig get codeConfig => CodeConfig(this); + CodeConfig get codeConfig => CodeConfig.fromJson(json); } /// Extension to the [LinkConfig] providing access to configuration specific to @@ -23,7 +23,7 @@ extension CodeAssetBuildConfig on BuildConfig { /// code assets are supported). extension CodeAssetLinkConfig on LinkConfig { /// Code asset specific configuration. - CodeConfig get codeConfig => CodeConfig(this); + CodeConfig get codeConfig => CodeConfig.fromJson(json); // Returns the code assets that were sent to this linker. // @@ -51,33 +51,51 @@ class CodeConfig { late final AndroidConfig? _androidConfig; late final MacOSConfig? _macOSConfig; - CodeConfig(HookConfig config) - : linkModePreference = LinkModePreference.fromString( - config.json.string(_linkModePreferenceKey)), - // ignore: deprecated_member_use_from_same_package - _targetArchitecture = (config is BuildConfig && config.dryRun) - ? null - : Architecture.fromString(config.json.string(_targetArchitectureKey, - validValues: Architecture.values.map((a) => a.name))), - targetOS = OS.fromString(config.json.string(_targetOSConfigKey)), - cCompiler = switch (config.json.optionalMap(_compilerKey)) { - final Map map => CCompilerConfig.fromJson(map), - null => null, - } { - // ignore: deprecated_member_use_from_same_package - _iOSConfig = (config is BuildConfig && config.dryRun) || targetOS != OS.iOS + CodeConfig({ + required Architecture? targetArchitecture, + required this.targetOS, + required this.linkModePreference, + CCompilerConfig? cCompilerConfig, + AndroidConfig? androidConfig, + IOSConfig? iOSConfig, + MacOSConfig? macOSConfig, + }) : _targetArchitecture = targetArchitecture, + cCompiler = cCompilerConfig, + _iOSConfig = iOSConfig, + _androidConfig = androidConfig, + _macOSConfig = macOSConfig; + + factory CodeConfig.fromJson(Map json) { + final dryRun = json.getOptional(_dryRunConfigKey) ?? false; + + final linkModePreference = + LinkModePreference.fromString(json.string(_linkModePreferenceKey)); + final targetArchitecture = !dryRun ? null - : IOSConfig.fromHookConfig(config); - _androidConfig = - // ignore: deprecated_member_use_from_same_package - (config is BuildConfig && config.dryRun) || targetOS != OS.android - ? null - : AndroidConfig.fromHookConfig(config); - _macOSConfig = - // ignore: deprecated_member_use_from_same_package - (config is BuildConfig && config.dryRun) || targetOS != OS.macOS - ? null - : MacOSConfig.fromHookConfig(config); + : Architecture.fromString(json.string(_targetArchitectureKey, + validValues: Architecture.values.map((a) => a.name))); + final targetOS = OS.fromString(json.string(_targetOSConfigKey)); + final cCompiler = switch (json.optionalMap(_compilerKey)) { + final Map map => CCompilerConfig.fromJson(map), + null => null + }; + + final iOSConfig = + !dryRun || targetOS != OS.iOS ? null : IOSConfig.fromJson(json); + final androidConfig = + !dryRun || targetOS != OS.android ? null : AndroidConfig.fromJson(json); + final macOSConfig = + !dryRun || targetOS != OS.macOS ? null : MacOSConfig.fromJson(json); + + return CodeConfig( + targetArchitecture: targetArchitecture, + targetOS: targetOS, + linkModePreference: linkModePreference, + cCompilerConfig: cCompiler, + iOSConfig: iOSConfig, + androidConfig: androidConfig, + macOSConfig: macOSConfig, + ); } Architecture get targetArchitecture { @@ -132,9 +150,9 @@ class IOSConfig { }) : _targetSdk = targetSdk, _targetVersion = targetVersion; - IOSConfig.fromHookConfig(HookConfig config) - : _targetVersion = config.json.optionalInt(_targetIOSVersionKey), - _targetSdk = switch (config.json.optionalString(_targetIOSSdkKey)) { + IOSConfig.fromJson(Map json) + : _targetVersion = json.optionalInt(_targetIOSVersionKey), + _targetSdk = switch (json.optionalString(_targetIOSSdkKey)) { null => null, String e => IOSSdk.fromString(e) }; @@ -157,8 +175,8 @@ class AndroidConfig { required int targetNdkApi, }) : _targetNdkApi = targetNdkApi; - AndroidConfig.fromHookConfig(HookConfig config) - : _targetNdkApi = config.json.optionalInt(_targetAndroidNdkApiKey); + AndroidConfig.fromJson(Map json) + : _targetNdkApi = json.optionalInt(_targetAndroidNdkApiKey); } extension AndroidConfigSyntactic on AndroidConfig { @@ -176,8 +194,8 @@ class MacOSConfig { required int targetVersion, }) : _targetVersion = targetVersion; - MacOSConfig.fromHookConfig(HookConfig config) - : _targetVersion = config.json.optionalInt(_targetMacOSVersionKey); + MacOSConfig.fromJson(Map json) + : _targetVersion = json.optionalInt(_targetMacOSVersionKey); } extension MacOSConfigSyntactic on MacOSConfig { @@ -284,3 +302,5 @@ const String _targetIOSSdkKey = 'target_ios_sdk'; const String _targetIOSVersionKey = 'target_ios_version'; const String _targetMacOSVersionKey = 'target_macos_version'; const String _targetOSConfigKey = 'target_os'; + +const _dryRunConfigKey = 'dry_run'; From e675b19b61c678deed5199f5a5f185f4fa7a63f3 Mon Sep 17 00:00:00 2001 From: Daco Harkes Date: Mon, 6 Jan 2025 15:46:05 +0100 Subject: [PATCH 2/5] remove duplicate param list from `setupCodeConfig` --- .../build_runner_reusability_test.dart | 4 +- .../concurrency_shared_test_helper.dart | 4 +- .../build_runner/concurrency_test_helper.dart | 4 +- .../test/build_runner/helpers.dart | 16 +++---- .../native_dynamic_linking_test.dart | 4 +- .../test/test_data/transformer_test.dart | 4 +- .../lib/src/code_assets/config.dart | 44 ++++++++----------- .../lib/src/code_assets/testing.dart | 4 +- .../native_assets_cli/test/checksum_test.dart | 4 +- .../test/code_assets/config_test.dart | 12 ++--- .../test/code_assets/validation_test.dart | 20 ++++----- .../test/example/local_asset_test.dart | 4 +- .../test/example/native_add_library_test.dart | 4 +- .../example/native_dynamic_linking_test.dart | 4 +- .../cbuilder/cbuilder_build_failure_test.dart | 4 +- .../cbuilder/cbuilder_cross_android_test.dart | 4 +- .../cbuilder/cbuilder_cross_ios_test.dart | 8 ++-- .../cbuilder_cross_linux_host_test.dart | 4 +- .../cbuilder_cross_macos_host_test.dart | 8 ++-- .../cbuilder_cross_windows_host_test.dart | 4 +- .../test/cbuilder/cbuilder_test.dart | 36 +++++++-------- .../test/cbuilder/compiler_resolver_test.dart | 8 ++-- .../test/cbuilder/objective_c_test.dart | 4 +- .../test/clinker/build_testfiles.dart | 4 +- .../test/clinker/objects_test.dart | 4 +- .../test/clinker/throws_test.dart | 4 +- .../test/clinker/treeshake_helper.dart | 4 +- 27 files changed, 110 insertions(+), 118 deletions(-) diff --git a/pkgs/native_assets_builder/test/build_runner/build_runner_reusability_test.dart b/pkgs/native_assets_builder/test/build_runner/build_runner_reusability_test.dart index 0920edf04..8b9ed9cce 100644 --- a/pkgs/native_assets_builder/test/build_runner/build_runner_reusability_test.dart +++ b/pkgs/native_assets_builder/test/build_runner/build_runner_reusability_test.dart @@ -32,14 +32,14 @@ void main() async { final targetOS = OS.current; const defaultMacOSVersion = 13; BuildConfigBuilder configCreator() => BuildConfigBuilder() - ..setupCodeConfig( + ..setupCodeConfig(CodeConfig( targetArchitecture: Architecture.current, targetOS: OS.current, macOSConfig: targetOS == OS.macOS ? MacOSConfig(targetVersion: defaultMacOSVersion) : null, linkModePreference: LinkModePreference.dynamic, - ); + )); await buildRunner.build( configCreator: configCreator, diff --git a/pkgs/native_assets_builder/test/build_runner/concurrency_shared_test_helper.dart b/pkgs/native_assets_builder/test/build_runner/concurrency_shared_test_helper.dart index 5b872ca26..ff34d1b54 100644 --- a/pkgs/native_assets_builder/test/build_runner/concurrency_shared_test_helper.dart +++ b/pkgs/native_assets_builder/test/build_runner/concurrency_shared_test_helper.dart @@ -26,14 +26,14 @@ void main(List args) async { // Set up the code config, so that the builds for different targets are // in different directories. configCreator: () => BuildConfigBuilder() - ..setupCodeConfig( + ..setupCodeConfig(CodeConfig( targetArchitecture: target.architecture, targetOS: targetOS, macOSConfig: targetOS == OS.macOS ? MacOSConfig(targetVersion: defaultMacOSVersion) : null, linkModePreference: LinkModePreference.dynamic, - ), + )), workingDirectory: packageUri, linkingEnabled: false, buildAssetTypes: [DataAsset.type], diff --git a/pkgs/native_assets_builder/test/build_runner/concurrency_test_helper.dart b/pkgs/native_assets_builder/test/build_runner/concurrency_test_helper.dart index 25ec31463..954ead2f0 100644 --- a/pkgs/native_assets_builder/test/build_runner/concurrency_test_helper.dart +++ b/pkgs/native_assets_builder/test/build_runner/concurrency_test_helper.dart @@ -29,7 +29,7 @@ void main(List args) async { fileSystem: const LocalFileSystem(), ).build( configCreator: () => BuildConfigBuilder() - ..setupCodeConfig( + ..setupCodeConfig(CodeConfig( targetArchitecture: Architecture.current, targetOS: targetOS, linkModePreference: LinkModePreference.dynamic, @@ -37,7 +37,7 @@ void main(List args) async { macOSConfig: targetOS == OS.macOS ? MacOSConfig(targetVersion: defaultMacOSVersion) : null, - ), + )), workingDirectory: packageUri, linkingEnabled: false, buildAssetTypes: [CodeAsset.type, DataAsset.type], diff --git a/pkgs/native_assets_builder/test/build_runner/helpers.dart b/pkgs/native_assets_builder/test/build_runner/helpers.dart index 4790d1b0e..90de65dc1 100644 --- a/pkgs/native_assets_builder/test/build_runner/helpers.dart +++ b/pkgs/native_assets_builder/test/build_runner/helpers.dart @@ -61,7 +61,7 @@ Future build( configCreator: () { final configBuilder = BuildConfigBuilder(); if (buildAssetTypes.contains(CodeAsset.type)) { - configBuilder.setupCodeConfig( + configBuilder.setupCodeConfig(CodeConfig( targetArchitecture: target?.architecture ?? Architecture.current, targetOS: targetOS, linkModePreference: linkModePreference, @@ -79,7 +79,7 @@ Future build( androidConfig: targetOS == OS.android ? AndroidConfig(targetNdkApi: targetAndroidNdkApi!) : null, - ); + )); } return configBuilder; }, @@ -135,7 +135,7 @@ Future link( configCreator: () { final configBuilder = LinkConfigBuilder(); if (buildAssetTypes.contains(CodeAsset.type)) { - configBuilder.setupCodeConfig( + configBuilder.setupCodeConfig(CodeConfig( targetArchitecture: target?.architecture ?? Architecture.current, targetOS: target?.os ?? OS.current, linkModePreference: linkModePreference, @@ -153,7 +153,7 @@ Future link( androidConfig: targetOS == OS.android ? AndroidConfig(targetNdkApi: targetAndroidNdkApi!) : null, - ); + )); } return configBuilder; }, @@ -206,7 +206,7 @@ Future<(BuildResult?, LinkResult?)> buildAndLink( final targetOS = target?.os ?? OS.current; final buildResult = await buildRunner.build( configCreator: () => BuildConfigBuilder() - ..setupCodeConfig( + ..setupCodeConfig(CodeConfig( targetArchitecture: target?.architecture ?? Architecture.current, targetOS: targetOS, linkModePreference: linkModePreference, @@ -224,7 +224,7 @@ Future<(BuildResult?, LinkResult?)> buildAndLink( androidConfig: targetOS == OS.android ? AndroidConfig(targetNdkApi: targetAndroidNdkApi!) : null, - ), + )), configValidator: buildConfigValidator, workingDirectory: packageUri, packageLayout: packageLayout, @@ -247,7 +247,7 @@ Future<(BuildResult?, LinkResult?)> buildAndLink( final linkResult = await buildRunner.link( configCreator: () => LinkConfigBuilder() - ..setupCodeConfig( + ..setupCodeConfig(CodeConfig( targetArchitecture: target?.architecture ?? Architecture.current, targetOS: targetOS, linkModePreference: linkModePreference, @@ -265,7 +265,7 @@ Future<(BuildResult?, LinkResult?)> buildAndLink( androidConfig: targetOS == OS.android ? AndroidConfig(targetNdkApi: targetAndroidNdkApi!) : null, - ), + )), configValidator: linkConfigValidator, workingDirectory: packageUri, packageLayout: packageLayout, diff --git a/pkgs/native_assets_builder/test/test_data/native_dynamic_linking_test.dart b/pkgs/native_assets_builder/test/test_data/native_dynamic_linking_test.dart index e0f042c29..7948953a8 100644 --- a/pkgs/native_assets_builder/test/test_data/native_dynamic_linking_test.dart +++ b/pkgs/native_assets_builder/test/test_data/native_dynamic_linking_test.dart @@ -42,7 +42,7 @@ void main() async { outputDirectory: outputDirectory, outputDirectoryShared: outputDirectoryShared, ) - ..setupCodeConfig( + ..setupCodeConfig(CodeConfig( targetArchitecture: Architecture.current, targetOS: targetOS, macOSConfig: targetOS == OS.macOS @@ -50,7 +50,7 @@ void main() async { : null, linkModePreference: LinkModePreference.dynamic, cCompilerConfig: cCompiler, - ); + )); final buildConfigUri = testTempUri.resolve('build_config.json'); File.fromUri(buildConfigUri) diff --git a/pkgs/native_assets_builder/test/test_data/transformer_test.dart b/pkgs/native_assets_builder/test/test_data/transformer_test.dart index 42b8eb404..93091ed17 100644 --- a/pkgs/native_assets_builder/test/test_data/transformer_test.dart +++ b/pkgs/native_assets_builder/test/test_data/transformer_test.dart @@ -57,14 +57,14 @@ void main() async { outputDirectory: outputDirectory, outputDirectoryShared: outputDirectoryShared, ) - ..setupCodeConfig( + ..setupCodeConfig(CodeConfig( targetArchitecture: architecture, targetOS: targetOS, macOSConfig: targetOS == OS.macOS ? MacOSConfig(targetVersion: defaultMacOSVersion) : null, linkModePreference: LinkModePreference.dynamic, - ); + )); final buildConfigUri = testTempUri.resolve('build_config.json'); File.fromUri(buildConfigUri) diff --git a/pkgs/native_assets_cli/lib/src/code_assets/config.dart b/pkgs/native_assets_cli/lib/src/code_assets/config.dart index 838d867bf..0fa6e5d65 100644 --- a/pkgs/native_assets_cli/lib/src/code_assets/config.dart +++ b/pkgs/native_assets_cli/lib/src/code_assets/config.dart @@ -70,7 +70,7 @@ class CodeConfig { final linkModePreference = LinkModePreference.fromString(json.string(_linkModePreferenceKey)); - final targetArchitecture = !dryRun + final targetArchitecture = dryRun ? null : Architecture.fromString(json.string(_targetArchitectureKey, validValues: Architecture.values.map((a) => a.name))); @@ -81,11 +81,11 @@ class CodeConfig { }; final iOSConfig = - !dryRun || targetOS != OS.iOS ? null : IOSConfig.fromJson(json); + dryRun || targetOS != OS.iOS ? null : IOSConfig.fromJson(json); final androidConfig = - !dryRun || targetOS != OS.android ? null : AndroidConfig.fromJson(json); + dryRun || targetOS != OS.android ? null : AndroidConfig.fromJson(json); final macOSConfig = - !dryRun || targetOS != OS.macOS ? null : MacOSConfig.fromJson(json); + dryRun || targetOS != OS.macOS ? null : MacOSConfig.fromJson(json); return CodeConfig( targetArchitecture: targetArchitecture, @@ -245,33 +245,25 @@ extension type CodeAssetLinkOutputBuilderAdd._(LinkOutputBuilder _output) { /// Extension to initialize code specific configuration on link/build configs. extension CodeAssetBuildConfigBuilder on HookConfigBuilder { - void setupCodeConfig({ - required Architecture? targetArchitecture, - required OS targetOS, - required LinkModePreference linkModePreference, - CCompilerConfig? cCompilerConfig, - AndroidConfig? androidConfig, - IOSConfig? iOSConfig, - MacOSConfig? macOSConfig, - }) { - if (targetArchitecture != null) { - json[_targetArchitectureKey] = targetArchitecture.toString(); + void setupCodeConfig(CodeConfig codeConfig) { + if (codeConfig._targetArchitecture != null) { + json[_targetArchitectureKey] = codeConfig.targetArchitecture.toString(); } - json[_targetOSConfigKey] = targetOS.toString(); - json[_linkModePreferenceKey] = linkModePreference.toString(); - if (cCompilerConfig != null) { - json[_compilerKey] = cCompilerConfig.toJson(); + json[_targetOSConfigKey] = codeConfig.targetOS.toString(); + json[_linkModePreferenceKey] = codeConfig.linkModePreference.toString(); + if (codeConfig.cCompiler != null) { + json[_compilerKey] = codeConfig.cCompiler?.toJson(); } // Note, using ?. instead of !. makes missing data be a semantic error // rather than a syntactic error to be caught in the validation. - if (targetOS == OS.android) { - json[_targetAndroidNdkApiKey] = androidConfig?.targetNdkApi; - } else if (targetOS == OS.iOS) { - json[_targetIOSSdkKey] = iOSConfig?.targetSdk.toString(); - json[_targetIOSVersionKey] = iOSConfig?.targetVersion; - } else if (targetOS == OS.macOS) { - json[_targetMacOSVersionKey] = macOSConfig?.targetVersion; + if (codeConfig.targetOS == OS.android) { + json[_targetAndroidNdkApiKey] = codeConfig._androidConfig?.targetNdkApi; + } else if (codeConfig.targetOS == OS.iOS) { + json[_targetIOSSdkKey] = codeConfig._iOSConfig?.targetSdk.toString(); + json[_targetIOSVersionKey] = codeConfig._iOSConfig?.targetVersion; + } else if (codeConfig.targetOS == OS.macOS) { + json[_targetMacOSVersionKey] = codeConfig._macOSConfig?.targetVersion; } } } diff --git a/pkgs/native_assets_cli/lib/src/code_assets/testing.dart b/pkgs/native_assets_cli/lib/src/code_assets/testing.dart index 0ad67ba96..599bf8d66 100644 --- a/pkgs/native_assets_cli/lib/src/code_assets/testing.dart +++ b/pkgs/native_assets_cli/lib/src/code_assets/testing.dart @@ -38,7 +38,7 @@ Future testCodeBuildHook({ await testBuildHook( mainMethod: mainMethod, extraConfigSetup: (config) { - config.setupCodeConfig( + config.setupCodeConfig(CodeConfig( linkModePreference: linkModePreference ?? LinkModePreference.dynamic, cCompilerConfig: cCompiler, targetArchitecture: targetArchitecture ?? Architecture.current, @@ -55,7 +55,7 @@ Future testCodeBuildHook({ androidConfig: targetOS == OS.android ? AndroidConfig(targetNdkApi: targetAndroidNdkApi!) : null, - ); + )); }, check: (config, output) async { final validationErrors = diff --git a/pkgs/native_assets_cli/test/checksum_test.dart b/pkgs/native_assets_cli/test/checksum_test.dart index c4691e4aa..e21abfbf1 100644 --- a/pkgs/native_assets_cli/test/checksum_test.dart +++ b/pkgs/native_assets_cli/test/checksum_test.dart @@ -31,14 +31,14 @@ void main() { dryRun: dryRun, linkingEnabled: linking, ) - ..setupCodeConfig( + ..setupCodeConfig(CodeConfig( targetArchitecture: architecture, targetOS: os, macOSConfig: os == OS.macOS ? MacOSConfig(targetVersion: defaultMacOSVersion) : null, linkModePreference: LinkModePreference.dynamic, - ); + )); configs.add( const JsonEncoder.withIndent(' ').convert(builder.json), ); diff --git a/pkgs/native_assets_cli/test/code_assets/config_test.dart b/pkgs/native_assets_cli/test/code_assets/config_test.dart index aa40204ab..2e657eae4 100644 --- a/pkgs/native_assets_cli/test/code_assets/config_test.dart +++ b/pkgs/native_assets_cli/test/code_assets/config_test.dart @@ -99,13 +99,13 @@ void main() async { outputDirectory: outDirUri, outputDirectoryShared: outputDirectoryShared, ) - ..setupCodeConfig( + ..setupCodeConfig(CodeConfig( targetOS: OS.android, androidConfig: null, // not available in dry run targetArchitecture: null, // not available in dry run cCompilerConfig: null, // not available in dry run linkModePreference: LinkModePreference.preferStatic, - ); + )); final config = BuildConfig(configBuilder.json); expectCorrectCodeConfigDryRun(config.json, config.codeConfig); }); @@ -125,7 +125,7 @@ void main() async { outputDirectory: outDirUri, outputDirectoryShared: outputDirectoryShared, ) - ..setupCodeConfig( + ..setupCodeConfig(CodeConfig( targetOS: OS.android, targetArchitecture: Architecture.arm64, androidConfig: AndroidConfig(targetNdkApi: 30), @@ -137,7 +137,7 @@ void main() async { envScript: fakeVcVars, envScriptArgs: ['arg0', 'arg1'], ), - ); + )); final config = BuildConfig(configBuilder.json); expectCorrectCodeConfig(config.json, config.codeConfig); }); @@ -155,7 +155,7 @@ void main() async { outputDirectoryShared: outputDirectoryShared, recordedUsesFile: null, ) - ..setupCodeConfig( + ..setupCodeConfig(CodeConfig( targetOS: OS.android, targetArchitecture: Architecture.arm64, androidConfig: AndroidConfig(targetNdkApi: 30), @@ -167,7 +167,7 @@ void main() async { envScript: fakeVcVars, envScriptArgs: ['arg0', 'arg1'], ), - ); + )); final config = LinkConfig(configBuilder.json); expectCorrectCodeConfig(config.json, config.codeConfig); expect(config.encodedAssets, assets); diff --git a/pkgs/native_assets_cli/test/code_assets/validation_test.dart b/pkgs/native_assets_cli/test/code_assets/validation_test.dart index 7b5e6731b..0afe50cbc 100644 --- a/pkgs/native_assets_cli/test/code_assets/validation_test.dart +++ b/pkgs/native_assets_cli/test/code_assets/validation_test.dart @@ -51,11 +51,11 @@ void main() { LinkModePreference linkModePreference = LinkModePreference.dynamic, }) { final builder = makeBuildConfigBuilder() - ..setupCodeConfig( + ..setupCodeConfig(CodeConfig( targetOS: OS.linux, targetArchitecture: Architecture.arm64, linkModePreference: linkModePreference, - ); + )); return BuildConfig(builder.json); } @@ -217,11 +217,11 @@ void main() { group('BuildConfig.codeConfig validation', () { test('Missing targetIOSVersion', () async { final builder = makeBuildConfigBuilder() - ..setupCodeConfig( + ..setupCodeConfig(CodeConfig( targetOS: OS.iOS, targetArchitecture: Architecture.arm64, linkModePreference: LinkModePreference.dynamic, - ); + )); final errors = await validateCodeAssetBuildConfig(BuildConfig(builder.json)); expect( @@ -235,11 +235,11 @@ void main() { }); test('Missing targetAndroidNdkApi', () async { final builder = makeBuildConfigBuilder() - ..setupCodeConfig( + ..setupCodeConfig(CodeConfig( targetOS: OS.android, targetArchitecture: Architecture.arm64, linkModePreference: LinkModePreference.dynamic, - ); + )); expect( await validateCodeAssetBuildConfig(BuildConfig(builder.json)), contains(contains( @@ -248,11 +248,11 @@ void main() { }); test('Missing targetMacOSVersion', () async { final builder = makeBuildConfigBuilder() - ..setupCodeConfig( + ..setupCodeConfig(CodeConfig( targetOS: OS.macOS, targetArchitecture: Architecture.arm64, linkModePreference: LinkModePreference.dynamic, - ); + )); expect( await validateCodeAssetBuildConfig(BuildConfig(builder.json)), contains(contains( @@ -261,7 +261,7 @@ void main() { test('Nonexisting compiler/archiver/linker/envScript', () async { final nonExistent = outDirUri.resolve('foo baz'); final builder = makeBuildConfigBuilder() - ..setupCodeConfig( + ..setupCodeConfig(CodeConfig( targetOS: OS.linux, targetArchitecture: Architecture.arm64, linkModePreference: LinkModePreference.dynamic, @@ -270,7 +270,7 @@ void main() { linker: nonExistent, archiver: nonExistent, envScript: nonExistent, - )); + ))); final errors = await validateCodeAssetBuildConfig(BuildConfig(builder.json)); diff --git a/pkgs/native_assets_cli/test/example/local_asset_test.dart b/pkgs/native_assets_cli/test/example/local_asset_test.dart index cf830d47a..517da9453 100644 --- a/pkgs/native_assets_cli/test/example/local_asset_test.dart +++ b/pkgs/native_assets_cli/test/example/local_asset_test.dart @@ -51,7 +51,7 @@ void main() async { outputDirectory: outputDirectory, outputDirectoryShared: outputDirectoryShared) ..setupBuildConfig(linkingEnabled: false, dryRun: dryRun) - ..setupCodeConfig( + ..setupCodeConfig(CodeConfig( targetOS: targetOS, macOSConfig: targetOS == OS.macOS ? MacOSConfig(targetVersion: defaultMacOSVersion) @@ -59,7 +59,7 @@ void main() async { targetArchitecture: dryRun ? null : Architecture.current, linkModePreference: LinkModePreference.dynamic, cCompilerConfig: dryRun ? null : cCompiler, - ); + )); final buildConfigUri = testTempUri.resolve('build_config.json'); await File.fromUri(buildConfigUri) diff --git a/pkgs/native_assets_cli/test/example/native_add_library_test.dart b/pkgs/native_assets_cli/test/example/native_add_library_test.dart index 32ab57a1d..3b9d6d09c 100644 --- a/pkgs/native_assets_cli/test/example/native_add_library_test.dart +++ b/pkgs/native_assets_cli/test/example/native_add_library_test.dart @@ -51,7 +51,7 @@ void main() async { outputDirectory: outputDirectory, outputDirectoryShared: outputDirectoryShared) ..setupBuildConfig(linkingEnabled: false, dryRun: dryRun) - ..setupCodeConfig( + ..setupCodeConfig(CodeConfig( targetOS: OS.current, macOSConfig: targetOS == OS.macOS ? MacOSConfig(targetVersion: defaultMacOSVersion) @@ -59,7 +59,7 @@ void main() async { targetArchitecture: dryRun ? null : Architecture.current, linkModePreference: LinkModePreference.dynamic, cCompilerConfig: dryRun ? null : cCompiler, - ); + )); final buildConfigUri = testTempUri.resolve('build_config.json'); await File.fromUri(buildConfigUri) diff --git a/pkgs/native_assets_cli/test/example/native_dynamic_linking_test.dart b/pkgs/native_assets_cli/test/example/native_dynamic_linking_test.dart index 9e97551d4..f60bc7585 100644 --- a/pkgs/native_assets_cli/test/example/native_dynamic_linking_test.dart +++ b/pkgs/native_assets_cli/test/example/native_dynamic_linking_test.dart @@ -56,7 +56,7 @@ void main() async { outputDirectoryShared: outputDirectoryShared, ) ..setupBuildConfig(linkingEnabled: false, dryRun: dryRun) - ..setupCodeConfig( + ..setupCodeConfig(CodeConfig( targetOS: targetOS, macOSConfig: targetOS == OS.macOS ? MacOSConfig(targetVersion: defaultMacOSVersion) @@ -64,7 +64,7 @@ void main() async { targetArchitecture: dryRun ? null : Architecture.current, linkModePreference: LinkModePreference.dynamic, cCompilerConfig: dryRun ? null : cCompiler, - ); + )); final buildConfigUri = testTempUri.resolve('build_config.json'); await File.fromUri(buildConfigUri) diff --git a/pkgs/native_toolchain_c/test/cbuilder/cbuilder_build_failure_test.dart b/pkgs/native_toolchain_c/test/cbuilder/cbuilder_build_failure_test.dart index c8f1961c9..651bc0dd3 100644 --- a/pkgs/native_toolchain_c/test/cbuilder/cbuilder_build_failure_test.dart +++ b/pkgs/native_toolchain_c/test/cbuilder/cbuilder_build_failure_test.dart @@ -40,7 +40,7 @@ void main() { linkingEnabled: false, dryRun: false, ) - ..setupCodeConfig( + ..setupCodeConfig(CodeConfig( targetOS: targetOS, macOSConfig: targetOS == OS.macOS ? MacOSConfig(targetVersion: defaultMacOSVersion) @@ -48,7 +48,7 @@ void main() { targetArchitecture: Architecture.current, linkModePreference: LinkModePreference.dynamic, cCompilerConfig: cCompiler, - ); + )); buildConfigBuilder.setupBuildRunConfig( outputDirectory: tempUri, outputDirectoryShared: tempUri2, diff --git a/pkgs/native_toolchain_c/test/cbuilder/cbuilder_cross_android_test.dart b/pkgs/native_toolchain_c/test/cbuilder/cbuilder_cross_android_test.dart index bafad7c78..1b9d5ee9e 100644 --- a/pkgs/native_toolchain_c/test/cbuilder/cbuilder_cross_android_test.dart +++ b/pkgs/native_toolchain_c/test/cbuilder/cbuilder_cross_android_test.dart @@ -154,7 +154,7 @@ Future buildLib( linkingEnabled: false, dryRun: false, ) - ..setupCodeConfig( + ..setupCodeConfig(CodeConfig( targetOS: OS.android, targetArchitecture: targetArchitecture, cCompilerConfig: cCompiler, @@ -162,7 +162,7 @@ Future buildLib( linkModePreference: linkMode == DynamicLoadingBundled() ? LinkModePreference.dynamic : LinkModePreference.static, - ); + )); buildConfigBuilder.setupBuildRunConfig( outputDirectory: tempUri, outputDirectoryShared: tempUriShared, diff --git a/pkgs/native_toolchain_c/test/cbuilder/cbuilder_cross_ios_test.dart b/pkgs/native_toolchain_c/test/cbuilder/cbuilder_cross_ios_test.dart index d8cba0401..86f306bd6 100644 --- a/pkgs/native_toolchain_c/test/cbuilder/cbuilder_cross_ios_test.dart +++ b/pkgs/native_toolchain_c/test/cbuilder/cbuilder_cross_ios_test.dart @@ -83,7 +83,7 @@ void main() { linkingEnabled: false, dryRun: false, ) - ..setupCodeConfig( + ..setupCodeConfig(CodeConfig( targetOS: OS.iOS, targetArchitecture: target, linkModePreference: linkMode == DynamicLoadingBundled() @@ -94,7 +94,7 @@ void main() { targetVersion: flutteriOSHighestBestEffort, ), cCompilerConfig: cCompiler, - ); + )); buildConfigBuilder.setupBuildRunConfig( outputDirectory: tempUri, outputDirectoryShared: tempUri2, @@ -240,7 +240,7 @@ Future buildLib( linkingEnabled: false, dryRun: false, ) - ..setupCodeConfig( + ..setupCodeConfig(CodeConfig( targetOS: OS.iOS, targetArchitecture: targetArchitecture, linkModePreference: linkMode == DynamicLoadingBundled() @@ -251,7 +251,7 @@ Future buildLib( targetVersion: targetIOSVersion, ), cCompilerConfig: cCompiler, - ); + )); buildConfigBuilder.setupBuildRunConfig( outputDirectory: tempUri, outputDirectoryShared: tempUri2, diff --git a/pkgs/native_toolchain_c/test/cbuilder/cbuilder_cross_linux_host_test.dart b/pkgs/native_toolchain_c/test/cbuilder/cbuilder_cross_linux_host_test.dart index d0be152b7..20e327b52 100644 --- a/pkgs/native_toolchain_c/test/cbuilder/cbuilder_cross_linux_host_test.dart +++ b/pkgs/native_toolchain_c/test/cbuilder/cbuilder_cross_linux_host_test.dart @@ -52,14 +52,14 @@ void main() { linkingEnabled: false, dryRun: false, ) - ..setupCodeConfig( + ..setupCodeConfig(CodeConfig( targetOS: OS.linux, targetArchitecture: target, linkModePreference: linkMode == DynamicLoadingBundled() ? LinkModePreference.dynamic : LinkModePreference.static, cCompilerConfig: cCompiler, - ); + )); buildConfigBuilder.setupBuildRunConfig( outputDirectory: tempUri, outputDirectoryShared: tempUri2, diff --git a/pkgs/native_toolchain_c/test/cbuilder/cbuilder_cross_macos_host_test.dart b/pkgs/native_toolchain_c/test/cbuilder/cbuilder_cross_macos_host_test.dart index 09c781cee..b6ff53c8b 100644 --- a/pkgs/native_toolchain_c/test/cbuilder/cbuilder_cross_macos_host_test.dart +++ b/pkgs/native_toolchain_c/test/cbuilder/cbuilder_cross_macos_host_test.dart @@ -67,7 +67,7 @@ void main() { linkingEnabled: false, dryRun: false, ) - ..setupCodeConfig( + ..setupCodeConfig(CodeConfig( targetOS: OS.macOS, targetArchitecture: target, linkModePreference: linkMode == DynamicLoadingBundled() @@ -75,7 +75,7 @@ void main() { : LinkModePreference.static, cCompilerConfig: cCompiler, macOSConfig: MacOSConfig(targetVersion: defaultMacOSVersion), - ); + )); buildConfigBuilder.setupBuildRunConfig( outputDirectory: tempUri, outputDirectoryShared: tempUri2, @@ -169,7 +169,7 @@ Future buildLib( linkingEnabled: false, dryRun: false, ) - ..setupCodeConfig( + ..setupCodeConfig(CodeConfig( targetOS: OS.macOS, targetArchitecture: targetArchitecture, linkModePreference: linkMode == DynamicLoadingBundled() @@ -177,7 +177,7 @@ Future buildLib( : LinkModePreference.static, macOSConfig: MacOSConfig(targetVersion: targetMacOSVersion), cCompilerConfig: cCompiler, - ); + )); buildConfigBuilder.setupBuildRunConfig( outputDirectory: tempUri, outputDirectoryShared: tempUri2, diff --git a/pkgs/native_toolchain_c/test/cbuilder/cbuilder_cross_windows_host_test.dart b/pkgs/native_toolchain_c/test/cbuilder/cbuilder_cross_windows_host_test.dart index 92109a604..89aa2014f 100644 --- a/pkgs/native_toolchain_c/test/cbuilder/cbuilder_cross_windows_host_test.dart +++ b/pkgs/native_toolchain_c/test/cbuilder/cbuilder_cross_windows_host_test.dart @@ -71,14 +71,14 @@ void main() { linkingEnabled: false, dryRun: false, ) - ..setupCodeConfig( + ..setupCodeConfig(CodeConfig( targetOS: OS.windows, targetArchitecture: target, linkModePreference: linkMode == DynamicLoadingBundled() ? LinkModePreference.dynamic : LinkModePreference.static, cCompilerConfig: cCompiler, - ); + )); buildConfigBuilder.setupBuildRunConfig( outputDirectory: tempUri, outputDirectoryShared: tempUri2, diff --git a/pkgs/native_toolchain_c/test/cbuilder/cbuilder_test.dart b/pkgs/native_toolchain_c/test/cbuilder/cbuilder_test.dart index e33c18afa..127e6cc3e 100644 --- a/pkgs/native_toolchain_c/test/cbuilder/cbuilder_test.dart +++ b/pkgs/native_toolchain_c/test/cbuilder/cbuilder_test.dart @@ -57,14 +57,14 @@ void main() { linkingEnabled: false, dryRun: false, ) - ..setupCodeConfig( + ..setupCodeConfig(CodeConfig( targetOS: targetOS, macOSConfig: macOSConfig, targetArchitecture: Architecture.current, // Ignored by executables. linkModePreference: LinkModePreference.dynamic, cCompilerConfig: cCompiler, - ); + )); buildConfigBuilder.setupBuildRunConfig( outputDirectory: tempUri, outputDirectoryShared: tempUri2, @@ -142,13 +142,13 @@ void main() { dryRun: dryRun, ); if (buildCodeAssets) { - buildConfigBuilder.setupCodeConfig( + buildConfigBuilder.setupCodeConfig(CodeConfig( targetOS: targetOS, macOSConfig: macOSConfig, targetArchitecture: Architecture.current, linkModePreference: LinkModePreference.dynamic, cCompilerConfig: dryRun ? null : cCompiler, - ); + )); } buildConfigBuilder.setupBuildRunConfig( outputDirectory: tempUri, @@ -249,14 +249,14 @@ void main() { linkingEnabled: false, dryRun: false, ) - ..setupCodeConfig( + ..setupCodeConfig(CodeConfig( targetOS: targetOS, macOSConfig: macOSConfig, targetArchitecture: Architecture.current, // Ignored by executables. linkModePreference: LinkModePreference.dynamic, cCompilerConfig: cCompiler, - ); + )); buildConfigBuilder.setupBuildRunConfig( outputDirectory: tempUri, outputDirectoryShared: tempUri2, @@ -317,14 +317,14 @@ void main() { linkingEnabled: false, dryRun: false, ) - ..setupCodeConfig( + ..setupCodeConfig(CodeConfig( targetOS: targetOS, macOSConfig: macOSConfig, targetArchitecture: Architecture.current, // Ignored by executables. linkModePreference: LinkModePreference.dynamic, cCompilerConfig: cCompiler, - ); + )); buildConfigBuilder.setupBuildRunConfig( outputDirectory: tempUri, outputDirectoryShared: tempUri2, @@ -375,14 +375,14 @@ void main() { linkingEnabled: false, dryRun: false, ) - ..setupCodeConfig( + ..setupCodeConfig(CodeConfig( targetOS: targetOS, macOSConfig: macOSConfig, targetArchitecture: Architecture.current, // Ignored by executables. linkModePreference: LinkModePreference.dynamic, cCompilerConfig: cCompiler, - ); + )); buildConfigBuilder.setupBuildRunConfig( outputDirectory: tempUri, outputDirectoryShared: tempUri2, @@ -445,14 +445,14 @@ void main() { linkingEnabled: false, dryRun: false, ) - ..setupCodeConfig( + ..setupCodeConfig(CodeConfig( targetOS: targetOS, macOSConfig: macOSConfig, targetArchitecture: Architecture.current, // Ignored by executables. linkModePreference: LinkModePreference.dynamic, cCompilerConfig: cCompiler, - ); + )); buildConfigBuilder.setupBuildRunConfig( outputDirectory: tempUri, outputDirectoryShared: tempUri2, @@ -520,14 +520,14 @@ void main() { linkingEnabled: false, dryRun: false, ) - ..setupCodeConfig( + ..setupCodeConfig(CodeConfig( targetOS: targetOS, macOSConfig: macOSConfig, targetArchitecture: Architecture.current, // Ignored by executables. linkModePreference: LinkModePreference.dynamic, cCompilerConfig: cCompiler, - ); + )); buildConfigBuilder.setupBuildRunConfig( outputDirectory: tempUri, outputDirectoryShared: tempUri2, @@ -606,14 +606,14 @@ void main() { linkingEnabled: false, dryRun: false, ) - ..setupCodeConfig( + ..setupCodeConfig(CodeConfig( targetOS: targetOS, macOSConfig: macOSConfig, targetArchitecture: Architecture.current, // Ignored by executables. linkModePreference: LinkModePreference.dynamic, cCompilerConfig: cCompiler, - ); + )); buildConfigBuilder.setupBuildRunConfig( outputDirectory: tempUri, outputDirectoryShared: tempUri2, @@ -709,7 +709,7 @@ Future testDefines({ linkingEnabled: false, dryRun: false, ) - ..setupCodeConfig( + ..setupCodeConfig(CodeConfig( targetOS: targetOS, macOSConfig: targetOS == OS.macOS ? MacOSConfig(targetVersion: defaultMacOSVersion) @@ -718,7 +718,7 @@ Future testDefines({ // Ignored by executables. linkModePreference: LinkModePreference.dynamic, cCompilerConfig: cCompiler, - ); + )); buildConfigBuilder.setupBuildRunConfig( outputDirectory: tempUri, outputDirectoryShared: tempUri2, diff --git a/pkgs/native_toolchain_c/test/cbuilder/compiler_resolver_test.dart b/pkgs/native_toolchain_c/test/cbuilder/compiler_resolver_test.dart index ad4512357..a506a6b45 100644 --- a/pkgs/native_toolchain_c/test/cbuilder/compiler_resolver_test.dart +++ b/pkgs/native_toolchain_c/test/cbuilder/compiler_resolver_test.dart @@ -52,7 +52,7 @@ void main() { linkingEnabled: false, dryRun: false, ) - ..setupCodeConfig( + ..setupCodeConfig(CodeConfig( targetOS: targetOS, macOSConfig: targetOS == OS.macOS ? MacOSConfig(targetVersion: defaultMacOSVersion) @@ -65,7 +65,7 @@ void main() { linker: ld, envScript: envScript, ), - ); + )); buildConfigBuilder.setupBuildRunConfig( outputDirectory: tempUri, outputDirectoryShared: tempUri2, @@ -92,12 +92,12 @@ void main() { linkingEnabled: false, dryRun: false, ) - ..setupCodeConfig( + ..setupCodeConfig(CodeConfig( targetOS: OS.windows, targetArchitecture: Architecture.arm64, linkModePreference: LinkModePreference.dynamic, cCompilerConfig: cCompiler, - ); + )); buildConfigBuilder.setupBuildRunConfig( outputDirectoryShared: tempUri2, outputDirectory: tempUri, diff --git a/pkgs/native_toolchain_c/test/cbuilder/objective_c_test.dart b/pkgs/native_toolchain_c/test/cbuilder/objective_c_test.dart index 7a78e01eb..f855117c1 100644 --- a/pkgs/native_toolchain_c/test/cbuilder/objective_c_test.dart +++ b/pkgs/native_toolchain_c/test/cbuilder/objective_c_test.dart @@ -46,7 +46,7 @@ void main() { linkingEnabled: false, dryRun: false, ) - ..setupCodeConfig( + ..setupCodeConfig(CodeConfig( targetOS: targetOS, macOSConfig: targetOS == OS.macOS ? MacOSConfig(targetVersion: defaultMacOSVersion) @@ -54,7 +54,7 @@ void main() { targetArchitecture: Architecture.current, linkModePreference: LinkModePreference.dynamic, cCompilerConfig: cCompiler, - ); + )); buildConfigBuilder.setupBuildRunConfig( outputDirectory: tempUri, outputDirectoryShared: tempUri2, diff --git a/pkgs/native_toolchain_c/test/clinker/build_testfiles.dart b/pkgs/native_toolchain_c/test/clinker/build_testfiles.dart index 4c76bfef5..eaa925716 100644 --- a/pkgs/native_toolchain_c/test/clinker/build_testfiles.dart +++ b/pkgs/native_toolchain_c/test/clinker/build_testfiles.dart @@ -36,12 +36,12 @@ Future buildTestArchive( linkingEnabled: false, dryRun: false, ) - ..setupCodeConfig( + ..setupCodeConfig(CodeConfig( targetOS: os, targetArchitecture: architecture, linkModePreference: LinkModePreference.dynamic, cCompilerConfig: cCompiler, - ); + )); buildConfigBuilder.setupBuildRunConfig( outputDirectory: tempUri, outputDirectoryShared: tempUri2, diff --git a/pkgs/native_toolchain_c/test/clinker/objects_test.dart b/pkgs/native_toolchain_c/test/clinker/objects_test.dart index 0797b194c..17b357708 100644 --- a/pkgs/native_toolchain_c/test/clinker/objects_test.dart +++ b/pkgs/native_toolchain_c/test/clinker/objects_test.dart @@ -40,12 +40,12 @@ Future main() async { ..setupLinkConfig( assets: [], ) - ..setupCodeConfig( + ..setupCodeConfig(CodeConfig( targetOS: os, targetArchitecture: architecture, linkModePreference: LinkModePreference.dynamic, cCompilerConfig: cCompiler, - ); + )); linkConfigBuilder.setupLinkRunConfig( outputDirectory: tempUri, outputDirectoryShared: tempUri2, diff --git a/pkgs/native_toolchain_c/test/clinker/throws_test.dart b/pkgs/native_toolchain_c/test/clinker/throws_test.dart index 9a1c2a633..8465fe003 100644 --- a/pkgs/native_toolchain_c/test/clinker/throws_test.dart +++ b/pkgs/native_toolchain_c/test/clinker/throws_test.dart @@ -31,12 +31,12 @@ Future main() async { ..setupLinkConfig( assets: [], ) - ..setupCodeConfig( + ..setupCodeConfig(CodeConfig( targetOS: os, targetArchitecture: Architecture.x64, linkModePreference: LinkModePreference.dynamic, cCompilerConfig: cCompiler, - ); + )); linkConfigBuilder.setupLinkRunConfig( outputDirectoryShared: tempUri2, outputDirectory: tempUri, diff --git a/pkgs/native_toolchain_c/test/clinker/treeshake_helper.dart b/pkgs/native_toolchain_c/test/clinker/treeshake_helper.dart index d8d55c88b..c994e080f 100644 --- a/pkgs/native_toolchain_c/test/clinker/treeshake_helper.dart +++ b/pkgs/native_toolchain_c/test/clinker/treeshake_helper.dart @@ -70,12 +70,12 @@ Future runTests(List architectures) async { ..setupLinkConfig( assets: [], ) - ..setupCodeConfig( + ..setupCodeConfig(CodeConfig( targetOS: os, targetArchitecture: architecture, linkModePreference: LinkModePreference.dynamic, cCompilerConfig: cCompiler, - ); + )); linkConfigBuilder.setupLinkRunConfig( outputDirectory: tempUri, outputDirectoryShared: tempUri2, From 47b931188afb336e7a1dbaafdab86e965eeac35e Mon Sep 17 00:00:00 2001 From: Daco Harkes Date: Mon, 6 Jan 2025 16:16:01 +0100 Subject: [PATCH 3/5] Revert "remove duplicate param list from `setupCodeConfig`" This reverts commit e675b19b61c678deed5199f5a5f185f4fa7a63f3. --- .../build_runner_reusability_test.dart | 4 +-- .../concurrency_shared_test_helper.dart | 4 +-- .../build_runner/concurrency_test_helper.dart | 4 +-- .../test/build_runner/helpers.dart | 16 ++++----- .../native_dynamic_linking_test.dart | 4 +-- .../test/test_data/transformer_test.dart | 4 +-- .../lib/src/code_assets/config.dart | 36 +++++++++++-------- .../lib/src/code_assets/testing.dart | 4 +-- .../native_assets_cli/test/checksum_test.dart | 4 +-- .../test/code_assets/config_test.dart | 12 +++---- .../test/code_assets/validation_test.dart | 20 +++++------ .../test/example/local_asset_test.dart | 4 +-- .../test/example/native_add_library_test.dart | 4 +-- .../example/native_dynamic_linking_test.dart | 4 +-- .../cbuilder/cbuilder_build_failure_test.dart | 4 +-- .../cbuilder/cbuilder_cross_android_test.dart | 4 +-- .../cbuilder/cbuilder_cross_ios_test.dart | 8 ++--- .../cbuilder_cross_linux_host_test.dart | 4 +-- .../cbuilder_cross_macos_host_test.dart | 8 ++--- .../cbuilder_cross_windows_host_test.dart | 4 +-- .../test/cbuilder/cbuilder_test.dart | 36 +++++++++---------- .../test/cbuilder/compiler_resolver_test.dart | 8 ++--- .../test/cbuilder/objective_c_test.dart | 4 +-- .../test/clinker/build_testfiles.dart | 4 +-- .../test/clinker/objects_test.dart | 4 +-- .../test/clinker/throws_test.dart | 4 +-- .../test/clinker/treeshake_helper.dart | 4 +-- 27 files changed, 114 insertions(+), 106 deletions(-) diff --git a/pkgs/native_assets_builder/test/build_runner/build_runner_reusability_test.dart b/pkgs/native_assets_builder/test/build_runner/build_runner_reusability_test.dart index 8b9ed9cce..0920edf04 100644 --- a/pkgs/native_assets_builder/test/build_runner/build_runner_reusability_test.dart +++ b/pkgs/native_assets_builder/test/build_runner/build_runner_reusability_test.dart @@ -32,14 +32,14 @@ void main() async { final targetOS = OS.current; const defaultMacOSVersion = 13; BuildConfigBuilder configCreator() => BuildConfigBuilder() - ..setupCodeConfig(CodeConfig( + ..setupCodeConfig( targetArchitecture: Architecture.current, targetOS: OS.current, macOSConfig: targetOS == OS.macOS ? MacOSConfig(targetVersion: defaultMacOSVersion) : null, linkModePreference: LinkModePreference.dynamic, - )); + ); await buildRunner.build( configCreator: configCreator, diff --git a/pkgs/native_assets_builder/test/build_runner/concurrency_shared_test_helper.dart b/pkgs/native_assets_builder/test/build_runner/concurrency_shared_test_helper.dart index ff34d1b54..5b872ca26 100644 --- a/pkgs/native_assets_builder/test/build_runner/concurrency_shared_test_helper.dart +++ b/pkgs/native_assets_builder/test/build_runner/concurrency_shared_test_helper.dart @@ -26,14 +26,14 @@ void main(List args) async { // Set up the code config, so that the builds for different targets are // in different directories. configCreator: () => BuildConfigBuilder() - ..setupCodeConfig(CodeConfig( + ..setupCodeConfig( targetArchitecture: target.architecture, targetOS: targetOS, macOSConfig: targetOS == OS.macOS ? MacOSConfig(targetVersion: defaultMacOSVersion) : null, linkModePreference: LinkModePreference.dynamic, - )), + ), workingDirectory: packageUri, linkingEnabled: false, buildAssetTypes: [DataAsset.type], diff --git a/pkgs/native_assets_builder/test/build_runner/concurrency_test_helper.dart b/pkgs/native_assets_builder/test/build_runner/concurrency_test_helper.dart index 954ead2f0..25ec31463 100644 --- a/pkgs/native_assets_builder/test/build_runner/concurrency_test_helper.dart +++ b/pkgs/native_assets_builder/test/build_runner/concurrency_test_helper.dart @@ -29,7 +29,7 @@ void main(List args) async { fileSystem: const LocalFileSystem(), ).build( configCreator: () => BuildConfigBuilder() - ..setupCodeConfig(CodeConfig( + ..setupCodeConfig( targetArchitecture: Architecture.current, targetOS: targetOS, linkModePreference: LinkModePreference.dynamic, @@ -37,7 +37,7 @@ void main(List args) async { macOSConfig: targetOS == OS.macOS ? MacOSConfig(targetVersion: defaultMacOSVersion) : null, - )), + ), workingDirectory: packageUri, linkingEnabled: false, buildAssetTypes: [CodeAsset.type, DataAsset.type], diff --git a/pkgs/native_assets_builder/test/build_runner/helpers.dart b/pkgs/native_assets_builder/test/build_runner/helpers.dart index 90de65dc1..4790d1b0e 100644 --- a/pkgs/native_assets_builder/test/build_runner/helpers.dart +++ b/pkgs/native_assets_builder/test/build_runner/helpers.dart @@ -61,7 +61,7 @@ Future build( configCreator: () { final configBuilder = BuildConfigBuilder(); if (buildAssetTypes.contains(CodeAsset.type)) { - configBuilder.setupCodeConfig(CodeConfig( + configBuilder.setupCodeConfig( targetArchitecture: target?.architecture ?? Architecture.current, targetOS: targetOS, linkModePreference: linkModePreference, @@ -79,7 +79,7 @@ Future build( androidConfig: targetOS == OS.android ? AndroidConfig(targetNdkApi: targetAndroidNdkApi!) : null, - )); + ); } return configBuilder; }, @@ -135,7 +135,7 @@ Future link( configCreator: () { final configBuilder = LinkConfigBuilder(); if (buildAssetTypes.contains(CodeAsset.type)) { - configBuilder.setupCodeConfig(CodeConfig( + configBuilder.setupCodeConfig( targetArchitecture: target?.architecture ?? Architecture.current, targetOS: target?.os ?? OS.current, linkModePreference: linkModePreference, @@ -153,7 +153,7 @@ Future link( androidConfig: targetOS == OS.android ? AndroidConfig(targetNdkApi: targetAndroidNdkApi!) : null, - )); + ); } return configBuilder; }, @@ -206,7 +206,7 @@ Future<(BuildResult?, LinkResult?)> buildAndLink( final targetOS = target?.os ?? OS.current; final buildResult = await buildRunner.build( configCreator: () => BuildConfigBuilder() - ..setupCodeConfig(CodeConfig( + ..setupCodeConfig( targetArchitecture: target?.architecture ?? Architecture.current, targetOS: targetOS, linkModePreference: linkModePreference, @@ -224,7 +224,7 @@ Future<(BuildResult?, LinkResult?)> buildAndLink( androidConfig: targetOS == OS.android ? AndroidConfig(targetNdkApi: targetAndroidNdkApi!) : null, - )), + ), configValidator: buildConfigValidator, workingDirectory: packageUri, packageLayout: packageLayout, @@ -247,7 +247,7 @@ Future<(BuildResult?, LinkResult?)> buildAndLink( final linkResult = await buildRunner.link( configCreator: () => LinkConfigBuilder() - ..setupCodeConfig(CodeConfig( + ..setupCodeConfig( targetArchitecture: target?.architecture ?? Architecture.current, targetOS: targetOS, linkModePreference: linkModePreference, @@ -265,7 +265,7 @@ Future<(BuildResult?, LinkResult?)> buildAndLink( androidConfig: targetOS == OS.android ? AndroidConfig(targetNdkApi: targetAndroidNdkApi!) : null, - )), + ), configValidator: linkConfigValidator, workingDirectory: packageUri, packageLayout: packageLayout, diff --git a/pkgs/native_assets_builder/test/test_data/native_dynamic_linking_test.dart b/pkgs/native_assets_builder/test/test_data/native_dynamic_linking_test.dart index 7948953a8..e0f042c29 100644 --- a/pkgs/native_assets_builder/test/test_data/native_dynamic_linking_test.dart +++ b/pkgs/native_assets_builder/test/test_data/native_dynamic_linking_test.dart @@ -42,7 +42,7 @@ void main() async { outputDirectory: outputDirectory, outputDirectoryShared: outputDirectoryShared, ) - ..setupCodeConfig(CodeConfig( + ..setupCodeConfig( targetArchitecture: Architecture.current, targetOS: targetOS, macOSConfig: targetOS == OS.macOS @@ -50,7 +50,7 @@ void main() async { : null, linkModePreference: LinkModePreference.dynamic, cCompilerConfig: cCompiler, - )); + ); final buildConfigUri = testTempUri.resolve('build_config.json'); File.fromUri(buildConfigUri) diff --git a/pkgs/native_assets_builder/test/test_data/transformer_test.dart b/pkgs/native_assets_builder/test/test_data/transformer_test.dart index 93091ed17..42b8eb404 100644 --- a/pkgs/native_assets_builder/test/test_data/transformer_test.dart +++ b/pkgs/native_assets_builder/test/test_data/transformer_test.dart @@ -57,14 +57,14 @@ void main() async { outputDirectory: outputDirectory, outputDirectoryShared: outputDirectoryShared, ) - ..setupCodeConfig(CodeConfig( + ..setupCodeConfig( targetArchitecture: architecture, targetOS: targetOS, macOSConfig: targetOS == OS.macOS ? MacOSConfig(targetVersion: defaultMacOSVersion) : null, linkModePreference: LinkModePreference.dynamic, - )); + ); final buildConfigUri = testTempUri.resolve('build_config.json'); File.fromUri(buildConfigUri) diff --git a/pkgs/native_assets_cli/lib/src/code_assets/config.dart b/pkgs/native_assets_cli/lib/src/code_assets/config.dart index 0fa6e5d65..93d7f2b21 100644 --- a/pkgs/native_assets_cli/lib/src/code_assets/config.dart +++ b/pkgs/native_assets_cli/lib/src/code_assets/config.dart @@ -245,25 +245,33 @@ extension type CodeAssetLinkOutputBuilderAdd._(LinkOutputBuilder _output) { /// Extension to initialize code specific configuration on link/build configs. extension CodeAssetBuildConfigBuilder on HookConfigBuilder { - void setupCodeConfig(CodeConfig codeConfig) { - if (codeConfig._targetArchitecture != null) { - json[_targetArchitectureKey] = codeConfig.targetArchitecture.toString(); + void setupCodeConfig({ + required Architecture? targetArchitecture, + required OS targetOS, + required LinkModePreference linkModePreference, + CCompilerConfig? cCompilerConfig, + AndroidConfig? androidConfig, + IOSConfig? iOSConfig, + MacOSConfig? macOSConfig, + }) { + if (targetArchitecture != null) { + json[_targetArchitectureKey] = targetArchitecture.toString(); } - json[_targetOSConfigKey] = codeConfig.targetOS.toString(); - json[_linkModePreferenceKey] = codeConfig.linkModePreference.toString(); - if (codeConfig.cCompiler != null) { - json[_compilerKey] = codeConfig.cCompiler?.toJson(); + json[_targetOSConfigKey] = targetOS.toString(); + json[_linkModePreferenceKey] = linkModePreference.toString(); + if (cCompilerConfig != null) { + json[_compilerKey] = cCompilerConfig.toJson(); } // Note, using ?. instead of !. makes missing data be a semantic error // rather than a syntactic error to be caught in the validation. - if (codeConfig.targetOS == OS.android) { - json[_targetAndroidNdkApiKey] = codeConfig._androidConfig?.targetNdkApi; - } else if (codeConfig.targetOS == OS.iOS) { - json[_targetIOSSdkKey] = codeConfig._iOSConfig?.targetSdk.toString(); - json[_targetIOSVersionKey] = codeConfig._iOSConfig?.targetVersion; - } else if (codeConfig.targetOS == OS.macOS) { - json[_targetMacOSVersionKey] = codeConfig._macOSConfig?.targetVersion; + if (targetOS == OS.android) { + json[_targetAndroidNdkApiKey] = androidConfig?.targetNdkApi; + } else if (targetOS == OS.iOS) { + json[_targetIOSSdkKey] = iOSConfig?.targetSdk.toString(); + json[_targetIOSVersionKey] = iOSConfig?.targetVersion; + } else if (targetOS == OS.macOS) { + json[_targetMacOSVersionKey] = macOSConfig?.targetVersion; } } } diff --git a/pkgs/native_assets_cli/lib/src/code_assets/testing.dart b/pkgs/native_assets_cli/lib/src/code_assets/testing.dart index 599bf8d66..0ad67ba96 100644 --- a/pkgs/native_assets_cli/lib/src/code_assets/testing.dart +++ b/pkgs/native_assets_cli/lib/src/code_assets/testing.dart @@ -38,7 +38,7 @@ Future testCodeBuildHook({ await testBuildHook( mainMethod: mainMethod, extraConfigSetup: (config) { - config.setupCodeConfig(CodeConfig( + config.setupCodeConfig( linkModePreference: linkModePreference ?? LinkModePreference.dynamic, cCompilerConfig: cCompiler, targetArchitecture: targetArchitecture ?? Architecture.current, @@ -55,7 +55,7 @@ Future testCodeBuildHook({ androidConfig: targetOS == OS.android ? AndroidConfig(targetNdkApi: targetAndroidNdkApi!) : null, - )); + ); }, check: (config, output) async { final validationErrors = diff --git a/pkgs/native_assets_cli/test/checksum_test.dart b/pkgs/native_assets_cli/test/checksum_test.dart index e21abfbf1..c4691e4aa 100644 --- a/pkgs/native_assets_cli/test/checksum_test.dart +++ b/pkgs/native_assets_cli/test/checksum_test.dart @@ -31,14 +31,14 @@ void main() { dryRun: dryRun, linkingEnabled: linking, ) - ..setupCodeConfig(CodeConfig( + ..setupCodeConfig( targetArchitecture: architecture, targetOS: os, macOSConfig: os == OS.macOS ? MacOSConfig(targetVersion: defaultMacOSVersion) : null, linkModePreference: LinkModePreference.dynamic, - )); + ); configs.add( const JsonEncoder.withIndent(' ').convert(builder.json), ); diff --git a/pkgs/native_assets_cli/test/code_assets/config_test.dart b/pkgs/native_assets_cli/test/code_assets/config_test.dart index 2e657eae4..aa40204ab 100644 --- a/pkgs/native_assets_cli/test/code_assets/config_test.dart +++ b/pkgs/native_assets_cli/test/code_assets/config_test.dart @@ -99,13 +99,13 @@ void main() async { outputDirectory: outDirUri, outputDirectoryShared: outputDirectoryShared, ) - ..setupCodeConfig(CodeConfig( + ..setupCodeConfig( targetOS: OS.android, androidConfig: null, // not available in dry run targetArchitecture: null, // not available in dry run cCompilerConfig: null, // not available in dry run linkModePreference: LinkModePreference.preferStatic, - )); + ); final config = BuildConfig(configBuilder.json); expectCorrectCodeConfigDryRun(config.json, config.codeConfig); }); @@ -125,7 +125,7 @@ void main() async { outputDirectory: outDirUri, outputDirectoryShared: outputDirectoryShared, ) - ..setupCodeConfig(CodeConfig( + ..setupCodeConfig( targetOS: OS.android, targetArchitecture: Architecture.arm64, androidConfig: AndroidConfig(targetNdkApi: 30), @@ -137,7 +137,7 @@ void main() async { envScript: fakeVcVars, envScriptArgs: ['arg0', 'arg1'], ), - )); + ); final config = BuildConfig(configBuilder.json); expectCorrectCodeConfig(config.json, config.codeConfig); }); @@ -155,7 +155,7 @@ void main() async { outputDirectoryShared: outputDirectoryShared, recordedUsesFile: null, ) - ..setupCodeConfig(CodeConfig( + ..setupCodeConfig( targetOS: OS.android, targetArchitecture: Architecture.arm64, androidConfig: AndroidConfig(targetNdkApi: 30), @@ -167,7 +167,7 @@ void main() async { envScript: fakeVcVars, envScriptArgs: ['arg0', 'arg1'], ), - )); + ); final config = LinkConfig(configBuilder.json); expectCorrectCodeConfig(config.json, config.codeConfig); expect(config.encodedAssets, assets); diff --git a/pkgs/native_assets_cli/test/code_assets/validation_test.dart b/pkgs/native_assets_cli/test/code_assets/validation_test.dart index 0afe50cbc..7b5e6731b 100644 --- a/pkgs/native_assets_cli/test/code_assets/validation_test.dart +++ b/pkgs/native_assets_cli/test/code_assets/validation_test.dart @@ -51,11 +51,11 @@ void main() { LinkModePreference linkModePreference = LinkModePreference.dynamic, }) { final builder = makeBuildConfigBuilder() - ..setupCodeConfig(CodeConfig( + ..setupCodeConfig( targetOS: OS.linux, targetArchitecture: Architecture.arm64, linkModePreference: linkModePreference, - )); + ); return BuildConfig(builder.json); } @@ -217,11 +217,11 @@ void main() { group('BuildConfig.codeConfig validation', () { test('Missing targetIOSVersion', () async { final builder = makeBuildConfigBuilder() - ..setupCodeConfig(CodeConfig( + ..setupCodeConfig( targetOS: OS.iOS, targetArchitecture: Architecture.arm64, linkModePreference: LinkModePreference.dynamic, - )); + ); final errors = await validateCodeAssetBuildConfig(BuildConfig(builder.json)); expect( @@ -235,11 +235,11 @@ void main() { }); test('Missing targetAndroidNdkApi', () async { final builder = makeBuildConfigBuilder() - ..setupCodeConfig(CodeConfig( + ..setupCodeConfig( targetOS: OS.android, targetArchitecture: Architecture.arm64, linkModePreference: LinkModePreference.dynamic, - )); + ); expect( await validateCodeAssetBuildConfig(BuildConfig(builder.json)), contains(contains( @@ -248,11 +248,11 @@ void main() { }); test('Missing targetMacOSVersion', () async { final builder = makeBuildConfigBuilder() - ..setupCodeConfig(CodeConfig( + ..setupCodeConfig( targetOS: OS.macOS, targetArchitecture: Architecture.arm64, linkModePreference: LinkModePreference.dynamic, - )); + ); expect( await validateCodeAssetBuildConfig(BuildConfig(builder.json)), contains(contains( @@ -261,7 +261,7 @@ void main() { test('Nonexisting compiler/archiver/linker/envScript', () async { final nonExistent = outDirUri.resolve('foo baz'); final builder = makeBuildConfigBuilder() - ..setupCodeConfig(CodeConfig( + ..setupCodeConfig( targetOS: OS.linux, targetArchitecture: Architecture.arm64, linkModePreference: LinkModePreference.dynamic, @@ -270,7 +270,7 @@ void main() { linker: nonExistent, archiver: nonExistent, envScript: nonExistent, - ))); + )); final errors = await validateCodeAssetBuildConfig(BuildConfig(builder.json)); diff --git a/pkgs/native_assets_cli/test/example/local_asset_test.dart b/pkgs/native_assets_cli/test/example/local_asset_test.dart index 517da9453..cf830d47a 100644 --- a/pkgs/native_assets_cli/test/example/local_asset_test.dart +++ b/pkgs/native_assets_cli/test/example/local_asset_test.dart @@ -51,7 +51,7 @@ void main() async { outputDirectory: outputDirectory, outputDirectoryShared: outputDirectoryShared) ..setupBuildConfig(linkingEnabled: false, dryRun: dryRun) - ..setupCodeConfig(CodeConfig( + ..setupCodeConfig( targetOS: targetOS, macOSConfig: targetOS == OS.macOS ? MacOSConfig(targetVersion: defaultMacOSVersion) @@ -59,7 +59,7 @@ void main() async { targetArchitecture: dryRun ? null : Architecture.current, linkModePreference: LinkModePreference.dynamic, cCompilerConfig: dryRun ? null : cCompiler, - )); + ); final buildConfigUri = testTempUri.resolve('build_config.json'); await File.fromUri(buildConfigUri) diff --git a/pkgs/native_assets_cli/test/example/native_add_library_test.dart b/pkgs/native_assets_cli/test/example/native_add_library_test.dart index 3b9d6d09c..32ab57a1d 100644 --- a/pkgs/native_assets_cli/test/example/native_add_library_test.dart +++ b/pkgs/native_assets_cli/test/example/native_add_library_test.dart @@ -51,7 +51,7 @@ void main() async { outputDirectory: outputDirectory, outputDirectoryShared: outputDirectoryShared) ..setupBuildConfig(linkingEnabled: false, dryRun: dryRun) - ..setupCodeConfig(CodeConfig( + ..setupCodeConfig( targetOS: OS.current, macOSConfig: targetOS == OS.macOS ? MacOSConfig(targetVersion: defaultMacOSVersion) @@ -59,7 +59,7 @@ void main() async { targetArchitecture: dryRun ? null : Architecture.current, linkModePreference: LinkModePreference.dynamic, cCompilerConfig: dryRun ? null : cCompiler, - )); + ); final buildConfigUri = testTempUri.resolve('build_config.json'); await File.fromUri(buildConfigUri) diff --git a/pkgs/native_assets_cli/test/example/native_dynamic_linking_test.dart b/pkgs/native_assets_cli/test/example/native_dynamic_linking_test.dart index f60bc7585..9e97551d4 100644 --- a/pkgs/native_assets_cli/test/example/native_dynamic_linking_test.dart +++ b/pkgs/native_assets_cli/test/example/native_dynamic_linking_test.dart @@ -56,7 +56,7 @@ void main() async { outputDirectoryShared: outputDirectoryShared, ) ..setupBuildConfig(linkingEnabled: false, dryRun: dryRun) - ..setupCodeConfig(CodeConfig( + ..setupCodeConfig( targetOS: targetOS, macOSConfig: targetOS == OS.macOS ? MacOSConfig(targetVersion: defaultMacOSVersion) @@ -64,7 +64,7 @@ void main() async { targetArchitecture: dryRun ? null : Architecture.current, linkModePreference: LinkModePreference.dynamic, cCompilerConfig: dryRun ? null : cCompiler, - )); + ); final buildConfigUri = testTempUri.resolve('build_config.json'); await File.fromUri(buildConfigUri) diff --git a/pkgs/native_toolchain_c/test/cbuilder/cbuilder_build_failure_test.dart b/pkgs/native_toolchain_c/test/cbuilder/cbuilder_build_failure_test.dart index 651bc0dd3..c8f1961c9 100644 --- a/pkgs/native_toolchain_c/test/cbuilder/cbuilder_build_failure_test.dart +++ b/pkgs/native_toolchain_c/test/cbuilder/cbuilder_build_failure_test.dart @@ -40,7 +40,7 @@ void main() { linkingEnabled: false, dryRun: false, ) - ..setupCodeConfig(CodeConfig( + ..setupCodeConfig( targetOS: targetOS, macOSConfig: targetOS == OS.macOS ? MacOSConfig(targetVersion: defaultMacOSVersion) @@ -48,7 +48,7 @@ void main() { targetArchitecture: Architecture.current, linkModePreference: LinkModePreference.dynamic, cCompilerConfig: cCompiler, - )); + ); buildConfigBuilder.setupBuildRunConfig( outputDirectory: tempUri, outputDirectoryShared: tempUri2, diff --git a/pkgs/native_toolchain_c/test/cbuilder/cbuilder_cross_android_test.dart b/pkgs/native_toolchain_c/test/cbuilder/cbuilder_cross_android_test.dart index 1b9d5ee9e..bafad7c78 100644 --- a/pkgs/native_toolchain_c/test/cbuilder/cbuilder_cross_android_test.dart +++ b/pkgs/native_toolchain_c/test/cbuilder/cbuilder_cross_android_test.dart @@ -154,7 +154,7 @@ Future buildLib( linkingEnabled: false, dryRun: false, ) - ..setupCodeConfig(CodeConfig( + ..setupCodeConfig( targetOS: OS.android, targetArchitecture: targetArchitecture, cCompilerConfig: cCompiler, @@ -162,7 +162,7 @@ Future buildLib( linkModePreference: linkMode == DynamicLoadingBundled() ? LinkModePreference.dynamic : LinkModePreference.static, - )); + ); buildConfigBuilder.setupBuildRunConfig( outputDirectory: tempUri, outputDirectoryShared: tempUriShared, diff --git a/pkgs/native_toolchain_c/test/cbuilder/cbuilder_cross_ios_test.dart b/pkgs/native_toolchain_c/test/cbuilder/cbuilder_cross_ios_test.dart index 86f306bd6..d8cba0401 100644 --- a/pkgs/native_toolchain_c/test/cbuilder/cbuilder_cross_ios_test.dart +++ b/pkgs/native_toolchain_c/test/cbuilder/cbuilder_cross_ios_test.dart @@ -83,7 +83,7 @@ void main() { linkingEnabled: false, dryRun: false, ) - ..setupCodeConfig(CodeConfig( + ..setupCodeConfig( targetOS: OS.iOS, targetArchitecture: target, linkModePreference: linkMode == DynamicLoadingBundled() @@ -94,7 +94,7 @@ void main() { targetVersion: flutteriOSHighestBestEffort, ), cCompilerConfig: cCompiler, - )); + ); buildConfigBuilder.setupBuildRunConfig( outputDirectory: tempUri, outputDirectoryShared: tempUri2, @@ -240,7 +240,7 @@ Future buildLib( linkingEnabled: false, dryRun: false, ) - ..setupCodeConfig(CodeConfig( + ..setupCodeConfig( targetOS: OS.iOS, targetArchitecture: targetArchitecture, linkModePreference: linkMode == DynamicLoadingBundled() @@ -251,7 +251,7 @@ Future buildLib( targetVersion: targetIOSVersion, ), cCompilerConfig: cCompiler, - )); + ); buildConfigBuilder.setupBuildRunConfig( outputDirectory: tempUri, outputDirectoryShared: tempUri2, diff --git a/pkgs/native_toolchain_c/test/cbuilder/cbuilder_cross_linux_host_test.dart b/pkgs/native_toolchain_c/test/cbuilder/cbuilder_cross_linux_host_test.dart index 20e327b52..d0be152b7 100644 --- a/pkgs/native_toolchain_c/test/cbuilder/cbuilder_cross_linux_host_test.dart +++ b/pkgs/native_toolchain_c/test/cbuilder/cbuilder_cross_linux_host_test.dart @@ -52,14 +52,14 @@ void main() { linkingEnabled: false, dryRun: false, ) - ..setupCodeConfig(CodeConfig( + ..setupCodeConfig( targetOS: OS.linux, targetArchitecture: target, linkModePreference: linkMode == DynamicLoadingBundled() ? LinkModePreference.dynamic : LinkModePreference.static, cCompilerConfig: cCompiler, - )); + ); buildConfigBuilder.setupBuildRunConfig( outputDirectory: tempUri, outputDirectoryShared: tempUri2, diff --git a/pkgs/native_toolchain_c/test/cbuilder/cbuilder_cross_macos_host_test.dart b/pkgs/native_toolchain_c/test/cbuilder/cbuilder_cross_macos_host_test.dart index b6ff53c8b..09c781cee 100644 --- a/pkgs/native_toolchain_c/test/cbuilder/cbuilder_cross_macos_host_test.dart +++ b/pkgs/native_toolchain_c/test/cbuilder/cbuilder_cross_macos_host_test.dart @@ -67,7 +67,7 @@ void main() { linkingEnabled: false, dryRun: false, ) - ..setupCodeConfig(CodeConfig( + ..setupCodeConfig( targetOS: OS.macOS, targetArchitecture: target, linkModePreference: linkMode == DynamicLoadingBundled() @@ -75,7 +75,7 @@ void main() { : LinkModePreference.static, cCompilerConfig: cCompiler, macOSConfig: MacOSConfig(targetVersion: defaultMacOSVersion), - )); + ); buildConfigBuilder.setupBuildRunConfig( outputDirectory: tempUri, outputDirectoryShared: tempUri2, @@ -169,7 +169,7 @@ Future buildLib( linkingEnabled: false, dryRun: false, ) - ..setupCodeConfig(CodeConfig( + ..setupCodeConfig( targetOS: OS.macOS, targetArchitecture: targetArchitecture, linkModePreference: linkMode == DynamicLoadingBundled() @@ -177,7 +177,7 @@ Future buildLib( : LinkModePreference.static, macOSConfig: MacOSConfig(targetVersion: targetMacOSVersion), cCompilerConfig: cCompiler, - )); + ); buildConfigBuilder.setupBuildRunConfig( outputDirectory: tempUri, outputDirectoryShared: tempUri2, diff --git a/pkgs/native_toolchain_c/test/cbuilder/cbuilder_cross_windows_host_test.dart b/pkgs/native_toolchain_c/test/cbuilder/cbuilder_cross_windows_host_test.dart index 89aa2014f..92109a604 100644 --- a/pkgs/native_toolchain_c/test/cbuilder/cbuilder_cross_windows_host_test.dart +++ b/pkgs/native_toolchain_c/test/cbuilder/cbuilder_cross_windows_host_test.dart @@ -71,14 +71,14 @@ void main() { linkingEnabled: false, dryRun: false, ) - ..setupCodeConfig(CodeConfig( + ..setupCodeConfig( targetOS: OS.windows, targetArchitecture: target, linkModePreference: linkMode == DynamicLoadingBundled() ? LinkModePreference.dynamic : LinkModePreference.static, cCompilerConfig: cCompiler, - )); + ); buildConfigBuilder.setupBuildRunConfig( outputDirectory: tempUri, outputDirectoryShared: tempUri2, diff --git a/pkgs/native_toolchain_c/test/cbuilder/cbuilder_test.dart b/pkgs/native_toolchain_c/test/cbuilder/cbuilder_test.dart index 127e6cc3e..e33c18afa 100644 --- a/pkgs/native_toolchain_c/test/cbuilder/cbuilder_test.dart +++ b/pkgs/native_toolchain_c/test/cbuilder/cbuilder_test.dart @@ -57,14 +57,14 @@ void main() { linkingEnabled: false, dryRun: false, ) - ..setupCodeConfig(CodeConfig( + ..setupCodeConfig( targetOS: targetOS, macOSConfig: macOSConfig, targetArchitecture: Architecture.current, // Ignored by executables. linkModePreference: LinkModePreference.dynamic, cCompilerConfig: cCompiler, - )); + ); buildConfigBuilder.setupBuildRunConfig( outputDirectory: tempUri, outputDirectoryShared: tempUri2, @@ -142,13 +142,13 @@ void main() { dryRun: dryRun, ); if (buildCodeAssets) { - buildConfigBuilder.setupCodeConfig(CodeConfig( + buildConfigBuilder.setupCodeConfig( targetOS: targetOS, macOSConfig: macOSConfig, targetArchitecture: Architecture.current, linkModePreference: LinkModePreference.dynamic, cCompilerConfig: dryRun ? null : cCompiler, - )); + ); } buildConfigBuilder.setupBuildRunConfig( outputDirectory: tempUri, @@ -249,14 +249,14 @@ void main() { linkingEnabled: false, dryRun: false, ) - ..setupCodeConfig(CodeConfig( + ..setupCodeConfig( targetOS: targetOS, macOSConfig: macOSConfig, targetArchitecture: Architecture.current, // Ignored by executables. linkModePreference: LinkModePreference.dynamic, cCompilerConfig: cCompiler, - )); + ); buildConfigBuilder.setupBuildRunConfig( outputDirectory: tempUri, outputDirectoryShared: tempUri2, @@ -317,14 +317,14 @@ void main() { linkingEnabled: false, dryRun: false, ) - ..setupCodeConfig(CodeConfig( + ..setupCodeConfig( targetOS: targetOS, macOSConfig: macOSConfig, targetArchitecture: Architecture.current, // Ignored by executables. linkModePreference: LinkModePreference.dynamic, cCompilerConfig: cCompiler, - )); + ); buildConfigBuilder.setupBuildRunConfig( outputDirectory: tempUri, outputDirectoryShared: tempUri2, @@ -375,14 +375,14 @@ void main() { linkingEnabled: false, dryRun: false, ) - ..setupCodeConfig(CodeConfig( + ..setupCodeConfig( targetOS: targetOS, macOSConfig: macOSConfig, targetArchitecture: Architecture.current, // Ignored by executables. linkModePreference: LinkModePreference.dynamic, cCompilerConfig: cCompiler, - )); + ); buildConfigBuilder.setupBuildRunConfig( outputDirectory: tempUri, outputDirectoryShared: tempUri2, @@ -445,14 +445,14 @@ void main() { linkingEnabled: false, dryRun: false, ) - ..setupCodeConfig(CodeConfig( + ..setupCodeConfig( targetOS: targetOS, macOSConfig: macOSConfig, targetArchitecture: Architecture.current, // Ignored by executables. linkModePreference: LinkModePreference.dynamic, cCompilerConfig: cCompiler, - )); + ); buildConfigBuilder.setupBuildRunConfig( outputDirectory: tempUri, outputDirectoryShared: tempUri2, @@ -520,14 +520,14 @@ void main() { linkingEnabled: false, dryRun: false, ) - ..setupCodeConfig(CodeConfig( + ..setupCodeConfig( targetOS: targetOS, macOSConfig: macOSConfig, targetArchitecture: Architecture.current, // Ignored by executables. linkModePreference: LinkModePreference.dynamic, cCompilerConfig: cCompiler, - )); + ); buildConfigBuilder.setupBuildRunConfig( outputDirectory: tempUri, outputDirectoryShared: tempUri2, @@ -606,14 +606,14 @@ void main() { linkingEnabled: false, dryRun: false, ) - ..setupCodeConfig(CodeConfig( + ..setupCodeConfig( targetOS: targetOS, macOSConfig: macOSConfig, targetArchitecture: Architecture.current, // Ignored by executables. linkModePreference: LinkModePreference.dynamic, cCompilerConfig: cCompiler, - )); + ); buildConfigBuilder.setupBuildRunConfig( outputDirectory: tempUri, outputDirectoryShared: tempUri2, @@ -709,7 +709,7 @@ Future testDefines({ linkingEnabled: false, dryRun: false, ) - ..setupCodeConfig(CodeConfig( + ..setupCodeConfig( targetOS: targetOS, macOSConfig: targetOS == OS.macOS ? MacOSConfig(targetVersion: defaultMacOSVersion) @@ -718,7 +718,7 @@ Future testDefines({ // Ignored by executables. linkModePreference: LinkModePreference.dynamic, cCompilerConfig: cCompiler, - )); + ); buildConfigBuilder.setupBuildRunConfig( outputDirectory: tempUri, outputDirectoryShared: tempUri2, diff --git a/pkgs/native_toolchain_c/test/cbuilder/compiler_resolver_test.dart b/pkgs/native_toolchain_c/test/cbuilder/compiler_resolver_test.dart index a506a6b45..ad4512357 100644 --- a/pkgs/native_toolchain_c/test/cbuilder/compiler_resolver_test.dart +++ b/pkgs/native_toolchain_c/test/cbuilder/compiler_resolver_test.dart @@ -52,7 +52,7 @@ void main() { linkingEnabled: false, dryRun: false, ) - ..setupCodeConfig(CodeConfig( + ..setupCodeConfig( targetOS: targetOS, macOSConfig: targetOS == OS.macOS ? MacOSConfig(targetVersion: defaultMacOSVersion) @@ -65,7 +65,7 @@ void main() { linker: ld, envScript: envScript, ), - )); + ); buildConfigBuilder.setupBuildRunConfig( outputDirectory: tempUri, outputDirectoryShared: tempUri2, @@ -92,12 +92,12 @@ void main() { linkingEnabled: false, dryRun: false, ) - ..setupCodeConfig(CodeConfig( + ..setupCodeConfig( targetOS: OS.windows, targetArchitecture: Architecture.arm64, linkModePreference: LinkModePreference.dynamic, cCompilerConfig: cCompiler, - )); + ); buildConfigBuilder.setupBuildRunConfig( outputDirectoryShared: tempUri2, outputDirectory: tempUri, diff --git a/pkgs/native_toolchain_c/test/cbuilder/objective_c_test.dart b/pkgs/native_toolchain_c/test/cbuilder/objective_c_test.dart index f855117c1..7a78e01eb 100644 --- a/pkgs/native_toolchain_c/test/cbuilder/objective_c_test.dart +++ b/pkgs/native_toolchain_c/test/cbuilder/objective_c_test.dart @@ -46,7 +46,7 @@ void main() { linkingEnabled: false, dryRun: false, ) - ..setupCodeConfig(CodeConfig( + ..setupCodeConfig( targetOS: targetOS, macOSConfig: targetOS == OS.macOS ? MacOSConfig(targetVersion: defaultMacOSVersion) @@ -54,7 +54,7 @@ void main() { targetArchitecture: Architecture.current, linkModePreference: LinkModePreference.dynamic, cCompilerConfig: cCompiler, - )); + ); buildConfigBuilder.setupBuildRunConfig( outputDirectory: tempUri, outputDirectoryShared: tempUri2, diff --git a/pkgs/native_toolchain_c/test/clinker/build_testfiles.dart b/pkgs/native_toolchain_c/test/clinker/build_testfiles.dart index eaa925716..4c76bfef5 100644 --- a/pkgs/native_toolchain_c/test/clinker/build_testfiles.dart +++ b/pkgs/native_toolchain_c/test/clinker/build_testfiles.dart @@ -36,12 +36,12 @@ Future buildTestArchive( linkingEnabled: false, dryRun: false, ) - ..setupCodeConfig(CodeConfig( + ..setupCodeConfig( targetOS: os, targetArchitecture: architecture, linkModePreference: LinkModePreference.dynamic, cCompilerConfig: cCompiler, - )); + ); buildConfigBuilder.setupBuildRunConfig( outputDirectory: tempUri, outputDirectoryShared: tempUri2, diff --git a/pkgs/native_toolchain_c/test/clinker/objects_test.dart b/pkgs/native_toolchain_c/test/clinker/objects_test.dart index 17b357708..0797b194c 100644 --- a/pkgs/native_toolchain_c/test/clinker/objects_test.dart +++ b/pkgs/native_toolchain_c/test/clinker/objects_test.dart @@ -40,12 +40,12 @@ Future main() async { ..setupLinkConfig( assets: [], ) - ..setupCodeConfig(CodeConfig( + ..setupCodeConfig( targetOS: os, targetArchitecture: architecture, linkModePreference: LinkModePreference.dynamic, cCompilerConfig: cCompiler, - )); + ); linkConfigBuilder.setupLinkRunConfig( outputDirectory: tempUri, outputDirectoryShared: tempUri2, diff --git a/pkgs/native_toolchain_c/test/clinker/throws_test.dart b/pkgs/native_toolchain_c/test/clinker/throws_test.dart index 8465fe003..9a1c2a633 100644 --- a/pkgs/native_toolchain_c/test/clinker/throws_test.dart +++ b/pkgs/native_toolchain_c/test/clinker/throws_test.dart @@ -31,12 +31,12 @@ Future main() async { ..setupLinkConfig( assets: [], ) - ..setupCodeConfig(CodeConfig( + ..setupCodeConfig( targetOS: os, targetArchitecture: Architecture.x64, linkModePreference: LinkModePreference.dynamic, cCompilerConfig: cCompiler, - )); + ); linkConfigBuilder.setupLinkRunConfig( outputDirectoryShared: tempUri2, outputDirectory: tempUri, diff --git a/pkgs/native_toolchain_c/test/clinker/treeshake_helper.dart b/pkgs/native_toolchain_c/test/clinker/treeshake_helper.dart index c994e080f..d8d55c88b 100644 --- a/pkgs/native_toolchain_c/test/clinker/treeshake_helper.dart +++ b/pkgs/native_toolchain_c/test/clinker/treeshake_helper.dart @@ -70,12 +70,12 @@ Future runTests(List architectures) async { ..setupLinkConfig( assets: [], ) - ..setupCodeConfig(CodeConfig( + ..setupCodeConfig( targetOS: os, targetArchitecture: architecture, linkModePreference: LinkModePreference.dynamic, cCompilerConfig: cCompiler, - )); + ); linkConfigBuilder.setupLinkRunConfig( outputDirectory: tempUri, outputDirectoryShared: tempUri2, From c0cb5a86834a0be7f4894502c013274fadca9cc8 Mon Sep 17 00:00:00 2001 From: Daco Harkes Date: Tue, 7 Jan 2025 11:58:22 +0100 Subject: [PATCH 4/5] make constructor private --- pkgs/native_assets_cli/lib/src/code_assets/config.dart | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pkgs/native_assets_cli/lib/src/code_assets/config.dart b/pkgs/native_assets_cli/lib/src/code_assets/config.dart index 93d7f2b21..b1d15275e 100644 --- a/pkgs/native_assets_cli/lib/src/code_assets/config.dart +++ b/pkgs/native_assets_cli/lib/src/code_assets/config.dart @@ -47,11 +47,11 @@ class CodeConfig { /// The operating system being compiled for. final OS targetOS; - late final IOSConfig? _iOSConfig; - late final AndroidConfig? _androidConfig; - late final MacOSConfig? _macOSConfig; + final IOSConfig? _iOSConfig; + final AndroidConfig? _androidConfig; + final MacOSConfig? _macOSConfig; - CodeConfig({ + CodeConfig._({ required Architecture? targetArchitecture, required this.targetOS, required this.linkModePreference, @@ -87,7 +87,7 @@ class CodeConfig { final macOSConfig = dryRun || targetOS != OS.macOS ? null : MacOSConfig.fromJson(json); - return CodeConfig( + return CodeConfig._( targetArchitecture: targetArchitecture, targetOS: targetOS, linkModePreference: linkModePreference, From 8cf42a4c854e4852dbea9f082b2d06322ed2c79f Mon Sep 17 00:00:00 2001 From: Daco Harkes Date: Tue, 7 Jan 2025 15:16:09 +0100 Subject: [PATCH 5/5] add comment --- pkgs/native_assets_cli/lib/src/code_assets/config.dart | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/native_assets_cli/lib/src/code_assets/config.dart b/pkgs/native_assets_cli/lib/src/code_assets/config.dart index b1d15275e..6d0e5194f 100644 --- a/pkgs/native_assets_cli/lib/src/code_assets/config.dart +++ b/pkgs/native_assets_cli/lib/src/code_assets/config.dart @@ -51,6 +51,7 @@ class CodeConfig { final AndroidConfig? _androidConfig; final MacOSConfig? _macOSConfig; + // Should not be made public, class will be replaced as a view on `json`. CodeConfig._({ required Architecture? targetArchitecture, required this.targetOS,