xcodeproj 1.16.0 → 1.20.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (30) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +1 -1
  3. data/lib/xcodeproj/command/sort.rb +12 -1
  4. data/lib/xcodeproj/config.rb +12 -2
  5. data/lib/xcodeproj/config/other_linker_flags_parser.rb +5 -0
  6. data/lib/xcodeproj/constants.rb +62 -49
  7. data/lib/xcodeproj/gem_version.rb +1 -1
  8. data/lib/xcodeproj/project.rb +9 -6
  9. data/lib/xcodeproj/project/object/build_file.rb +3 -1
  10. data/lib/xcodeproj/project/object/build_phase.rb +10 -0
  11. data/lib/xcodeproj/project/object/group.rb +6 -6
  12. data/lib/xcodeproj/project/object/helpers/file_references_factory.rb +8 -6
  13. data/lib/xcodeproj/project/object/helpers/groupable_helper.rb +1 -1
  14. data/lib/xcodeproj/project/object/swift_package_product_dependency.rb +10 -0
  15. data/lib/xcodeproj/project/object/swift_package_remote_reference.rb +14 -0
  16. data/lib/xcodeproj/project/object/target_dependency.rb +1 -0
  17. data/lib/xcodeproj/project/project_helper.rb +6 -6
  18. data/lib/xcodeproj/scheme.rb +5 -1
  19. data/lib/xcodeproj/scheme/abstract_scheme_action.rb +72 -0
  20. data/lib/xcodeproj/scheme/build_action.rb +87 -1
  21. data/lib/xcodeproj/scheme/execution_action.rb +86 -0
  22. data/lib/xcodeproj/scheme/launch_action.rb +17 -2
  23. data/lib/xcodeproj/scheme/location_scenario_reference.rb +49 -0
  24. data/lib/xcodeproj/scheme/profile_action.rb +5 -5
  25. data/lib/xcodeproj/scheme/send_email_action_content.rb +84 -0
  26. data/lib/xcodeproj/scheme/shell_script_action_content.rb +77 -0
  27. data/lib/xcodeproj/scheme/test_action.rb +7 -3
  28. data/lib/xcodeproj/workspace.rb +3 -2
  29. data/lib/xcodeproj/workspace/file_reference.rb +1 -1
  30. metadata +26 -8
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a86aeeac02c6c6b617b0249f2c23ac48dc1243ac9392f1f53e681784026f1a93
4
- data.tar.gz: ecbfba43b4d44a0e41c1bba40bdd4e86c25acc05151c24b8b443eddd2603ef3f
3
+ metadata.gz: 156c030adda9cf98bf0f8b3616a1959e95f9bc1fa07227895c719aafd4d13734
4
+ data.tar.gz: 45a532a148d764028d5a58c0859ca1c5b13838cc68497b44611e79d6a65a6ccf
5
5
  SHA512:
6
- metadata.gz: c35479b4336d807abfc27296527fdb8674c3640adbc72705bc31eb475187991a2165d337e833c831000ee0a10aed5f8152607b2c39cf86161b0ec1567a20ff0e
7
- data.tar.gz: 94cb0ba39d5865c9069f3bb5956542c4917f18bde13d1484dc3d6333a50822aedbf8e5dfa4897172a00202da1db800667bdd46978b2b8343797234724464ddaa
6
+ metadata.gz: b7a4da4a5adb9eaa2b129758b0f432b4b6317ef8036df36275edd02d43ff80c9d0d126b012992633acab0721c91c7b7da601dcf76175e459fb07e59a772e7393
7
+ data.tar.gz: fd8d1a9c5f246264266a02b8d68a507ebf74e2b82881b4a52da754f77c5450ce322e6def0484f289c04690b449fcf09a8e3f46ce74c8e525cabe6796e868a2b1
data/README.md CHANGED
@@ -10,7 +10,7 @@ support for Xcode workspaces (`.xcworkspace`), configuration files (`.xcconfig`)
10
10
  Xcode Scheme files (`.xcscheme`).
11
11
 
