pod-builder 4.3.0 → 4.4.2
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/pod_builder/command/init.rb +5 -1
- data/lib/pod_builder/core.rb +3 -0
- data/lib/pod_builder/install.rb +1 -11
- data/lib/pod_builder/podfile.rb +45 -1
- data/lib/pod_builder/podfile_item.rb +5 -2
- data/lib/pod_builder/rome/post_install.rb +9 -4
- data/lib/pod_builder/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f7a2abe8fcb659b07c1a6819579093c791eca94d882888098e65c75c7ea9b260
|
4
|
+
data.tar.gz: f709a74f3bceee3acc9e57817706165c32693fbdc32b777b403c2257f9712889
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: cc2172d216372bf012494106b70f93a6aaee0001e493a890067b7206020cb4340015766575f90b5e91ef736e1884dc16f93cd22749ae0cb6e82dce51a8d4fb53
|
7
|
+
data.tar.gz: baea42573bb858669fb0e91b1fc798301e88fee53808baab62247e89e89bdd068f2d11c65d8a5f8f6a64fbd029649fb9c6e93661618ea911851165d4155f0d66
|
@@ -65,6 +65,10 @@ module PodBuilder
|
|
65
65
|
source_path_rel_path,
|
66
66
|
development_pods_config_rel_path]
|
67
67
|
|
68
|
+
if Configuration.react_native_project
|
69
|
+
git_ignores.push("build/")
|
70
|
+
end
|
71
|
+
|
68
72
|
File.write("#{OPTIONS[:prebuild_path]}/.gitignore", git_ignores.join("\n"))
|
69
73
|
end
|
70
74
|
|
@@ -141,7 +145,7 @@ module PodBuilder
|
|
141
145
|
expected_header_search_path_prefix = "\"HEADER_SEARCH_PATHS\" => \""
|
142
146
|
raise "\n\nExpected header search path entry not found\n".red unless content.include?(expected_header_search_path_prefix)
|
143
147
|
|
144
|
-
content.sub!(expected_header_search_path_prefix, "#{expected_header_search_path_prefix}\\\"$(PODS_ROOT)/Headers/Public/Flipper-Folly\\\" ")
|
148
|
+
content.sub!(expected_header_search_path_prefix, "#{expected_header_search_path_prefix}\\\"$(PODS_ROOT)/Headers/Public/Flipper-Folly\\\" \\\"$(PODS_ROOT)/../build/generated/ios\\\" ")
|
145
149
|
File.write(paths[0], content)
|
146
150
|
end
|
147
151
|
end
|
data/lib/pod_builder/core.rb
CHANGED
data/lib/pod_builder/install.rb
CHANGED
@@ -198,8 +198,6 @@ module PodBuilder
|
|
198
198
|
gitignored_files = PodBuilder::gitignoredfiles
|
199
199
|
|
200
200
|
swift_version = PodBuilder::system_swift_version
|
201
|
-
|
202
|
-
write_prebuilt_info_filename_gitattributes
|
203
201
|
|
204
202
|
ret = Hash.new
|
205
203
|
root_names = podfile_items.reject(&:is_prebuilt).map(&:root_name).uniq
|
@@ -406,7 +404,7 @@ module PodBuilder
|
|
406
404
|
|
407
405
|
# Now copy
|
408
406
|
non_prebuilt_items.each do |item|
|
409
|
-
source_path = PodBuilder::buildpath_prebuiltpath(item.
|
407
|
+
source_path = PodBuilder::buildpath_prebuiltpath(item.root_name)
|
410
408
|
|
411
409
|
unless File.directory?(source_path)
|
412
410
|
puts "Prebuilt items for #{item.root_name} not found".blue
|
@@ -441,14 +439,6 @@ module PodBuilder
|
|
441
439
|
FileUtils.cp_r(PodBuilder::buildpath_dsympath, PodBuilder::basepath)
|
442
440
|
end
|
443
441
|
end
|
444
|
-
|
445
|
-
def self.write_prebuilt_info_filename_gitattributes
|
446
|
-
gitattributes_path = PodBuilder::basepath(".gitattributes")
|
447
|
-
expected_attributes = ["#{Configuration.configuration_filename} binary"].join
|
448
|
-
unless File.exists?(gitattributes_path) && File.read(gitattributes_path).include?(expected_attributes)
|
449
|
-
File.write(gitattributes_path, expected_attributes, mode: 'a')
|
450
|
-
end
|
451
|
-
end
|
452
442
|
|
453
443
|
def self.build_folder_hash_in_prebuilt_info_file(podfile_item)
|
454
444
|
prebuilt_info_path = PodBuilder::prebuiltpath(File.join(podfile_item.root_name, Configuration.prebuilt_info_filename))
|
data/lib/pod_builder/podfile.rb
CHANGED
@@ -727,6 +727,15 @@ module PodBuilder
|
|
727
727
|
|
728
728
|
def self.prepare_react_native_compilation_workarounds(podfile_content)
|
729
729
|
return podfile_content + """
|
730
|
+
|
731
|
+
def prepare_rn_react_codegen
|
732
|
+
# Beginning with version 0.68.0 react native project compilation relies on some autogenerated files
|
733
|
+
# that are added to the React-Codegen target
|
734
|
+
source_path = \"#{PodBuilder::project_path}/build/generated/ios/.\"
|
735
|
+
destination_path = \"#{PodBuilder::basepath}/build/generated/ios\"
|
736
|
+
FileUtils.cp_r(source_path, destination_path)
|
737
|
+
end
|
738
|
+
|
730
739
|
def prepare_rn_compilation_libevent
|
731
740
|
path = \"Pods/libevent/include/event.h\"
|
732
741
|
replace(path, \"#include <evutil.h>\", \"// #include <evutil.h>\")
|
@@ -745,11 +754,46 @@ def replace(path, find, replace)
|
|
745
754
|
content = File.read(path).gsub(find, replace)
|
746
755
|
File.write(path, content)
|
747
756
|
end
|
748
|
-
end
|
757
|
+
end
|
758
|
+
|
759
|
+
pre_install do |installer|
|
760
|
+
require 'json'
|
761
|
+
|
762
|
+
pods_path = \"#{PodBuilder::project_path}/Pods\"
|
763
|
+
j = JSON.parse(File.read(\"\#{pods_path}/Local Podspecs/FBReactNativeSpec.podspec.json\"))
|
764
|
+
|
765
|
+
output_files = j.dig(\"script_phases\", \"output_files\")
|
766
|
+
|
767
|
+
script_lines = j.dig(\"script_phases\", \"script\").split(\"\\n\")
|
768
|
+
script_lines.insert(0, \"export SCRIPT_OUTPUT_FILE_0=\\\"\#{output_files[0]}\\\"\")
|
769
|
+
script_lines.insert(0, \"export DERIVED_FILE_DIR=/tmp\")
|
770
|
+
script_lines.insert(0, \"export PODS_TARGET_SRCROOT=\\\"#{PodBuilder::project_path}/../node_modules/react-native/React/FBReactNativeSpec\\\"\")
|
771
|
+
script_lines.insert(0, \"export PODS_ROOT=\\\"\#{pods_path}\\\"\")
|
772
|
+
|
773
|
+
Dir.chdir(pods_path) do
|
774
|
+
cmd = script_lines.reject(&:blank?).join(\";\\n\")
|
775
|
+
system(cmd)
|
776
|
+
end
|
777
|
+
end
|
749
778
|
|
750
779
|
post_install do |installer|
|
751
780
|
prepare_rn_compilation_libevent()
|
752
781
|
prepare_rn_flipper_module_redefinition()
|
782
|
+
prepare_rn_react_codegen()
|
783
|
+
|
784
|
+
installer.pods_project.targets.each do |target|
|
785
|
+
target.build_configurations.each do |config|
|
786
|
+
if target.name == 'React-Codegen'
|
787
|
+
config.build_settings['HEADER_SEARCH_PATHS'] = config.build_settings.fetch('HEADER_SEARCH_PATHS', []) + ['$(inherited)', '${PODS_ROOT}/Flipper-Folly', '${PODS_ROOT}/React-Core/ReactCommon', '$(PODS_ROOT)/React-Core/ReactCommon/react/renderer/graphics/platform/cxx', '$(PODS_ROOT)/React-Codegen/build/generated/ios']
|
788
|
+
end
|
789
|
+
if target.name == 'React-Core'
|
790
|
+
config.build_settings['HEADER_SEARCH_PATHS'] = config.build_settings.fetch('HEADER_SEARCH_PATHS', []) + ['$(inherited)', '${PODS_ROOT}/Flipper-Folly']
|
791
|
+
end
|
792
|
+
if target.name == 'React-CoreModules'
|
793
|
+
config.build_settings['HEADER_SEARCH_PATHS'] = config.build_settings.fetch('HEADER_SEARCH_PATHS', []) + ['$(inherited)', '${PODS_ROOT}/Flipper-Folly', '$(PODS_ROOT)/../build/generated/ios']
|
794
|
+
end
|
795
|
+
end
|
796
|
+
end
|
753
797
|
end
|
754
798
|
"""
|
755
799
|
end
|
@@ -375,12 +375,13 @@ module PodBuilder
|
|
375
375
|
def entry(include_version = true, include_pb_entry = true)
|
376
376
|
e = "pod '#{@name}'"
|
377
377
|
|
378
|
+
e_suffix = ""
|
378
379
|
if !is_prebuilt && inhibit_warnings
|
379
|
-
|
380
|
+
e_suffix = ", :inhibit_warnings => true"
|
380
381
|
end
|
381
382
|
|
382
383
|
unless include_version
|
383
|
-
return e
|
384
|
+
return e + e_suffix
|
384
385
|
end
|
385
386
|
|
386
387
|
if is_external
|
@@ -406,6 +407,8 @@ module PodBuilder
|
|
406
407
|
e += ", '=#{@version}'"
|
407
408
|
end
|
408
409
|
|
410
|
+
e += e_suffix
|
411
|
+
|
409
412
|
if include_pb_entry && !is_prebuilt
|
410
413
|
prebuilt_info_path = PodBuilder::prebuiltpath("#{root_name}/#{Configuration::prebuilt_info_filename}")
|
411
414
|
if File.exist?(prebuilt_info_path)
|
@@ -360,6 +360,7 @@ Pod::HooksManager.register('podbuilder-rome', :post_install) do |installer_conte
|
|
360
360
|
|
361
361
|
built_items = Dir.glob("#{build_dir}/#{xcodebuild_settings[0].platform_name}.xcarchive/Products/Library/Frameworks/*").reject { |t| File.basename(t, ".*") == "Pods_DummyTarget" }
|
362
362
|
|
363
|
+
specs = installer_context.umbrella_targets.map(&:specs).flatten
|
363
364
|
built_items.each do |built_item|
|
364
365
|
built_item_paths = [built_item]
|
365
366
|
xcodebuild_settings.drop(1).each do |xcodebuild_setting|
|
@@ -374,8 +375,12 @@ Pod::HooksManager.register('podbuilder-rome', :post_install) do |installer_conte
|
|
374
375
|
|
375
376
|
next if built_item_paths.count == 0
|
376
377
|
|
377
|
-
|
378
|
-
|
378
|
+
module_name = File.basename(built_item_paths.first, ".*")
|
379
|
+
spec = specs.detect { |t| t.module_name == module_name }
|
380
|
+
|
381
|
+
next if spec.nil?
|
382
|
+
|
383
|
+
xcframework_path = "#{base_destination}/#{spec.name}/#{module_name}.xcframework"
|
379
384
|
framework_params = built_item_paths.map { |t| "-framework '#{t}'"}.join(" ")
|
380
385
|
raise "\n\nFailed packing xcframework!\n".red if !system("xcodebuild -create-xcframework #{framework_params} -output '#{xcframework_path}' > /dev/null 2>&1")
|
381
386
|
|
@@ -383,7 +388,7 @@ Pod::HooksManager.register('podbuilder-rome', :post_install) do |installer_conte
|
|
383
388
|
xcodebuild_settings.each do |xcodebuild_setting|
|
384
389
|
dsym_source = "#{build_dir}/#{xcodebuild_setting.platform_name}.xcarchive/dSYMs/"
|
385
390
|
if File.directory?(dsym_source)
|
386
|
-
destination =
|
391
|
+
destination = PodBuilder::buildpath_dsympath
|
387
392
|
FileUtils.mkdir_p(destination)
|
388
393
|
FileUtils.mv(dsym_source, destination)
|
389
394
|
FileUtils.mv("#{destination}/dSYMs", "#{destination}/#{xcodebuild_setting.platform_name}")
|
@@ -438,7 +443,7 @@ Pod::HooksManager.register('podbuilder-rome', :post_install) do |installer_conte
|
|
438
443
|
if enable_dsym
|
439
444
|
dsym_source = "#{build_dir}/dSYM"
|
440
445
|
if File.directory?(dsym_source)
|
441
|
-
FileUtils.mv(dsym_source,
|
446
|
+
FileUtils.mv(dsym_source, PodBuilder::buildpath_dsympath)
|
442
447
|
end
|
443
448
|
else
|
444
449
|
raise "\n\nNot implemented\n".red
|
data/lib/pod_builder/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: pod-builder
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 4.
|
4
|
+
version: 4.4.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Tomas Camin
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-
|
11
|
+
date: 2022-05-20 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|