Handle hidden dot files in iOS framework bundles (#99771)
This commit is contained in:
parent
bb1b2fd072
commit
47a5b18e14
@ -79,6 +79,26 @@ Future<void> main() async {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
section('Build ephemeral host app when SDK is on external disk');
|
||||||
|
|
||||||
|
// Pretend the SDK was on an external drive with stray "._" files in the xcframework
|
||||||
|
// and build again.
|
||||||
|
Directory(path.join(
|
||||||
|
projectDir.path,
|
||||||
|
'.ios',
|
||||||
|
'Flutter',
|
||||||
|
'engine',
|
||||||
|
'Flutter.xcframework',
|
||||||
|
'._ios-arm64_x86_64-simulator',
|
||||||
|
)).createSync(recursive: true);
|
||||||
|
|
||||||
|
await inDirectory(projectDir, () async {
|
||||||
|
await flutter(
|
||||||
|
'build',
|
||||||
|
options: <String>['ios', '--no-codesign', '--simulator', '--debug'],
|
||||||
|
);
|
||||||
|
});
|
||||||
|
|
||||||
section('Clean build');
|
section('Clean build');
|
||||||
|
|
||||||
await inDirectory(projectDir, () async {
|
await inDirectory(projectDir, () async {
|
||||||
|
@ -60,6 +60,7 @@ def flutter_additional_ios_build_settings(target)
|
|||||||
# Profile can't be derived from the CocoaPods build configuration. Use release framework (for linking only).
|
# Profile can't be derived from the CocoaPods build configuration. Use release framework (for linking only).
|
||||||
configuration_engine_dir = build_configuration.type == :debug ? debug_framework_dir : release_framework_dir
|
configuration_engine_dir = build_configuration.type == :debug ? debug_framework_dir : release_framework_dir
|
||||||
Dir.new(configuration_engine_dir).each_child do |xcframework_file|
|
Dir.new(configuration_engine_dir).each_child do |xcframework_file|
|
||||||
|
continue if xcframework_file.start_with?(".") # Hidden file, possibly on external disk.
|
||||||
if xcframework_file.end_with?("-simulator") # ios-arm64_x86_64-simulator
|
if xcframework_file.end_with?("-simulator") # ios-arm64_x86_64-simulator
|
||||||
build_configuration.build_settings['FRAMEWORK_SEARCH_PATHS[sdk=iphonesimulator*]'] = "\"#{configuration_engine_dir}/#{xcframework_file}\" $(inherited)"
|
build_configuration.build_settings['FRAMEWORK_SEARCH_PATHS[sdk=iphonesimulator*]'] = "\"#{configuration_engine_dir}/#{xcframework_file}\" $(inherited)"
|
||||||
elsif xcframework_file.start_with?("ios-") # ios-armv7_arm64
|
elsif xcframework_file.start_with?("ios-") # ios-armv7_arm64
|
||||||
|
Loading…
x
Reference in New Issue
Block a user