cocoapods-packager-m 1.6.1 → 1.6.2

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of cocoapods-packager-m might be problematic. Click here for more details.

Files changed (72) hide show
  1. checksums.yaml +4 -4
  2. metadata +6 -123
  3. data/.coveralls.yml +0 -1
  4. data/.gitignore +0 -3
  5. data/.rubocop-cocoapods.yml +0 -71
  6. data/.rubocop.yml +0 -38
  7. data/.travis.yml +0 -9
  8. data/Gemfile +0 -12
  9. data/Gemfile.lock +0 -121
  10. data/LICENSE +0 -22
  11. data/README.md +0 -42
  12. data/Rakefile +0 -12
  13. data/cocoapods-packager.gemspec +0 -19
  14. data/lib/cocoapods-packager/builder.rb +0 -312
  15. data/lib/cocoapods-packager/framework.rb +0 -66
  16. data/lib/cocoapods-packager/mangle.rb +0 -32
  17. data/lib/cocoapods-packager/pod_utils.rb +0 -252
  18. data/lib/cocoapods-packager/spec_builder.rb +0 -63
  19. data/lib/cocoapods-packager/symbols.rb +0 -35
  20. data/lib/cocoapods-packager/user_interface/build_failed_report.rb +0 -15
  21. data/lib/cocoapods_packager.rb +0 -5
  22. data/lib/cocoapods_plugin.rb +0 -8
  23. data/lib/pod/command/package.rb +0 -165
  24. data/scripts/lstconst.sh +0 -9
  25. data/scripts/lstsym.sh +0 -8
  26. data/spec/command/error_spec.rb +0 -74
  27. data/spec/command/package_spec.rb +0 -359
  28. data/spec/command/subspecs_spec.rb +0 -30
  29. data/spec/fixtures/Builder.podspec +0 -25
  30. data/spec/fixtures/CPDColors.podspec +0 -19
  31. data/spec/fixtures/FH.podspec +0 -18
  32. data/spec/fixtures/KFData.podspec +0 -73
  33. data/spec/fixtures/LibraryConsumerDemo/.gitignore +0 -22
  34. data/spec/fixtures/LibraryConsumerDemo/LibraryConsumer.xcodeproj/project.pbxproj +0 -340
  35. data/spec/fixtures/LibraryConsumerDemo/LibraryConsumer.xcodeproj/project.xcworkspace/contents.xcworkspacedata +0 -7
  36. data/spec/fixtures/LibraryConsumerDemo/LibraryConsumer.xcodeproj/xcshareddata/xcschemes/LibraryConsumer.xcscheme +0 -100
  37. data/spec/fixtures/LibraryConsumerDemo/LibraryConsumer/AppDelegate.h +0 -17
  38. data/spec/fixtures/LibraryConsumerDemo/LibraryConsumer/AppDelegate.m +0 -27
  39. data/spec/fixtures/LibraryConsumerDemo/LibraryConsumer/Info.plist +0 -40
  40. data/spec/fixtures/LibraryConsumerDemo/LibraryConsumer/main.m +0 -16
  41. data/spec/fixtures/LibraryConsumerDemo/Podfile +0 -5
  42. data/spec/fixtures/LibraryDemo.podspec +0 -14
  43. data/spec/fixtures/NikeKit.podspec +0 -19
  44. data/spec/fixtures/OpenSans.podspec +0 -18
  45. data/spec/fixtures/PackagerTest/.gitignore +0 -21
  46. data/spec/fixtures/PackagerTest/PackagerTest.xcodeproj/project.pbxproj +0 -536
  47. data/spec/fixtures/PackagerTest/PackagerTest.xcodeproj/project.xcworkspace/contents.xcworkspacedata +0 -7
  48. data/spec/fixtures/PackagerTest/PackagerTest.xcodeproj/xcshareddata/xcschemes/PackagerTest.xcscheme +0 -110
  49. data/spec/fixtures/PackagerTest/PackagerTest.xcworkspace/contents.xcworkspacedata +0 -1
  50. data/spec/fixtures/PackagerTest/PackagerTest/CPDAppDelegate.h +0 -15
  51. data/spec/fixtures/PackagerTest/PackagerTest/CPDAppDelegate.m +0 -49
  52. data/spec/fixtures/PackagerTest/PackagerTest/Images.xcassets/AppIcon.appiconset/Contents.json +0 -23
  53. data/spec/fixtures/PackagerTest/PackagerTest/Images.xcassets/LaunchImage.launchimage/Contents.json +0 -23
  54. data/spec/fixtures/PackagerTest/PackagerTest/PackagerTest-Info.plist +0 -38
  55. data/spec/fixtures/PackagerTest/PackagerTest/PackagerTest-Prefix.pch +0 -16
  56. data/spec/fixtures/PackagerTest/PackagerTest/en.lproj/InfoPlist.strings +0 -2
  57. data/spec/fixtures/PackagerTest/PackagerTest/main.m +0 -18
  58. data/spec/fixtures/PackagerTest/PackagerTestTests/PackagerTestTests-Info.plist +0 -22
  59. data/spec/fixtures/PackagerTest/PackagerTestTests/PackagerTestTests.m +0 -34
  60. data/spec/fixtures/PackagerTest/PackagerTestTests/en.lproj/InfoPlist.strings +0 -2
  61. data/spec/fixtures/PackagerTest/Podfile +0 -10
  62. data/spec/fixtures/PackagerTest/Podfile.lock +0 -32
  63. data/spec/fixtures/Weakly.podspec +0 -13
  64. data/spec/fixtures/a.podspec +0 -19
  65. data/spec/fixtures/foo-bar.podspec +0 -19
  66. data/spec/fixtures/layer-client-messaging-schema.podspec +0 -13
  67. data/spec/integration/project_spec.rb +0 -70
  68. data/spec/pod/utils_spec.rb +0 -58
  69. data/spec/spec_helper.rb +0 -50
  70. data/spec/specification/builder_spec.rb +0 -40
  71. data/spec/specification/spec_builder_spec.rb +0 -61
  72. data/spec/user_interface/build_failed_report_spec.rb +0 -11
