mkfile 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. </$objtype/mkfile
  2. TARG = dhcpclient\
  3. ftpd\
  4. gping\
  5. hogports\
  6. httpfile\
  7. ipconfig\
  8. linklocal\
  9. ping\
  10. pppoe\
  11. pptp\
  12. pptpd\
  13. rarpd\
  14. rexexec\
  15. rip\
  16. rlogind\
  17. telnet\
  18. telnetd\
  19. tftpd\
  20. traceroute\
  21. udpecho\
  22. DIRS=ftpfs dhcpd httpd ipconfig ppp imap4d snoopy
  23. BIN=/$objtype/bin/ip
  24. HFILES=dhcp.h arp.h glob.h icmp.h telnet.h
  25. UPDATE=\
  26. mkfile\
  27. $HFILES\
  28. ${OFILES:%.$O=%.c}\
  29. ${TARG:%=%.c}\
  30. </sys/src/cmd/mkmany
  31. all:V: $DIRS
  32. $DIRS:V:
  33. for (i in $DIRS) @{
  34. echo mk $i
  35. cd $i
  36. mk all
  37. }
  38. install:V: installdirs
  39. installdirs:V:
  40. for (i in $DIRS) @{
  41. echo mk $i
  42. cd $i
  43. mk install
  44. }
  45. update:V:
  46. update $UPDATEFLAGS $UPDATE
  47. for (i in $DIRS) @{
  48. echo update $i
  49. cd $i
  50. mk 'UPDATEFLAGS='$"UPDATEFLAGS update
  51. }
  52. clean:V:
  53. for (i in $DIRS) @{
  54. echo clean $i
  55. cd $i
  56. mk clean
  57. }
  58. rm -f [$OS].* *.[$OS]
  59. nuke:V:
  60. for (i in $DIRS) @{
  61. echo nuke $i
  62. cd $i
  63. mk nuke
  64. }
  65. rm -f *.[$OS] y.tab.? y.debug y.output [$OS].$TARG $TARG
  66. $O.fakearp: fakearp.$O getether.$O
  67. $LD -o $target $prereq
  68. telnetd.$O: telnet.h
  69. telnet.$O: telnet.h
  70. $O.ftpd: ftpd.$O glob.$O
  71. $LD -o $target $prereq
  72. $BIN/telnet:V: $O.telnet
  73. cp $prereq /$objtype/bin/telnet
  74. $BIN/snoopy:V: $O.snoopy
  75. cp $prereq /$objtype/bin/snoopy
  76. $BIN/sniffer:V: $O.sniffer
  77. cp $prereq /$objtype/bin/sniffer