fix config lane for work wih multiple configs

This commit is contained in:
Sergey Kopytov 2019-08-30 20:50:08 +03:00
parent 6a125006eb
commit 3bffb17ee6
1 changed files with 15 additions and 5 deletions

View File

@ -364,13 +364,23 @@ def set_xcconfig_for_configuration_of_project(xcconfig_name, configuration_name,
project = Xcodeproj::Project.open(xcodeproj_path)
is_app_target = lambda { |t| !t.test_target_type? && t.product_type == Xcodeproj::Constants::PRODUCT_TYPE_UTI[:application] }
application_target = project.native_targets.select(&is_app_target).first
build_configuration = application_target.build_configuration_list[configuration_name]
is_app_target = lambda do |t|
application_const = Xcodeproj::Constants::PRODUCT_TYPE_UTI[:application]
extension_const = Xcodeproj::Constants::PRODUCT_TYPE_UTI[:app_extension]
is_valid_id = [application_const, extension_const].include?(t.product_type)
return !t.test_target_type? && is_valid_id
end
build_configuration_reference = project.files.select { |f| f.path.start_with?(xcconfig_name) }.first
application_targets = project.native_targets.select(&is_app_target)
application_targets.each do |target|
build_configuration = target.build_configuration_list[configuration_name]
config_name = target.name + xcconfig_name
build_configuration_reference = project.files.select { |f| f.path.start_with?(config_name) }.first
build_configuration.base_configuration_reference = build_configuration_reference
end
build_configuration.base_configuration_reference = build_configuration_reference
project.save()
end