12
12
  It is used in [CocoaPods](https://github.com/CocoaPods/CocoaPods) to create a
13
- a collection of supplemental libraries or frameworks, for all platforms Xcode supports.
13
+ collection of supplemental libraries or frameworks, for all platforms Xcode supports.
14
14
 
15
15
  The API reference can be found [here](http://www.rubydoc.info/gems/xcodeproj).
16
16
 
@@ -9,22 +9,33 @@ module Xcodeproj
9
9
 
10
10
  self.summary = 'Sorts the given project.'
11
11
 
12
+ def self.options
13
+ [
14
+ ['--group-option=[above|below]', 'The position of the groups when sorting. If no option is specified, sorting will interleave groups and files.'],
15
+ ].concat(super)
16
+ end
17
+
12
18
  self.arguments = [
13
19
  CLAide::Argument.new('PROJECT', false),
14
20
  ]
15
21
 
16
22
  def initialize(argv)
17
23
  self.xcodeproj_path = argv.shift_argument
24
+ @group_option = argv.option('group-option')
25
+ @group_option &&= @group_option.to_sym
18
26
  super
19
27
  end
20
28
 
21
29
  def validate!
22
30
  super
31
+ unless [nil, :above, :below].include?(@group_option)
32
+ help! "Unknown format `#{@group_option}`"
33
+ end
23
34
  open_project!
24
35
  end
25
36
 
26
37
  def run
27
- xcodeproj.sort
38
+ xcodeproj.sort(:groups_position => @group_option)
28
39
  xcodeproj.save
29
40
  puts "The `#{File.basename(xcodeproj_path)}` project was sorted"
30
41
  end
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  require 'shellwords'
2
3
  require 'xcodeproj/config/other_linker_flags_parser'
3
4
 
@@ -58,7 +59,7 @@ module Xcodeproj
58
59
  @attributes = {}
59
60
  @includes = []
60
61
  @other_linker_flags = {}
61
- [:simple, :frameworks, :weak_frameworks, :libraries, :force_load].each do |key|
62
+ [:simple, :frameworks, :weak_frameworks, :libraries, :arg_files, :force_load].each do |key|
62
63
  @other_linker_flags[key] = Set.new
63
64
  end
64
65
  merge!(extract_hash(xcconfig_hash_or_file))
@@ -125,9 +126,10 @@ module Xcodeproj
125
126
  :frameworks => '-framework ',
126
127
  :weak_frameworks => '-weak_framework ',
127
128
  :libraries => '-l',
129
+ :arg_files => '@',
128
130
  :force_load => '-force_load',
129
131
  }
130
- [:libraries, :frameworks, :weak_frameworks, :force_load].each do |key|
132
+ [:libraries, :frameworks, :weak_frameworks, :arg_files, :force_load].each do |key|
131
133
  modifier = modifiers[key]
132
134
  sorted = other_linker_flags[key].to_a.sort
133
135
  if key == :force_load
@@ -180,6 +182,13 @@ module Xcodeproj
180
182
  other_linker_flags[:libraries]
181
183
  end
182
184
 
185
+ # @return [Set<String>] The list of the arg files required by this
186
+ # settings file.
187
+ #
188
+ def arg_files
189
+ other_linker_flags[:arg_files]
190
+ end
191
+
183
192
  public
184
193
 
185
194
  # @!group Merging
@@ -254,6 +263,7 @@ module Xcodeproj
254
263
  # @return [Hash]
255
264
  #
256
265
  def extract_hash(argument)
266
+ return argument if argument.is_a?(Hash)
257
267
  if argument.respond_to? :read
258
268
  @filepath = Pathname.new(argument.to_path)
259
269
  hash_from_file_content(argument.read)
@@ -16,6 +16,7 @@ module Xcodeproj
16
16
  :frameworks => [],
17
17
  :weak_frameworks => [],
18
18
  :libraries => [],
19
+ :arg_files => [],
19
20
  :simple => [],
20
21
  :force_load => [],
21
22
  }
@@ -32,6 +33,8 @@ module Xcodeproj
32
33
  key = :weak_frameworks
33
34
  when '-l'
34
35
  key = :libraries
36
+ when '@'
37
+ key = :arg_files
35
38
  when '-force_load'
36
39
  key = :force_load
37
40
  else
@@ -58,6 +61,8 @@ module Xcodeproj
58
61
  flags.strip.shellsplit.flat_map do |string|
59
62
  if string =~ /\A-l.+/
60
63
  ['-l', string[2..-1]]
64
+ elsif string =~ /\A@.+/
65
+ ['@', string[1..-1]]
61
66
  else
62
67
  string
63
68
  end
