def __check_file_name(setup, Candidate, Name, Index=None, CommandLineOption=None): value = setup.__dict__[Candidate] if len(value) == 0: return if CommandLineOption is None: CommandLineOption = command_line_args(Candidate) if Index is not None: if type(value) != list or len(value) <= Index: value = "" else: value = value[Index] if type(value) == list: for name in value: if name != "" and name[0] == "-": error.log("Quex refuses to work with file names that start with '-' (minus).\n" + \ "Received '%s' for %s (%s)" % (value, name, repr(CommandLineOption)[1:-1])) if os.access(name, os.F_OK) == False: # error.log("File %s (%s)\ncannot be found." % (name, Name)) error.log_file_not_found(name, Name) else: if value == "" or value[0] == "-": return if os.access(value, os.F_OK): return if os.access(QUEX_PATH + "/" + value, os.F_OK): return if os.access(os.path.dirname(value), os.F_OK) == False \ and os.access(QUEX_PATH + "/" + os.path.dirname(value), os.F_OK) == False: error.log("File '%s' is supposed to be located in directory '%s' or\n" % \ (os.path.basename(value), os.path.dirname(value)) + \ "'%s'. No such directories exist." % \ (QUEX_PATH + "/" + os.path.dirname(value))) error.log_file_not_found(value, Name)