cocoapods-myhooks 0.0.1

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.
Files changed (3) hide show
  1. checksums.yaml +7 -0
  2. data/lib/cocoapods_plugin.rb +55 -0
  3. metadata +72 -0
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: 12d0a46faf52d74bc9e62b8d882932ff9152b15160d8405f96edc2a9cfbbf182
4
+ data.tar.gz: 5e6688ceaae19aed103ba607e4dfc28a5a035c09eab826643c3e12c4cfa73de8
5
+ SHA512:
6
+ metadata.gz: 4d87c7bb1f601e078271dd4a3c11dfeccbd73d8f02fc09831f64c35a4f9a04a270f8aaedc30fdcc66728f3d6c08f6565a8de1c1935f76c2052faac9f92d40956
7
+ data.tar.gz: 853967b7a29b3bc560cdc66da762d389f6c2bffe6144b2a54271deaa3d998d76a7c6d2a46b3f5fcf1bd9215a34556599c181dbd9980b877d7c8661c32b682e3b
@@ -0,0 +1,55 @@
1
+ require 'cocoapods-myhooks/command'
2
+ require 'cocoapods'
3
+ require 'xcodeproj'
4
+ require 'find'
5
+ require 'pathname'
6
+ require 'cocoapods-core/podfile/dsl'
7
+ require 'cocoapods-core/podfile/target_definition'
8
+
9
+ #require_relative('podfile_switch')
10
+
11
+ # hook pre_install 修改 宿主工程的配置
12
+ Pod::HooksManager.register('cocoapods-myhooks', :post_install) do |installer|
13
+ # 获取当前的源码引用库列表
14
+ currenrSourceList = Pod::Podfile.gitPathList.uniq
15
+ p "开始"
16
+ p currenrSourceList
17
+ installer.pods_project.targets.each do |target|
18
+ target.build_configurations.each do |config|
19
+ config.build_settings['OTHER_CFLAGS'] = '$(inherited)'
20
+ config.build_settings['OTHER_SWIFT_FLAGS'] = '$(inherited)'
21
+ config.build_settings['OTHER_LDFLAGS'] = '$(inherited)'
22
+ currenrSourceList.each do |sourceTarget|
23
+ if (sourceTarget <=> target.name) == 0
24
+ config.build_settings['OTHER_CFLAGS'] = '$(inherited) -fprofile-instr-generate -fcoverage-mapping'
25
+ config.build_settings['OTHER_SWIFT_FLAGS'] = '$(inherited) -profile-generate -profile-coverage-mapping'
26
+ config.build_settings['OTHER_LDFLAGS'] = '$(inherited) -fprofile-instr-generate' # other linker flags
27
+ end
28
+ end
29
+ end
30
+ end
31
+ installer.pods_project.save
32
+ p "开始修改当前工程buildingsettisng"
33
+ changeXcodeprojConfig
34
+ end
35
+
36
+ # 打开项目工程 修改配置
37
+ def changeXcodeprojConfig
38
+ # 1、获取.xcodeproj 文件
39
+ # 2、打开xcodeproj文件,修改 other_c_flags 、other_linker_flags、other_swift_flags
40
+ p '开始修改壳工程buildingsetting'
41
+ project = Xcodeproj::Project.open('./LJDemo.xcodeproj')
42
+ project.root_object
43
+ project.targets.each do |target|
44
+ target.build_configurations.each do |config|
45
+ if (config.display_name <=> 'Debug') == 0
46
+ build_settings = config.build_settings
47
+ build_settings['OTHER_CFLAGS'] = "$(inherited) -fprofile-instr-generate -fcoverage-mapping"
48
+ build_settings['OTHER_LDFLAGS'] = '$(inherited) -fprofile-instr-generate'
49
+ build_settings["OTHER_SWIFT_FLAGS"] = "'$(inherited) -profile-generate -profile-coverage-mapping"
50
+ end
51
+ end
52
+ end
53
+ # 保存项目的配置信息
54
+ project.save
55
+ end
metadata ADDED
@@ -0,0 +1,72 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: cocoapods-myhooks
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ platform: ruby
6
+ authors:
7
+ - sunjinxin005
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2022-03-25 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: bundler
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '1.3'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '1.3'
27
+ - !ruby/object:Gem::Dependency
28
+ name: rake
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ description: A short description of cocoapods-myhooks.
42
+ email:
43
+ - sunjinxin005@ke.com
44
+ executables: []
45
+ extensions: []
46
+ extra_rdoc_files: []
47
+ files:
48
+ - lib/cocoapods_plugin.rb
49
+ homepage: https://github.com/EXAMPLE/cocoapods-myhooks
50
+ licenses:
51
+ - MIT
52
+ metadata: {}
53
+ post_install_message:
54
+ rdoc_options: []
55
+ require_paths:
56
+ - lib
57
+ required_ruby_version: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ required_rubygems_version: !ruby/object:Gem::Requirement
63
+ requirements:
64
+ - - ">="
65
+ - !ruby/object:Gem::Version
66
+ version: '0'
67
+ requirements: []
68
+ rubygems_version: 3.0.3.1
69
+ signing_key:
70
+ specification_version: 4
71
+ summary: A longer description of cocoapods-myhooks.
72
+ test_files: []