def _VerifySourcesExist(sources, root_dir):
 missing_sources = []
 for source in sources:
  if isinstance(source, MSVSProject.Filter):
   missing_sources.extend(_VerifySourcesExist(source.contents, root_dir))
  elif ('$' not in source):
   full_path = os.path.join(root_dir, source)
   if (not os.path.exists(full_path)):
    missing_sources.append(full_path)
 return missing_sources

def _VerifySourcesExist ( sources , root_dir ) : missing_sources = [ ] for source in sources : if isinstance ( source , MSVSProject . Filter ) : missing_sources . extend ( _VerifySourcesExist ( source . contents , root_dir ) ) elif ( '$' not in source ) : full_path = os . path . join ( root_dir , source ) if ( not os . path . exists ( full_path ) ) : missing_sources . append ( full_path ) return missing_sources
verifies that all source files exist on disk .