cocoapods 0.15.2 → 0.16.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.
- data/CHANGELOG.md +11 -1
- data/lib/cocoapods.rb +1 -1
- data/lib/cocoapods/installer.rb +4 -16
- data/lib/cocoapods/installer/target_installer.rb +82 -39
- data/lib/cocoapods/installer/user_project_integrator.rb +11 -16
- data/lib/cocoapods/local_pod.rb +64 -22
- data/lib/cocoapods/project.rb +28 -19
- data/lib/cocoapods/specification.rb +3 -1
- metadata +6 -6
data/CHANGELOG.md
CHANGED
@@ -1,6 +1,16 @@
|
|
1
1
|
## Master
|
2
2
|
|
3
|
-
[CocoaPods](https://github.com/CocoaPods/CocoaPods/compare/0.
|
3
|
+
[CocoaPods](https://github.com/CocoaPods/CocoaPods/compare/0.16.0.rc1...master) • [Xcodeproj](https://github.com/CocoaPods/Xcodeproj/compare/0.4.0.rc1...master)
|
4
|
+
|
5
|
+
## 0.16.0.rc1
|
6
|
+
|
7
|
+
[CocoaPods](https://github.com/CocoaPods/CocoaPods/compare/0.15.2...0.16.0.rc1) • [Xcodeproj](https://github.com/CocoaPods/Xcodeproj/compare/0.3.5...0.4.0.rc1)
|
8
|
+
|
9
|
+
- Xcodeproj partial rewrite.
|
10
|
+
[#565](https://github.com/CocoaPods/CocoaPods/pull/565)
|
11
|
+
[#561](https://github.com/CocoaPods/CocoaPods/pull/561)
|
12
|
+
- Performance improvements in the `Generating support files` phase.
|
13
|
+
- Better support for editing existing projects and sorting groups.
|
4
14
|
|
5
15
|
## 0.15.2
|
6
16
|
|
data/lib/cocoapods.rb
CHANGED
data/lib/cocoapods/installer.rb
CHANGED
@@ -19,18 +19,8 @@ module Pod
|
|
19
19
|
return @project if @project
|
20
20
|
@project = Pod::Project.new
|
21
21
|
@project.user_build_configurations = @podfile.user_build_configurations
|
22
|
-
pods.each
|
23
|
-
|
24
|
-
pod.relative_source_files_by_spec.each do |spec, paths|
|
25
|
-
parent_group = pod.local? ? @project.local_pods : @project.pods
|
26
|
-
group = @project.add_spec_group(spec.name, parent_group)
|
27
|
-
paths.each do |path|
|
28
|
-
group.files.new('path' => path.to_s)
|
29
|
-
end
|
30
|
-
end
|
31
|
-
end
|
32
|
-
# Add a group to hold all the target support files
|
33
|
-
@project.main_group.groups.new('name' => 'Targets Support Files')
|
22
|
+
pods.each { |p| p.add_file_references_to_project(@project) }
|
23
|
+
pods.each { |p| p.link_headers }
|
34
24
|
@project
|
35
25
|
end
|
36
26
|
|
@@ -188,10 +178,8 @@ module Pod
|
|
188
178
|
pathname = Pathname.new(sandbox.root + filename)
|
189
179
|
dummy_source.save_as(pathname)
|
190
180
|
|
191
|
-
|
192
|
-
|
193
|
-
|
194
|
-
target_installer.target.source_build_phases.first << project_file
|
181
|
+
file = project.new_file(filename, "Targets Support Files")
|
182
|
+
target_installer.target.source_build_phase.add_file_reference(file)
|
195
183
|
end
|
196
184
|
|
197
185
|
def specs_by_target
|
@@ -1,25 +1,93 @@
|
|
1
1
|
module Pod
|
2
2
|
class Installer
|
3
|
+
|
4
|
+
# This class is reponsible of creating and configuring the static library
|
5
|
+
# target in Pods project. Every target is generated from a target
|
6
|
+
# definition of the Podfile.
|
7
|
+
#
|
3
8
|
class TargetInstaller
|
4
9
|
include Config::Mixin
|
5
10
|
|
6
|
-
|
7
|
-
|
11
|
+
# @return [Podfile]
|
12
|
+
#
|
13
|
+
# TODO: is really needed to pass the podfile?
|
14
|
+
#
|
15
|
+
attr_reader :podfile
|
16
|
+
|
17
|
+
# @return [Project] The Pods project.
|
18
|
+
#
|
19
|
+
attr_reader :project
|
20
|
+
|
21
|
+
# @return [TargetDefinition] The target definition whoose target needs to
|
22
|
+
# be generated.
|
23
|
+
#
|
24
|
+
attr_reader :target_definition
|
8
25
|
|
9
26
|
def initialize(podfile, project, target_definition)
|
10
|
-
@podfile
|
27
|
+
@podfile = podfile
|
28
|
+
@project = project
|
29
|
+
@target_definition = target_definition
|
30
|
+
end
|
31
|
+
|
32
|
+
# @return [void] Creates the target in the Pods project and its support
|
33
|
+
# files.
|
34
|
+
#
|
35
|
+
# @param [Array<LocalPod>] pods The pods are required by the target
|
36
|
+
# definition of this installer.
|
37
|
+
#
|
38
|
+
# @param [Sandbox] sandbox The sanbox where the support files
|
39
|
+
# should be generated.
|
40
|
+
#
|
41
|
+
def install!(pods, sandbox)
|
42
|
+
self.requires_arc = pods.any? { |pod| pod.requires_arc? }
|
43
|
+
|
44
|
+
@target = @project.add_pod_target(@target_definition.label, @target_definition.platform)
|
45
|
+
|
46
|
+
source_file_descriptions = []
|
47
|
+
pods.each { |p| p.add_build_files_to_target(@target) }
|
48
|
+
|
49
|
+
support_files_group = @project.support_files_group.new_group(@target_definition.label)
|
50
|
+
target_support_files.each { |path| support_files_group.new_file(path) }
|
51
|
+
|
52
|
+
xcconfig_file = support_files_group.files.find { |f| f.path == @target_definition.xcconfig_name }
|
53
|
+
configure_build_configurations(xcconfig_file, sandbox)
|
54
|
+
create_files(pods, sandbox)
|
11
55
|
end
|
12
56
|
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
57
|
+
# @return [PBXNativeTarget] The target generated by the installation
|
58
|
+
# process.
|
59
|
+
#
|
60
|
+
attr_reader :target
|
61
|
+
|
62
|
+
|
63
|
+
# @return [Boold] Wether the any of the pods requires arc.
|
64
|
+
#
|
65
|
+
# TODO: This should not be an attribute reader.
|
66
|
+
#
|
67
|
+
attr_accessor :requires_arc
|
68
|
+
|
69
|
+
attr_reader :xcconfig
|
70
|
+
|
71
|
+
# In a workspace this is where the static library headers should be found.
|
72
|
+
#
|
73
|
+
def generate_xcconfig(pods, sandbox)
|
74
|
+
xcconfig = Xcodeproj::Config.new({
|
75
|
+
'ALWAYS_SEARCH_USER_PATHS' => 'YES', # needed to make EmbedReader build
|
76
|
+
'OTHER_LDFLAGS' => default_ld_flags,
|
77
|
+
'HEADER_SEARCH_PATHS' => '${PODS_HEADERS_SEARCH_PATHS}',
|
78
|
+
# CocoaPods global keys
|
79
|
+
'PODS_ROOT' => @target_definition.relative_pods_root,
|
80
|
+
'PODS_BUILD_HEADERS_SEARCH_PATHS' => quoted(sandbox.build_headers.search_paths).join(" "),
|
81
|
+
'PODS_PUBLIC_HEADERS_SEARCH_PATHS' => quoted(sandbox.public_headers.search_paths).join(" "),
|
82
|
+
# Pods project specific keys
|
83
|
+
'PODS_HEADERS_SEARCH_PATHS' => '${PODS_PUBLIC_HEADERS_SEARCH_PATHS}'
|
20
84
|
})
|
85
|
+
pods.each { |pod| xcconfig.merge!(pod.xcconfig) }
|
86
|
+
@xcconfig = xcconfig
|
21
87
|
end
|
22
88
|
|
89
|
+
#
|
90
|
+
#
|
23
91
|
def copy_resources_script_for(pods)
|
24
92
|
@copy_resources_script ||= Generator::CopyResourcesScript.new(pods.map { |p| p.relative_resource_files }.flatten)
|
25
93
|
end
|
@@ -57,37 +125,9 @@ module Pod
|
|
57
125
|
[:copy_resources_script_name, :prefix_header_name, :xcconfig_name].map { |file| @target_definition.send(file) }
|
58
126
|
end
|
59
127
|
|
60
|
-
# TODO move xcconfig related code into the xcconfig method, like copy_resources_script and generate_bridge_support.
|
61
|
-
def install!(pods, sandbox)
|
62
|
-
self.requires_arc = pods.any? { |pod| pod.requires_arc? }
|
63
|
-
|
64
|
-
@target = @project.add_pod_target(@target_definition.label, @target_definition.platform)
|
65
|
-
|
66
|
-
source_file_descriptions = []
|
67
|
-
pods.each do |pod|
|
68
|
-
xcconfig.merge!(pod.xcconfig)
|
69
|
-
source_file_descriptions += pod.source_file_descriptions
|
70
|
-
|
71
|
-
# TODO: this doesn't need to be done here, it has nothing to do with the target
|
72
|
-
pod.link_headers
|
73
|
-
end
|
74
|
-
@target.add_source_files(source_file_descriptions)
|
75
|
-
|
76
|
-
xcconfig.merge!('HEADER_SEARCH_PATHS' => '${PODS_HEADERS_SEARCH_PATHS}')
|
77
|
-
xcconfig.merge!('PODS_BUILD_HEADERS_SEARCH_PATHS' => quoted(sandbox.build_headers.search_paths).join(" "))
|
78
|
-
xcconfig.merge!('PODS_PUBLIC_HEADERS_SEARCH_PATHS' => quoted(sandbox.public_headers.search_paths).join(" "))
|
79
|
-
|
80
|
-
support_files_group = @project.group("Targets Support Files").create_group(@target_definition.label)
|
81
|
-
support_files_group.create_files(target_support_files)
|
82
|
-
|
83
|
-
xcconfig_file = support_files_group.files.where(:path => @target_definition.xcconfig_name)
|
84
|
-
configure_build_configurations(xcconfig_file, sandbox)
|
85
|
-
create_files(pods, sandbox)
|
86
|
-
end
|
87
|
-
|
88
128
|
def configure_build_configurations(xcconfig_file, sandbox)
|
89
129
|
@target.build_configurations.each do |config|
|
90
|
-
config.
|
130
|
+
config.base_configuration_reference = xcconfig_file
|
91
131
|
config.build_settings['OTHER_LDFLAGS'] = ''
|
92
132
|
config.build_settings['GCC_PREFIX_HEADER'] = @target_definition.prefix_header_name
|
93
133
|
config.build_settings['PODS_ROOT'] = '${SRCROOT}'
|
@@ -96,6 +136,8 @@ module Pod
|
|
96
136
|
end
|
97
137
|
end
|
98
138
|
|
139
|
+
#
|
140
|
+
#
|
99
141
|
def create_files(pods, sandbox)
|
100
142
|
bridge_support_metadata_path = sandbox.root + @target_definition.bridge_support_name
|
101
143
|
UI.message "- Generating BridgeSupport metadata file at #{UI.path bridge_support_metadata_path}" do
|
@@ -104,6 +146,7 @@ module Pod
|
|
104
146
|
end if @podfile.generate_bridge_support?
|
105
147
|
|
106
148
|
UI.message "- Generating xcconfig file at #{UI.path(sandbox.root + @target_definition.xcconfig_name)}" do
|
149
|
+
generate_xcconfig(pods, sandbox)
|
107
150
|
xcconfig.save_as(sandbox.root + @target_definition.xcconfig_name)
|
108
151
|
@target_definition.xcconfig = xcconfig
|
109
152
|
end
|
@@ -137,20 +137,18 @@ module Pod
|
|
137
137
|
# Default to the first, which in a simple project is probably an app target.
|
138
138
|
[user_project.targets.first]
|
139
139
|
end.reject do |target|
|
140
|
-
|
141
|
-
|
142
|
-
phase.files.any? { |file| file.name == @target_definition.lib_name }
|
143
|
-
end
|
144
|
-
end
|
140
|
+
# Reject any target that already has this Pods library in one of its frameworks build phases
|
141
|
+
target.frameworks_build_phase.files.any? { |build_file| build_file.file_ref.name == @target_definition.lib_name }
|
145
142
|
end
|
143
|
+
end
|
146
144
|
end
|
147
145
|
|
148
146
|
def add_xcconfig_base_configuration
|
149
|
-
xcconfig = user_project.
|
147
|
+
xcconfig = user_project.new_file(@target_definition.xcconfig_relative_path)
|
150
148
|
targets.each do |target|
|
151
149
|
config_build_names_by_overriden_key = {}
|
152
150
|
target.build_configurations.each do |config|
|
153
|
-
config_name = config.
|
151
|
+
config_name = config.name
|
154
152
|
if @target_definition.xcconfig
|
155
153
|
@target_definition.xcconfig.attributes.each do |key, value|
|
156
154
|
target_value = config.build_settings[key]
|
@@ -161,11 +159,11 @@ module Pod
|
|
161
159
|
end
|
162
160
|
end
|
163
161
|
|
164
|
-
config.
|
162
|
+
config.base_configuration_reference = xcconfig
|
165
163
|
end
|
166
164
|
|
167
165
|
config_build_names_by_overriden_key.each do |key, config_build_names|
|
168
|
-
name = "#{target.
|
166
|
+
name = "#{target.name} [#{config_build_names.join(' - ')}]"
|
169
167
|
actions = [ "Use the `$(inherited)' flag, or", "Remove the build settings from the target." ]
|
170
168
|
UI.warn("The target `#{name}' overrides the `#{key}' build setting defined in `#{@target_definition.xcconfig_relative_path}'.", actions)
|
171
169
|
end
|
@@ -173,23 +171,20 @@ module Pod
|
|
173
171
|
end
|
174
172
|
|
175
173
|
def add_pods_library
|
176
|
-
|
177
|
-
pods_library =
|
174
|
+
frameworks = user_project.frameworks_group
|
175
|
+
pods_library = frameworks.new_static_library(@target_definition.label)
|
178
176
|
targets.each do |target|
|
179
|
-
target.
|
177
|
+
target.frameworks_build_phase.add_file_reference(pods_library)
|
180
178
|
end
|
181
179
|
end
|
182
180
|
|
183
181
|
def add_copy_resources_script_phase
|
184
182
|
targets.each do |target|
|
185
|
-
phase = target.
|
186
|
-
phase.name = 'Copy Pods Resources'
|
183
|
+
phase = target.new_shell_script_build_phase('Copy Pods Resources')
|
187
184
|
phase.shell_script = %{"#{@target_definition.copy_resources_script_relative_path}"\n}
|
188
185
|
end
|
189
186
|
end
|
190
187
|
end
|
191
|
-
|
192
188
|
end
|
193
|
-
|
194
189
|
end
|
195
190
|
end
|
data/lib/cocoapods/local_pod.rb
CHANGED
@@ -387,7 +387,53 @@ module Pod
|
|
387
387
|
result
|
388
388
|
end
|
389
389
|
|
390
|
-
# @!group
|
390
|
+
# @!group Xcodeproj integration
|
391
|
+
|
392
|
+
# Adds the file references, to the given `Pods.xcodeproj` project, for the
|
393
|
+
# source files of the pod. The file references are grouped by specification
|
394
|
+
# and stored in {#file_references_by_spec}.
|
395
|
+
#
|
396
|
+
# @note If the pod is locally sourced the file references are stored in the
|
397
|
+
# `Local Pods` group otherwise they are stored in the `Pods` group.
|
398
|
+
#
|
399
|
+
# @return [void]
|
400
|
+
#
|
401
|
+
def add_file_references_to_project(project)
|
402
|
+
@file_references_by_spec = {}
|
403
|
+
parent_group = local? ? project.local_pods : project.pods
|
404
|
+
|
405
|
+
relative_source_files_by_spec.each do |spec, paths|
|
406
|
+
group = project.add_spec_group(spec.name, parent_group)
|
407
|
+
file_references = []
|
408
|
+
paths.each do |path|
|
409
|
+
file_references << group.new_file(path)
|
410
|
+
end
|
411
|
+
@file_references_by_spec[spec] = file_references
|
412
|
+
end
|
413
|
+
end
|
414
|
+
|
415
|
+
# @return [Hash{Specification => Array<PBXFileReference>}] The file
|
416
|
+
# references of the pod in the `Pods.xcodeproj` project.
|
417
|
+
#
|
418
|
+
attr_reader :file_references_by_spec
|
419
|
+
|
420
|
+
# Adds a build file for each file reference to a given target taking into
|
421
|
+
# account the compiler flags of the corresponding specification.
|
422
|
+
#
|
423
|
+
# @raise If the {#add_file_references_to_project} was not called before of
|
424
|
+
# calling this method.
|
425
|
+
#
|
426
|
+
# @return [void]
|
427
|
+
#
|
428
|
+
def add_build_files_to_target(target)
|
429
|
+
unless file_references_by_spec
|
430
|
+
raise Informative, "Local Pod needs to add the file references to the " \
|
431
|
+
"project before adding the build files to the target."
|
432
|
+
end
|
433
|
+
file_references_by_spec.each do |spec, file_reference|
|
434
|
+
target.add_file_references(file_reference, spec.compiler_flags.strip)
|
435
|
+
end
|
436
|
+
end
|
391
437
|
|
392
438
|
# @return [void] Copies the pods headers to the sandbox.
|
393
439
|
#
|
@@ -404,26 +450,10 @@ module Pod
|
|
404
450
|
end
|
405
451
|
end
|
406
452
|
|
407
|
-
# @param [Xcodeproj::Project::Object::PBXNativeTarget] target
|
408
|
-
# The target to integrate.
|
409
|
-
#
|
410
|
-
# @return [void] Adds the pods source files to a given target.
|
411
|
-
#
|
412
|
-
def source_file_descriptions
|
413
|
-
result = []
|
414
|
-
source_files_by_spec.each do | spec, files |
|
415
|
-
compiler_flags = spec.compiler_flags.strip
|
416
|
-
files.each do |file|
|
417
|
-
file = relativize_from_sandbox(file)
|
418
|
-
desc = Xcodeproj::Project::PBXNativeTarget::SourceFileDescription.new(file, compiler_flags, nil)
|
419
|
-
result << desc
|
420
|
-
end
|
421
|
-
end
|
422
|
-
result
|
423
|
-
end
|
424
|
-
|
425
453
|
# @return Whether the pod requires ARC.
|
426
454
|
#
|
455
|
+
# TODO: this should be not used anymore.
|
456
|
+
#
|
427
457
|
def requires_arc?
|
428
458
|
top_specification.requires_arc
|
429
459
|
end
|
@@ -530,15 +560,27 @@ module Pod
|
|
530
560
|
"\t Options: #{options.inspect}"
|
531
561
|
end
|
532
562
|
|
533
|
-
|
534
|
-
patterns
|
535
|
-
|
563
|
+
return [] if patterns.empty?
|
564
|
+
patterns = [ patterns ] if patterns.is_a?(String)
|
565
|
+
file_lists = patterns.select { |p| p.is_a?(FileList) }
|
566
|
+
glob_patterns = patterns - file_lists
|
567
|
+
|
568
|
+
result = []
|
536
569
|
|
570
|
+
result << file_lists.map do |file_list|
|
571
|
+
file_list.prepend_patterns(root)
|
572
|
+
file_list.glob
|
573
|
+
end
|
574
|
+
|
575
|
+
result << glob_patterns.map do |pattern|
|
576
|
+
pattern = root + pattern
|
537
577
|
if pattern.directory? && options[:glob]
|
538
578
|
pattern += options[:glob]
|
539
579
|
end
|
540
580
|
Pathname.glob(pattern, File::FNM_CASEFOLD)
|
541
581
|
end.flatten
|
582
|
+
|
583
|
+
result.flatten.compact.uniq
|
542
584
|
end
|
543
585
|
|
544
586
|
# A {LocalSourcedPod} is a {LocalPod} that interacts with the files of
|
data/lib/cocoapods/project.rb
CHANGED
@@ -1,20 +1,23 @@
|
|
1
1
|
require 'xcodeproj/project'
|
2
|
-
require 'xcodeproj/project/object/build_phase'
|
3
2
|
|
4
|
-
Xcodeproj::Project::Object::PBXCopyFilesBuildPhase.instance_eval do
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
end
|
3
|
+
# Xcodeproj::Project::Object::PBXCopyFilesBuildPhase.instance_eval do
|
4
|
+
# def self.new_pod_dir(project, pod_name, path)
|
5
|
+
# new(project, nil, {
|
6
|
+
# "dstPath" => "Pods/#{path}",
|
7
|
+
# "name" => "Copy #{pod_name} Public Headers",
|
8
|
+
# })
|
9
|
+
# end
|
10
|
+
# end
|
12
11
|
|
13
12
|
module Pod
|
14
13
|
class Project < Xcodeproj::Project
|
14
|
+
|
15
|
+
attr_reader :support_files_group
|
16
|
+
|
15
17
|
def initialize(*)
|
16
18
|
super
|
17
|
-
|
19
|
+
new_group('Pods')
|
20
|
+
@support_files_group = new_group('Targets Support Files')
|
18
21
|
@user_build_configurations = []
|
19
22
|
end
|
20
23
|
|
@@ -24,40 +27,44 @@ module Pod
|
|
24
27
|
# any build settings themselves, that's left to `add_pod_target`.
|
25
28
|
user_build_configurations.each do |name, _|
|
26
29
|
unless build_configurations.map(&:name).include?(name)
|
27
|
-
|
30
|
+
bc = new(XCBuildConfiguration)
|
31
|
+
bc.name = name
|
32
|
+
build_configurations << bc
|
28
33
|
end
|
29
34
|
end
|
30
35
|
end
|
31
36
|
|
32
37
|
# Shortcut access to the `Pods' PBXGroup.
|
33
38
|
def pods
|
34
|
-
@pods ||=
|
39
|
+
@pods ||= self['Pods'] || new_group('Pods')
|
35
40
|
end
|
36
41
|
|
37
42
|
# Shortcut access to the `Local Pods' PBXGroup.
|
38
43
|
def local_pods
|
39
|
-
@local_pods ||=
|
44
|
+
@local_pods ||= self['Local Pods'] || new_group('Local Pods')
|
40
45
|
end
|
41
46
|
|
42
47
|
# Adds a group as child to the `Pods' group namespacing subspecs.
|
43
48
|
def add_spec_group(name, parent_group)
|
44
|
-
|
49
|
+
current_group = parent_group
|
45
50
|
group = nil
|
46
51
|
name.split('/').each do |name|
|
47
|
-
group =
|
48
|
-
|
52
|
+
group = current_group[name] || current_group.new_group(name)
|
53
|
+
current_group = group
|
49
54
|
end
|
50
55
|
group
|
51
56
|
end
|
52
57
|
|
53
58
|
def add_pod_target(name, platform)
|
54
|
-
target =
|
59
|
+
target = new_target(:static_library, name, platform.name)
|
55
60
|
|
56
61
|
settings = {}
|
57
62
|
if platform.requires_legacy_ios_archs?
|
58
63
|
settings['ARCHS'] = "armv6 armv7"
|
59
64
|
end
|
65
|
+
|
60
66
|
if platform == :ios && platform.deployment_target
|
67
|
+
# TODO: add for osx as well
|
61
68
|
settings['IPHONEOS_DEPLOYMENT_TARGET'] = platform.deployment_target.to_s
|
62
69
|
end
|
63
70
|
|
@@ -66,9 +73,11 @@ module Pod
|
|
66
73
|
|
67
74
|
@user_build_configurations.each do |name, type|
|
68
75
|
unless target.build_configurations.map(&:name).include?(name)
|
69
|
-
|
76
|
+
bc = new(XCBuildConfiguration)
|
77
|
+
bc.name = name
|
78
|
+
target.build_configurations << bc
|
70
79
|
# Copy the settings from either the Debug or the Release configuration.
|
71
|
-
|
80
|
+
bc.build_settings = target.build_settings(type.to_s.capitalize).merge(settings)
|
72
81
|
end
|
73
82
|
end
|
74
83
|
|
@@ -438,11 +438,12 @@ module Pod
|
|
438
438
|
# this to, for instance, to run any build script:
|
439
439
|
#
|
440
440
|
# Pod::Spec.new do |s|
|
441
|
-
# def pre_install(pod, target_definition)
|
441
|
+
# def s.pre_install(pod, target_definition)
|
442
442
|
# Dir.chdir(pod.root){ `sh make.sh` }
|
443
443
|
# end
|
444
444
|
# end
|
445
445
|
def pre_install(pod, target_definition)
|
446
|
+
FALSE
|
446
447
|
end
|
447
448
|
|
448
449
|
# This is a convenience method which gets called after all pods have been
|
@@ -460,6 +461,7 @@ module Pod
|
|
460
461
|
# end
|
461
462
|
# end
|
462
463
|
def post_install(target_installer)
|
464
|
+
FALSE
|
463
465
|
end
|
464
466
|
|
465
467
|
def podfile?
|
metadata
CHANGED
@@ -1,8 +1,8 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cocoapods
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
5
|
-
prerelease:
|
4
|
+
version: 0.16.0.rc1
|
5
|
+
prerelease: 7
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
8
|
- Eloy Duran
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2012-10-
|
13
|
+
date: 2012-10-21 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: xcodeproj
|
@@ -19,7 +19,7 @@ dependencies:
|
|
19
19
|
requirements:
|
20
20
|
- - ~>
|
21
21
|
- !ruby/object:Gem::Version
|
22
|
-
version: 0.
|
22
|
+
version: 0.4.0.rc1
|
23
23
|
type: :runtime
|
24
24
|
prerelease: false
|
25
25
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -27,7 +27,7 @@ dependencies:
|
|
27
27
|
requirements:
|
28
28
|
- - ~>
|
29
29
|
- !ruby/object:Gem::Version
|
30
|
-
version: 0.
|
30
|
+
version: 0.4.0.rc1
|
31
31
|
- !ruby/object:Gem::Dependency
|
32
32
|
name: faraday
|
33
33
|
requirement: !ruby/object:Gem::Requirement
|
@@ -256,7 +256,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
256
256
|
version: '0'
|
257
257
|
segments:
|
258
258
|
- 0
|
259
|
-
hash: -
|
259
|
+
hash: -3426650805670667619
|
260
260
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
261
261
|
none: false
|
262
262
|
requirements:
|