cocoapods-fy-bin 0.1.2 → 0.1.5

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: 27ca77f7e13d94ec0a6aad54d5455bc9b2123451d22fd1b4f1aad4a5a9df0901
4
- data.tar.gz: b849bbb48f53940fadac933adae49c6b2e69fca3b0c2b3305c2202dc6505dd30
3
+ metadata.gz: 051f76a29803d0b551a611de84c54c8c818e64f3fbd93289be027f8392640c88
4
+ data.tar.gz: 8183208c3b697a7a664dd692bc720a83595c56ea7546ef08e34b11af2fc2f100
5
5
  SHA512:
6
- metadata.gz: b0025dcd7e6064523a2d7446c6da8bb990913769addab3d13d2f5d60f7a776858af9338effdb6568daa91a370b46fc556df0cbee6471d94173ee63f4a1ecce61
7
- data.tar.gz: 1f4df164c4a91f40fba2d4d28f6e7edca6807828a156bc4225594a98ce4b501d6f67df2de5d37e0e7141e8f7fdd52ed42620a05acaec2a7a0a3215067e993d1a
6
+ metadata.gz: 0b5e192c7d09eca7258698ac67a12a1ccee679e963b013a753d2ba38cfacf94d34b524e0cfa4401844c38bda11248cedd012cb7cc65c11498f75abd14d31b560
7
+ data.tar.gz: 2a644bd033819e45445cc657700fa8abb4d853dd8cd1cd3ec0e98dd1677cf8b332ac4dfc4d1d9306278484aa43a735ad91b6a7bdbec98598705b59c4aa9d8e4d
@@ -32,7 +32,9 @@ module Pod
32
32
  ['--configuration', 'Build the specified configuration (e.g. Debug). Defaults to Release'],
33
33
  ['--env', "该组件上传的环境 %w[debug release]"],
34
34
  ['--archs', "需要二进制组件的架构"],
35
- ['--pre_build_shell', "xcodebuild前的脚本命令"]
35
+ ['--pre_build_shell', "xcodebuild前的脚本命令"],
36
+ ['--suf_build_shell', "xcodebuild后的脚本命令"],
37
+ ['--toolchain', "设置toolchain"]
36
38
  ].concat(Pod::Command::Gen.options).concat(super).uniq
37
39
  end
38
40
 
@@ -56,6 +58,8 @@ module Pod
56
58
  @platform = Platform.new(:ios)
57
59
  @archs = argv.option('archs', 'armv7,arm64')
58
60
  @pre_build_shell = argv.option('pre_build_shell') || ''
61
+ @suf_build_shell = argv.option('suf_build_shell') || ''
62
+ @toolchain = argv.option('toolchain') || ''
59
63
  @config = argv.option('configuration', 'Release')
60
64
 
61
65
  @framework_path
@@ -91,6 +95,8 @@ module Pod
91
95
  @spec,
92
96
  @archs,
93
97
  @pre_build_shell,
98
+ @suf_build_shell,
99
+ @toolchain,
94
100
  CBin::Config::Builder.instance.white_pod_list.include?(@spec.name),
95
101
  @config)
96
102
  builder.build
@@ -22,7 +22,9 @@ module Pod
22
22
  ['--configuration', 'Build the specified configuration (e.g. Release ). Defaults to Debug'],
23
23
  ['--env', "该组件上传的环境 %w[debug release]"],
24
24
  ['--archs', "需要二进制组件的架构"],
25
- ['--pre_build_shell', "xcodebuild前的脚本命令"]
25
+ ['--pre_build_shell', "xcodebuild前的脚本命令"],
26
+ ['--suf_build_shell', "xcodebuild后的脚本命令"],
27
+ ['--toolchain', "设置toolchain"]
26
28
  ].concat(Pod::Command::Gen.options).concat(super).uniq
27
29
  end
28
30
 
@@ -41,6 +43,8 @@ module Pod
41
43
  @verbose = argv.flag?('verbose', true)
42
44
  @archs = argv.flag?('archs', 'arm64')
43
45
  @pre_build_shell = argv.option('pre_build_shell') || ''
46
+ @suf_build_shell = argv.option('suf_build_shell') || ''
47
+ @toolchain = argv.option('toolchain') || ''
44
48
  @config = argv.option('configuration', 'Debug')
45
49
  @additional_args = argv.remainder!
46
50
 
@@ -131,6 +135,12 @@ module Pod
131
135
  if @pre_build_shell
132
136
  argvs += ["--pre_build_shell=#{@pre_build_shell}"]
133
137
  end
138
+ if @suf_build_shell
139
+ argvs += ["--suf_build_shell=#{@suf_build_shell}"]
140
+ end
141
+ if @toolchain
142
+ argvs += ["--toolchain=#{@toolchain}"]
143
+ end
134
144
  argvs += ["--configuration=#{@config}"]
135
145
 
136
146
  archive = Pod::Command::Bin::Archive.new(CLAide::ARGV.new(argvs))
@@ -1,6 +1,6 @@
1
1
 
2
2
  module CBin
3
- VERSION = '0.1.2'
3
+ VERSION = '0.1.5'
4
4
  end