@@ -4,19 +4,19 @@ module Xcodeproj
4
4
  module Constants
5
5
  # @return [String] The last known iOS SDK (stable).
6
6
  #
7
- LAST_KNOWN_IOS_SDK = '12.2'
7
+ LAST_KNOWN_IOS_SDK = '14.0'
8
8
 
9
9
  # @return [String] The last known OS X SDK (stable).
10
10
  #
11
- LAST_KNOWN_OSX_SDK = '10.14'
11
+ LAST_KNOWN_OSX_SDK = '10.15'
12
12
 
13
13
  # @return [String] The last known tvOS SDK (stable).
14
14
  #
15
- LAST_KNOWN_TVOS_SDK = '12.2'
15
+ LAST_KNOWN_TVOS_SDK = '14.0'
16
16
 
17
17
  # @return [String] The last known watchOS SDK (stable).
18
18
  #
19
- LAST_KNOWN_WATCHOS_SDK = '5.2'
19
+ LAST_KNOWN_WATCHOS_SDK = '7.0'
20
20
 
21
21
  # @return [String] The last known archive version to Xcodeproj.
22
22
  #
@@ -32,15 +32,15 @@ module Xcodeproj
32
32
 
33
33
  # @return [String] The last known object version to Xcodeproj.
34
34
  #
35
- LAST_KNOWN_OBJECT_VERSION = 53
35
+ LAST_KNOWN_OBJECT_VERSION = 55
36
36
 
37
- # @return [String] The last known object version to Xcodeproj.
37
+ # @return [String] The last known Xcode version to Xcodeproj.
38
38
  #
39
- LAST_UPGRADE_CHECK = '1100'
39
+ LAST_UPGRADE_CHECK = '1240'
40
40
 
41
- # @return [String] The last known object version to Xcodeproj.
41
+ # @return [String] The last known Xcode version to Xcodeproj.
42
42
  #
43
- LAST_SWIFT_UPGRADE_CHECK = '1100'
43
+ LAST_SWIFT_UPGRADE_CHECK = '1240'
44
44
 
45
45
  # @return [String] The version of `.xcscheme` files supported by Xcodeproj
46
46
  #
@@ -93,12 +93,14 @@ module Xcodeproj
93
93
  'app' => 'wrapper.application',
94
94
  'appex' => 'wrapper.app-extension',
95
95
  'bundle' => 'wrapper.plug-in',
96
+ 'cpp' => 'sourcecode.cpp.cpp',
96
97
  'dylib' => 'compiled.mach-o.dylib',
97
98
  'entitlements' => 'text.plist.entitlements',
98
99
  'framework' => 'wrapper.framework',
99
100
  'gif' => 'image.gif',
100
101
  'gpx' => 'text.xml',
101
102
  'h' => 'sourcecode.c.h',
103
+ 'hpp' => 'sourcecode.cpp.h',
102
104
  'm' => 'sourcecode.c.objc',
103
105
  'markdown' => 'text',
104
106
  'mdimporter' => 'wrapper.cfbundle',
@@ -126,6 +128,8 @@ module Xcodeproj
126
128
  # @return [Hash] The compatibility version string for different object versions.
127
129
  #
