Skip to content

Commit 2ad194e

Browse files
committed
Add fix-project-settings.rb back
Motivation: The fix-project-settings.rb script was prematurely removed. Modifications: Add it back. Result: Happier .xcodeproj generation.
1 parent be70633 commit 2ad194e

File tree

2 files changed

+27
-1
lines changed

2 files changed

+27
-1
lines changed

Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ project: ${XCODEPROJ}
4747

4848
${XCODEPROJ}:
4949
${SWIFT_PACKAGE} generate-xcodeproj --output $@
50-
@-ruby fix-project-settings.rb GRPC.xcodeproj || \
50+
@-ruby scripts/fix-project-settings.rb GRPC.xcodeproj || \
5151
echo "Consider running 'sudo gem install xcodeproj' to automatically set correct indentation settings for the generated project."
5252

5353
# Generates LinuxMain.swift, only on macOS.

scripts/fix-project-settings.rb

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
require 'xcodeproj'
2+
project_path = ARGV[0]
3+
project = Xcodeproj::Project.open(project_path)
4+
5+
# Fix indentation settings.
6+
project.main_group.uses_tabs = '0'
7+
project.main_group.tab_width = '2'
8+
project.main_group.indent_width = '2'
9+
10+
# Set the `CURRENT_PROJECT_VERSION` variable for each config to ensure
11+
# that the generated frameworks pass App Store validation (#291).
12+
project.build_configurations.each do |config|
13+
config.build_settings["CURRENT_PROJECT_VERSION"] = "1.0"
14+
end
15+
16+
# Set each target's iOS deployment target to 10.0
17+
project.targets.each do |target|
18+
target.build_configurations.each do |config|
19+
config.build_settings["IPHONEOS_DEPLOYMENT_TARGET"] = "10.0"
20+
if config.build_settings["PRODUCT_BUNDLE_IDENTIFIER"] then
21+
config.build_settings["PRODUCT_BUNDLE_IDENTIFIER"] = "io.grpc." + config.build_settings["PRODUCT_BUNDLE_IDENTIFIER"]
22+
end
23+
end
24+
end
25+
26+
project.save

0 commit comments

Comments
 (0)