data/README.md DELETED
@@ -1,42 +0,0 @@
1
- # CocoaPods Packager
2
-
3
- [![Build Status](http://img.shields.io/travis/CocoaPods/cocoapods-packager/master.svg?style=flat)](https://travis-ci.org/CocoaPods/cocoapods-packager)
4
- [![Coverage Status](https://img.shields.io/coveralls/CocoaPods/cocoapods-packager.svg)](https://coveralls.io/r/CocoaPods/cocoapods-packager?branch=master)
5
- [![Gem Version](http://img.shields.io/gem/v/cocoapods-packager.svg?style=flat)](http://badge.fury.io/rb/cocoapods-packager)
6
- [![Code Climate](http://img.shields.io/codeclimate/github/CocoaPods/cocoapods-packager.svg?style=flat)](https://codeclimate.com/github/CocoaPods/cocoapods-packager)
7
-
8
- CocoaPods plugin which allows you to generate a framework or static library from a podspec.
9
-
10
- This plugin is for CocoaPods *developers*, who need to distribute their Pods not only via CocoaPods, but also as frameworks or static libraries for people who do not use Pods.
11
-
12
- ## Why should I use Pods if I'm targeting developers who don't use Pods?
13
-
14
- There are still a number of advantages to developing against a `podspec`, even if your public distribution is closed-source:
15
-
16
- 1. You can easily use the Pod in-house in an open-source style. This makes step-by-step debugging and multi-project development a breeze.
17
- 2. You can pull in third-party dependencies using CocoaPods. (CocoaPods Packager is even capable of mangling symbols to improve compatibility with any symbols that might appear in the integrating app.)
18
- 3. You can declaratively specify build settings (e.g. frameworks, compiler flags) in your `podspec`. This is easier to maintain and replicate than build settings embedded in your Xcode project.
19
-
20
- ## Installation
21
-
22
- ```sh
23
- $ gem install cocoapods-packager
24
- ```
25
-
26
- or add a line to your Gemfile:
27
-
28
- ```ruby
29
- gem "cocoapods-packager"
30
- ```
31
-
32
- then run `bundle install`.
33
-
34
- This installs Packager as a CocoaPods plugin.
35
-
36
- ## Usage
37
-
38
- ```bash
39
- $ pod package KFData.podspec
40
- ```
41
-
42
- See also `pod --help`.
data/Rakefile DELETED
@@ -1,12 +0,0 @@
1
- require 'bundler/gem_tasks'
2
-
3
- def specs(dir)
4
- FileList["spec/#{dir}/*_spec.rb"].shuffle.join(' ')
5
- end
6
-
7
- desc 'Runs all the specs'
8
- task :spec do
9
- sh "bundle exec bacon #{specs('**')}"
10
- end
11
-
12
- task :default => :spec
@@ -1,19 +0,0 @@
1
- # coding: utf-8
2
- lib = File.expand_path('../lib', __FILE__)
3
- $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
- require 'cocoapods_packager.rb'
5
-
6
- Gem::Specification.new do |spec|
7
- spec.name = 'cocoapods-packager-m'
8
- spec.version = Pod::Packager::VERSION
9
- spec.authors = ['wangshiyu13']
10
- spec.summary = 'CocoaPods plugin which allows you to generate a framework or static library from a podspec.'
11
- spec.homepage = 'https://github.com/wangshiyu13/cocoapods-packager-m.git'
12
- spec.license = 'MIT'
13
- spec.files = `git ls-files`.split($/)
14
- spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
15
- spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
16
- spec.require_paths = ["lib"]
17
-
18
- spec.add_dependency "cocoapods", "~> 1.8.0"
19
- end
@@ -1,312 +0,0 @@
1
- module Pod
2
- class Builder
3
- def initialize(source_dir, static_sandbox_root, dynamic_sandbox_root, public_headers_root, spec, embedded, mangle, dynamic, config, bundle_identifier, exclude_deps, skip_i)
4
- @source_dir = source_dir
5
- @static_sandbox_root = static_sandbox_root
6
- @dynamic_sandbox_root = dynamic_sandbox_root
7
- @public_headers_root = public_headers_root
8
- @spec = spec
9
- @embedded = embedded
10
- @mangle = mangle
11
- @dynamic = dynamic
12
- @config = config
13
- @bundle_identifier = bundle_identifier
14
- @exclude_deps = exclude_deps
15
- @skip_i = skip_i
16
- end
17
-
18
- def build(platform, library)
19
- if library
20
- build_static_library(platform)
21
- else
22
- build_framework(platform)
23
- end
24
- end
25
-
26
- def build_static_library(platform)
27
- UI.puts("Building static library #{@spec} with configuration #{@config}")
28
-
29
- defines = compile(platform)
30
- build_sim_libraries(platform, defines)
31
-
32
- platform_path = Pathname.new(platform.name.to_s)
33
- platform_path.mkdir unless platform_path.exist?
34
- build_library(platform, defines, platform_path + Pathname.new("lib#{@spec.name}.a"))
35
- end
36
-
37
- def build_framework(platform)
38
- UI.puts("Building framework #{@spec} with configuration #{@config}")
39
-
40
- defines = compile(platform)
41
- build_sim_libraries(platform, defines)
42
-
43
- if @dynamic
44
- build_dynamic_framework(platform, defines, "#{@dynamic_sandbox_root}/build/#{@spec.name}.framework/#{@spec.name}")
45
- else
46
- create_framework(platform.name.to_s)
47
- build_library(platform, defines, @fwk.versions_path + Pathname.new(@spec.name))
48
- copy_headers
49
- copy_license
50
- end
51
-
52
- copy_resources(platform)
53
- end
54
-
55
- def link_embedded_resources
56
- target_path = @fwk.root_path + Pathname.new('Resources')
57
- target_path.mkdir unless target_path.exist?
58
-
59
- Dir.glob(@fwk.resources_path.to_s + '/*').each do |resource|
60
- resource = Pathname.new(resource).relative_path_from(target_path)
61
- `ln -sf #{resource} #{target_path}`
62
- end
63
- end
64
-
65
- private
66
-
67
- def build_dynamic_framework(platform, defines, output)
68
- UI.puts("Building dynamic Framework #{@spec} with configuration #{@config}")
69
-
70
- if @bundle_identifier
71
- defines = "#{defines} PRODUCT_BUNDLE_IDENTIFIER='#{@bundle_identifier}'"
72
- end
73
-
74
- clean_directory_for_dynamic_build
75
- if platform.name == :ios
76
- build_dynamic_framework_for_ios(platform, defines, output)
77
- else
78
- build_dynamic_framework_for_mac(platform, defines, output)
79
- end
80
- end
81
-
82
- def build_library(platform, defines, output)
83
- static_libs = static_libs_in_sandbox
84
-
85
- if platform.name == :ios
86
- build_static_lib_for_ios(static_libs, defines, output)
87
- else
88
- build_static_lib_for_mac(static_libs, output)
89
- end
90
- end
91
-
92
- def build_dynamic_framework_for_ios(platform, defines, output)
93
- # Specify frameworks to link and search paths
94
- linker_flags = static_linker_flags_in_sandbox
95
- defines = "#{defines} OTHER_LDFLAGS='$(inherited) #{linker_flags.join(' ')}'"
96
-
97
- # Build Target Dynamic Framework for both device and Simulator
98
- device_defines = "#{defines} LIBRARY_SEARCH_PATHS=\"#{Dir.pwd}/#{@static_sandbox_root}/build\""
99
- device_options = ios_build_options << ' -sdk iphoneos'
100
- xcodebuild(device_defines, device_options, 'build', @spec.name.to_s, @dynamic_sandbox_root.to_s)
101
-
102
- sim_defines = "#{defines} LIBRARY_SEARCH_PATHS=\"#{Dir.pwd}/#{@static_sandbox_root}/build-sim\" ONLY_ACTIVE_ARCH=NO"
103
- #origin: xcodebuild(sim_defines, '-sdk iphonesimulator', 'build-sim', @spec.name.to_s, @dynamic_sandbox_root.to_s)
104
- if @skip_i
105
- xcodebuild(sim_defines, '-sdk iphonesimulator ARCHS=x86_64', 'build-sim', @spec.name.to_s, @dynamic_sandbox_root.to_s)
106
- else
107
- xcodebuild(sim_defines, '-sdk iphonesimulator', 'build-sim', @spec.name.to_s, @dynamic_sandbox_root.to_s)
108
- end
109
- # Combine architectures
110
- `lipo #{@dynamic_sandbox_root}/build/#{@spec.name}.framework/#{@spec.name} #{@dynamic_sandbox_root}/build-sim/#{@spec.name}.framework/#{@spec.name} -create -output #{output}`
111
-
112
- FileUtils.mkdir(platform.name.to_s)
113
- `mv #{@dynamic_sandbox_root}/build/#{@spec.name}.framework #{platform.name}`
114
- `mv #{@dynamic_sandbox_root}/build/#{@spec.name}.framework.dSYM #{platform.name}`
115
- end
116
-
117
- def build_dynamic_framework_for_mac(platform, defines, _output)
118
- # Specify frameworks to link and search paths
119
- linker_flags = static_linker_flags_in_sandbox
120
- defines = "#{defines} OTHER_LDFLAGS=\"#{linker_flags.join(' ')}\""
121
-
122
- # Build Target Dynamic Framework for osx
123
- defines = "#{defines} LIBRARY_SEARCH_PATHS=\"#{Dir.pwd}/#{@static_sandbox_root}/build\""
124
- xcodebuild(defines, nil, 'build', @spec.name.to_s, @dynamic_sandbox_root.to_s)
125
-
126
- FileUtils.mkdir(platform.name.to_s)
127
- `mv #{@dynamic_sandbox_root}/build/#{@spec.name}.framework #{platform.name}`
128
- `mv #{@dynamic_sandbox_root}/build/#{@spec.name}.framework.dSYM #{platform.name}`
129
- end
130
-
131
- def build_sim_libraries(platform, defines)
132
- if platform.name == :ios
133
- #origin: xcodebuild(defines, '-sdk iphonesimulator', 'build-sim')
134
- if @skip_i
135
- xcodebuild(defines, '-sdk iphonesimulator ARCHS=x86_64', 'build-sim')
136
- else
137
- xcodebuild(defines, '-sdk iphonesimulator', 'build-sim')
138
- end
139
- end
140
- end
141
-
142
- def build_static_lib_for_ios(static_libs, _defines, output)
143
- return if static_libs.count == 0
144
- `libtool -static -o #{@static_sandbox_root}/build/package.a #{static_libs.join(' ')}`
145
-
146
- sim_libs = static_libs_in_sandbox('build-sim')
147
- `libtool -static -o #{@static_sandbox_root}/build-sim/package.a #{sim_libs.join(' ')}`
148
-
149
- `lipo #{@static_sandbox_root}/build/package.a #{@static_sandbox_root}/build-sim/package.a -create -output #{output}`
150
- end
151
-
152
- def build_static_lib_for_mac(static_libs, output)
153
- return if static_libs.count == 0
154
- `libtool -static -o #{output} #{static_libs.join(' ')}`
155
- end
156
-
157
- def build_with_mangling(platform, options)
158
- UI.puts 'Mangling symbols'
159
- defines = Symbols.mangle_for_pod_dependencies(@spec.name, @static_sandbox_root)
160
- defines << ' ' << @spec.consumer(platform).compiler_flags.join(' ')
161
-
162
- UI.puts 'Building mangled framework'
163
- xcodebuild(defines, options)
164
- defines
165
- end
166
-
167
- def clean_directory_for_dynamic_build
168
- # Remove static headers to avoid duplicate declaration conflicts
169
- FileUtils.rm_rf("#{@static_sandbox_root}/Headers/Public/#{@spec.name}")
170
- FileUtils.rm_rf("#{@static_sandbox_root}/Headers/Private/#{@spec.name}")
171
-
172
- # Equivalent to removing derrived data
173
- FileUtils.rm_rf('Pods/build')
174
- end
175
-
176
- def compile(platform)
177
- defines = "GCC_PREPROCESSOR_DEFINITIONS='$(inherited) PodsDummy_Pods_#{@spec.name}=PodsDummy_PodPackage_#{@spec.name}'"
178
- defines << ' ' << @spec.consumer(platform).compiler_flags.join(' ')
179
-
180
- if platform.name == :ios
181
- options = ios_build_options
182
- end
183
-
184
- xcodebuild(defines, options)
185
-
186
- if @mangle
187
- return build_with_mangling(platform, options)
188
- end
189
-
190
- defines
191
- end
192
-
193
- def copy_headers
194
- headers_source_root = "#{@public_headers_root}/#{@spec.name}"
195
-
196
- Dir.glob("#{headers_source_root}/**/*.h").
197
- each { |h| `ditto #{h} #{@fwk.headers_path}/#{h.sub(headers_source_root, '')}` }
198
-
199
- # If custom 'module_map' is specified add it to the framework distribution
200
- # otherwise check if a header exists that is equal to 'spec.name', if so
201
- # create a default 'module_map' one using it.
202
- if !@spec.module_map.nil?
203
- module_map_file = "#{@static_sandbox_root}/#{@spec.name}/#{@spec.module_map}"
204
- module_map = File.read(module_map_file) if Pathname(module_map_file).exist?
205
- elsif File.exist?("#{@public_headers_root}/#{@spec.name}/#{@spec.name}.h")
206
- module_map = <<MAP
207
- framework module #{@spec.name} {
208
- umbrella header "#{@spec.name}.h"
209
- export *
210
- module * { export * }
211
- }
212
- MAP
213
- end
214
-
215
- unless module_map.nil?
216
- @fwk.module_map_path.mkpath unless @fwk.module_map_path.exist?
217
- File.write("#{@fwk.module_map_path}/module.modulemap", module_map)
218
- end
219
- end
220
-
221
- def copy_license
222
- license_file = @spec.license[:file] || 'LICENSE'
223
- `cp "#{license_file}" .` if Pathname(license_file).exist?
224
- end
225
-
226
- def copy_resources(platform)
227
- bundles = Dir.glob("#{@static_sandbox_root}/build/*.bundle")
228
- if @dynamic
229
- resources_path = "ios/#{@spec.name}.framework"
230
- `cp -rp #{@static_sandbox_root}/build/*.bundle #{resources_path} 2>&1`
231
- else
232
- `cp -rp #{@static_sandbox_root}/build/*.bundle #{@fwk.resources_path} 2>&1`
233
- resources = expand_paths(@spec.consumer(platform).resources)
234
- if resources.count == 0 && bundles.count == 0
235
- @fwk.delete_resources
236
- return
237
- end
238
- if resources.count > 0
239
- `cp -rp #{resources.join(' ')} #{@fwk.resources_path}`
240
- end
241
- end
242
- end
243
-
244
- def create_framework(platform)
245
- @fwk = Framework::Tree.new(@spec.name, platform, @embedded)
246
- @fwk.make
247
- end
248
-
249
- def dependency_count
250
- count = @spec.dependencies.count
251
-
252
- @spec.subspecs.each do |subspec|
253
- count += subspec.dependencies.count
254
- end
255
-
256
- count
257
- end
258
-
259
- def expand_paths(path_specs)
260
- path_specs.map do |path_spec|
261
- Dir.glob(File.join(@source_dir, path_spec))
262
- end
263
- end
264
-
265
- def static_libs_in_sandbox(build_dir = 'build')
266
- if @exclude_deps
267
- UI.puts 'Excluding dependencies'
268
- Dir.glob("#{@static_sandbox_root}/#{build_dir}/lib#{@spec.name}.a")
269
- else
270
- Dir.glob("#{@static_sandbox_root}/#{build_dir}/lib*.a")
271
- end
272
- end
273
-
274
- def static_linker_flags_in_sandbox
275
- linker_flags = static_libs_in_sandbox.map do |lib|
276
- lib.slice!('lib')
277
- lib_flag = lib.chomp('.a').split('/').last
278
- "-l#{lib_flag}"
279
- end
280
- linker_flags.reject { |e| e == "-l#{@spec.name}" || e == '-lPods-packager' }
281
- end
282
-
283
- def ios_build_options
284
- #origin: "ARCHS=\'x86_64 i386 arm64 armv7 armv7s\' OTHER_CFLAGS=\'-fembed-bitcode -Qunused-arguments\'"
285
- if @skip_i
286
- "ARCHS=\'x86_64 arm64 armv7 armv7s\' OTHER_CFLAGS=\'-fembed-bitcode -Qunused-arguments\'"
287
- else
288
- "ARCHS=\'x86_64 i386 arm64 armv7 armv7s\' OTHER_CFLAGS=\'-fembed-bitcode -Qunused-arguments\'"
289
- end
290
- end
291
-
292
- def xcodebuild(defines = '', args = '', build_dir = 'build', target = 'Pods-packager', project_root = @static_sandbox_root, config = @config)
293
- if defined?(Pod::DONT_CODESIGN)
294
- args = "#{args} CODE_SIGN_IDENTITY=\"\" CODE_SIGNING_REQUIRED=NO"
295
- end
296
-
297
- command = "xcodebuild #{defines} #{args} CONFIGURATION_BUILD_DIR=#{build_dir} clean build -configuration #{config} -target #{target} -project #{project_root}/Pods.xcodeproj 2>&1"
298
- output = `#{command}`.lines.to_a
299
-
300
- if $?.exitstatus != 0
301
- puts UI::BuildFailedReport.report(command, output)
302
-
303
- # Note: We use `Process.exit` here because it fires a `SystemExit`
304
- # exception, which gives the caller a chance to clean up before the
305
- # process terminates.
306
- #
307
- # See http://ruby-doc.org/core-1.9.3/Process.html#method-c-exit
308
- Process.exit
309
- end
310
- end
311
- end
312
- end
@@ -1,66 +0,0 @@
1
- module Framework
2
- class Tree
3
- attr_reader :headers_path
4
- attr_reader :module_map_path
5
- attr_reader :resources_path
6
- attr_reader :root_path
7
- attr_reader :versions_path
8
-
9
- def delete_resources
10
- Pathname.new(@resources_path).rmtree
11
- (Pathname.new(@fwk_path) + Pathname.new('Resources')).delete
12
- end
13
-
14
- def initialize(name, platform, embedded)
15
- @name = name
16
- @platform = platform
17
- @embedded = embedded
18
- end
19
-
20
- def make
21
- make_root
22
- make_framework
23
- make_headers
24
- make_resources
25
- make_current_version
26
- end
27
-
28
- private
29
-
30
- def make_current_version
31
- current_version_path = @versions_path + Pathname.new('../Current')
32
- `ln -sf A #{current_version_path}`
33
- `ln -sf Versions/Current/Headers #{@fwk_path}/`
34
- `ln -sf Versions/Current/Resources #{@fwk_path}/`
35
- `ln -sf Versions/Current/#{@name} #{@fwk_path}/`
36
- end
37
-
38
- def make_framework
39
- @fwk_path = @root_path + Pathname.new(@name + '.framework')
40
- @fwk_path.mkdir unless @fwk_path.exist?
41
-
42
- @module_map_path = @fwk_path + Pathname.new('Modules')
43
- @versions_path = @fwk_path + Pathname.new('Versions/A')
44
- end
45
-
46
- def make_headers
47
- @headers_path = @versions_path + Pathname.new('Headers')
48
- @headers_path.mkpath unless @headers_path.exist?
49
- end
50
-
51
- def make_resources
52
- @resources_path = @versions_path + Pathname.new('Resources')
53
- @resources_path.mkpath unless @resources_path.exist?
54
- end
55
-
56
- def make_root
57
- @root_path = Pathname.new(@platform)
58
-
59
- if @embedded
60
- @root_path += Pathname.new(@name + '.embeddedframework')
61
- end
62
-
63
- @root_path.mkpath unless @root_path.exist?
64
- end
65
- end
66
- end