128
130
  COMPATIBILITY_VERSION_BY_OBJECT_VERSION = {
131
+ 55 => 'Xcode 13.0',
132
+ 54 => 'Xcode 12.0',
129
133
  53 => 'Xcode 11.4',
130
134
  52 => 'Xcode 11.0',
131
135
  51 => 'Xcode 10.0',
@@ -139,46 +143,48 @@ module Xcodeproj
139
143
  # @return [Hash] The uniform type identifier of various product types.
140
144
  #
141
145
  PRODUCT_TYPE_UTI = {
142
- :application => 'com.apple.product-type.application',
143
- :framework => 'com.apple.product-type.framework',
144
- :dynamic_library => 'com.apple.product-type.library.dynamic',
145
- :static_library => 'com.apple.product-type.library.static',
146
- :bundle => 'com.apple.product-type.bundle',
147
- :octest_bundle => 'com.apple.product-type.bundle',
148
- :unit_test_bundle => 'com.apple.product-type.bundle.unit-test',
149
- :ui_test_bundle => 'com.apple.product-type.bundle.ui-testing',
150
- :app_extension => 'com.apple.product-type.app-extension',
151
- :command_line_tool => 'com.apple.product-type.tool',
152
- :watch_app => 'com.apple.product-type.application.watchapp',
153
- :watch2_app => 'com.apple.product-type.application.watchapp2',
154
- :watch2_app_container => 'com.apple.product-type.application.watchapp2-container',
155
- :watch_extension => 'com.apple.product-type.watchkit-extension',
156
- :watch2_extension => 'com.apple.product-type.watchkit2-extension',
157
- :tv_extension => 'com.apple.product-type.tv-app-extension',
158
- :messages_application => 'com.apple.product-type.application.messages',
159
- :messages_extension => 'com.apple.product-type.app-extension.messages',
160
- :sticker_pack => 'com.apple.product-type.app-extension.messages-sticker-pack',
161
- :xpc_service => 'com.apple.product-type.xpc-service',
146
+ :application => 'com.apple.product-type.application',
147
+ :application_on_demand_install_capable => 'com.apple.product-type.application.on-demand-install-capable',
148
+ :framework => 'com.apple.product-type.framework',
149
+ :dynamic_library => 'com.apple.product-type.library.dynamic',
150
+ :static_library => 'com.apple.product-type.library.static',
151
+ :bundle => 'com.apple.product-type.bundle',
152
+ :octest_bundle => 'com.apple.product-type.bundle',
153
+ :unit_test_bundle => 'com.apple.product-type.bundle.unit-test',
154
+ :ui_test_bundle => 'com.apple.product-type.bundle.ui-testing',
155
+ :app_extension => 'com.apple.product-type.app-extension',
156
+ :command_line_tool => 'com.apple.product-type.tool',
157
+ :watch_app => 'com.apple.product-type.application.watchapp',
158
+ :watch2_app => 'com.apple.product-type.application.watchapp2',
159
+ :watch2_app_container => 'com.apple.product-type.application.watchapp2-container',
160
+ :watch_extension => 'com.apple.product-type.watchkit-extension',
161
+ :watch2_extension => 'com.apple.product-type.watchkit2-extension',
162
+ :tv_extension => 'com.apple.product-type.tv-app-extension',
163
+ :messages_application => 'com.apple.product-type.application.messages',
164
+ :messages_extension => 'com.apple.product-type.app-extension.messages',
165
+ :sticker_pack => 'com.apple.product-type.app-extension.messages-sticker-pack',
166
+ :xpc_service => 'com.apple.product-type.xpc-service',
162
167
  }.freeze
163
168
 
164
169
  # @return [Hash] The extensions or the various product UTIs.
165
170
  #
166
171
  PRODUCT_UTI_EXTENSIONS = {
167
- :application => 'app',
168
- :framework => 'framework',
169
- :dynamic_library => 'dylib',
170
- :static_library => 'a',
171
- :bundle => 'bundle',
172
- :octest_bundle => 'octest',
173
- :unit_test_bundle => 'xctest',
174
- :ui_test_bundle => 'xctest',
175
- :app_extension => 'appex',
176
- :messages_application => 'app',
177
- :messages_extension => 'appex',
178
- :sticker_pack => 'appex',
179
- :watch2_extension => 'appex',
180
- :watch2_app => 'app',
181
- :watch2_app_container => 'app',
172
+ :application => 'app',
173
+ :application_on_demand_install_capable => 'app',
174
+ :framework => 'framework',
175
+ :dynamic_library => 'dylib',
176
+ :static_library => 'a',
177
+ :bundle => 'bundle',
178
+ :octest_bundle => 'octest',
179
+ :unit_test_bundle => 'xctest',
180
+ :ui_test_bundle => 'xctest',
181
+ :app_extension => 'appex',
182
+ :messages_application => 'app',
183
+ :messages_extension => 'appex',
184
+ :sticker_pack => 'appex',
185
+ :watch2_extension => 'appex',
186
+ :watch2_app => 'app',
187
+ :watch2_app_container => 'app',
182
188
  }.freeze
183
189
 
184
190
  # @return [Hash] The common build settings grouped by platform, and build
@@ -199,11 +205,9 @@ module Xcodeproj
199
205
  }.freeze,
200
206
  [:ios] => {
201
207
  'SDKROOT' => 'iphoneos',
202
- 'CODE_SIGN_IDENTITY' => 'iPhone Developer',
203
208
  }.freeze,
