#!/usr/bin/env python3 | |
import sys, re | |
print('#include <stdio.h>') | |
for header in sys.argv[2:]: | |
print('#include "{}"'.format(header.split('/')[-1])) | |
print(''' | |
void* functions[] = {''') | |
for line in open(sys.argv[1]): | |
match = re.search('^ +([a-zA-Z0-9_]+);', line) | |
if match: | |
print(' {},'.format(match.group(1))) | |
print('''}; | |
int main(void) { | |
unsigned i; | |
for (i = 0; i < sizeof(functions)/sizeof(void*); i++) | |
printf("%p\\n", functions[i]); | |
return 0; | |
}''') |