def METHOD_NAME(filename, create_backup=True, add_descr=False):
    file = open(filename, 'r')
    file_links = []
    links_added = 0
    for line in file:
        if line[0] == '|' and line[1] != '=':
            splitted = line.split('|')
            if 'link:' in splitted[1]:
                link = re.search('(?<=link:).*(?=\[)', splitted[1]).group()
                if not os.path.isfile(os.path.join('../docs/html/hal',link)):
                    print('gen_complist: Broken link:', link)
            else:
                comp_man = splitted[1].strip(' ')
                if comp_man in man_files:
                    comp, man = comp_man.split(".")
                    line = line.replace(comp_man, 'link:../man/man'+man+'/'+comp_man+'.html['+comp+']', 1)
                    links_added += 1
                    if add_descr:
                        splitted = line.split('|')
                        splitted[2] = extract_descr('../docs/man/man'+man+'/'+comp_man)\
                        .replace(comp + ' ', ' ',1).strip('\n -')
                        line = '|'.join(splitted)
        file_links.append(line)
    file.close()
    if links_added:
        if create_backup:
            os.rename(filename, filename+'~')
        file = open(filename, 'w')
        for line in file_links:
            file.write(line)
        file.close()
        print('gen_complist: Added {} link(s) to {}'.format(links_added, filename))