diff --git a/xcode/commonFastfile b/xcode/commonFastfile index 0cea863..aa0bbca 100644 --- a/xcode/commonFastfile +++ b/xcode/commonFastfile @@ -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