5
5
 
6
6
  module Pod
@@ -21,6 +21,8 @@ module CBin
21
21
  rootSpec,
22
22
  archs,
23
23
  pre_build_shell,
24
+ suf_build_shell,
25
+ toolchain,
24
26
  skip_archive = false,
25
27
  build_model="Release")
26
28
  @spec = spec
@@ -30,6 +32,8 @@ module CBin
30
32
  @isRootSpec = rootSpec.name == spec.name
31
33
  @archs = archs
32
34
  @pre_build_shell = pre_build_shell
35
+ @suf_build_shell = suf_build_shell
36
+ @toolchain = toolchain
33
37
  @skip_archive = skip_archive
34
38
  @framework_output = framework_output
35
39
  @zip = zip
@@ -58,7 +62,7 @@ module CBin
58
62
  source_dir = Dir.pwd
59
63
  file_accessor = Sandbox::FileAccessor.new(Pathname.new('.').expand_path, @spec.consumer(@platform))
60
64
  Dir.chdir(workspace_directory) do
61
- builder = CBin::Framework::Builder.new(@spec, file_accessor, @platform, source_dir, @archs, @pre_build_shell, @isRootSpec, @build_model)
65
+ builder = CBin::Framework::Builder.new(@spec, file_accessor, @platform, source_dir, @archs, @pre_build_shell, @suf_build_shell, @toolchain, @isRootSpec, @build_model)
62
66
  @@build_defines = builder.build if @isRootSpec
63
67
  begin
64
68
  @framework_path = builder.lipo_build(@@build_defines) unless @skip_archive
@@ -10,7 +10,7 @@ module CBin
10
10
  class Builder
11
11
  include Pod
12
12
  #Debug下还待完成
13
- def initialize(spec, file_accessor, platform, source_dir, archs, pre_build_shell, isRootSpec = true, build_model="Debug")
13
+ def initialize(spec, file_accessor, platform, source_dir, archs, pre_build_shell, suf_build_shell, toolchain, isRootSpec = true, build_model="Debug")
14
14
  @spec = spec
15
15
  @source_dir = source_dir
16
16
  @file_accessor = file_accessor
@@ -19,6 +19,8 @@ module CBin
19
19
  @isRootSpec = isRootSpec
20
20
  @archs = archs
21
21
  @pre_build_shell = pre_build_shell
22
+ @suf_build_shell = suf_build_shell
23
+ @toolchain = toolchain
22
24
  #vendored_static_frameworks 只有 xx.framework 需要拼接为 xx.framework/xx by slj
23
25
  vendored_static_frameworks = file_accessor.vendored_static_frameworks.map do |framework|
24
26
  path = framework
@@ -79,7 +81,7 @@ module CBin
79
81
  archs.map do |arch|
80
82
  xcodebuild(defines, "-sdk iphonesimulator ARCHS=\'#{arch}\' ", "build-#{arch}",@build_model)
81
83
  end
82
-
84
+ suf_build_command
83
85
  end
84
86
 
85
87
 
@@ -168,10 +170,13 @@ module CBin
168
170
  end
169
171
 
170
172
  def compile
171
- defines = "GCC_PREPROCESSOR_DEFINITIONS='$(inherited)'"
173
+ defines = ""
174
+ unless @toolchain.empty? then
175
+ defines += "-toolchain \"#{@toolchain}\""
176
+ end
177
+ defines += "GCC_PREPROCESSOR_DEFINITIONS='$(inherited)'"
172
178
  defines += " SWIFT_ACTIVE_COMPILATION_CONDITIONS='$(inherited)' "
173
179
  defines += @spec.consumer(@platform).compiler_flags.join(' ')
174
-
175
180
  options = ios_build_options
176
181
  # if is_debug_model
177
182
  archs = ios_architectures
@@ -222,6 +227,26 @@ module CBin
222
227
  end
223
228
  end
224
229
 
230
+ # 编译后需执行的的shell脚本
231
+ def suf_build_command
232
+ unless @suf_build_shell.empty? then
233
+ command = "sh #{@suf_build_shell}"
234
+ puts command
235
+ UI.message "command = #{command}"
236
+ output = `#{command}`.lines.to_a
237
+
238
+ if $CHILD_STATUS.exitstatus != 0
239
+ raise <<~EOF
240
+ Shell command failed: #{command}
241
+ Output:
242
+ #{output.map { |line| " #{line}" }.join}
243
+ EOF
244
+
245
+ Process.exit
246
+ end
247
+ end
248
+ end
249
+
225
250
  def xcodebuild(defines = '', args = '', build_dir = 'build', build_model = 'Debug')
226
251
 
227
252
  unless File.exist?("Pods.xcodeproj") #cocoapods-generate v2.0.0
@@ -236,6 +261,7 @@ module CBin
236
261
  output = `#{command}`.lines.to_a
237
262
 
238
263
  if $CHILD_STATUS.exitstatus != 0
264
+ suf_build_command
239
265
  raise <<~EOF
240
266
  Build command failed: #{command}
241
267
  Output:
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cocoapods-fy-bin
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.1.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - dr