204
209
  [:osx] => {
205
210
  'SDKROOT' => 'macosx',
206
- 'CODE_SIGN_IDENTITY' => '-',
207
211
  }.freeze,
208
212
  [:tvos] => {
209
213
  'SDKROOT' => 'appletvos',
@@ -252,7 +256,6 @@ module Xcodeproj
252
256
  [:debug, :static_library, :swift] => {
253
257
  }.freeze,
254
258
  [:framework] => {
255
- 'CODE_SIGN_IDENTITY' => '',
256
259
  'CURRENT_PROJECT_VERSION' => '1',
257
260
  'DEFINES_MODULE' => 'YES',
258
261
  'DYLIB_COMPATIBILITY_VERSION' => '1',
@@ -270,7 +273,6 @@ module Xcodeproj
270
273
  }.freeze,
271
274
  [:osx, :framework] => {
272
275
  'COMBINE_HIDPI_IMAGES' => 'YES',
273
- 'FRAMEWORK_VERSION' => 'A',
274
276
  'LD_RUNPATH_SEARCH_PATHS' => '$(inherited) @executable_path/../Frameworks @loader_path/Frameworks',
275
277
  }.freeze,
276
278
  [:watchos, :framework] => {
@@ -312,6 +314,7 @@ module Xcodeproj
312
314
  }.freeze,
313
315
  [:application] => {
314
316
  'ASSETCATALOG_COMPILER_APPICON_NAME' => 'AppIcon',
317
+ 'ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME' => 'AccentColor',
315
318
  }.freeze,
316
319
  [:ios, :application] => {
317
320
  'LD_RUNPATH_SEARCH_PATHS' => '$(inherited) @executable_path/Frameworks',
@@ -327,10 +330,12 @@ module Xcodeproj
327
330
  }.freeze,
328
331
  [:tvos, :application] => {
329
332
  'ASSETCATALOG_COMPILER_APPICON_NAME' => 'App Icon & Top Shelf Image',
330
- 'ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME' => 'LaunchImage',
331
333
  'LD_RUNPATH_SEARCH_PATHS' => '$(inherited) @executable_path/Frameworks',
332
334
  'TARGETED_DEVICE_FAMILY' => '3',
333
335
  }.freeze,
336
+ [:tvos, :application, :swift] => {
337
+ 'ENABLE_PREVIEWS' => 'YES',
338
+ }.freeze,
334
339
  [:watchos, :application, :swift] => {
335
340
  'ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES' => 'YES',
336
341
  }.freeze,
@@ -376,6 +381,7 @@ module Xcodeproj
376
381
  'CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF' => 'YES',
377
382
  'CLANG_WARN_OBJC_LITERAL_CONVERSION' => 'YES',
378
383
  'CLANG_WARN_OBJC_ROOT_CLASS' => 'YES_ERROR',
384
+ 'CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER' => 'YES',
379
385
  'CLANG_WARN_RANGE_LOOP_ANALYSIS' => 'YES',
380
386
  'CLANG_WARN_STRICT_PROTOTYPES' => 'YES',
381
387
  'CLANG_WARN_SUSPICIOUS_MOVE' => 'YES',
@@ -448,5 +454,12 @@ module Xcodeproj
448
454
  $(inherited)
449
455
  ${inherited}
450
456
  ).freeze
457
+
458
+ # @return [Hash] Possible types for a scheme's 'ExecutionAction' node
459
+ #
460
+ EXECUTION_ACTION_TYPE = {
461
+ :shell_script => 'Xcode.IDEStandardExecutionActionsCore.ExecutionActionType.ShellScriptAction',
462
+ :send_email => 'Xcode.IDEStandardExecutionActionsCore.ExecutionActionType.SendEmailAction',
463
+ }.freeze
451
464
  end
452
465
  end
@@ -1,5 +1,5 @@
1
1
  module Xcodeproj
2
2
  # The version of the xcodeproj gem.
3
3
  #
4
- VERSION = '1.16.0'.freeze unless defined? Xcodeproj::VERSION
4
+ VERSION = '1.20.0'.freeze unless defined? Xcodeproj::VERSION
5
5
  end
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  require 'atomos'
2
3
  require 'fileutils'
3
4
  require 'securerandom'
@@ -220,11 +221,11 @@ module Xcodeproj
220
221
  end
221
222
 
222
223
  if archive_version.to_i > Constants::LAST_KNOWN_ARCHIVE_VERSION
