1 1.1 gwr #!/bin/sh 2 1.11 joerg # $NetBSD: keywords.sh,v 1.11 2013/03/01 18:25:17 joerg Exp $ 3 1.1 gwr # @(#)keywords 8.2 (Berkeley) 3/19/94 4 1.1 gwr # 5 1.1 gwr # WARNING! If you change this file, re-run it! 6 1.1 gwr 7 1.1 gwr # This program requires "new" awk (or GNU awk). 8 1.1 gwr awk=${AWK:-awk} 9 1.1 gwr 10 1.1 gwr cat << _EOF_ > _keywords.t1 11 1.1 gwr add 12 1.4 christos atalk 13 1.1 gwr blackhole 14 1.1 gwr change 15 1.6 itojun cloned 16 1.1 gwr cloning 17 1.1 gwr delete 18 1.1 gwr dst 19 1.1 gwr expire 20 1.1 gwr flush 21 1.1 gwr gateway 22 1.1 gwr genmask 23 1.1 gwr get 24 1.1 gwr host 25 1.1 gwr hopcount 26 1.1 gwr iface 27 1.1 gwr interface 28 1.1 gwr ifa 29 1.1 gwr ifp 30 1.1 gwr inet 31 1.5 itojun inet6 32 1.1 gwr link 33 1.1 gwr llinfo 34 1.1 gwr lock 35 1.1 gwr lockrest 36 1.1 gwr mask 37 1.1 gwr monitor 38 1.1 gwr mtu 39 1.1 gwr net 40 1.1 gwr netmask 41 1.1 gwr nostatic 42 1.5 itojun prefixlen 43 1.1 gwr proto1 44 1.1 gwr proto2 45 1.1 gwr recvpipe 46 1.1 gwr reject 47 1.1 gwr rtt 48 1.1 gwr rttvar 49 1.1 gwr sa 50 1.1 gwr sendpipe 51 1.1 gwr show 52 1.1 gwr ssthresh 53 1.1 gwr static 54 1.1 gwr x25 55 1.1 gwr xns 56 1.1 gwr xresolve 57 1.7 jrf flushall 58 1.8 kefren nocloned 59 1.8 kefren nocloning 60 1.8 kefren noblackhole 61 1.8 kefren noreject 62 1.9 kefren mpls 63 1.9 kefren tag 64 1.10 gdt proxy 65 1.1 gwr _EOF_ 66 1.1 gwr 67 1.1 gwr 68 1.1 gwr ################################################################ 69 1.1 gwr # Setup 70 1.1 gwr ################################################################ 71 1.1 gwr 72 1.1 gwr # This creates a stream of: 73 1.1 gwr # keyword KEYWORD 74 1.1 gwr # (lower case, upper case). 75 1.1 gwr tr a-z A-Z < _keywords.t1 | 76 1.1 gwr paste _keywords.t1 - > _keywords.t2 77 1.1 gwr 78 1.1 gwr 79 1.1 gwr ################################################################ 80 1.1 gwr # Generate the h file 81 1.1 gwr ################################################################ 82 1.1 gwr exec > keywords.h 83 1.1 gwr 84 1.1 gwr echo '/* $'NetBSD'$ */ 85 1.1 gwr 86 1.1 gwr /* WARNING! This file was generated by keywords.sh */ 87 1.1 gwr 88 1.3 cgd extern struct keytab { 89 1.8 kefren const char *kt_cp; 90 1.1 gwr int kt_i; 91 1.1 gwr } keywords[]; 92 1.1 gwr 93 1.1 gwr ' # defines follow 94 1.1 gwr 95 1.1 gwr $awk '{ 96 1.1 gwr printf("#define\tK_%s\t%d\n", $2, NR); 97 1.1 gwr }' < _keywords.t2 98 1.1 gwr 99 1.1 gwr 100 1.1 gwr ################################################################ 101 1.1 gwr # Generate the c file 102 1.1 gwr ################################################################ 103 1.1 gwr exec > keywords.c 104 1.1 gwr 105 1.1 gwr echo '/* $'NetBSD'$ */ 106 1.1 gwr 107 1.1 gwr /* WARNING! This file was generated by keywords.sh */ 108 1.1 gwr 109 1.1 gwr #include "keywords.h" 110 1.1 gwr 111 1.1 gwr struct keytab keywords[] = { 112 1.1 gwr ' # initializers follow 113 1.1 gwr 114 1.1 gwr $awk '{ 115 1.1 gwr printf("\t{\"%s\", K_%s},\n", $1, $2); 116 1.1 gwr }' < _keywords.t2 117 1.1 gwr 118 1.1 gwr echo ' {0, 0} 119 1.1 gwr }; 120 1.1 gwr ' # tail 121 1.1 gwr 122 1.1 gwr 123 1.1 gwr ################################################################ 124 1.1 gwr # Cleanup 125 1.1 gwr ################################################################ 126 1.1 gwr 127 1.1 gwr rm -f _keywords.t1 _keywords.t2 128 1.1 gwr exit 0 129