xcake 0.9.2 → 0.12.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 84e4cfbddcd00890dc06dfd5e6dba50bfae1613158e47c442e0c4e8552dbc642
4
- data.tar.gz: 93f0046f0314420c80c77c1f5d8844858ad8b92b183ac86c3f0c20282c031687
3
+ metadata.gz: 3eb1fcdb7e1d905f0bad455a6d4ffc6507d0ab83fdbe59cdf1debeb4351bbd6c
4
+ data.tar.gz: 4234b7ef70e70b6f876b0efa5f1cccc549f112fc5d603f761558062539bfefd5
5
5
  SHA512:
6
- metadata.gz: b7b2b6f5046dfacf424195e106b2d19ed760579eba0e447b72047a5e04e7891676838b76be80a98c629debec67169b613427891b42d5d02e4ba5e211cdeba15f
7
- data.tar.gz: 1fb5c4c2908d79503bd12fe38de61d63eae0d5225bd323cf0841242955a6a00a9b58cc704b378fc0e667b2e44cc5b5a318b403e9dd183823c254a95d8816a854
6
+ metadata.gz: b3f4b6b7b1d85fa44c13bfc4feb11fc64ec42f7817e9918bbd2de49b799a501f1c1ca3e7b8d46021903d0dc9ed0cca3565a04a1c9114e8243550e97788d974a8
7
+ data.tar.gz: 42d52c4ec1133be794d15727a8537cd73324f3db15c16c302d01dd131999bf968fbd2838a37775e2ed3aeab11dbd363f09efa4f58f4a3e76fd0055cb2634571b
@@ -1,4 +1,4 @@
1
- require 'active_support/core_ext/hash/deep_merge'
1
+ require 'deep_merge'
2
2
 
3
3
  module Xcake
4
4
  module Constants
@@ -1,13 +1,13 @@
1
1
  module Xcake
2
2
  module CoreExtensions
3
3
  # @example Including in a class
4
- # Class.send(:include, Xcake::CoreExtensions::ClassDescendants) # done with send because of old ruby versions
4
+ # extend Xcake::CoreExtensions::ClassDescendants
5
5
  #
6
6
  module ClassDescendants
7
7
  # Returns all descendants of a class
8
8
  #
9
9
  def descendants
10
- ObjectSpace.each_object(singleton_class).select { |klass| klass < self }
10
+ ObjectSpace.each_object(singleton_class).select { |klass| klass < self }.sort_by(&:to_s)
11
11
  end
12
12
  end
13
13
  end
@@ -17,7 +17,7 @@ module Xcake
17
17
  #
18
18
  # @example Using Supported Devices
19
19
  #
20
- # Target.new do |t|
20
+ # Target.new(project) do |t|
21
21
  # t.all_configurations.each do |c|
22
22
  # c.supported_devices = :ipad_only
23
23
  # end
@@ -63,7 +63,7 @@ module Xcake
63
63
  # the newly created target
64
64
  #
65
65
  def target(&block)
66
- target = Target.new(&block)
66
+ target = Target.new(self, &block)
67
67
  targets << target
68
68
  target
69
69
  end
@@ -60,6 +60,10 @@ module Xcake
60
60
  t.type = :ui_test_bundle
61
61
  configure_test_target_for_host_target(t, host_target)
62
62
 
63
+ t.all_configurations.each do |c|
64
+ c.settings['TEST_TARGET_NAME'] = host_target.name
65
+ end
66
+
63
67
  yield(t) if block_given?
64
68
  end
65
69
  end
@@ -182,16 +182,19 @@ module Xcake
182
182
  #
183
183
  attr_accessor :schemes
184
184
 
185
+ # @param [Project] project
186
+ # the project the target belongs to.
187
+ #
185
188
  # @param [Proc] block
186
189
  # an optional block that configures the target through the DSL.
187
190
  #
188
191
  # @example Creating a Target.
189
192
  #
190
- # Target.new do |t|
193
+ # Target.new(project) do |t|
191
194
  # t.name "test"
192
195
  # end
193
196
  #
194
- def initialize
197
+ def initialize(project)
195
198
  @pinned_build_phases = []
196
199
  @build_phases = []
197
200
  @build_rules = []
@@ -200,6 +203,7 @@ module Xcake
200
203
  @system_libraries = []
201
204
  @target_dependencies = []
202
205
  @schemes = []
206
+ @project = project
203
207
 
204
208
  yield(self) if block_given?
205
209
  end
@@ -3,7 +3,7 @@ module Xcake
3
3
  include Dependency
4
4
  include Plugin
5
5
  include Visitor
6
- Class.send(:include, CoreExtensions::ClassDescendants) # done with send because of old ruby versions
6
+ extend CoreExtensions::ClassDescendants
7
7
 
8
8
  attr_accessor :context
9
9
 
@@ -7,7 +7,7 @@ module Xcake
7
7
  EXTENSION_MAPPINGS = {
8
8
  PBXFrameworksBuildPhase: %w(.a .dylib .so .framework).freeze,
9
9
  PBXHeadersBuildPhase: %w(.h .hpp).freeze,
10
- PBXSourcesBuildPhase: %w(.c .m .mm .cpp .swift .xcdatamodeld .java).freeze,
10
+ PBXSourcesBuildPhase: %w(.c .m .mm .cpp .cc .swift .xcdatamodeld .java).freeze,
11
11
  PBXResourcesBuildPhase: %w(.xcassets).freeze
12
12
  }.freeze
