Module: Xcconfig

Defined in:
lib/utility.rb

Class Method Summary collapse

Class Method Details

.add_config_files(project, entity, config_files) ⇒ Object



81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
# File 'lib/utility.rb', line 81

def Xcconfig.add_config_files(project, entity, config_files)
    
  # Add configuration group
      
  add_groups_for_files(project, config_files.values)
    
  config_files.each do |config,file_name|

    unless file_name == nil
        
      file = get_or_add_file(project,file_name)
          
      configuration = entity.build_configuration_list[config]
          
      unless configuration == nil
        configuration.base_configuration_reference = file
      end
        
    end
      
  end
    
end

.add_groups_for_files(project, files) ⇒ Object



30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
# File 'lib/utility.rb', line 30

def Xcconfig.add_groups_for_files(project,files)
  
  files.each do |path|
      
    groups = File.dirname(path).split("/")
    concate = ""
        
    groups.each do |g|
        
      concate += g + "/"
      group_ref = project.main_group.find_subpath(concate, true)
      group_ref.set_path(g)
        
    end
      
  end
  
end

.get_or_add_file(project, file) ⇒ Object



49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
# File 'lib/utility.rb', line 49

def Xcconfig.get_or_add_file(project,file)
  
  filename = File.basename(file)
  dir = File.dirname(file)
    
  group = project.main_group.find_subpath(dir, false)
  file_ref = group.find_file_by_path(filename)
        
  unless file_ref != nil
        
    file_ref = group.new_file(filename)
        
  end 
    
  return file_ref
  
end

.get_or_add_files(project, files) ⇒ Object



67
68
69
70
71
72
73
74
75
76
77
78
79
# File 'lib/utility.rb', line 67

def Xcconfig.get_or_add_files(project, files)
  
  resources = merge_files_array(files)
      
  add_groups_for_files(project, resources)

  resources.each do |source|
        
    get_or_add_file(project,source)
        
  end
  
end

.merge_files_array(files) ⇒ Object



11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# File 'lib/utility.rb', line 11

def Xcconfig.merge_files_array(files)
  
  if files == nil
    
    return nil
    
  end
    
  resources = []
  files.each do |source|
      
    resources.concat Dir[source]
      
  end
    
  return resources
  
end