2424# Get useful variables
2525project = Xcodeproj ::Project . open ( project_location )
2626frameworks_group = project . groups . find { |group | group . display_name == 'Frameworks' }
27- frameworks_group = project . new_group ( 'Frameworks' ) if frameworks_group == nil
27+ frameworks_group || = project . new_group ( 'Frameworks' )
2828target = project . targets . find { |target | target . to_s == target_name }
2929frameworks_build_phase = target . build_phases . find { |build_phase | build_phase . to_s == 'FrameworksBuildPhase' }
3030
3131# Add new "Embed Frameworks" build phase to target
3232embed_frameworks_build_phase = target . build_phases . find { |build_phase | build_phase . to_s == 'Embed Frameworks' }
3333Kernel . exit ( 0 ) if embed_frameworks_build_phase
34-
35- if embed_frameworks_build_phase == nil
36- is_linked = false
37- embed_frameworks_build_phase = project . new ( Xcodeproj ::Project ::Object ::PBXCopyFilesBuildPhase )
38- embed_frameworks_build_phase . name = 'Embed Frameworks'
39- embed_frameworks_build_phase . symbol_dst_subfolder_spec = :frameworks
40- target . build_phases << embed_frameworks_build_phase
41- end
34+ embed_frameworks_build_phase = project . new ( Xcodeproj ::Project ::Object ::PBXCopyFilesBuildPhase )
35+ embed_frameworks_build_phase . name = 'Embed Instabug Framework'
36+ embed_frameworks_build_phase . symbol_dst_subfolder_spec = :frameworks
37+ target . build_phases << embed_frameworks_build_phase
4238
4339# Add framework search path to target
4440[ 'Debug' , 'Release' ] . each do |config |
5248end
5349
5450# Add framework to target as "Embedded Frameworks"
55- framework_ref = frameworks_group . files . find { |file_reference | file_reference . path == "#{ framework_root } /#{ framework_name } " }
51+ framework_ref = frameworks_group . new_file ( "#{ framework_root } /#{ framework_name } " )
52+ build_file = embed_frameworks_build_phase . add_file_reference ( framework_ref )
53+ frameworks_build_phase . add_file_reference ( framework_ref )
54+ build_file . settings = { 'ATTRIBUTES' => [ 'CodeSignOnCopy' , 'RemoveHeadersOnCopy' ] }
5655
57- if framework_ref == nil
58- framework_ref = frameworks_group . new_file ( "#{ framework_root } /#{ framework_name } " )
59- build_file = embed_frameworks_build_phase . add_file_reference ( framework_ref )
60- frameworks_build_phase . add_file_reference ( framework_ref )
61- build_file . settings = { 'ATTRIBUTES' => [ 'CodeSignOnCopy' , 'RemoveHeadersOnCopy' ] }
62- end
6356
6457#Add New Run Script Phase to Build Phases
65- shell_script_build_phase = target . shell_script_build_phases . find { |build_phase | build_phase . to_s == INSTABUG_PHASE_NAME }
66- if shell_script_build_phase == nil
67- phase = target . new_shell_script_build_phase ( INSTABUG_PHASE_NAME )
68- phase . shell_script = INSTABUG_PHASE_SCRIPT
69- end
58+ phase = target . new_shell_script_build_phase ( INSTABUG_PHASE_NAME )
59+ phase . shell_script = INSTABUG_PHASE_SCRIPT
7060
7161# Save Xcode project
7262project . save
0 commit comments