cocoapods-kz 0.0.7 → 0.0.9
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 +4 -4
- data/lib/cocoapods-kz/command/kz.rb +0 -17
- data/lib/cocoapods-kz/gem_version.rb +1 -1
- data/lib/cocoapods-kz/helpers/kz_analyzer.rb +4 -4
- data/lib/cocoapods-kz/helpers/kz_framework_manager.rb +2 -2
- data/lib/cocoapods-kz/helpers/kz_generator.rb +3 -53
- data/lib/cocoapods-kz/helpers/kz_global_helper.rb +41 -13
- data/lib/cocoapods-kz/helpers/kz_pod_target.rb +8 -4
- data/lib/cocoapods-kz/native/target_installer_helper.rb +6 -20
- data/lib/cocoapods-kz/resources/kz_generator_framework.sh +41 -0
- data/lib/cocoapods-kz/resources/kz_xml_build.sh +9 -0
- metadata +4 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8cd6c7deb2a958e5306602d1e1010400b44643a642a27333be9fa8d93405c38f
|
4
|
+
data.tar.gz: 813cf28a218e20fb79a15e284c69dafee039949c2c9c21e4f7467f8350215ade
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 61cd3bff4c6e8d50118395abaf1ebcff6e89f6ca9f64d98b636617e62c0c5bb5d8b3d7b5646e4496230d11da36d4a7bf4d9e5f8dec585107b06f3b7ba22d76b4
|
7
|
+
data.tar.gz: 7e47fda547a29835c34f4c761ff9d521aa26bd12f4e19bb37902f7e19751fe970e3b0dd0816204c12bf94d5d5fbca699da35576598ef5ce28bed2fe69e24acaf
|
@@ -5,23 +5,6 @@ require_relative 'clean'
|
|
5
5
|
|
6
6
|
module Pod
|
7
7
|
class Command
|
8
|
-
# This is an example of a cocoapods plugin adding a top-level subcommand
|
9
|
-
# to the 'pod' command.
|
10
|
-
#
|
11
|
-
# You can also create subcommands of existing or new commands. Say you
|
12
|
-
# wanted to add a subcommand to `list` to show newly deprecated pods,
|
13
|
-
# (e.g. `pod list deprecated`), there are a few things that would need
|
14
|
-
# to change.
|
15
|
-
#
|
16
|
-
# - move this file to `lib/pod/command/list/deprecated.rb` and update
|
17
|
-
# the class to exist in the the Pod::Command::List namespace
|
18
|
-
# - change this class to extend from `List` instead of `Command`. This
|
19
|
-
# tells the plugin system that it is a subcommand of `list`.
|
20
|
-
# - edit `lib/cocoapods_plugins.rb` to require this file
|
21
|
-
#
|
22
|
-
# @todo Create a PR to add your plugin to CocoaPods/cocoapods.org
|
23
|
-
# in the `plugins.json` file, once your plugin is released.
|
24
|
-
#
|
25
8
|
class Kz < Command
|
26
9
|
self.summary = 'Short description of cocoapods-kz.'
|
27
10
|
self.abstract_command = true
|
@@ -30,7 +30,7 @@ module KZ
|
|
30
30
|
kz_pod_target.repair_modulemap_path = "${PODS_CONFIGURATION_BUILD_DIR}/#{kz_pod_target.name}/#{kz_pod_target.product_name}/Modules/module.modulemap"
|
31
31
|
end
|
32
32
|
kz_pod_target.need_repair_module_import = true
|
33
|
-
|
33
|
+
elsif kz_pod_target.should_build?
|
34
34
|
temp_repeat_product_name << kz_pod_target.product_name
|
35
35
|
end
|
36
36
|
end
|
@@ -131,9 +131,9 @@ module KZ
|
|
131
131
|
end
|
132
132
|
|
133
133
|
def use_framework_mode_from_lock_file?(kz_pod_target)
|
134
|
-
|
135
|
-
|
136
|
-
pod_lock_config =
|
134
|
+
olde_lock_file_content = KZGlobalHelper.instance.olde_lock_file_content
|
135
|
+
if olde_lock_file_content
|
136
|
+
pod_lock_config = olde_lock_file_content[kz_pod_target.name]
|
137
137
|
return :kz_pod_framework_mode if pod_lock_config && pod_lock_config['use_framework']
|
138
138
|
end
|
139
139
|
:kz_pod_code_mode
|
@@ -21,10 +21,10 @@ module KZ
|
|
21
21
|
return @@all_resources_cache_info
|
22
22
|
end
|
23
23
|
|
24
|
-
Dir.foreach(
|
24
|
+
Dir.foreach(KZ_POD_CONFIG_POD_TARGETS) do |folder_name|
|
25
25
|
next if folder_name == '.' || folder_name == '..' || folder_name == '.DS_Store'
|
26
26
|
|
27
|
-
config_folder =
|
27
|
+
config_folder = KZ_POD_CONFIG_POD_TARGETS + folder_name
|
28
28
|
if File.directory?(config_folder)
|
29
29
|
Dir.foreach(config_folder) do |version|
|
30
30
|
next if version == '.' || version == '..' || version == '.DS_Store'
|
@@ -16,56 +16,14 @@ module KZ
|
|
16
16
|
build_phase = native_target.new_shell_script_build_phase('[KZ] Generate Framework')
|
17
17
|
build_phase.show_env_vars_in_log = '0'
|
18
18
|
build_phase.output_paths = ['${KZ_FRAMEWORK_CACHE_PATH}/${FULL_PRODUCT_NAME}']
|
19
|
-
build_phase.shell_script =
|
20
|
-
if [ "${MACH_O_TYPE}" != "staticlib" ]; then
|
21
|
-
exit 0
|
22
|
-
fi
|
23
|
-
|
24
|
-
PRODUCT_DIR=${PODS_BUILD_DIR}/Debug-iphoneos/${TARGET_NAME}/${FULL_PRODUCT_NAME}
|
25
|
-
PRODUCT_SIMULATOR_DIR=${PODS_BUILD_DIR}/Debug-iphonesimulator/${TARGET_NAME}/${FULL_PRODUCT_NAME}
|
26
|
-
CURRENT_PRODUCT_DIR=${PODS_CONFIGURATION_BUILD_DIR}/${TARGET_NAME}
|
27
|
-
|
28
|
-
if [ -d "${KZ_FRAMEWORK_CACHE_PATH}" ]; then
|
29
|
-
rm -r "${KZ_FRAMEWORK_CACHE_PATH}"
|
30
|
-
fi
|
31
|
-
mkdir -p "${KZ_FRAMEWORK_CACHE_PATH}"
|
32
|
-
|
33
|
-
if [ -d "${KZ_FRAMEWORK_CACHE_PATH}/${FULL_PRODUCT_NAME}" ]; then
|
34
|
-
rm -r "${KZ_FRAMEWORK_CACHE_PATH}/${FULL_PRODUCT_NAME}"
|
35
|
-
fi
|
36
|
-
cp -r ${CURRENT_PRODUCT_DIR}/${FULL_PRODUCT_NAME} "${KZ_FRAMEWORK_CACHE_PATH}"
|
37
|
-
|
38
|
-
find "${CURRENT_PRODUCT_DIR}" -iname "*.bundle" | while read -r BUNDLE_FILE; do
|
39
|
-
BUNDLE_NAME=$(basename ${BUNDLE_FILE})
|
40
|
-
if [ -d "${KZ_FRAMEWORK_CACHE_PATH}/${BUNDLE_NAME}" ]; then
|
41
|
-
rm -r "${KZ_FRAMEWORK_CACHE_PATH}/${BUNDLE_NAME}"
|
42
|
-
fi
|
43
|
-
cp -r ${BUNDLE_FILE} "${KZ_FRAMEWORK_CACHE_PATH}"
|
44
|
-
done
|
45
|
-
|
46
|
-
if [ -f ${PRODUCT_DIR}/${PRODUCT_NAME} ] && [ -f ${PRODUCT_SIMULATOR_DIR}/${PRODUCT_NAME} ]; then
|
47
|
-
lipo -create ${PRODUCT_DIR}/${PRODUCT_NAME} ${PRODUCT_SIMULATOR_DIR}/${PRODUCT_NAME} -output "${KZ_FRAMEWORK_CACHE_PATH}/${FULL_PRODUCT_NAME}/${PRODUCT_NAME}"
|
48
|
-
fi
|
49
|
-
|
50
|
-
if [ -d ${PRODUCT_DIR}/Modules/${PRODUCT_NAME}.swiftmodule ] && [ -d ${PRODUCT_SIMULATOR_DIR}/Modules/${PRODUCT_NAME}.swiftmodule ]; then
|
51
|
-
cp -r ${PRODUCT_DIR}/Modules/${PRODUCT_NAME}.swiftmodule "${KZ_FRAMEWORK_CACHE_PATH}/${FULL_PRODUCT_NAME}/Modules"
|
52
|
-
cp -r ${PRODUCT_SIMULATOR_DIR}/Modules/${PRODUCT_NAME}.swiftmodule "${KZ_FRAMEWORK_CACHE_PATH}/${FULL_PRODUCT_NAME}/Modules"
|
53
|
-
fi
|
54
|
-
|
55
|
-
PRODUCT_SWIFT_H=${PRODUCT_DIR}/Headers/${PRODUCT_NAME}-Swift.h
|
56
|
-
PRODUCT_SIMULATOR_SWIFT_H=${PRODUCT_SIMULATOR_DIR}/Headers/${PRODUCT_NAME}-Swift.h
|
57
|
-
TARGET_SWIFT_H=${KZ_FRAMEWORK_CACHE_PATH}/${FULL_PRODUCT_NAME}/Headers/${PRODUCT_NAME}-Swift.h
|
58
|
-
if [ -f $PRODUCT_SWIFT_H ] && [ -f $PRODUCT_SIMULATOR_SWIFT_H ]; then
|
59
|
-
ruby "$KZ_MERGE_SWIFT_H_PATH" "$PRODUCT_SWIFT_H" "$PRODUCT_SIMULATOR_SWIFT_H" "$TARGET_SWIFT_H"
|
60
|
-
fi
|
61
|
-
}
|
19
|
+
build_phase.shell_script = KZ.deal_path_for_xcconfig(KZ_GENERATOR_FRAMEWORK_PATH, true)
|
62
20
|
end
|
63
21
|
|
64
22
|
def add_flexlib_xml_build_rules(project, native_target)
|
65
23
|
return unless KZ::KZGlobalHelper.instance.have_flexLib_pod_target
|
66
24
|
|
67
25
|
native_target.build_configurations.each do |config|
|
68
|
-
config.build_settings["KZ_XML_FLEX_COMPILER"] = FLEX_COMPLIER_PATH
|
26
|
+
config.build_settings["KZ_XML_FLEX_COMPILER"] = KZ.deal_path_for_xcconfig(FLEX_COMPLIER_PATH, false)
|
69
27
|
config.build_settings["KZ_XML_FLEX_DIR"] = "${TARGET_TEMP_DIR}/XmlFlexs"
|
70
28
|
config.build_settings["KZ_XML_FLEX_BUILD_DIR"] = "${TARGET_BUILD_DIR}/${PRODUCT_NAME}.bundle"
|
71
29
|
end
|
@@ -73,15 +31,7 @@ fi
|
|
73
31
|
xml_rule = new_build_rule(project, native_target, '[KZ] Custom Xml Build')
|
74
32
|
xml_rule.file_type = 'text.xml'
|
75
33
|
xml_rule.output_files = Array['${KZ_XML_FLEX_DIR}/${INPUT_FILE_BASE}.flex']
|
76
|
-
xml_rule.script =
|
77
|
-
rm -rf ${FLEX_PATH}
|
78
|
-
$KZ_XML_FLEX_COMPILER $INPUT_FILE_PATH $FLEX_PATH
|
79
|
-
if [ -f $FLEX_PATH ] ; then
|
80
|
-
cp $FLEX_PATH $KZ_XML_FLEX_BUILD_DIR
|
81
|
-
exit 0
|
82
|
-
else
|
83
|
-
exit 1
|
84
|
-
fi}
|
34
|
+
xml_rule.script = KZ.deal_path_for_xcconfig(KZ_XML_BUILD_PATH, true)
|
85
35
|
end
|
86
36
|
|
87
37
|
def new_build_rule(project, native_target, name)
|
@@ -7,15 +7,20 @@ require_relative 'kz_config_result'
|
|
7
7
|
require_relative 'kz_pod_target'
|
8
8
|
|
9
9
|
module KZ
|
10
|
+
KZ_POD_CONFIG_VERSION = '1.0.2'
|
10
11
|
KZ_POD_CONFIG_ROOT = Pod::Config.instance.installation_root + 'Pods/KZPodConfigure'
|
12
|
+
KZ_POD_CONFIG_SUPPORT_FILES = KZ_POD_CONFIG_ROOT + 'SupportFiles'
|
13
|
+
KZ_POD_CONFIG_POD_TARGETS = KZ_POD_CONFIG_ROOT + 'PodTargets'
|
11
14
|
KZ_POD_CONFIG_ROOT_STR = "${PODS_ROOT}/KZPodConfigure"
|
12
15
|
# 修复pod lib报错问题
|
13
16
|
Pod::Config.instance.installation_root = nil
|
14
17
|
|
15
18
|
HMAP_EXECUTE_PATH = File.dirname(__FILE__) + '/../resources/hmap'
|
16
|
-
FLEX_COMPLIER_PATH =
|
19
|
+
FLEX_COMPLIER_PATH = KZ_POD_CONFIG_SUPPORT_FILES + 'FlexCompiler'
|
20
|
+
KZ_MERGE_SWIFT_H_PATH = KZ_POD_CONFIG_SUPPORT_FILES + 'kz_merge_swift_h.rb'
|
21
|
+
KZ_GENERATOR_FRAMEWORK_PATH = KZ_POD_CONFIG_SUPPORT_FILES + 'kz_generator_framework.sh'
|
22
|
+
KZ_XML_BUILD_PATH = KZ_POD_CONFIG_SUPPORT_FILES + 'kz_xml_build.sh'
|
17
23
|
KZ_LOCK_FILE_PATH = KZ_POD_CONFIG_ROOT + 'KZConfigLock'
|
18
|
-
KZ_MERGE_SWIFT_H_PATH = KZ_POD_CONFIG_ROOT + 'kz_merge_swift_h.rb'
|
19
24
|
|
20
25
|
def self.deal_path_for_xcconfig(path, add_quotes = false)
|
21
26
|
if path.is_a?(String)
|
@@ -52,6 +57,7 @@ module KZ
|
|
52
57
|
@kz_config_lock = {}
|
53
58
|
@disable_generate_framework = false
|
54
59
|
@generate_kz_pod_targets = false
|
60
|
+
@olde_lock_file_content = nil
|
55
61
|
end
|
56
62
|
|
57
63
|
@@instance = nil
|
@@ -62,12 +68,25 @@ module KZ
|
|
62
68
|
|
63
69
|
def prepare
|
64
70
|
if Pod::Config.instance.podfile && Pod::Config.instance.podfile.plugins.has_key?("cocoapods-kz")
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
71
|
+
if olde_lock_file_content == nil || olde_lock_file_content['version'] != KZ_POD_CONFIG_VERSION
|
72
|
+
FileUtils.rm_rf(KZ_POD_CONFIG_ROOT)
|
73
|
+
FileUtils.mkdir_p(KZ_POD_CONFIG_ROOT)
|
74
|
+
end
|
75
|
+
FileUtils.mkdir_p(KZ_POD_CONFIG_SUPPORT_FILES) unless File.exist?(KZ_POD_CONFIG_SUPPORT_FILES)
|
76
|
+
FileUtils.mkdir_p(KZ_POD_CONFIG_POD_TARGETS) unless File.exist?(KZ_POD_CONFIG_POD_TARGETS)
|
77
|
+
|
78
|
+
FileUtils.rm(FLEX_COMPLIER_PATH) if File.exist?(FLEX_COMPLIER_PATH)
|
79
|
+
FileUtils.cp_r(File.dirname(__FILE__) + '/../resources/FlexCompiler', FLEX_COMPLIER_PATH)
|
80
|
+
system("chmod +x #{FLEX_COMPLIER_PATH}")
|
81
|
+
|
69
82
|
FileUtils.cp_r(File.dirname(__FILE__) + '/../resources/kz_merge_swift_h.rb', KZ_MERGE_SWIFT_H_PATH)
|
70
83
|
|
84
|
+
FileUtils.cp_r(File.dirname(__FILE__) + '/../resources/kz_generator_framework.sh', KZ_GENERATOR_FRAMEWORK_PATH)
|
85
|
+
system("chmod +x #{KZ_GENERATOR_FRAMEWORK_PATH}")
|
86
|
+
|
87
|
+
FileUtils.cp_r(File.dirname(__FILE__) + '/../resources/kz_xml_build.sh', KZ_XML_BUILD_PATH)
|
88
|
+
system("chmod +x #{KZ_XML_BUILD_PATH}")
|
89
|
+
|
71
90
|
Pod::Config.instance.podfile.use_frameworks!(:linkage => :static)
|
72
91
|
Pod::Config.instance.podfile.install!("cocoapods", :deterministic_uuids => false)
|
73
92
|
else
|
@@ -108,17 +127,23 @@ module KZ
|
|
108
127
|
end
|
109
128
|
|
110
129
|
def have_flexLib_pod_target
|
111
|
-
@kz_analyzer.
|
130
|
+
@kz_analyzer.all_kz_pod_targets.values.each do |target|
|
131
|
+
return true if target.root_name == 'FlexLib' || target.root_name == 'KZSwiftUI'
|
132
|
+
end
|
133
|
+
false
|
112
134
|
end
|
113
135
|
|
114
136
|
def write_lock_file
|
115
137
|
self.kz_analyzer.all_kz_pod_targets.values.each do |kz_pod_target|
|
116
138
|
result = pod_config_result_with_target(kz_pod_target)
|
117
139
|
|
118
|
-
@kz_config_lock[
|
119
|
-
@kz_config_lock[
|
120
|
-
|
121
|
-
@kz_config_lock[kz_pod_target.name]
|
140
|
+
@kz_config_lock['version'] = KZ_POD_CONFIG_VERSION
|
141
|
+
@kz_config_lock['pod_targets'] ||= {}
|
142
|
+
|
143
|
+
@kz_config_lock['pod_targets'][kz_pod_target.name] ||= {}
|
144
|
+
@kz_config_lock['pod_targets'][kz_pod_target.name]["dev_pod"] = kz_pod_target.is_dev_pod
|
145
|
+
@kz_config_lock['pod_targets'][kz_pod_target.name]["use_framework"] = (result != nil)
|
146
|
+
@kz_config_lock['pod_targets'][kz_pod_target.name]["version"] = kz_pod_target.version
|
122
147
|
end
|
123
148
|
|
124
149
|
if @kz_config_lock.count > 0
|
@@ -129,8 +154,11 @@ module KZ
|
|
129
154
|
end
|
130
155
|
end
|
131
156
|
|
132
|
-
def
|
133
|
-
|
157
|
+
def olde_lock_file_content
|
158
|
+
if File.exist?(KZ_LOCK_FILE_PATH)
|
159
|
+
@olde_lock_file_content ||= JSON.parse(File.read(KZ_LOCK_FILE_PATH))
|
160
|
+
end
|
161
|
+
@olde_lock_file_content
|
134
162
|
end
|
135
163
|
|
136
164
|
end
|
@@ -139,7 +139,7 @@ module KZ
|
|
139
139
|
elsif repair_import.is_a?(Array)
|
140
140
|
repair_import.each do |repair_import_target_name|
|
141
141
|
kz_repair_pod_target = yield(repair_import_target_name)
|
142
|
-
@repair_import << kz_repair_pod_target
|
142
|
+
@repair_import << kz_repair_pod_target if kz_repair_pod_target
|
143
143
|
end
|
144
144
|
end
|
145
145
|
end
|
@@ -168,7 +168,7 @@ module KZ
|
|
168
168
|
end
|
169
169
|
|
170
170
|
# 直接用于配置HEADER_SEARCH_PATHS
|
171
|
-
def header_search_paths
|
171
|
+
def header_search_paths(custom_paths)
|
172
172
|
header_search_paths = ''
|
173
173
|
header_search_paths = KZ.deal_path_for_xcconfig(@private_header_search_path, true) if @private_header_search_path
|
174
174
|
repair_header_search_paths = self.all_repair_header_search_paths.join(' ')
|
@@ -178,6 +178,10 @@ module KZ
|
|
178
178
|
if @use_local_private_headers_path
|
179
179
|
header_search_paths += (' ' + KZ.deal_path_for_xcconfig(local_private_headers_path, true))
|
180
180
|
end
|
181
|
+
header_search_paths += (' ' + KZ.deal_path_for_xcconfig(self.native_pod_target.sandbox.public_headers.root, true))
|
182
|
+
custom_paths.each do |custom_path|
|
183
|
+
header_search_paths += (' ' + custom_path)
|
184
|
+
end if custom_paths
|
181
185
|
header_search_paths
|
182
186
|
end
|
183
187
|
|
@@ -204,7 +208,7 @@ module KZ
|
|
204
208
|
|
205
209
|
# 获取target对应的配置根目录,部分文件需要依赖版本进行存储
|
206
210
|
def pod_config_cache_path(concat_version)
|
207
|
-
kz_target_framework_folder =
|
211
|
+
kz_target_framework_folder = KZ_POD_CONFIG_POD_TARGETS + @name
|
208
212
|
kz_target_framework_folder += @version if concat_version
|
209
213
|
FileUtils.mkdir_p(kz_target_framework_folder) unless File.exist?(kz_target_framework_folder) || concat_version
|
210
214
|
kz_target_framework_folder
|
@@ -257,7 +261,7 @@ module KZ
|
|
257
261
|
|
258
262
|
def local_private_headers_path
|
259
263
|
@local_private_headers_path ||= begin
|
260
|
-
path =
|
264
|
+
path = KZ_POD_CONFIG_POD_TARGETS + @name + "Headers"
|
261
265
|
FileUtils.mkdir_p(path) unless File.exist?(path)
|
262
266
|
path
|
263
267
|
end
|
@@ -32,23 +32,22 @@ module Pod
|
|
32
32
|
end
|
33
33
|
xcconfig.attributes['HEADER_SEARCH_PATHS'] = main_hamp_search_path
|
34
34
|
xcconfig.attributes['USE_HEADERMAP'] = 'NO'
|
35
|
-
|
36
|
-
if generator.configuration_name == 'Debug' && check_default_xcode_version_for_ld64
|
37
|
-
other_linker_flags = xcconfig.other_linker_flags[:simple]
|
38
|
-
other_linker_flags << '-ld64'
|
39
|
-
end
|
35
|
+
|
40
36
|
kz_update_xcconfig_file(xcconfig, path)
|
41
37
|
return
|
42
38
|
end
|
43
39
|
elsif generator.is_a?(Pod::Target::BuildSettings::PodTargetSettings)
|
44
40
|
kz_pod_target = self.target.weakRef_kz_pod_target
|
45
41
|
if kz_pod_target
|
42
|
+
pod_custom_header_search_paths = generator.pod_target_xcconfig_values_by_consumer_by_key["HEADER_SEARCH_PATHS"]
|
43
|
+
pod_custom_header_search_paths = pod_custom_header_search_paths.values if pod_custom_header_search_paths
|
44
|
+
|
46
45
|
xcconfig = generator.xcconfig
|
47
|
-
xcconfig.attributes['HEADER_SEARCH_PATHS'] = kz_pod_target.header_search_paths
|
46
|
+
xcconfig.attributes['HEADER_SEARCH_PATHS'] = kz_pod_target.header_search_paths(pod_custom_header_search_paths)
|
48
47
|
xcconfig.attributes['USE_HEADERMAP'] = 'NO'
|
49
48
|
framework_cache_path = KZ.deal_path_for_xcconfig(kz_pod_target.pod_config_cache_path(true))
|
50
49
|
xcconfig.attributes['KZ_FRAMEWORK_CACHE_PATH'] = framework_cache_path
|
51
|
-
xcconfig.attributes['KZ_MERGE_SWIFT_H_PATH'] = KZ::
|
50
|
+
xcconfig.attributes['KZ_MERGE_SWIFT_H_PATH'] = KZ.deal_path_for_xcconfig(KZ::KZ_MERGE_SWIFT_H_PATH)
|
52
51
|
|
53
52
|
add_repair_modulemap(xcconfig, kz_pod_target.all_repair_modulemap_paths, kz_pod_target.uses_swift?)
|
54
53
|
kz_update_xcconfig_file(xcconfig, path)
|
@@ -107,19 +106,6 @@ module Pod
|
|
107
106
|
xcconfig.attributes['OTHER_CFLAGS'] = new_flags.join(' ')
|
108
107
|
end
|
109
108
|
|
110
|
-
def check_default_xcode_version_for_ld64
|
111
|
-
default_xcode_path = Pathname.new('/Applications/Xcode.app')
|
112
|
-
return false unless default_xcode_path.exist?
|
113
|
-
|
114
|
-
xcode_info_plist = default_xcode_path + 'Contents/Info.plist'
|
115
|
-
_xcode_info_plist = KZ::KZ_POD_CONFIG_ROOT + 'Xcode_Info.plist'
|
116
|
-
FileUtils.cp(xcode_info_plist, _xcode_info_plist)
|
117
|
-
system "plutil -convert xml1 #{_xcode_info_plist.to_s} #{_xcode_info_plist.to_s}"
|
118
|
-
plist_hash = Xcodeproj::Plist.read_from_path(_xcode_info_plist)
|
119
|
-
FileUtils.rm(_xcode_info_plist)
|
120
|
-
plist_hash['CFBundleShortVersionString'] == '15.0'
|
121
|
-
end
|
122
|
-
|
123
109
|
end
|
124
110
|
end
|
125
111
|
end
|
@@ -0,0 +1,41 @@
|
|
1
|
+
if [ "${MACH_O_TYPE}" != "staticlib" ]; then
|
2
|
+
exit 0
|
3
|
+
fi
|
4
|
+
|
5
|
+
PRODUCT_DIR=${PODS_BUILD_DIR}/Debug-iphoneos/${TARGET_NAME}/${FULL_PRODUCT_NAME}
|
6
|
+
PRODUCT_SIMULATOR_DIR=${PODS_BUILD_DIR}/Debug-iphonesimulator/${TARGET_NAME}/${FULL_PRODUCT_NAME}
|
7
|
+
CURRENT_PRODUCT_DIR=${PODS_CONFIGURATION_BUILD_DIR}/${TARGET_NAME}
|
8
|
+
|
9
|
+
if [ -d "${KZ_FRAMEWORK_CACHE_PATH}" ]; then
|
10
|
+
rm -r "${KZ_FRAMEWORK_CACHE_PATH}"
|
11
|
+
fi
|
12
|
+
mkdir -p "${KZ_FRAMEWORK_CACHE_PATH}"
|
13
|
+
|
14
|
+
if [ -d "${KZ_FRAMEWORK_CACHE_PATH}/${FULL_PRODUCT_NAME}" ]; then
|
15
|
+
rm -r "${KZ_FRAMEWORK_CACHE_PATH}/${FULL_PRODUCT_NAME}"
|
16
|
+
fi
|
17
|
+
cp -r ${CURRENT_PRODUCT_DIR}/${FULL_PRODUCT_NAME} "${KZ_FRAMEWORK_CACHE_PATH}"
|
18
|
+
|
19
|
+
find "${CURRENT_PRODUCT_DIR}" -iname "*.bundle" | while read -r BUNDLE_FILE; do
|
20
|
+
BUNDLE_NAME=$(basename ${BUNDLE_FILE})
|
21
|
+
if [ -d "${KZ_FRAMEWORK_CACHE_PATH}/${BUNDLE_NAME}" ]; then
|
22
|
+
rm -r "${KZ_FRAMEWORK_CACHE_PATH}/${BUNDLE_NAME}"
|
23
|
+
fi
|
24
|
+
cp -r ${BUNDLE_FILE} "${KZ_FRAMEWORK_CACHE_PATH}"
|
25
|
+
done
|
26
|
+
|
27
|
+
if [ -f ${PRODUCT_DIR}/${PRODUCT_NAME} ] && [ -f ${PRODUCT_SIMULATOR_DIR}/${PRODUCT_NAME} ]; then
|
28
|
+
lipo -create ${PRODUCT_DIR}/${PRODUCT_NAME} ${PRODUCT_SIMULATOR_DIR}/${PRODUCT_NAME} -output "${KZ_FRAMEWORK_CACHE_PATH}/${FULL_PRODUCT_NAME}/${PRODUCT_NAME}"
|
29
|
+
fi
|
30
|
+
|
31
|
+
if [ -d ${PRODUCT_DIR}/Modules/${PRODUCT_NAME}.swiftmodule ] && [ -d ${PRODUCT_SIMULATOR_DIR}/Modules/${PRODUCT_NAME}.swiftmodule ]; then
|
32
|
+
cp -r ${PRODUCT_DIR}/Modules/${PRODUCT_NAME}.swiftmodule "${KZ_FRAMEWORK_CACHE_PATH}/${FULL_PRODUCT_NAME}/Modules"
|
33
|
+
cp -r ${PRODUCT_SIMULATOR_DIR}/Modules/${PRODUCT_NAME}.swiftmodule "${KZ_FRAMEWORK_CACHE_PATH}/${FULL_PRODUCT_NAME}/Modules"
|
34
|
+
fi
|
35
|
+
|
36
|
+
PRODUCT_SWIFT_H=${PRODUCT_DIR}/Headers/${PRODUCT_NAME}-Swift.h
|
37
|
+
PRODUCT_SIMULATOR_SWIFT_H=${PRODUCT_SIMULATOR_DIR}/Headers/${PRODUCT_NAME}-Swift.h
|
38
|
+
TARGET_SWIFT_H=${KZ_FRAMEWORK_CACHE_PATH}/${FULL_PRODUCT_NAME}/Headers/${PRODUCT_NAME}-Swift.h
|
39
|
+
if [ -f $PRODUCT_SWIFT_H ] && [ -f $PRODUCT_SIMULATOR_SWIFT_H ]; then
|
40
|
+
ruby "$KZ_MERGE_SWIFT_H_PATH" "$PRODUCT_SWIFT_H" "$PRODUCT_SIMULATOR_SWIFT_H" "$TARGET_SWIFT_H"
|
41
|
+
fi
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cocoapods-kz
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.9
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- yixiong
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-
|
11
|
+
date: 2024-06-12 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -74,7 +74,9 @@ files:
|
|
74
74
|
- lib/cocoapods-kz/native/target_installer_helper.rb
|
75
75
|
- lib/cocoapods-kz/resources/FlexCompiler
|
76
76
|
- lib/cocoapods-kz/resources/hmap
|
77
|
+
- lib/cocoapods-kz/resources/kz_generator_framework.sh
|
77
78
|
- lib/cocoapods-kz/resources/kz_merge_swift_h.rb
|
79
|
+
- lib/cocoapods-kz/resources/kz_xml_build.sh
|
78
80
|
- lib/cocoapods_plugin.rb
|
79
81
|
homepage: https://github.com/EXAMPLE/cocoapods-kz
|
80
82
|
licenses:
|