From 40ee28c7654286df818cf5e7dc528e3934e6b88d Mon Sep 17 00:00:00 2001 From: dabing1022 Date: Tue, 19 Jan 2021 17:35:38 +0800 Subject: [PATCH 1/2] fix: header module path find error --- .../cocoapods-imy-bin-0.3.1.2.gem | Bin 0 -> 42496 bytes .../cocoapods-imy-bin/helpers/build_utils.rb | 37 ++++++++---- .../helpers/framework_builder.rb | 54 +++++++++--------- 3 files changed, 53 insertions(+), 38 deletions(-) create mode 100644 cocoapods-imy-bin/cocoapods-imy-bin-0.3.1.2.gem diff --git a/cocoapods-imy-bin/cocoapods-imy-bin-0.3.1.2.gem b/cocoapods-imy-bin/cocoapods-imy-bin-0.3.1.2.gem new file mode 100644 index 0000000000000000000000000000000000000000..a557cd91ca1ff07e8d22df3c7a7bf366e5cb5012 GIT binary patch literal 42496 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 N4+8%n@c#{g{{S#>k1PNH literal 0 HcmV?d00001 diff --git a/cocoapods-imy-bin/lib/cocoapods-imy-bin/helpers/build_utils.rb b/cocoapods-imy-bin/lib/cocoapods-imy-bin/helpers/build_utils.rb index dedc660..3f5d557 100755 --- a/cocoapods-imy-bin/lib/cocoapods-imy-bin/helpers/build_utils.rb +++ b/cocoapods-imy-bin/lib/cocoapods-imy-bin/helpers/build_utils.rb @@ -15,19 +15,35 @@ def Utils.is_framework(spec) end def Utils.spec_header_dir(spec) - spec_header_dir = "./Headers/Public/#{spec.name}" - unless File.exist?(spec_header_dir) - spec_header_dir = "./Pods/Headers/Public/#{spec.name}" - end + header_dir = "./Headers/Public/#{spec.name}" + header_dir = "./Pods/Headers/Public/#{spec.name}" unless File.exist?(header_dir) - unless File.exist?(spec_header_dir) + unless File.exist?(header_dir) # 一些库名称中使用了中划线如AAA-BBB,public header中库名称会默认处理成下划线AAA_BBB module_name = spec.name.gsub("-", "_") - spec_header_dir = "./Pods/Headers/Public/#{module_name}" + header_dir = "./Pods/Headers/Public/#{module_name}" + end + + # 暂时只支持:ios + consumer = Pod::Specification::Consumer.new(spec, :ios) + unless consumer.header_dir.nil? + header_dir = File.join(header_dir, consumer.header_dir) + end + + header_dir + end + + def Utils.spec_module_dir(spec) + if spec.module_name.nil? + module_dir = "./Headers/Public/#{spec.name}" + module_dir = "./Pods/Headers/Public/#{spec.name}" unless File.exist?(module_dir) + else + module_dir = "./Headers/Public/#{spec.module_name}" + module_dir = "./Pods/Headers/Public/#{spec.module_name}" unless File.exist?(module_dir) end - spec_header_dir + module_dir end def Utils.is_swift_module(spec) @@ -37,10 +53,9 @@ def Utils.is_swift_module(spec) #auto 走这里 if File.exist?(dir) Dir.chdir(dir) do - spec_header_dir = Utils.spec_header_dir(spec) - return false unless File.exist?(spec_header_dir) - - is_framework = File.exist?(File.join(spec_header_dir, "#{spec.name}-umbrella.h")) + spec_module_dir = Utils.spec_module_dir(spec) + return false unless File.exist?(spec_module_dir) + is_framework = File.exist?(File.join(spec_module_dir, "#{spec.name}-umbrella.h")) end end diff --git a/cocoapods-imy-bin/lib/cocoapods-imy-bin/helpers/framework_builder.rb b/cocoapods-imy-bin/lib/cocoapods-imy-bin/helpers/framework_builder.rb index dca5ecc..b93ebc6 100755 --- a/cocoapods-imy-bin/lib/cocoapods-imy-bin/helpers/framework_builder.rb +++ b/cocoapods-imy-bin/lib/cocoapods-imy-bin/helpers/framework_builder.rb @@ -9,7 +9,7 @@ module CBin class Framework class Builder include Pod -#Debug下还待完成 + #Debug下还待完成 def initialize(spec, file_accessor, platform, source_dir, isRootSpec = true, build_model="Debug") @spec = spec @source_dir = source_dir @@ -93,22 +93,22 @@ def build_static_library_for_ios(output) UI.message "Building ios libraries with archs #{ios_architectures}" static_libs = static_libs_in_sandbox('build') + static_libs_in_sandbox('build-simulator') + @vendored_libraries # if is_debug_model - ios_architectures.map do |arch| - static_libs += static_libs_in_sandbox("build-#{arch}") + @vendored_libraries - end - ios_architectures_sim do |arch| - static_libs += static_libs_in_sandbox("build-#{arch}") + @vendored_libraries - end + ios_architectures.map do |arch| + static_libs += static_libs_in_sandbox("build-#{arch}") + @vendored_libraries + end + ios_architectures_sim do |arch| + static_libs += static_libs_in_sandbox("build-#{arch}") + @vendored_libraries + end # end build_path = Pathname("build") build_path.mkpath unless build_path.exist? # if is_debug_model - libs = (ios_architectures + ios_architectures_sim) .map do |arch| - library = "build-#{arch}/lib#{@spec.name}.a" - library - end + libs = (ios_architectures + ios_architectures_sim) .map do |arch| + library = "build-#{arch}/lib#{@spec.name}.a" + library + end # else # libs = ios_architectures.map do |arch| # library = "build/package-#{@spec.name}-#{arch}.a" @@ -163,13 +163,13 @@ def compile options = ios_build_options # if is_debug_model - archs = ios_architectures - # archs = %w[arm64 armv7 armv7s] - archs.map do |arch| - xcodebuild(defines, "ARCHS=\'#{arch}\' OTHER_CFLAGS=\'-fembed-bitcode -Qunused-arguments\'","build-#{arch}",@build_model) - end + archs = ios_architectures + # archs = %w[arm64 armv7 armv7s] + archs.map do |arch| + xcodebuild(defines, "ARCHS=\'#{arch}\' OTHER_CFLAGS=\'-fembed-bitcode -Qunused-arguments\'","build-#{arch}",@build_model) + end # else - # xcodebuild(defines,options) + # xcodebuild(defines,options) # end defines @@ -253,8 +253,8 @@ module * { export * } MAP else # by ChildhoodAndy - # try to read modulemap file from public header - module_map_file = File.join(spec_header_dir, "#{@spec.name}.modulemap") + # try to read modulemap file from module dir + module_map_file = File.join(CBin::Build::Utils.spec_module_dir(@spec), "#{@spec.name}.modulemap") if Pathname(module_map_file).exist? module_map = File.read(module_map_file) end @@ -285,9 +285,9 @@ def copy_resources bundle_names = [@spec, *@spec.recursive_subspecs].flat_map do |spec| consumer = spec.consumer(@platform) consumer.resource_bundles.keys + - consumer.resources.map do |r| - File.basename(r, '.bundle') if File.extname(r) == 'bundle' - end + consumer.resources.map do |r| + File.basename(r, '.bundle') if File.extname(r) == 'bundle' + end end.compact.uniq bundles.select! do |bundle| @@ -300,7 +300,7 @@ def copy_resources bundle_files = bundles.join(' ') `cp -rp #{bundle_files} #{framework.resources_path} 2>&1` end - + real_source_dir = @source_dir unless @isRootSpec spec_source_dir = File.join(Dir.pwd,"#{@spec.name}") @@ -339,10 +339,10 @@ def expand_paths(source_dir, path_specs) def framework @framework ||= begin - framework = Framework.new(@spec.name, @platform.name.to_s) - framework.make - framework - end + framework = Framework.new(@spec.name, @platform.name.to_s) + framework.make + framework + end end From 1614390496c30e8fc6f7daf28d5a9aad4cc3ea6b Mon Sep 17 00:00:00 2001 From: dabing1022 Date: Tue, 19 Jan 2021 20:09:52 +0800 Subject: [PATCH 2/2] fix: missing some kind of lib with AA-BB --- .../lib/cocoapods-imy-bin/helpers/build_utils.rb | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/cocoapods-imy-bin/lib/cocoapods-imy-bin/helpers/build_utils.rb b/cocoapods-imy-bin/lib/cocoapods-imy-bin/helpers/build_utils.rb index 3f5d557..7a29903 100755 --- a/cocoapods-imy-bin/lib/cocoapods-imy-bin/helpers/build_utils.rb +++ b/cocoapods-imy-bin/lib/cocoapods-imy-bin/helpers/build_utils.rb @@ -38,6 +38,11 @@ def Utils.spec_module_dir(spec) if spec.module_name.nil? module_dir = "./Headers/Public/#{spec.name}" module_dir = "./Pods/Headers/Public/#{spec.name}" unless File.exist?(module_dir) + unless File.exist?(module_dir) + # 一些库名称中使用了中划线如AAA-BBB,public header中库名称会默认处理成下划线AAA_BBB + module_name = spec.name.gsub("-", "_") + module_dir = "./Pods/Headers/Public/#{module_name}" + end else module_dir = "./Headers/Public/#{spec.module_name}" module_dir = "./Pods/Headers/Public/#{spec.module_name}" unless File.exist?(module_dir)