def add_build_file(file,settings = {})
      find_file_by = file.path || file.name
      unless build_file(find_file_by)
        new_build_file = @registry.add_object BuildFile.buildfile(file.identifier,settings)
        @properties['files'] << new_build_file.identifier
      end
    end
def add_build_file(file,settings = {})
      find_file_by = file.path || file.name
      unless build_file(find_file_by)
        new_build_file = @registry.add_object BuildFile.buildfile(file.identifier,settings)
        @properties['files'] << new_build_file.identifier
      end
    end
Add the specified file to the Build Phase.

 First a BuildFile entry is created for the file and then the build file
 entry is added to the particular build phase. A BuildFile identifier must
 exist for each target.

 @example adding a source file to the sources build phase

     spec_file = project.group('Specs/Controller').create_file('FirstControllerSpec.m')
     project.target('Specs').sources_build_phase.add_build_file spec_file

 @example adding a source file, that does not use ARC, to the sources build phase

     spec_file = project.group('Specs/Controller').create_file('FirstControllerSpec.m')
     project.target('Specs').sources_build_phase.add_build_file spec_file, { 'COMPILER_FLAGS' => "-fno-objc-arc" }

 @param [FileReference] file the FileReference Resource to add to the build
 phase.
 @param [Hash] settings additional build settings that are specifically applied
   to this individual file.