123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- #!/bin/awk
- #
- # Awk script to generate include/generated/machtypes.h
- # Heavily based on arch/arm/tools/gen-mach-types
- #
- BEGIN { nr = 0 }
- /^#/ { next }
- /^[ ]*$/ { next }
- NF == 2 {
- mach[nr] = $1;
- config[nr] = "CONFIG_"$2;
- nr++;
- }
- END {
- printf("/*\n");
- printf(" * Automagically generated, don't touch.\n");
- printf(" */\n");
- printf("#ifndef __ASM_SH_MACHTYPES_H\n");
- printf("#define __ASM_SH_MACHTYPES_H\n");
- printf("\n");
- printf("/*\n");
- printf(" * We'll use the following MACH_xxx defs for placeholders for the time\n");
- printf(" * being .. these will all go away once sh_machtype is assigned per-board.\n");
- printf(" *\n");
- printf(" * For now we leave things the way they are for backwards compatibility.\n");
- printf(" */\n");
- printf("\n");
- printf("/* Mach types */\n");
- for (i = 0; i < nr; i++) {
- printf("#ifdef %s\n", config[i]);
- printf(" #define MACH_%s\t\t1\n", mach[i]);
- printf("#else\n");
- printf(" #define MACH_%s\t\t0\n", mach[i]);
- printf("#endif\n");
- }
- printf("\n");
- printf("/* Machtype checks */\n");
- for (i = 0; i < nr; i++)
- printf("#define mach_is_%s()\t\t\t(MACH_%s)\n",
- tolower(mach[i]), mach[i]);
- printf("\n");
- printf("#endif /* __ASM_SH_MACHTYPES_H */\n");
- }
|