def METHOD_NAME(obj):
    """Generate linker header files to be included by the linker script"""
    # Sections we are interested in
    sections = {
        ".data": {
            "name": "data",
            "define_prefix": "DATA",
            "exists": False,
            "multiplier": int(args.datapct) + 100,
            },
        ".rodata": {
            "name": "rodata",
            "define_prefix": "RODATA",
            "exists": False,
            "extra_bytes": args.rodata,
            },
        ".priv_stacks.noinit": {
            "name": "priv-stacks",
            "define_prefix": "PRIV_STACKS",
            "exists": False,
            },
    }
    for one_sect in obj.iter_sections():
        # REALLY NEED to match exact type as all other sections
        # (symbol, debug, etc.) are descendants where
        # isinstance() would match.
        if type(one_sect) is not elftools.elf.sections.Section: # pylint: disable=unidiomatic-typecheck
            continue
        name = one_sect.name
        if name in sections:
            # Need section alignment and size
            sections[name]['align'] = one_sect['sh_addralign']
            sections[name]['size'] = one_sect['sh_size']
            sections[name]['exists'] = True
            if "multiplier" in sections[name]:
                sections[name]['size'] *= sections[name]['multiplier'] / 100
                sections[name]['size'] = int(sections[name]['size'])
            if "extra_bytes" in sections[name]:
                sections[name]['size'] += int(sections[name]['extra_bytes'])
    for one_sect in sections:
        output_simple_header(sections[one_sect])