flutter/packages/flutter_tools/lib/src/ios
Chris Bracken f8c50ea15f
Use Xcode legacy build system for iOS builds (#21901) (#21994)
Xcode 10 introduces a new build system which includes stricter checks on
duplicate build outputs.

When plugins are in use, there are two competing build actions that copy
Flutter.framework into the build application Frameworks directory:

  1. The Embed Frameworks build phase for the Runner project
  2. The [CP] Embed Pods Frameworks build phase that pod install creates
     in the project.

Item (1) is there to ensure the framework is copied into the built app
in the case where there are no plugins (and therefore no CocoaPods
integration in the Xcode project). Item (2) is there because Flutter's
podspec declares Flutter.framework as a vended_framework, and CocoaPods
automatically adds a copy step for each such vended_framework in the
transitive closure of CocoaPods dependencies.

As an immediate fix, we opt back into the build system used by Xcode 9
and earlier. Longer term, we need to update our templates and
flutter_tools to correctly handle this situation.

See: https://github.com/flutter/flutter/issues/20685
2018-09-18 10:05:46 -07:00
..
cocoapods.dart Unnecessary new (#20138) 2018-09-12 08:29:29 +02:00
code_signing.dart Unnecessary new (#20138) 2018-09-12 08:29:29 +02:00
devices.dart Unnecessary new (#20138) 2018-09-12 08:29:29 +02:00
ios_emulators.dart Unnecessary new (#20138) 2018-09-12 08:29:29 +02:00
ios_workflow.dart Unnecessary new (#20138) 2018-09-12 08:29:29 +02:00
mac.dart Use Xcode legacy build system for iOS builds (#21901) (#21994) 2018-09-18 10:05:46 -07:00
plist_utils.dart Fix extraction of product bundle ID for iOS projects (#21252) 2018-08-31 11:07:15 +02:00
simulators.dart Unnecessary new (#20138) 2018-09-12 08:29:29 +02:00
xcodeproj.dart Unnecessary new (#20138) 2018-09-12 08:29:29 +02:00