xcodeproj 0.22.0 → 0.23.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 0756fa72953f3c4cbdfe7e1768661b651b702b41
4
- data.tar.gz: b7b626d31419f44580ce1b5b72f51f61daccc88a
3
+ metadata.gz: 7604bc7bc10022a4aadaf027b88825465ee74f02
4
+ data.tar.gz: 5fb1643e3d2ae9018d1895161b805602a2c4aa7c
5
5
  SHA512:
6
- metadata.gz: 91766ef57577045727bbd164e750047813966c3ff806e9923fdfcf14485e55c8902d7b43f843898abc9d71b4b2d56cf63b3fedd2c426dcdd4e8fc43755c338e7
7
- data.tar.gz: 8b20be7de31f3fd85569dbccde9da1ea5056d5587a581030afeba12cbab40438f62e2c964653ef71379c835c12f1888e3866581dafe3c46921e33415ae4bc227
6
+ metadata.gz: b4e454bea599a6eb8ee65d1bcf8ed9705ceebb85ff473f4374c5f863431fbb9c6171e6ca089568750cbbc028cfb3c587a2ec76ca3e639dabb595a844f8d66d52
7
+ data.tar.gz: 4ab58ddb265b57be2d60f44b6775b0ccf37cf8ac49a67a930f4af1080ed6f42e47f01d3ca69796b999cb5d6390b1c4d37a9707badc63a5fe4f4c7117cef9ae89
@@ -1,5 +1,5 @@
1
1
  module Xcodeproj
2
2
  # The version of the xcodeproj gem.
3
3
  #
4
- VERSION = '0.22.0' unless defined? Xcodeproj::VERSION
4
+ VERSION = '0.23.0' unless defined? Xcodeproj::VERSION
5
5
  end
@@ -36,16 +36,19 @@ module Xcodeproj
36
36
  # the product group, where to add to a file reference of the
37
37
  # created target.
38
38
  #
39
+ # @param [Symbol] language
40
+ # the primary language of the target, can be `:objc` or `:swift`.
41
+ #
39
42
  # @return [PBXNativeTarget] the target.
40
43
  #
41
- def self.new_target(project, type, name, platform, deployment_target, product_group)
44
+ def self.new_target(project, type, name, platform, deployment_target, product_group, language)
42
45
  # Target
43
46
  target = project.new(PBXNativeTarget)
44
47
  project.targets << target
45
48
  target.name = name
46
49
  target.product_name = name
47
50
  target.product_type = Constants::PRODUCT_TYPE_UTI[type]
48
- target.build_configuration_list = configuration_list(project, platform, deployment_target, type)
51
+ target.build_configuration_list = configuration_list(project, platform, deployment_target, type, language)
49
52
 
50
53
  # Product
51
54
  product = product_group.new_product_ref_for_target(name, type)
@@ -140,20 +143,23 @@ module Xcodeproj
140
143
  # the product type of the target, can be any of `Constants::PRODUCT_TYPE_UTI.values`
141
144
  # or `Constants::PRODUCT_TYPE_UTI.keys`.
142
145
  #
146
+ # @param [Symbol] language
147
+ # the primary language of the target, can be `:objc` or `:swift`.
148
+ #
143
149
  # @return [XCConfigurationList] the generated configuration list.
144
150
  #
145
- def self.configuration_list(project, platform, deployment_target = nil, target_product_type)
151
+ def self.configuration_list(project, platform, deployment_target = nil, target_product_type, language)
146
152
  cl = project.new(XCConfigurationList)
147
153
  cl.default_configuration_is_visible = '0'
148
154
  cl.default_configuration_name = 'Release'
149
155
 
150
156
  release_conf = project.new(XCBuildConfiguration)
151
157
  release_conf.name = 'Release'
152
- release_conf.build_settings = common_build_settings(:release, platform, deployment_target, target_product_type)
158
+ release_conf.build_settings = common_build_settings(:release, platform, deployment_target, target_product_type, language)
153
159
 
154
160
  debug_conf = project.new(XCBuildConfiguration)
155
161
  debug_conf.name = 'Debug'
156
- debug_conf.build_settings = common_build_settings(:debug, platform, deployment_target, target_product_type)
162
+ debug_conf.build_settings = common_build_settings(:debug, platform, deployment_target, target_product_type, language)
157
163
 
158
164
  cl.build_configurations << release_conf
159
165
  cl.build_configurations << debug_conf
@@ -163,7 +169,7 @@ module Xcodeproj
163
169
 
164
170
  new_config = project.new(XCBuildConfiguration)
165
171
  new_config.name = configuration.name
166
- new_config.build_settings = common_build_settings(:release, platform, deployment_target, target_product_type)
172
+ new_config.build_settings = common_build_settings(:release, platform, deployment_target, target_product_type, language)
167
173
  cl.build_configurations << new_config
168
174
  end
169
175
 
@@ -1,5 +1,4 @@
1
1
  require 'fileutils'
2
- require 'pathname'
3
2
  require 'securerandom'
4
3
 
5
4
  require 'xcodeproj/project/object'
@@ -601,11 +600,14 @@ module Xcodeproj
601
600
  # @param [String] deployment_target
602
601
  # the deployment target for the platform.
603
602
  #