13
13
 
data/lib/xcake/plugin.rb CHANGED
@@ -5,6 +5,8 @@ module Xcake
5
5
  end
6
6
 
7
7
  module ClassMethods
8
+ include CoreExtensions::ClassDescendants
9
+
8
10
  def load_plugins
9
11
  Dir[plugins_location].each { |file| require file }
10
12
  descendants
data/lib/xcake/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Xcake
2
- VERSION = '0.9.2'.freeze
2
+ VERSION = '0.12.0'.freeze
3
3
  end
metadata CHANGED
@@ -1,36 +1,36 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: xcake
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.2
4
+ version: 0.12.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Igor Makarov
8
8
  - James Campbell
9
- autorequire:
9
+ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2020-01-19 00:00:00.000000000 Z
12
+ date: 2021-05-09 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: claide
16
16
  requirement: !ruby/object:Gem::Requirement
17
17
  requirements:
18
- - - ">="
19
- - !ruby/object:Gem::Version
20
- version: 0.9.1
21
18
  - - "<"
22
19
  - !ruby/object:Gem::Version
23
20
  version: '2.0'
21
+ - - ">="
22
+ - !ruby/object:Gem::Version
23
+ version: 0.9.1
24
24
  type: :runtime
25
25
  prerelease: false
26
26
  version_requirements: !ruby/object:Gem::Requirement
27
27
  requirements:
28
- - - ">="
29
- - !ruby/object:Gem::Version
30
- version: 0.9.1
31
28
  - - "<"
32
29
  - !ruby/object:Gem::Version
33
30
  version: '2.0'
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: 0.9.1
34
34
  - !ruby/object:Gem::Dependency
35
35
  name: cork
36
36
  requirement: !ruby/object:Gem::Requirement
@@ -77,36 +77,22 @@ dependencies:
77
77
  name: xcodeproj
78
78
  requirement: !ruby/object:Gem::Requirement
79
79
  requirements:
80
- - - ">="
81
- - !ruby/object:Gem::Version
82
- version: 1.3.0
83
80
  - - "<"
84
81
  - !ruby/object:Gem::Version
85
82
  version: 2.0.0
86
- type: :runtime
87
- prerelease: false
88
- version_requirements: !ruby/object:Gem::Requirement
89
- requirements:
90
83
  - - ">="
91
84
  - !ruby/object:Gem::Version
92
85
  version: 1.3.0
93
- - - "<"
94
- - !ruby/object:Gem::Version
95
- version: 2.0.0
96
- - !ruby/object:Gem::Dependency
97
- name: activesupport
98
- requirement: !ruby/object:Gem::Requirement
99
- requirements:
100
- - - "<"
101
- - !ruby/object:Gem::Version
102
- version: '5'
103
86
  type: :runtime
104
87
  prerelease: false
105
88
  version_requirements: !ruby/object:Gem::Requirement
106
89
  requirements:
107
90
  - - "<"
108
91
  - !ruby/object:Gem::Version
109
- version: '5'
92
+ version: 2.0.0
93
+ - - ">="
94
+ - !ruby/object:Gem::Version
95
+ version: 1.3.0
110
96
  - !ruby/object:Gem::Dependency
111
97
  name: bundler
112
98
  requirement: !ruby/object:Gem::Requirement
@@ -183,14 +169,14 @@ dependencies:
183
169
  requirements:
184
170
  - - "~>"
185
171
  - !ruby/object:Gem::Version
186
- version: '10.0'
172
+ version: '12.0'
187
173
  type: :development
188
174
  prerelease: false
189
175
  version_requirements: !ruby/object:Gem::Requirement
190
176
  requirements:
191
177
  - - "~>"
192
178
  - !ruby/object:Gem::Version
193
- version: '10.0'
179
+ version: '12.0'
194
180
  - !ruby/object:Gem::Dependency
195
181
  name: rb-readline
196
182
  requirement: !ruby/object:Gem::Requirement
@@ -345,7 +331,7 @@ homepage: https://github.com/igor-makarov/xcake/
345
331
  licenses:
346
332
  - MIT
347
333
  metadata: {}
348
- post_install_message:
334
+ post_install_message:
349
335
  rdoc_options: []
350
336
  require_paths:
351
337
  - lib
@@ -353,15 +339,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
353
339
  requirements:
354
340
  - - ">="
355
341
  - !ruby/object:Gem::Version
356
- version: 2.0.0
342
+ version: '2.6'
357
343
  required_rubygems_version: !ruby/object:Gem::Requirement
358
344
  requirements:
359
345
  - - ">="
360
346
  - !ruby/object:Gem::Version
361
347
  version: '0'
362
348
  requirements: []
363
- rubygems_version: 3.0.3
364
- signing_key:
349
+ rubygems_version: 3.1.4
350
+ signing_key:
365
351
  specification_version: 4
366
352
  summary: Generate Xcode Projects
367
353
  test_files: []