cocoapods 0.33.1 → 0.34.0.rc1
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 +4 -4
- data/CHANGELOG.md +171 -46
- data/README.md +9 -9
- data/bin/pod +5 -5
- data/bin/sandbox-pod +2 -6
- data/lib/cocoapods.rb +4 -4
- data/lib/cocoapods/command.rb +12 -10
- data/lib/cocoapods/command/init.rb +12 -13
- data/lib/cocoapods/command/inter_process_communication.rb +6 -17
- data/lib/cocoapods/command/lib.rb +27 -24
- data/lib/cocoapods/command/list.rb +9 -9
- data/lib/cocoapods/command/outdated.rb +4 -9
- data/lib/cocoapods/command/project.rb +57 -19
- data/lib/cocoapods/command/push.rb +0 -1
- data/lib/cocoapods/command/repo.rb +14 -15
- data/lib/cocoapods/command/repo/push.rb +24 -19
- data/lib/cocoapods/command/search.rb +12 -13
- data/lib/cocoapods/command/setup.rb +10 -9
- data/lib/cocoapods/command/spec.rb +67 -63
- data/lib/cocoapods/config.rb +21 -54
- data/lib/cocoapods/downloader.rb +0 -1
- data/lib/cocoapods/executable.rb +3 -8
- data/lib/cocoapods/external_sources.rb +2 -4
- data/lib/cocoapods/external_sources/abstract_external_source.rb +15 -10
- data/lib/cocoapods/external_sources/downloader_source.rb +0 -2
- data/lib/cocoapods/external_sources/path_source.rb +1 -4
- data/lib/cocoapods/external_sources/podspec_source.rb +1 -3
- data/lib/cocoapods/gem_version.rb +1 -2
- data/lib/cocoapods/generator/acknowledgements.rb +5 -8
- data/lib/cocoapods/generator/acknowledgements/markdown.rb +5 -7
- data/lib/cocoapods/generator/acknowledgements/plist.rb +9 -10
- data/lib/cocoapods/generator/bridge_support.rb +1 -1
- data/lib/cocoapods/generator/copy_resources_script.rb +10 -14
- data/lib/cocoapods/generator/dummy_source.rb +3 -3
- data/lib/cocoapods/generator/prefix_header.rb +15 -16
- data/lib/cocoapods/generator/target_environment_header.rb +122 -36
- data/lib/cocoapods/generator/xcconfig.rb +0 -4
- data/lib/cocoapods/generator/xcconfig/aggregate_xcconfig.rb +74 -65
- data/lib/cocoapods/generator/xcconfig/private_pod_xcconfig.rb +92 -95
- data/lib/cocoapods/generator/xcconfig/public_pod_xcconfig.rb +48 -51
- data/lib/cocoapods/generator/xcconfig/xcconfig_helper.rb +10 -10
- data/lib/cocoapods/hooks/installer_representation.rb +15 -18
- data/lib/cocoapods/hooks/library_representation.rb +4 -8
- data/lib/cocoapods/hooks/pod_representation.rb +1 -5
- data/lib/cocoapods/hooks_manager.rb +63 -0
- data/lib/cocoapods/installer.rb +60 -47
- data/lib/cocoapods/installer/analyzer.rb +60 -62
- data/lib/cocoapods/installer/analyzer/sandbox_analyzer.rb +5 -8
- data/lib/cocoapods/installer/file_references_installer.rb +7 -10
- data/lib/cocoapods/installer/hooks_context.rb +74 -0
- data/lib/cocoapods/installer/migrator.rb +99 -0
- data/lib/cocoapods/installer/pod_source_installer.rb +9 -29
- data/lib/cocoapods/installer/target_installer.rb +7 -17
- data/lib/cocoapods/installer/target_installer/aggregate_target_installer.rb +40 -41
- data/lib/cocoapods/installer/target_installer/pod_target_installer.rb +43 -54
- data/lib/cocoapods/installer/user_project_integrator.rb +54 -10
- data/lib/cocoapods/installer/user_project_integrator/target_integrator.rb +66 -117
- data/lib/cocoapods/installer/user_project_integrator/target_integrator/xcconfig_integrator.rb +116 -0
- data/lib/cocoapods/open_uri.rb +1 -2
- data/lib/cocoapods/project.rb +34 -8
- data/lib/cocoapods/resolver.rb +43 -21
- data/lib/cocoapods/sandbox.rb +80 -75
- data/lib/cocoapods/sandbox/file_accessor.rb +3 -8
- data/lib/cocoapods/sandbox/headers_store.rb +6 -7
- data/lib/cocoapods/sandbox/path_list.rb +7 -10
- data/lib/cocoapods/sources_manager.rb +81 -49
- data/lib/cocoapods/target.rb +18 -12
- data/lib/cocoapods/target/aggregate_target.rb +43 -18
- data/lib/cocoapods/target/pod_target.rb +37 -4
- data/lib/cocoapods/user_interface.rb +19 -18
- data/lib/cocoapods/user_interface/error_report.rb +23 -4
- data/lib/cocoapods/validator.rb +30 -33
- metadata +100 -73
- data/lib/cocoapods/command/help.rb +0 -25
@@ -1,7 +1,6 @@
|
|
1
1
|
module Pod
|
2
2
|
class Installer
|
3
3
|
class Analyzer
|
4
|
-
|
5
4
|
# Analyze the sandbox to detect which Pods should be removed, and which
|
6
5
|
# ones should be reinstalled.
|
7
6
|
#
|
@@ -28,7 +27,6 @@ module Pod
|
|
28
27
|
# - If none of the above conditions match.
|
29
28
|
#
|
30
29
|
class SandboxAnalyzer
|
31
|
-
|
32
30
|
# @return [Sandbox] The sandbox to analyze.
|
33
31
|
#
|
34
32
|
attr_reader :sandbox
|
@@ -98,7 +96,7 @@ module Pod
|
|
98
96
|
return :added if pod_added?(pod)
|
99
97
|
return :deleted if pod_deleted?(pod)
|
100
98
|
return :changed if pod_changed?(pod)
|
101
|
-
|
99
|
+
:unchanged
|
102
100
|
end
|
103
101
|
|
104
102
|
# Returns whether the Pod with the given name should be installed.
|
@@ -112,8 +110,8 @@ module Pod
|
|
112
110
|
#
|
113
111
|
def pod_added?(pod)
|
114
112
|
return true if resolved_pods.include?(pod) && !sandbox_pods.include?(pod)
|
115
|
-
return true
|
116
|
-
|
113
|
+
return true unless folder_exist?(pod)
|
114
|
+
false
|
117
115
|
end
|
118
116
|
|
119
117
|
# Returns whether the Pod with the given name should be removed from
|
@@ -126,7 +124,7 @@ module Pod
|
|
126
124
|
#
|
127
125
|
def pod_deleted?(pod)
|
128
126
|
return true if !resolved_pods.include?(pod) && sandbox_pods.include?(pod)
|
129
|
-
|
127
|
+
false
|
130
128
|
end
|
131
129
|
|
132
130
|
# Returns whether the Pod with the given name should be considered
|
@@ -154,7 +152,7 @@ module Pod
|
|
154
152
|
if update_mode
|
155
153
|
return true if sandbox.head_pod?(pod)
|
156
154
|
end
|
157
|
-
|
155
|
+
false
|
158
156
|
end
|
159
157
|
|
160
158
|
#---------------------------------------------------------------------#
|
@@ -254,7 +252,6 @@ module Pod
|
|
254
252
|
end
|
255
253
|
|
256
254
|
#---------------------------------------------------------------------#
|
257
|
-
|
258
255
|
end
|
259
256
|
end
|
260
257
|
end
|
@@ -1,11 +1,9 @@
|
|
1
1
|
module Pod
|
2
2
|
class Installer
|
3
|
-
|
4
3
|
# Controller class responsible of installing the file references of the
|
5
4
|
# specifications in the Pods project.
|
6
5
|
#
|
7
6
|
class FileReferencesInstaller
|
8
|
-
|
9
7
|
# @return [Sandbox] The sandbox of the installation.
|
10
8
|
#
|
11
9
|
attr_reader :sandbox
|
@@ -68,7 +66,7 @@ module Pod
|
|
68
66
|
# @return [void]
|
69
67
|
#
|
70
68
|
def add_source_files_references
|
71
|
-
UI.message
|
69
|
+
UI.message '- Adding source files to Pods project' do
|
72
70
|
add_file_accessors_paths_to_pods_group(:source_files)
|
73
71
|
end
|
74
72
|
end
|
@@ -78,7 +76,7 @@ module Pod
|
|
78
76
|
# @return [void]
|
79
77
|
#
|
80
78
|
def add_frameworks_bundles
|
81
|
-
UI.message
|
79
|
+
UI.message '- Adding frameworks to Pods project' do
|
82
80
|
add_file_accessors_paths_to_pods_group(:vendored_frameworks, :frameworks)
|
83
81
|
end
|
84
82
|
end
|
@@ -88,7 +86,7 @@ module Pod
|
|
88
86
|
# @return [void]
|
89
87
|
#
|
90
88
|
def add_vendored_libraries
|
91
|
-
UI.message
|
89
|
+
UI.message '- Adding libraries to Pods project' do
|
92
90
|
add_file_accessors_paths_to_pods_group(:vendored_libraries, :frameworks)
|
93
91
|
end
|
94
92
|
end
|
@@ -101,7 +99,7 @@ module Pod
|
|
101
99
|
# @return [void]
|
102
100
|
#
|
103
101
|
def add_resources
|
104
|
-
UI.message
|
102
|
+
UI.message '- Adding resources to Pods project' do
|
105
103
|
add_file_accessors_paths_to_pods_group(:resources, :resources)
|
106
104
|
add_file_accessors_paths_to_pods_group(:resource_bundle_files, :resources)
|
107
105
|
end
|
@@ -112,7 +110,7 @@ module Pod
|
|
112
110
|
# @return [void]
|
113
111
|
#
|
114
112
|
def link_headers
|
115
|
-
UI.message
|
113
|
+
UI.message '- Linking headers' do
|
116
114
|
libraries.each do |library|
|
117
115
|
library.file_accessors.each do |file_accessor|
|
118
116
|
headers_sandbox = Pathname.new(file_accessor.spec.root.name)
|
@@ -185,7 +183,7 @@ module Pod
|
|
185
183
|
def header_mappings(headers_sandbox, file_accessor, headers)
|
186
184
|
consumer = file_accessor.spec_consumer
|
187
185
|
dir = headers_sandbox
|
188
|
-
dir
|
186
|
+
dir += consumer.header_dir if consumer.header_dir
|
189
187
|
|
190
188
|
mappings = {}
|
191
189
|
headers.each do |header|
|
@@ -193,7 +191,7 @@ module Pod
|
|
193
191
|
if consumer.header_mappings_dir
|
194
192
|
header_mappings_dir = file_accessor.path_list.root + consumer.header_mappings_dir
|
195
193
|
relative_path = header.relative_path_from(header_mappings_dir)
|
196
|
-
sub_dir
|
194
|
+
sub_dir += relative_path.dirname
|
197
195
|
end
|
198
196
|
mappings[sub_dir] ||= []
|
199
197
|
mappings[sub_dir] << header
|
@@ -202,7 +200,6 @@ module Pod
|
|
202
200
|
end
|
203
201
|
|
204
202
|
#-----------------------------------------------------------------------#
|
205
|
-
|
206
203
|
end
|
207
204
|
end
|
208
205
|
end
|
@@ -0,0 +1,74 @@
|
|
1
|
+
module Pod
|
2
|
+
class Installer
|
3
|
+
# Context object designed to be used with the HooksManager which describes
|
4
|
+
# the context of the installer.
|
5
|
+
#
|
6
|
+
class HooksContext
|
7
|
+
# @return [String] The path to the sandbox root (`Pods` directory).
|
8
|
+
#
|
9
|
+
attr_accessor :sandbox_root
|
10
|
+
|
11
|
+
# @return [Array<UmbrellaTargetDescription>] The list of
|
12
|
+
# the CocoaPods umbrella targets generated by the installer.
|
13
|
+
#
|
14
|
+
attr_accessor :umbrella_targets
|
15
|
+
|
16
|
+
# @return [HooksContext] Convenience class method to generate the
|
17
|
+
# static context.
|
18
|
+
#
|
19
|
+
def self.generate(sandbox, aggregate_targets)
|
20
|
+
umbrella_targets_descriptions = []
|
21
|
+
aggregate_targets.each do |umbrella|
|
22
|
+
desc = UmbrellaTargetDescription.new
|
23
|
+
desc.user_project_path = umbrella.user_project_path
|
24
|
+
desc.user_target_uuids = umbrella.user_target_uuids
|
25
|
+
desc.specs = umbrella.specs
|
26
|
+
desc.platform_name = umbrella.platform.name
|
27
|
+
desc.platform_deployment_target = umbrella.platform.deployment_target.to_s
|
28
|
+
desc.cocoapods_target_label = umbrella.label
|
29
|
+
umbrella_targets_descriptions << desc
|
30
|
+
end
|
31
|
+
|
32
|
+
result = new
|
33
|
+
result.sandbox_root = sandbox.root.to_s
|
34
|
+
result.umbrella_targets = umbrella_targets_descriptions
|
35
|
+
result
|
36
|
+
end
|
37
|
+
|
38
|
+
# Pure data class which describes and umbrella target.
|
39
|
+
#
|
40
|
+
class UmbrellaTargetDescription
|
41
|
+
# @return [String] The path of the user project
|
42
|
+
# integrated by this target.
|
43
|
+
#
|
44
|
+
attr_accessor :user_project_path
|
45
|
+
|
46
|
+
# @return [Array<String>] The list of the UUIDs of the
|
47
|
+
# user targets integrated by this umbrella
|
48
|
+
# target. They can be used to find the
|
49
|
+
# targets opening the project They can be used
|
50
|
+
# to find the targets opening the project with
|
51
|
+
# Xcodeproj.
|
52
|
+
#
|
53
|
+
attr_accessor :user_target_uuids
|
54
|
+
|
55
|
+
# @return [Array<Specification>] The list of the
|
56
|
+
# specifications of the target.
|
57
|
+
#
|
58
|
+
attr_accessor :specs
|
59
|
+
|
60
|
+
# @return [Symbol] The platform (either `:ios` or `:osx`).
|
61
|
+
#
|
62
|
+
attr_accessor :platform_name
|
63
|
+
|
64
|
+
# @return [String] The deployment target.
|
65
|
+
#
|
66
|
+
attr_accessor :platform_deployment_target
|
67
|
+
|
68
|
+
# @return [String] The label for the target.
|
69
|
+
#
|
70
|
+
attr_accessor :cocoapods_target_label
|
71
|
+
end
|
72
|
+
end
|
73
|
+
end
|
74
|
+
end
|
@@ -0,0 +1,99 @@
|
|
1
|
+
require 'fileutils'
|
2
|
+
|
3
|
+
module Pod
|
4
|
+
class Installer
|
5
|
+
# Migrates installations performed by previous versions of CocoaPods.
|
6
|
+
#
|
7
|
+
class Migrator
|
8
|
+
class << self
|
9
|
+
# Performs the migration.
|
10
|
+
#
|
11
|
+
# @param [Sandbox] The sandbox which should be migrated.
|
12
|
+
#
|
13
|
+
def migrate(sandbox)
|
14
|
+
if sandbox.manifest
|
15
|
+
migrate_to_0_34(sandbox) if installation_minor?('0.34', sandbox)
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
# @!group Migration Steps
|
20
|
+
|
21
|
+
# Migrates from CocoaPods versions previous to 0.34.
|
22
|
+
#
|
23
|
+
def migrate_to_0_34(sandbox)
|
24
|
+
UI.message('Migrating to CocoaPods 0.34') do
|
25
|
+
delete(sandbox.root + 'Headers')
|
26
|
+
make_path(sandbox.headers_root)
|
27
|
+
|
28
|
+
sandbox.root.children.each do |child|
|
29
|
+
relative = child.relative_path_from(sandbox.root)
|
30
|
+
case relative.to_s
|
31
|
+
when 'Manifest.lock', 'Pods.xcodeproj', 'Headers',
|
32
|
+
'Target Support Files', 'Local Podspecs'
|
33
|
+
next
|
34
|
+
when 'BuildHeaders', 'PublicHeaders'
|
35
|
+
delete(child)
|
36
|
+
else
|
37
|
+
if child.directory? && child.extname != '.xcodeproj'
|
38
|
+
next
|
39
|
+
else
|
40
|
+
delete(child)
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
45
|
+
|
46
|
+
delete(Pathname(File.join(ENV['HOME'], 'Library/Caches/CocoaPods/Git')))
|
47
|
+
end
|
48
|
+
|
49
|
+
# @!group Private helpers
|
50
|
+
|
51
|
+
def installation_minor?(target_version, sandbox)
|
52
|
+
sandbox.manifest.cocoapods_version < Version.new(target_version)
|
53
|
+
end
|
54
|
+
|
55
|
+
# Makes a path creating any intermediate directory and printing an UI
|
56
|
+
# message.
|
57
|
+
#
|
58
|
+
# @path [#to_s] path
|
59
|
+
# The path.
|
60
|
+
#
|
61
|
+
def make_path(path)
|
62
|
+
return if path.exist?
|
63
|
+
UI.message "- Making path #{UI.path(path)}" do
|
64
|
+
path.mkpath
|
65
|
+
end
|
66
|
+
end
|
67
|
+
|
68
|
+
# Moves a path to another one printing an UI message.
|
69
|
+
#
|
70
|
+
# @path [#to_s] source
|
71
|
+
# The path to move.
|
72
|
+
#
|
73
|
+
# @path [#to_s] destination
|
74
|
+
# The destination path.
|
75
|
+
#
|
76
|
+
def move(source, destination)
|
77
|
+
return unless source.exist?
|
78
|
+
make_path(destination.dirname)
|
79
|
+
UI.message "- Moving #{UI.path(source)} to #{UI.path(destination)}" do
|
80
|
+
FileUtils.mv(source.to_s, destination.to_s)
|
81
|
+
end
|
82
|
+
end
|
83
|
+
|
84
|
+
# Deletes a path, including non empty directories, printing an UI
|
85
|
+
# message.
|
86
|
+
#
|
87
|
+
# @path [#to_s] path
|
88
|
+
# The path.
|
89
|
+
#
|
90
|
+
def delete(path)
|
91
|
+
return unless path.exist?
|
92
|
+
UI.message "- Deleting #{UI.path(path)}" do
|
93
|
+
FileUtils.rm_rf(path)
|
94
|
+
end
|
95
|
+
end
|
96
|
+
end
|
97
|
+
end
|
98
|
+
end
|
99
|
+
end
|
@@ -2,14 +2,12 @@ require 'active_support/core_ext/string/strip'
|
|
2
2
|
|
3
3
|
module Pod
|
4
4
|
class Installer
|
5
|
-
|
6
5
|
# Controller class responsible of installing the activated specifications
|
7
6
|
# of a single Pod.
|
8
7
|
#
|
9
8
|
# @note This class needs to consider all the activated specs of a Pod.
|
10
9
|
#
|
11
10
|
class PodSourceInstaller
|
12
|
-
|
13
11
|
# @return [Sandbox]
|
14
12
|
#
|
15
13
|
attr_reader :sandbox
|
@@ -25,8 +23,6 @@ module Pod
|
|
25
23
|
def initialize(sandbox, specs_by_platform)
|
26
24
|
@sandbox = sandbox
|
27
25
|
@specs_by_platform = specs_by_platform
|
28
|
-
|
29
|
-
@aggressive_cache = false
|
30
26
|
end
|
31
27
|
|
32
28
|
# @return [String] A string suitable for debugging.
|
@@ -39,21 +35,6 @@ module Pod
|
|
39
35
|
|
40
36
|
public
|
41
37
|
|
42
|
-
# @!group Configuration
|
43
|
-
|
44
|
-
# @return [Bool] whether the downloader should always check against the
|
45
|
-
# remote if issues might be generated (mostly useful to speed up
|
46
|
-
# testing).
|
47
|
-
#
|
48
|
-
# @note This might be removed in future.
|
49
|
-
#
|
50
|
-
attr_accessor :aggressive_cache
|
51
|
-
alias_method :aggressive_cache?, :aggressive_cache
|
52
|
-
|
53
|
-
#-----------------------------------------------------------------------#
|
54
|
-
|
55
|
-
public
|
56
|
-
|
57
38
|
# @!group Installation
|
58
39
|
|
59
40
|
# Creates the target in the Pods project and the relative support files.
|
@@ -79,7 +60,7 @@ module Pod
|
|
79
60
|
# @return [void]
|
80
61
|
#
|
81
62
|
def clean!
|
82
|
-
clean_installation
|
63
|
+
clean_installation unless local?
|
83
64
|
end
|
84
65
|
|
85
66
|
# @return [Hash]
|
@@ -106,9 +87,9 @@ module Pod
|
|
106
87
|
@specific_source = downloader.checkout_options
|
107
88
|
rescue RuntimeError => e
|
108
89
|
if e.message == 'Abstract method'
|
109
|
-
raise Informative, "The pod '" + root_spec.name + "' does not "
|
110
|
-
|
111
|
-
|
90
|
+
raise Informative, "The pod '" + root_spec.name + "' does not " \
|
91
|
+
'support the :head option, as it uses a ' + downloader.name +
|
92
|
+
' source. Remove that option to use this pod.'
|
112
93
|
else
|
113
94
|
raise
|
114
95
|
end
|
@@ -121,7 +102,7 @@ module Pod
|
|
121
102
|
end
|
122
103
|
|
123
104
|
if specific_source
|
124
|
-
|
105
|
+
sandbox.store_checkout_source(root_spec.name, specific_source)
|
125
106
|
end
|
126
107
|
end
|
127
108
|
|
@@ -138,7 +119,7 @@ module Pod
|
|
138
119
|
#
|
139
120
|
def run_prepare_command
|
140
121
|
return unless root_spec.prepare_command
|
141
|
-
UI.section(
|
122
|
+
UI.section(' > Running prepare command', '', 1) do
|
142
123
|
Dir.chdir(root) do
|
143
124
|
ENV.delete('CDPATH')
|
144
125
|
prepare_command = root_spec.prepare_command.strip_heredoc.chomp
|
@@ -167,7 +148,7 @@ module Pod
|
|
167
148
|
# source.
|
168
149
|
#
|
169
150
|
def downloader
|
170
|
-
@downloader ||=
|
151
|
+
@downloader ||= Downloader.for_target(root, root_spec.source.dup)
|
171
152
|
end
|
172
153
|
|
173
154
|
#-----------------------------------------------------------------------#
|
@@ -254,7 +235,7 @@ module Pod
|
|
254
235
|
def clean_paths
|
255
236
|
cached_used = used_files
|
256
237
|
glob_options = File::FNM_DOTMATCH | File::FNM_CASEFOLD
|
257
|
-
files = Pathname.glob(root +
|
238
|
+
files = Pathname.glob(root + '**/*', glob_options).map(&:to_s)
|
258
239
|
|
259
240
|
files.reject! do |candidate|
|
260
241
|
candidate = candidate.downcase
|
@@ -282,11 +263,10 @@ module Pod
|
|
282
263
|
file_accessors.map(&:source_files),
|
283
264
|
]
|
284
265
|
|
285
|
-
files.flatten.compact.map
|
266
|
+
files.flatten.compact.map(&:to_s).uniq
|
286
267
|
end
|
287
268
|
|
288
269
|
#-----------------------------------------------------------------------#
|
289
|
-
|
290
270
|
end
|
291
271
|
end
|
292
272
|
end
|
@@ -1,12 +1,10 @@
|
|
1
1
|
module Pod
|
2
2
|
class Installer
|
3
|
-
|
4
3
|
# Controller class responsible of creating and configuring the static
|
5
4
|
# library target in Pods project. It also creates the support file needed
|
6
5
|
# by the target.
|
7
6
|
#
|
8
7
|
class TargetInstaller
|
9
|
-
|
10
8
|
# @return [Sandbox] sandbox the sandbox where the support files should
|
11
9
|
# be generated.
|
12
10
|
#
|
@@ -47,7 +45,6 @@ module Pod
|
|
47
45
|
configuration = @target.add_build_configuration(bc_name, type)
|
48
46
|
end
|
49
47
|
|
50
|
-
|
51
48
|
settings = {}
|
52
49
|
if library.archs
|
53
50
|
settings['ARCHS'] = library.archs
|
@@ -60,13 +57,10 @@ module Pod
|
|
60
57
|
library.target = @target
|
61
58
|
end
|
62
59
|
|
63
|
-
# Creates the
|
64
|
-
# generated by this installer.
|
65
|
-
#
|
66
|
-
# @return [void]
|
60
|
+
# Creates the directory where to store the support files of the target.
|
67
61
|
#
|
68
|
-
def
|
69
|
-
|
62
|
+
def create_support_files_dir
|
63
|
+
library.support_files_dir.mkdir
|
70
64
|
end
|
71
65
|
|
72
66
|
# Generates a dummy source file for each target so libraries that contain
|
@@ -76,12 +70,10 @@ module Pod
|
|
76
70
|
#
|
77
71
|
def create_dummy_source
|
78
72
|
path = library.dummy_source_path
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
target.source_build_phase.add_file_reference(file_reference)
|
84
|
-
end
|
73
|
+
generator = Generator::DummySource.new(library.label)
|
74
|
+
generator.save_as(path)
|
75
|
+
file_reference = add_file_to_support_group(path)
|
76
|
+
target.source_build_phase.add_file_reference(file_reference)
|
85
77
|
end
|
86
78
|
|
87
79
|
# @return [PBXNativeTarget] the target generated by the installation
|
@@ -126,8 +118,6 @@ module Pod
|
|
126
118
|
end
|
127
119
|
|
128
120
|
#-----------------------------------------------------------------------#
|
129
|
-
|
130
121
|
end
|
131
122
|
end
|
132
123
|
end
|
133
|
-
|