def newer_group(sources, target, missing='error'):
 if (not os.path.exists(target)):
  return True
 target_mtime = os.stat(target)[ST_MTIME]
 for source in sources:
  if (not os.path.exists(source)):
   if (missing == 'error'):
    pass
   elif (missing == 'ignore'):
    continue
   elif (missing == 'newer'):
    return True
  if (os.stat(source)[ST_MTIME] > target_mtime):
   return True
 return False

def newer_group ( sources , target , missing = 'error' ) : if ( not os . path . exists ( target ) ) : return True target_mtime = os . stat ( target ) [ ST_MTIME ] for source in sources : if ( not os . path . exists ( source ) ) : if ( missing == 'error' ) : pass elif ( missing == 'ignore' ) : continue elif ( missing == 'newer' ) : return True if ( os . stat ( source ) [ ST_MTIME ] > target_mtime ) : return True return False
return true if target is out-of-date with respect to any file listed in sources .