24
24
# Get useful variables
25
25
project = Xcodeproj ::Project . open ( project_location )
26
26
frameworks_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' )
28
28
target = project . targets . find { |target | target . to_s == target_name }
29
29
frameworks_build_phase = target . build_phases . find { |build_phase | build_phase . to_s == 'FrameworksBuildPhase' }
30
30
31
31
# Add new "Embed Frameworks" build phase to target
32
32
embed_frameworks_build_phase = target . build_phases . find { |build_phase | build_phase . to_s == 'Embed Frameworks' }
33
33
Kernel . 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
42
38
43
39
# Add framework search path to target
44
40
[ 'Debug' , 'Release' ] . each do |config |
52
48
end
53
49
54
50
# 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' ] }
56
55
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
63
56
64
57
#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
70
60
71
61
# Save Xcode project
72
62
project . save
0 commit comments