603
+ # @param [Symbol] language
604
+ # the primary language of the target, can be `:objc` or `:swift`.
605
+ #
604
606
  # @return [PBXNativeTarget] the target.
605
607
  #
606
- def new_target(type, name, platform, deployment_target = nil, product_group = nil)
608
+ def new_target(type, name, platform, deployment_target = nil, product_group = nil, language = nil)
607
609
  product_group ||= products_group
608
- ProjectHelper.new_target(self, type, name, platform, deployment_target, product_group)
610
+ ProjectHelper.new_target(self, type, name, platform, deployment_target, product_group, language)
609
611
  end
610
612
 
611
613
  # Creates a new resource bundles target and adds it to the project.
data/lib/xcodeproj.rb CHANGED
@@ -1,4 +1,6 @@
1
1
  module Xcodeproj
2
+ require 'pathname'
3
+
2
4
  class PlainInformative < StandardError
3
5
  end
4
6
 
metadata CHANGED
@@ -1,41 +1,41 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: xcodeproj
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.22.0
4
+ version: 0.23.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Eloy Duran
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-02-25 00:00:00.000000000 Z
11
+ date: 2015-03-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ">="
17
+ - - '>='
18
18
  - !ruby/object:Gem::Version
19
19
  version: '3'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - ">="
24
+ - - '>='
25
25
  - !ruby/object:Gem::Version
26
26
  version: '3'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: colored
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - "~>"
31
+ - - ~>
32
32
  - !ruby/object:Gem::Version
33
33
  version: '1.2'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - "~>"
38
+ - - ~>
39
39
  - !ruby/object:Gem::Version
40
40
  version: '1.2'
41
41
  description: Xcodeproj lets you create and modify Xcode projects from Ruby. Script
@@ -47,26 +47,22 @@ executables:
47
47
  extensions: []
48
48
  extra_rdoc_files: []
49
49
  files:
50
- - LICENSE
51
50
  - README.md
52
- - bin/xcodeproj
53
- - lib/xcodeproj.rb
54
- - lib/xcodeproj/command.rb
51
+ - LICENSE
55
52
  - lib/xcodeproj/command/config_dump.rb
56
53
  - lib/xcodeproj/command/project_diff.rb
57
54
  - lib/xcodeproj/command/show.rb
58
55
  - lib/xcodeproj/command/sort.rb
59
56
  - lib/xcodeproj/command/target_diff.rb
60
- - lib/xcodeproj/config.rb
57
+ - lib/xcodeproj/command.rb
61
58
  - lib/xcodeproj/config/other_linker_flags_parser.rb
59
+ - lib/xcodeproj/config.rb
62
60
  - lib/xcodeproj/constants.rb
63
61
  - lib/xcodeproj/differ.rb
64
62
  - lib/xcodeproj/gem_version.rb
65
63
  - lib/xcodeproj/helper.rb
66
64
  - lib/xcodeproj/plist_helper.rb
67
- - lib/xcodeproj/project.rb
68
65
  - lib/xcodeproj/project/case_converter.rb
69
- - lib/xcodeproj/project/object.rb
70
66
  - lib/xcodeproj/project/object/build_configuration.rb
71
67
  - lib/xcodeproj/project/object/build_file.rb
72
68
  - lib/xcodeproj/project/object/build_phase.rb
@@ -81,15 +77,19 @@ files:
81
77
  - lib/xcodeproj/project/object/reference_proxy.rb
82
78
  - lib/xcodeproj/project/object/root_object.rb
83
79
  - lib/xcodeproj/project/object/target_dependency.rb
80
+ - lib/xcodeproj/project/object.rb
84
81
  - lib/xcodeproj/project/object_attributes.rb
85
82
  - lib/xcodeproj/project/object_dictionary.rb
86
83
  - lib/xcodeproj/project/object_list.rb
87
84
  - lib/xcodeproj/project/project_helper.rb
85
+ - lib/xcodeproj/project.rb
88
86
  - lib/xcodeproj/scheme.rb
89
87
  - lib/xcodeproj/user_interface.rb
90
- - lib/xcodeproj/workspace.rb
91
88
  - lib/xcodeproj/workspace/file_reference.rb
89
+ - lib/xcodeproj/workspace.rb
92
90
  - lib/xcodeproj/xcodebuild_helper.rb
91
+ - lib/xcodeproj.rb
92
+ - bin/xcodeproj
93
93
  homepage: https://github.com/cocoapods/xcodeproj
94
94
  licenses:
95
95
  - MIT
@@ -100,17 +100,17 @@ require_paths:
100
100
  - lib
101
101
  required_ruby_version: !ruby/object:Gem::Requirement
102
102
  requirements:
103
- - - ">="
103
+ - - '>='
104
104
  - !ruby/object:Gem::Version
105
105
  version: 2.0.0
106
106
  required_rubygems_version: !ruby/object:Gem::Requirement
107
107
  requirements:
108
- - - ">="
108
+ - - '>='
109
109
  - !ruby/object:Gem::Version
110
110
  version: '0'
111
111
  requirements: []
112
112
  rubyforge_project:
113
- rubygems_version: 2.4.5
113
+ rubygems_version: 2.0.14
114
114
  signing_key:
115
115
  specification_version: 3
116
116
  summary: Create and modify Xcode projects from Ruby.