| 123456789101112131415161718192021222324 |
- require 'xcodeproj'
- project_path = ARGV[0]
- project = Xcodeproj::Project.open(project_path)
- # Remove targets that we do not want Carthage to build, and set the deployment target to 9.0.
- carthage_targets = ["BoringSSL", "CgRPC", "SwiftGRPC", "SwiftProtobuf"]
- targets_to_remove = project.targets.select { |target| !carthage_targets.include?(target.name) }
- targets_to_remove.each do |target|
- target.remove_from_project
- end
- # Add a `swift package resolve` step before building `SwiftProtobuf`.
- swift_protobuf_target = project.targets.select { |target| target.name == "SwiftProtobuf" }[0]
- swift_protobuf_build_phases = swift_protobuf_target.build_phases
- swift_protobuf_target.new_shell_script_build_phase
- new_script_phase = swift_protobuf_build_phases.pop
- new_script_phase.shell_script = "swift package resolve"
- swift_protobuf_build_phases.unshift(new_script_phase)
- project.save
|