xcake 0.9.2 → 0.12.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
  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: []