1164784Skeramida# $FreeBSD: releng/10.2/contrib/top/sigconv.awk 164784 2006-12-01 07:01:19Z keramida $ 2164784Skeramida 324139SjoergBEGIN { 424139Sjoerg nsig = 0; 524139Sjoerg j = 0; 624139Sjoerg print "/* This file was automatically generated */" 724139Sjoerg print "/* by the awk script \"sigconv.awk\". */\n" 824139Sjoerg print "struct sigdesc {" 924139Sjoerg print " char *name;" 1024139Sjoerg print " int number;" 1124139Sjoerg print "};\n" 1224139Sjoerg print "struct sigdesc sigdesc[] = {" 1324139Sjoerg } 1424139Sjoerg 15164784Skeramida/^#define[ \t][ \t]*SIG[A-Z]+[0-9]*[ \t]/ { 1624139Sjoerg 1724139Sjoerg j = sprintf("%d", $3); 1824139Sjoerg str = $2; 1924139Sjoerg 2024139Sjoerg if (nsig < j) 2124139Sjoerg nsig = j; 2224139Sjoerg 23164784Skeramida siglist[j] = sprintf("{ \"%s\",\t%2d },", \ 2424139Sjoerg substr(str, 4), j); 2524139Sjoerg } 26164784Skeramida/^#[ \t]*define[ \t][ \t]*SIG[A-Z]+[0-9]*[ \t]/ { 2724139Sjoerg 2824139Sjoerg j = sprintf("%d", $4); 2924139Sjoerg str = $3; 3024139Sjoerg 3124139Sjoerg if (nsig < j) 3224139Sjoerg nsig = j; 3324139Sjoerg 34164784Skeramida siglist[j] = sprintf("{ \"%s\",\t%2d },", \ 3524139Sjoerg substr(str, 4), j); 3624139Sjoerg } 37164784Skeramida/^#[ \t]*define[ \t][ \t]*_SIG[A-Z]+[0-9]*[ \t]/ { 3824139Sjoerg 3924139Sjoerg j = sprintf("%d", $4); 4024139Sjoerg str = $3; 4124139Sjoerg 4224139Sjoerg if (nsig < j) 4324139Sjoerg nsig = j; 4424139Sjoerg 45164784Skeramida siglist[j] = sprintf("{ \"%s\",\t%2d },", \ 4624139Sjoerg substr(str, 5), j); 4724139Sjoerg } 4824139Sjoerg 4924139SjoergEND { 5024139Sjoerg for (n = 1; n <= nsig; n++) 5124139Sjoerg if (siglist[n] != "") 5224139Sjoerg printf(" %s\n", siglist[n]); 5324139Sjoerg 54164784Skeramida printf(" { NULL,\t 0 }\n};\n"); 5524139Sjoerg } 56