mkfile 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198
  1. objtype=386
  2. </$objtype/mkfile
  3. BIN=/386
  4. TARG=\
  5. 9load\
  6. 9pxeload\
  7. 9loadlite\
  8. 9loaddebug\
  9. 9loadlitedebug\
  10. ld.com\
  11. mbr\
  12. pbs\
  13. pbslba\
  14. CORE=\
  15. alarm.$O\
  16. cga.$O\
  17. clock.$O\
  18. console.$O\
  19. dosboot.$O\
  20. donprint.$O\
  21. devfloppy.$O\
  22. dma.$O\
  23. fs.$O\
  24. ilock.$O\
  25. kbd.$O\
  26. kfsboot.$O\
  27. queue.$O\
  28. trap.$O\
  29. LOAD=\
  30. 8250.$O\
  31. apm.$O\
  32. boot.$O\
  33. devpccard.$O\
  34. conf.$O\
  35. devi82365.$O\
  36. devsd.$O\
  37. inflate.$O\
  38. load.$O\
  39. memory.$O\
  40. part.$O\
  41. pci.$O\
  42. sdata.$O\
  43. sdmylex.$O\
  44. sd53c8xx.$O\
  45. sdscsi.$O\
  46. ETHER=\
  47. bootp.$O\
  48. ether.$O\
  49. ether2114x.$O\
  50. ether2000.$O\
  51. ether589.$O\
  52. ether79c970.$O\
  53. ether8003.$O\
  54. ether8139.$O\
  55. ether82557.$O\
  56. ether83815.$O\
  57. ether8390.$O\
  58. etherec2t.$O\
  59. etherelnk3.$O\
  60. ethermii.$O\
  61. etherrhine.$O\
  62. BCOM=\
  63. bcom.$O\
  64. bootld.$O\
  65. devsd.$O\
  66. memory.$O\
  67. part.$O\
  68. pci.$O\
  69. sdata.$O\
  70. sdscsi.$O\
  71. HFILES=\
  72. lib.h\
  73. mem.h\
  74. dat.h\
  75. fns.h\
  76. io.h\
  77. CFLAGS=-FVw -I.
  78. all:V: $TARG
  79. 9load: l.$O $CORE $LOAD $ETHER
  80. $LD -o $target -H3 -T0x80010000 -l $prereq -lflate -lc
  81. ls -l $target
  82. 9pxeload: lpxe.$O $CORE $LOAD $ETHER
  83. $LD -o $target -H3 -T0x80007C00 -l $prereq -lflate -lc
  84. ls -l $target
  85. 9loaddebug: l.$O $CORE $LOAD $ETHER
  86. $LD -o $target -T0x80010000 -l $prereq -lflate -lc
  87. ls -l $target
  88. # acid $target
  89. # map({"text", 0x80010000, 0x80090000, 0x00000020})
  90. 9loadlite: l.$O $CORE $LOAD noether.$O
  91. $LD -o $target -H3 -T0x80010000 -l $prereq -lflate -lc
  92. ls -l $target
  93. 9loadlitedebug: l.$O $CORE $LOAD noether.$O
  94. $LD -o $target -T0x80010000 -l $prereq -lflate -lc
  95. ls -l $target
  96. # acid $target
  97. # map({"text", 0x80010000, 0x80090000, 0x00000020})
  98. ld.com: ld.$O $CORE $BCOM
  99. $LD -o $target -H3 -T0x80080100 -l $prereq -lc
  100. ls -l $target
  101. lddebug: ld.$O $CORE $BCOM
  102. $LD -o $target -T0x80080100 -l $prereq -lc
  103. ls -l $target
  104. # acid $target
  105. # map({"text", 0x80080100, 0x800B0000, 0x00000020})
  106. ld.$O: l.s
  107. $AS -DDOTCOM -o $target l.s
  108. lpxe.$O: l.s
  109. $AS -DPXE -o $target l.s
  110. %.$O: %.s
  111. $AS $stem.s
  112. %.$O: %.c
  113. $CC $CFLAGS $stem.c
  114. %.$O: $HFILES
  115. l.$O pbs.$O pbslba.$O mbr.$O: x16.h
  116. clock.$O floppy.$O trap.$O: ureg.h
  117. bcom.$O conf.$O devfloppy.$O devsd.$O dosboot.$O fs.$O \
  118. kfsboot.$O load.$O part.$O: dosfs.h fs.h kfs.h
  119. ether.$O etherelnk3.$O: etherif.h
  120. devsd.$O part.$O sdata.$O sdscsi.$O: sd.h
  121. bootp.$O: ip.h
  122. mbr: mbr.$O
  123. $LD -o $target -H3 -T0x0600 -l $prereq
  124. ls -l $target
  125. pbs&: pbs%.$O
  126. $LD -o $target -H3 -T0x7C00 -l $prereq
  127. ls -l $target
  128. pbs&.debug: pbs%.$O
  129. $LD -o $target -T0x7C00 -l $prereq
  130. ls -l $target
  131. # acid $target
  132. # map({"text", 0x7C00, 0x7E00, 0x00000020})
  133. clean:
  134. rm -f *.[$OS] [$OS].out y.tab.? y.debug y.output $TARG 9loaddebug lddebug
  135. install:V:
  136. for (i in $TARG)
  137. mk $MKFLAGS $i.install
  138. %.install:V: $BIN/%
  139. #import lookout / /n/lookout
  140. #cp $prereq /n/lookout/$prereq
  141. $BIN/%: %
  142. cp $stem $BIN/$stem
  143. UPDATE=\
  144. mkfile\
  145. ${CORE:%.$O=%.c}\
  146. ${LOAD:%.$O=%.c}\
  147. ${BCOM:%.$O=%.c}\
  148. ${ETHER:%.$O=%.c}\
  149. $HFILES\
  150. l.s\
  151. noether.c\
  152. pbs.s\
  153. pbslba.s\
  154. mbr.s\
  155. x16.h\
  156. ureg.h\
  157. dosfs.h\
  158. fs.h\
  159. kfs.h\
  160. etherif.h\
  161. sd.h\
  162. ip.h\
  163. devfloppy.h\
  164. ${TARG:%=/386/%}\
  165. update:V:
  166. update $UPDATEFLAGS $UPDATE