tmkfilelist - plan9port - [fork] Plan 9 from user space
 (HTM) git clone git://src.adamsgaard.dk/plan9port
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) README
 (DIR) LICENSE
       ---
       tmkfilelist (2731B)
       ---
            1 #!/usr/local/plan9/bin/rc
            2 
            3 @{cd $PLAN9; find . -type f -print; find . -type d -print | sed 's;$;/;'} | 
            4         sort | sed 's;^./;;' | grep . |
            5 awk -vplan9'='$PLAN9 '
            6         function cat(s) {
            7                 print line0, s
            8                 next
            9         }
           10         
           11         BEGIN{
           12                 # Dependencies
           13                 # print "bin: base"
           14                 # print "devel: base bin"
           15                 # print "dist: base"
           16                 # print "faces: base"
           17                 # print "font-asian: font-core"
           18                 # print "font-bh: font-core"
           19                 # print "font-proof: font-core"        
           20                 # print "font-core: core"
           21                 # print "devel: base, lib"
           22                 # print "lp: base, faces"
           23                 # print "sky: base"
           24                 # print "sky-data: sky"
           25                 # print "src: base, devel"
           26                 # print "troff: base, postscript"
           27                 # print "unixdist: base, src"
           28         }
           29         
           30         # Eliminate unmentionables.
           31         { line0 = $0 }
           32         /^CVS\// { next }
           33         /\/CVS\// { next }
           34         /\.#/ { next }
           35         /\.cvsignore/ { next }        
           36         /^ChangeLog/ { next }
           37         /^config$/ { next }
           38         /^install.log$/ { next }
           39         /CVS.IEXIST/ { next }
           40         
           41         # Print with categories.
           42         /^(LICENSE|CHANGES|INSTALL|NOTES|TODO)/ { cat("base") }
           43 
           44         /^acid\// { cat("devel") }
           45 
           46         /^bin\/(9c|9l|9ar|9install)/ { cat("devel") }
           47         /^bin\/.*\/$/ { cat("base") }
           48         /^bin\/./ { 
           49                 file=$1
           50                 cmd = "file " plan9 "/''" $1 "'' | sed ''s/.*: //'' "
           51                 type = cmd | getline
           52                 close(cmd)
           53                 $1=file
           54                 if(type ~ /script/)
           55                         cat("base")
           56                 else
           57                         cat("bin")
           58         }
           59         /^bin\/$/ { cat("base") }
           60         
           61         /^dict\// { cat("dict") }
           62         
           63         /^dist\/debian\/(dists|pool)/ { next }
           64         /^dist\// { cat("dist") }
           65 
           66         /^face\// { cat("faces") }
           67 
           68         /^font\/(big5|gb|jis|naga10|shinonome)/ { cat("font-asian") }
           69         /^font\/LICENSE/ { cat("font-bh") }
           70         /^font\/(luc|lucsans|lucm|pelm)\// { cat("font-bh") }
           71         /^font\/(MAP|fixed|misc|sample|smiley)/ { cat("font-core") }
           72         /^font\/(palatino|times|special)/ { cat("font-proof") }
           73         /^font\// { cat("font-core") }
           74         
           75         /^include\// { cat("devel") }
           76 
           77         /^lib\/.*\.a$/ { cat("lib") }
           78         /^lib\/(..spell|acme.rc|bclib|fortunes|gv|grap|keyboard|lex|unicode|units|words|yacc)/ { cat("base") }
           79         /^lib\/moveplan9/ { cat("base") }
           80         /^lib\/hyphen.tex/ { cat("troff") }
           81         /^lib\/linux-isnptl\.c/ { cat("src") }
           82         /^lib\/$/ { cat("base") }
           83 
           84         /^log\// { cat("base") }
           85 
           86         /^lp\// { cat("lp") }
           87         
           88         /^man\/man3/ { cat("devel") }
           89         /^man\// { cat("base") }
           90         
           91         /^ndb\// { cat("base") }
           92         
           93         /^news\// { cat("base") }
           94         
           95         /^plumb/ { cat("base") }
           96         
           97         /^postscript\/troff/ { cat("troff") }
           98         /^postscript\/font\/(Lucida|lsunr|NOTICE)/ { cat("postscript-bh") }
           99         /^postscript\// { cat("postscript") }
          100 
          101         /^proto/ { cat("base") }
          102 
          103         /^rcmain/ { cat("base") }
          104 
          105         /^sky\/$/ { cat("sky") }
          106         /^sky\/here/ { cat("sky") }
          107         /^sky\// { cat("sky-data") }
          108         
          109         /^(tmac|troff)\// { cat("troff") }
          110         
          111         /^src\/mk/ { cat("devel") }
          112 
          113         /^src/ { cat("src") }
          114 
          115         /^unix\// { cat("unixdist") }
          116         
          117         # Print warning about unsorted files.
          118         { 
          119                 print "unsorted: " $0 >"/dev/stderr"
          120         }
          121 '