|
|
1.1 ! root 1: #!/bin/sh ! 2: # ! 3: # This used to be a shell script, but had to become more sophisticated ! 4: # to allow for KNF function definitions. So rewrote in perl, but wrapped ! 5: # as a shell script. ! 6: # ! 7: exec /usr/bin/perl << *EOF* ! 8: open(PROTO, ">devfs_proto.h") || die "Cannot open devfs_proto.h\n"; ! 9: ! 10: print PROTO "/* THIS FILE HAS BEEN PRODUCED AUTOMATICALLY */\n"; ! 11: ! 12: while (\$file = <*.c>) { ! 13: if(open(F, \$file) == 0) { ! 14: warn "Cannot open \$file.\n"; ! 15: next; ! 16: } ! 17: ! 18: while(<F>) { ! 19: chop; ! 20: if (m|/\*proto\*/|) { ! 21: \$collecting = 1; ! 22: \$idx = 0; ! 23: } elsif (\$collecting) { ! 24: if (/^{/) { ! 25: \$text[\$idx - 1] .= ';'; ! 26: for (\$i = 0; \$i < \$idx; \$i++) { ! 27: print PROTO "\$text[\$i]"; ! 28: print PROTO \$i == 0? "\t": "\n"; ! 29: } ! 30: \$collecting = 0; ! 31: next; ! 32: } ! 33: \$text[\$idx++] = \$_; ! 34: } ! 35: } ! 36: close F; ! 37: } ! 38: ! 39: print PROTO "/* THIS FILE PRODUCED AUTOMATICALLY */\n" . ! 40: "/* DO NOT EDIT (see reproto.sh) */\n"; ! 41: ! 42: *EOF*
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.