cocoapods-bb-xcframework 0.2.7.4 → 0.2.7.6

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: 38ad04aeb3bf21be774455008ca4b7b8deee2dfe72bf100dc2e8515524230e27
4
- data.tar.gz: 0d81a1c7cd3e9d517d95e5503c0247faa1776ee7cb2ade624371061df02b6cbb
3
+ metadata.gz: 971243428b50396cfe6548c07bd84a71e685d164d5a86079ae135251d12e080b
4
+ data.tar.gz: 861f1df1bbf38100997be29b0133a37d7d128d597bf623694ff9528237ab8e90
5
5
  SHA512:
6
- metadata.gz: 9b0c9c5b7c125458c4a8288e4c57d031b701dc634b0276d07d0b65cc3f97d2a2064849a95313a353834157c4010e94c31e26f63523df0eacb16e08ea745505f7
7
- data.tar.gz: cf3f3c94e37e0e56ae413652edc59aa2380b56f695309b1ee4b9194f023e8e756db112832c893e92b6a5b5c7c6aeaba98f381ec1e0281e87b739dce05b82cdd1
6
+ metadata.gz: 2c4f0e9e83d12d481d4e55342876a63ab8b3e70eb171cc258fb555445ef73910672dbe2f8baa905a8f421f82799d73b8d8cc6b6bb51fd020cd55444dce7f93aa
7
+ data.tar.gz: 920e62ea0f973dbeb4931d99fae4f7fba6bca5707b363e699cb782e82f2b7af3dc5f5865aeb9be39b4c0bf2b6995233284ddd46c737262c1e303183f484b1577
@@ -1,3 +1,3 @@
1
1
  module CocoapodsXCFramework
2
- VERSION = "0.2.7.4"
2
+ VERSION = "0.2.7.6"
3
3
  end
@@ -20,6 +20,12 @@ module Pod
20
20
  @source_dir = source_dir
21
21
  @outputs = Hash.new
22
22
  @workspace = workspace
23
+ # podspecPath = Dir.glob(File.join(source_dir, name))
24
+ # if podspecPath.empty?
25
+ # puts "source_dir:#{source_dir} name:#{name}"
26
+ # UI.puts("❌ 未在 #{podspecPath} 下找到,无法生成 xcframework").red
27
+ # Process.exit 1
28
+ # end
23
29
  end
24
30
 
25
31
  def run
@@ -75,11 +81,25 @@ module Pod
75
81
  ""
76
82
  end
77
83
 
78
- scheme_arg = if workspace_path && !workspace_path.to_s.strip.empty?
84
+ puts "spec:#{spec} type:#{spec.class}"
85
+ # 只有 PodSpec 声明了多平台支持时,workspace 中才使用平台后缀 scheme。
86
+ # 单平台组件保持原始 scheme_name,避免拼接不存在的 scheme。
87
+ # supported_platforms = []
88
+ # supported_platforms << :ios if spec.ios.deployment_target
89
+ # supported_platforms << :osx if spec.osx.deployment_target
90
+ # supported_platforms << :tvos if spec.tvos.deployment_target
91
+ # supported_platforms << :watchos if spec.watchos.deployment_target
92
+ # is_multi_platform = supported_platforms.uniq.size > 1
93
+ supported_platforms = spec.available_platforms.map(&:name).uniq
94
+ is_multi_platform = supported_platforms.size > 1
95
+ puts "supported_platforms:#{supported_platforms}"
96
+ scheme_arg = if workspace_path && !workspace_path.to_s.strip.empty? && is_multi_platform
79
97
  if platform == "iOS" or platform == "Simulator" or platform == "MacCatalyst"
80
98
  "#{scheme_name}-iOS"
81
- else
99
+ elsif platform == "macOS"
82
100
  "#{scheme_name}-macOS"
101
+ else
102
+ scheme_name
83
103
  end
84
104
  else
85
105
  scheme_name
@@ -114,7 +134,7 @@ module Pod
114
134
  "set -o pipefail; #{command} | tee '#{log_raw}'"
115
135
  end
116
136
  # UI.puts "XBuilder command wrapped: #{wrapped}"
117
- UI.puts "XBuilder command: #{command}"
137
+ UI.puts "Loal XBuilder command: #{command}"
118
138
  UI.puts "Available schemes:"
119
139
  schemes = `xcodebuild -list 2>/dev/null`
120
140
  UI.puts schemes
@@ -204,6 +224,7 @@ module Pod
204
224
  framework_args = []
205
225
 
206
226
  archives.each do |archive|
227
+ # 二进制库
207
228
  framework_path = File.join(
208
229
  archive,
209
230
  'Products',
@@ -211,9 +232,25 @@ module Pod
211
232
  'Frameworks',
212
233
  "#{framework_name}.framework"
213
234
  )
235
+ # 符号表
236
+ dsym_path = File.join(
237
+ archive,
238
+ 'dSYMs',
239
+ "#{framework_name}.framework.dSYM"
240
+ )
214
241
  if File.exist?(framework_path)
215
242
  framework_args << "-framework '#{framework_path}'"
216
243
  UI.puts "� Found framework: #{framework_path}".green
244
+ # 仅真机导出符号表,如果需要全部,把开关去除
245
+ archive_name = File.basename(archive, '.xcarchive')
246
+ if archive_name == "#{framework_name}-iOS"
247
+ if File.exist?(dsym_path)
248
+ framework_args << "-debug-symbols '#{dsym_path}'"
249
+ UI.puts "� Found framework.dSYM: #{dsym_path}".green
250
+ else
251
+ UI.puts "⚠️ 未在 #{archive} 中找到 #{dsym_path}.framework.dSYM,已跳过".yellow
252
+ end
253
+ end
217
254
  else
218
255
  UI.puts "⚠️ 未在 #{archive} 中找到 #{framework_name}.framework,已跳过".yellow
219
256
  end
@@ -100,7 +100,7 @@ module Pod
100
100
  # no pretty: just tee to log and console
101
101
  "set -o pipefail; #{command} | tee '#{log_raw}'"
102
102
  end
103
- UI.puts "XBuilder command: #{command}"
103
+ UI.puts "Xcode XBuilder command: #{command}"
104
104
  UI.puts "Available schemes:"
105
105
  schemes = `xcodebuild -list 2>/dev/null`
106
106
  UI.puts schemes
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cocoapods-bb-xcframework
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.7.4
4
+ version: 0.2.7.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - humin
@@ -105,7 +105,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
105
105
  - !ruby/object:Gem::Version
106
106
  version: '0'
107
107
  requirements: []
108
- rubygems_version: 4.0.13
108
+ rubygems_version: 4.0.19
109
109
  specification_version: 4
110
110
  summary: 把podspec打包成xcframework的小工具。packager pod to a xcframework
111
111
  test_files: