cocoapods-bb-xcframework 0.2.6.2 → 0.2.6.4

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: 86de5787fc0f9a46661f7ebfd6c0cc0ef65f22a879cd1dc7c2925d130a58e2a9
4
- data.tar.gz: 2b0acbb4860569d5b3db5367ac3a4262a707d0197db2d395dc1b7e34beb89d5d
3
+ metadata.gz: 7b4c60e8964374bb98b58a5aa9ebf315d18cf752cbbf35eebab71ae9bfb68d45
4
+ data.tar.gz: '028f3e39db67dcf294124e76eb6800ba634af4c02dc129a73b36daf65cf380d7'
5
5
  SHA512:
6
- metadata.gz: 5317a8a583129ad146fffacd4b8b105a36967ade03d19a565b1029a17c1692b4964b7e09ec1830ef35424ee9f5e8691d7fc0eaba63372c6de6b0407df84ac915
7
- data.tar.gz: 020f0ccc7d37338714eef9e7d09cdf33bfe0ac5997711b792cc6fe9ff4c9aa85ea1f09916d4721b99281074a810ec0e6a68daee0320cd70b579eb6c0ce12794c
6
+ metadata.gz: 8810dbb80183b22c09ef068f4dbad5a00e83910bc6b6767ecd321ad76b1eb721f582322f1f25343d7d391fc1eacf75faf116622db159245cc3180a0e33b8e3ec
7
+ data.tar.gz: 6ee47de50f032f31fe3e57a416042df6da2b48220e2bf42e082c952153ef91bfae5cc93fb24fb71d6de6ecc836a626cc19f2f924bfe333fed6f23efacc67d874
@@ -19,7 +19,7 @@ module Pod
19
19
 
20
20
  def run
21
21
  spec = spec_with_path @name
22
- UI.warn "正在生成XCFramework #{spec.name}(#{spec.version})"
22
+ UI.puts "正在生成XCFramework #{spec.name}(#{spec.version})".yellow
23
23
  @is_spec_from_path = true if spec
24
24
  spec ||= spec_with_name @name
25
25
 
@@ -1,3 +1,3 @@
1
1
  module CocoapodsXCFramework
2
- VERSION = "0.2.6.2"
2
+ VERSION = "0.2.6.4"
3
3
  end
@@ -91,7 +91,18 @@ module Pod
91
91
  other_flags << "-framework #{item} "
92
92
  end
93
93
  else
94
- UI.puts "configuration:#{configuration} val:#{val}"
94
+ UI.puts "framework configuration:#{configuration} val:#{val}"
95
+ end
96
+ elsif key == 'libraries'
97
+ val = configuration[1]
98
+ if val.is_a? String
99
+ other_flags << "-l #{val} "
100
+ elsif val.is_a? Array
101
+ val.uniq.each do |item|
102
+ other_flags << "-l #{item} "
103
+ end
104
+ else
105
+ UI.puts "libraries configuration:#{configuration} val:#{val}"
95
106
  end
96
107
  end
97
108
  end
@@ -290,6 +301,29 @@ module Pod
290
301
  end
291
302
  end
292
303
  end
304
+ puts "fix_header_file".yellow
305
+ puts spec_hash.to_json
306
+ spec_hash
307
+ end
308
+
309
+ # 脚本不会针对podspec中配置resources、resource_bundles动态生成bundle,故手动进行bundle路径修复
310
+ def fix_bundle_file(origin_spec, spec_hash, project_dir, xcframework_path)
311
+ puts "fix_bundle_file".yellow
312
+ origin_spec_hash = origin_spec.to_hash
313
+ res_bundle=origin_spec_hash["resource_bundles"]
314
+ if res_bundle
315
+ puts "二进制库不支持动态生成bundle文件,请手动存放bundle文件 参照:s.resources = 'xx.bundle' ".red
316
+ raise "#{res_bundle}"
317
+ end
318
+ res_bundle=origin_spec_hash["resources"]
319
+ if res_bundle
320
+ puts "s.resources:#{res_bundle}"
321
+ bundle_path="#{project_dir}/#{res_bundle}"
322
+ FileUtils.cp_r(bundle_path,xcframework_path)
323
+ xcframework_comp = File.basename(xcframework_path)
324
+ bundle_comp = File.basename(res_bundle)
325
+ spec_hash["resources"] = "#{xcframework_comp}/#{bundle_comp}" # bundle资源存放规则,xcframework根目录
326
+ end
293
327
  puts spec_hash.to_json
294
328
  spec_hash
295
329
  end
@@ -183,7 +183,9 @@ module Pod
183
183
  outputs_bundle target_dir
184
184
  new_spec_hash = generic_new_podspec_hash @spec
185
185
  new_spec_hash[:vendored_frameworks] = "#{@spec.name}.xcframework"
186
- new_spec_hash = fix_header_file new_spec_hash, "#{target_dir}/#{@spec.name}.xcframework"
186
+ xcframework_path = "#{target_dir}/#{@spec.name}.xcframework"
187
+ new_spec_hash = fix_header_file new_spec_hash, xcframework_path
188
+ new_spec_hash = fix_bundle_file(@spec, new_spec_hash, @source_dir, xcframework_path)
187
189
  find_bundles(target_dir).each do |plat, value|
188
190
  if new_spec_hash[plat]
189
191
  new_spec_hash[plat]["resource_bundles"] = value
@@ -202,7 +204,7 @@ module Pod
202
204
  UI.puts "fix xcframework-is-not-a-member-type-of-error:#{target_dir}"
203
205
  fix_xcframework_error(target_dir, @spec.name)
204
206
 
205
- UI.puts "result export at :#{target_dir}"
207
+ UI.puts "result export at :#{target_dir} 生成成功".green
206
208
  target_dir
207
209
  end
208
210
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cocoapods-bb-xcframework
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.6.2
4
+ version: 0.2.6.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - humin
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-07-13 00:00:00.000000000 Z
11
+ date: 2024-02-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: cocoapods
@@ -106,7 +106,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
106
106
  - !ruby/object:Gem::Version
107
107
  version: '0'
108
108
  requirements: []
109
- rubygems_version: 3.4.16
109
+ rubygems_version: 3.5.6
110
110
  signing_key:
111
111
  specification_version: 4
112
112
  summary: 把podspec打包成xcframework的小工具。packager pod to a xcframework