def source_to_obj(src, source_dir, obj_dir)
      exts = '\\' + @tc.source_extensions.join('|\\')
      src.sub(/(#{exts})$/, '.o').gsub(source_dir, obj_dir)
    end
def source_to_obj(src, source_dir, obj_dir)
      exts = '\\' + @tc.source_extensions.join('|\\')
      src.sub(/(#{exts})$/, '.o').gsub(source_dir, obj_dir)
    end
Transforms a source file name in to its object file name by replacing
 file name extension and the source directory base with the build directory base

 @param [String] src         Source filename
 @param [String] source_dir  Project source base directory
 @param [String] obj_dir     Project build base directory
 @return [String]            Mapped filename