cocoapods-fy-bin 0.1.2 → 0.1.5

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: 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