223
- raise '[Xcodeproj] Unknown archive version.'
224
+ raise "[Xcodeproj] Unknown archive version (#{archive_version.to_i})."
224
225
  end
225
226
 
226
227
  if object_version.to_i > Constants::LAST_KNOWN_OBJECT_VERSION
227
- raise '[Xcodeproj] Unknown object version.'
228
+ raise "[Xcodeproj] Unknown object version (#{object_version.to_i})."
228
229
  end
229
230
 
230
231
  # Projects can have product_ref_groups that are not listed in the main_groups["Products"]
@@ -711,9 +712,10 @@ module Xcodeproj
711
712
  #
712
713
  # @return [PBXNativeTarget] the target.
713
714
  #
714
- def new_target(type, name, platform, deployment_target = nil, product_group = nil, language = nil)
715
+ def new_target(type, name, platform, deployment_target = nil, product_group = nil, language = nil, product_basename = nil)
715
716
  product_group ||= products_group
716
- ProjectHelper.new_target(self, type, name, platform, deployment_target, product_group, language)
717
+ product_basename ||= name
718
+ ProjectHelper.new_target(self, type, name, platform, deployment_target, product_group, language, product_basename)
717
719
  end
718
720
 
719
721
  # Creates a new resource bundles target and adds it to the project.
@@ -731,9 +733,10 @@ module Xcodeproj
731
733
  #
732
734
  # @return [PBXNativeTarget] the target.
733
735
  #
734
- def new_resources_bundle(name, platform, product_group = nil)
736
+ def new_resources_bundle(name, platform, product_group = nil, product_basename = nil)
735
737
  product_group ||= products_group
736
- ProjectHelper.new_resources_bundle(self, name, platform, product_group)
738
+ product_basename ||= name
739
+ ProjectHelper.new_resources_bundle(self, name, platform, product_group, product_basename)
737
740
  end
738
741
 
739
742
  # Creates a new target and adds it to the project.
@@ -49,7 +49,9 @@ module Xcodeproj
49
49
  # user.
50
50
  #
51
51
  def display_name
52
- if file_ref
52
+ if product_ref
53
+ product_ref.display_name
54
+ elsif file_ref
53
55
  file_ref.display_name
54
56
  else
55
57
  super
@@ -30,6 +30,16 @@ module Xcodeproj
30
30
  #
31
31
  attribute :run_only_for_deployment_postprocessing, String, '0'
32
32
 
33
+ # @return [String] whether or not this run script will be forced to
34
+ # run even on incremental builds. Can be either '1', or
35
+ # missing. By default this option is disabled in Xcode.
36
+ #
37
+ # @note This setting is exposed in Xcode in the UI of
38
+ # PBXShellScriptBuildPhase as `Based on
39
+ # dependency analysis` (selected by default).
40
+ #
41
+ attribute :always_out_of_date, String
42
+
33
43
  # @return [String] Comments associated with this build phase.
34
44
  #
35
45
  # @note This is apparently no longer used by Xcode.
@@ -226,24 +226,24 @@ module Xcodeproj
226
226
  # Creates a file reference to a static library and adds it to the
227
227
  # group.
228
228
  #
229
- # @param [#to_s] product_name
229
+ # @param [#to_s] product_basename
230
230
  # The name of the static library.
231
231
  #
232
232
  # @return [PBXFileReference] The new file reference.
233
233
  #
234
- def new_product_ref_for_target(target_name, product_type)
235
- FileReferencesFactory.new_product_ref_for_target(self, target_name, product_type)
234
+ def new_product_ref_for_target(product_basename, product_type)
235
+ FileReferencesFactory.new_product_ref_for_target(self, product_basename, product_type)
236
236
  end
237
237
 
238
238
  # Creates a file reference to a new bundle.
239
239
  #
240
- # @param [#to_s] product_name
240
+ # @param [#to_s] product_basename
241
241
  # The name of the bundle.
242
242
  #
243
243
  # @return [PBXFileReference] The new file reference.
244
244
  #
245
- def new_bundle(product_name)
246
- FileReferencesFactory.new_bundle(self, product_name)
245
+ def new_bundle(product_basename)
246
+ FileReferencesFactory.new_bundle(self, product_basename)
247
247
  end
248
248
 
249
249
  # Creates a file reference to a new bundle and adds it to the group.