|
|
1.1 root 1: # Loadable Drivers - Makefile
2: #
3:
4: # Include directories
5: USRINC=/usr/include
6: SYSINC=/usr/include/sys
7:
8: CC=exec /bin/cc
9: CFLAGS=
10:
11: TARGETS=$(USRSYS)/lib/ldrts0.o \
12: $(USRSYS)/lib/ldmain.o \
13: $(USRSYS)/lib/ldswap.o \
14: $(USRSYS)/lib/ldlib.a
15:
16: ld_support: $(TARGETS)
17: @sync
18:
19: $(USRSYS)/lib/ldrts0.o: ldrts0.s
20: as -xo $@ $<
21:
22: $(USRSYS)/lib/ldmain.o: ldmain.c
23: $(CC) $(CFLAGS) -c -o $@ $<
24:
25: $(USRSYS)/lib/ldswap.o: ldswap.c
26: $(CC) $(CFLAGS) -DNOMONITOR -c -o $@ $<
27:
28: # The following script extracts a module from a library.
29: X_LIB= OBJFIL=`basename $@ | sed 's/L//'` ;\
30: ar x $< $$OBJFIL ;\
31: mv $$OBJFIL $@
32:
33: # The following modules are supported in loadable drivers.
34: # NOTE: Most of them are interface stubs to kernel code.
35: # Some of them are entirely driver resident.
36: LIBOBJ1=$(LOBJ)/absL.o \
37: $(LOBJ)/allocL.o \
38: $(LOBJ)/bclaimL.o \
39: $(LOBJ)/bdoneL.o \
40: $(LOBJ)/blkmvL.o \
41: $(LOBJ)/bootL.o \
42: $(LOBJ)/breadL.o \
43: $(LOBJ)/breleaseL.o \
44: $(LOBJ)/clockedfL.o \
45: $(LOBJ)/clrqL.o \
46: $(LOBJ)/cs_selfL.o \
47: $(LOBJ)/dblockL.o \
48: $(LOBJ)/dcloseL.o \
49: $(LOBJ)/deferL.o \
50: $(LOBJ)/devmsgL.o \
51: $(LOBJ)/dioctlL.o \
52: $(LOBJ)/dmagoL.o \
53: $(LOBJ)/dmalockL.o \
54: $(LOBJ)/dmaoffL.o \
55: $(LOBJ)/dmaonL.o \
56: $(LOBJ)/dmareqL.o \
57: $(LOBJ)/dopenL.o \
58: $(LOBJ)/dpollL.o \
59: $(LOBJ)/dpowerL.o \
60: $(LOBJ)/dreadL.o \
61: $(LOBJ)/drvmapL.o \
62: $(LOBJ)/dtimeL.o \
63: $(LOBJ)/dwriteL.o \
64: $(LOBJ)/fclearL.o \
65: $(LOBJ)/fdiskL.o \
66: $(LOBJ)/ffbyteL.o \
67: $(LOBJ)/ffwordL.o \
68: $(LOBJ)/ffmemL.o \
69: $(LOBJ)/fkcopyL.o \
70: $(LOBJ)/fpxcopyL.o \
71: $(LOBJ)/freeL.o \
72: $(LOBJ)/fucopyL.o \
73: $(LOBJ)/getcsL.o \
74: $(LOBJ)/getqL.o \
75: $(LOBJ)/getubdL.o \
76: $(LOBJ)/getuwdL.o \
77: $(LOBJ)/inbL.o \
78: $(LOBJ)/int11L.o \
79: $(LOBJ)/iogetcL.o \
80: $(LOBJ)/iomapvpL.o \
81: $(LOBJ)/ioputcL.o \
82: $(LOBJ)/ioreadL.o \
83: $(LOBJ)/ioreqL.o \
84: $(LOBJ)/iowriteL.o \
85: $(LOBJ)/ipcaccessL.o \
86: $(LOBJ)/kcallL.o \
87: $(LOBJ)/kfcopyL.o \
88: $(LOBJ)/kclearL.o \
89: $(LOBJ)/kpcopyL.o \
90: $(LOBJ)/kucopyL.o \
91: $(LOBJ)/lockL.o \
92: $(LOBJ)/lxdivL.o \
93: $(LOBJ)/lxmulL.o \
94: $(LOBJ)/lxremL.o \
95: $(LOBJ)/lxsgnL.o \
96: $(LOBJ)/memsetL.o \
97: $(LOBJ)/memtestL.o \
98: $(LOBJ)/nmidisableL.o \
99: $(LOBJ)/nmienableL.o \
100: $(LOBJ)/nondsigL.o \
101: $(LOBJ)/nonedevL.o \
102: $(LOBJ)/nulldevL.o \
103:
104: LIBOBJ2=$(LOBJ)/outbL.o \
105: $(LOBJ)/panicL.o \
106: $(LOBJ)/pclearL.o \
107: $(LOBJ)/pkcopyL.o \
108: $(LOBJ)/plrcopyL.o \
109: $(LOBJ)/pollopenL.o \
110: $(LOBJ)/pollwakeL.o \
111: $(LOBJ)/printfL.o \
112: $(LOBJ)/prlcopyL.o \
113: $(LOBJ)/ptovL.o \
114: $(LOBJ)/pucopyL.o \
115: $(LOBJ)/putcharL.o \
116: $(LOBJ)/putqL.o \
117: $(LOBJ)/putubdL.o \
118: $(LOBJ)/putuwdL.o \
119: $(LOBJ)/rucopyL.o \
120: $(LOBJ)/s5_to_sgL.o \
121: $(LOBJ)/s5_to_tcL.o \
122: $(LOBJ)/sallocL.o \
123: $(LOBJ)/sclearL.o \
124: $(LOBJ)/sendsigL.o \
125: $(LOBJ)/setivecL.o \
126: $(LOBJ)/sfreeL.o \
127: $(LOBJ)/sfbyteL.o \
128: $(LOBJ)/sfwordL.o \
129: $(LOBJ)/sfmemL.o \
130: $(LOBJ)/sg_to_s5L.o \
131: $(LOBJ)/sleepL.o \
132: $(LOBJ)/slrcopyL.o \
133: $(LOBJ)/sphiL.o \
134: $(LOBJ)/splL.o \
135: $(LOBJ)/sploL.o \
136: $(LOBJ)/superL.o \
137: $(LOBJ)/swapioL.o \
138: $(LOBJ)/tc_to_s5L.o \
139: $(LOBJ)/timeoutL.o \
140: $(LOBJ)/ttcloseL.o \
141: $(LOBJ)/tthupL.o \
142: $(LOBJ)/ttflushL.o \
143: $(LOBJ)/ttinL.o \
144: $(LOBJ)/ttioctlL.o \
145: $(LOBJ)/ttopenL.o \
146: $(LOBJ)/ttoutL.o \
147: $(LOBJ)/ttpollL.o \
148: $(LOBJ)/ttreadL.o \
149: $(LOBJ)/ttsetgrpL.o \
150: $(LOBJ)/ttsignalL.o \
151: $(LOBJ)/ttstartL.o \
152: $(LOBJ)/ttwriteL.o \
153: $(LOBJ)/uexitL.o \
154: $(LOBJ)/ufcopyL.o \
155: $(LOBJ)/ukcopyL.o \
156: $(LOBJ)/unlockL.o \
157: $(LOBJ)/upcopyL.o \
158: $(LOBJ)/urcopyL.o \
159: $(LOBJ)/vprintL.o \
160: $(LOBJ)/vrelseL.o \
161: $(LOBJ)/vremapL.o \
162: $(LOBJ)/vtopL.o \
163: $(LOBJ)/vxdivL.o \
164: $(LOBJ)/vxmulL.o \
165: $(LOBJ)/vxremL.o \
166: $(LOBJ)/waitqL.o \
167: $(LOBJ)/wakeupL.o \
168:
169: LIBOBJ3=$(LOBJ)/fifo_closeL.o \
170: $(LOBJ)/fifo_lenL.o \
171: $(LOBJ)/fifo_openL.o \
172: $(LOBJ)/fifo_readL.o \
173: $(LOBJ)/fifo_rewindL.o \
174: $(LOBJ)/fifo_writeL.o \
175: $(LOBJ)/uart_senseL.o \
176:
177: $(USRSYS)/lib/ldlib.a: mkstub.m4 $(LIBOBJ1) $(LIBOBJ2) $(LIBOBJ3)
178: rm -f $@
179: ar rc $@ $(LIBOBJ1)
180: ar rc $@ $(LIBOBJ2)
181: ar rc $@ $(LIBOBJ3)
182: ranlib $@
183:
184: # Here is mkstub.m4:
185: #define(sym, substr(basename, -2, ))dnl
186: # .globl sym`_'
187: #sym`_': mov ax,`$K'sym`_'
188: # .byte 0x9A
189: # .word xcalled
190: # .word 0x0060
191: # ret
192:
193: MKSTUB= echo "define(basename, `basename $*`)dnl" | m4 - mkstub.m4 > $*.s ;\
194: as -gxo $@ $*.s; rm $*.s
195:
196: $(LOBJ)/absL.o:
197: $(MKSTUB)
198:
199: $(LOBJ)/allocL.o:
200: $(MKSTUB)
201:
202: $(LOBJ)/bclaimL.o:
203: $(MKSTUB)
204:
205: $(LOBJ)/bdoneL.o:
206: $(MKSTUB)
207:
208: $(LOBJ)/blkmvL.o: /lib/libc.a
209: $(X_LIB)
210:
211: $(LOBJ)/bootL.o:
212: $(MKSTUB)
213:
214: $(LOBJ)/breadL.o:
215: $(MKSTUB)
216:
217: $(LOBJ)/breleaseL.o:
218: $(MKSTUB)
219:
220: $(LOBJ)/clockedfL.o: clockedf.c
221: $(CC) $(CFLAGS) -c -o $@ $<
222:
223: $(LOBJ)/clrivecL.o:
224: $(MKSTUB)
225:
226: $(LOBJ)/clrqL.o:
227: $(MKSTUB)
228:
229: $(LOBJ)/cs_selfL.o: cs_self.s
230: as -gxo $@ $<
231:
232: $(LOBJ)/dblockL.o:
233: $(MKSTUB)
234:
235: $(LOBJ)/dcloseL.o:
236: $(MKSTUB)
237:
238: $(LOBJ)/deferL.o: defer.s
239: as -gxo $@ $<
240:
241: $(LOBJ)/devmsgL.o:
242: $(MKSTUB)
243:
244: $(LOBJ)/dioctlL.o:
245: $(MKSTUB)
246:
247: $(LOBJ)/dmagoL.o:
248: $(MKSTUB)
249:
250: $(LOBJ)/dmalockL.o: dmalock.c
251: $(CC) $(CFLAGS) -c -o $@ $<
252:
253: $(LOBJ)/dmaoffL.o:
254: $(MKSTUB)
255:
256: $(LOBJ)/dmaonL.o:
257: $(MKSTUB)
258:
259: $(LOBJ)/dmareqL.o:
260: $(MKSTUB)
261:
262: $(LOBJ)/dopenL.o:
263: $(MKSTUB)
264:
265: $(LOBJ)/dpollL.o:
266: $(MKSTUB)
267:
268: $(LOBJ)/dpowerL.o:
269: $(MKSTUB)
270:
271: $(LOBJ)/dreadL.o:
272: $(MKSTUB)
273:
274: $(LOBJ)/drvmapL.o:
275: $(MKSTUB)
276:
277: $(LOBJ)/dtimeL.o:
278: $(MKSTUB)
279:
280: $(LOBJ)/dwriteL.o:
281: $(MKSTUB)
282:
283: $(LOBJ)/fclearL.o:
284: $(MKSTUB)
285:
286: $(LOBJ)/fdiskL.o:
287: $(MKSTUB)
288:
289: $(LOBJ)/ffbyteL.o: ffbyte.s
290: as -gxo $@ $<
291:
292: $(LOBJ)/ffwordL.o: ffword.s
293: as -gxo $@ $<
294:
295: $(LOBJ)/ffmemL.o: ffmem.s
296: as -gxo $@ $<
297:
298: $(LOBJ)/fkcopyL.o:
299: $(MKSTUB)
300:
301: $(LOBJ)/fpxcopyL.o:
302: $(MKSTUB)
303:
304: $(LOBJ)/freeL.o:
305: $(MKSTUB)
306:
307: $(LOBJ)/fucopyL.o:
308: $(MKSTUB)
309:
310: $(LOBJ)/getcsL.o: getcs.s
311: as -gxo $@ $<
312:
313: $(LOBJ)/getqL.o:
314: $(MKSTUB)
315:
316: $(LOBJ)/getubdL.o:
317: $(MKSTUB)
318:
319: $(LOBJ)/getuwdL.o:
320: $(MKSTUB)
321:
322: $(LOBJ)/inbL.o: inb.s
323: as -gxo $@ $<
324:
325: $(LOBJ)/int11L.o:
326: $(MKSTUB)
327:
328: $(LOBJ)/iogetcL.o:
329: $(MKSTUB)
330:
331: $(LOBJ)/iomapvpL.o:
332: $(MKSTUB)
333:
334: $(LOBJ)/ioputcL.o:
335: $(MKSTUB)
336:
337: $(LOBJ)/ioreadL.o:
338: $(MKSTUB)
339:
340: $(LOBJ)/ioreqL.o:
341: $(MKSTUB)
342:
343: $(LOBJ)/iowriteL.o:
344: $(MKSTUB)
345:
346: $(LOBJ)/ipcaccessL.o:
347: $(MKSTUB)
348:
349: $(LOBJ)/kcallL.o: kcall.s
350: as -gxo $@ $<
351:
352: $(LOBJ)/kclearL.o:
353: $(MKSTUB)
354:
355: $(LOBJ)/kfcopyL.o:
356: $(MKSTUB)
357:
358: $(LOBJ)/kpcopyL.o:
359: $(MKSTUB)
360:
361: $(LOBJ)/kucopyL.o:
362: $(MKSTUB)
363:
364: $(LOBJ)/lockL.o:
365: $(MKSTUB)
366:
367: $(LOBJ)/lxdivL.o: /lib/libc.a
368: $(X_LIB)
369:
370: $(LOBJ)/lxmulL.o: /lib/libc.a
371: $(X_LIB)
372:
373: $(LOBJ)/lxremL.o: /lib/libc.a
374: $(X_LIB)
375:
376: $(LOBJ)/lxsgnL.o: /lib/libc.a
377: $(X_LIB)
378:
379: $(LOBJ)/memsetL.o: /lib/libc.a
380: $(X_LIB)
381:
382: $(LOBJ)/memtestL.o:
383: $(MKSTUB)
384:
385: $(LOBJ)/nmidisableL.o:
386: $(MKSTUB)
387:
388: $(LOBJ)/nmienableL.o:
389: $(MKSTUB)
390:
391: $(LOBJ)/nondsigL.o:
392: $(MKSTUB)
393:
394: $(LOBJ)/nonedevL.o: nonedev.c
395: $(CC) $(CFLAGS) -c -o $@ $<
396:
397: $(LOBJ)/nulldevL.o: nulldev.c
398: $(CC) $(CFLAGS) -c -o $@ $<
399:
400: $(LOBJ)/outbL.o: outb.s
401: as -gxo $@ $<
402:
403: $(LOBJ)/panicL.o:
404: $(MKSTUB)
405:
406: $(LOBJ)/pclearL.o:
407: $(MKSTUB)
408:
409: $(LOBJ)/plrcopyL.o:
410: $(MKSTUB)
411:
412: $(LOBJ)/pkcopyL.o:
413: $(MKSTUB)
414:
415: $(LOBJ)/pollopenL.o:
416: $(MKSTUB)
417:
418: $(LOBJ)/pollwakeL.o:
419: $(MKSTUB)
420:
421: $(LOBJ)/printfL.o:
422: $(MKSTUB)
423:
424: $(LOBJ)/prlcopyL.o:
425: $(MKSTUB)
426:
427: $(LOBJ)/ptovL.o:
428: $(MKSTUB)
429:
430: $(LOBJ)/pucopyL.o:
431: $(MKSTUB)
432:
433: $(LOBJ)/putcharL.o:
434: $(MKSTUB)
435:
436: $(LOBJ)/putqL.o:
437: $(MKSTUB)
438:
439: $(LOBJ)/putubdL.o:
440: $(MKSTUB)
441:
442: $(LOBJ)/putuwdL.o:
443: $(MKSTUB)
444:
445: $(LOBJ)/rucopyL.o:
446: $(MKSTUB)
447:
448: $(LOBJ)/s5_to_sgL.o:
449: $(MKSTUB)
450:
451: $(LOBJ)/s5_to_tcL.o:
452: $(MKSTUB)
453:
454: $(LOBJ)/sallocL.o:
455: $(MKSTUB)
456:
457: $(LOBJ)/sclearL.o:
458: $(MKSTUB)
459:
460: $(LOBJ)/sendsigL.o:
461: $(MKSTUB)
462:
463: $(LOBJ)/setivecL.o: setivec.c
464: $(CC) $(CFLAGS) -c -o $@ $<
465:
466: $(LOBJ)/sfreeL.o:
467: $(MKSTUB)
468:
469: $(LOBJ)/sfbyteL.o: sfbyte.s
470: as -gxo $@ $<
471:
472: $(LOBJ)/sfwordL.o: sfword.s
473: as -gxo $@ $<
474:
475: $(LOBJ)/sfmemL.o: sfmem.s
476: as -gxo $@ $<
477:
478: $(LOBJ)/sg_to_s5L.o:
479: $(MKSTUB)
480:
481: $(LOBJ)/sleepL.o:
482: $(MKSTUB)
483:
484: $(LOBJ)/slrcopyL.o:
485: $(MKSTUB)
486:
487: $(LOBJ)/sphiL.o: sphi.s
488: as -gxo $@ $<
489:
490: $(LOBJ)/splL.o: spl.s
491: as -gxo $@ $<
492:
493: $(LOBJ)/sploL.o: splo.s
494: as -gxo $@ $<
495:
496: $(LOBJ)/superL.o:
497: $(MKSTUB)
498:
499: $(LOBJ)/swapioL.o:
500: $(MKSTUB)
501:
502: $(LOBJ)/tc_to_s5L.o:
503: $(MKSTUB)
504:
505: $(LOBJ)/timeoutL.o: timeout.c
506: $(CC) $(CFLAGS) -c -o $@ $<
507:
508: $(LOBJ)/ttcloseL.o:
509: $(MKSTUB)
510:
511: $(LOBJ)/ttflushL.o:
512: $(MKSTUB)
513:
514: $(LOBJ)/tthupL.o:
515: $(MKSTUB)
516:
517: $(LOBJ)/ttinL.o:
518: $(MKSTUB)
519:
520: $(LOBJ)/ttioctlL.o:
521: $(MKSTUB)
522:
523: $(LOBJ)/ttopenL.o:
524: $(MKSTUB)
525:
526: $(LOBJ)/ttoutL.o:
527: $(MKSTUB)
528:
529: $(LOBJ)/ttpollL.o:
530: $(MKSTUB)
531:
532: $(LOBJ)/ttreadL.o:
533: $(MKSTUB)
534:
535: $(LOBJ)/ttsetgrpL.o:
536: $(MKSTUB)
537:
538: $(LOBJ)/ttsignalL.o:
539: $(MKSTUB)
540:
541: $(LOBJ)/ttstartL.o:
542: $(MKSTUB)
543:
544: $(LOBJ)/ttwriteL.o:
545: $(MKSTUB)
546:
547: $(LOBJ)/uexitL.o:
548: $(MKSTUB)
549:
550: $(LOBJ)/ufcopyL.o:
551: $(MKSTUB)
552:
553: $(LOBJ)/ukcopyL.o:
554: $(MKSTUB)
555:
556: $(LOBJ)/unlockL.o:
557: $(MKSTUB)
558:
559: $(LOBJ)/upcopyL.o:
560: $(MKSTUB)
561:
562: $(LOBJ)/urcopyL.o:
563: $(MKSTUB)
564:
565: $(LOBJ)/vprintL.o:
566: $(MKSTUB)
567:
568: $(LOBJ)/vrelseL.o:
569: $(MKSTUB)
570:
571: $(LOBJ)/vremapL.o:
572: $(MKSTUB)
573:
574: $(LOBJ)/vtopL.o:
575: $(MKSTUB)
576:
577: $(LOBJ)/vxdivL.o: /lib/libc.a
578: $(X_LIB)
579:
580: $(LOBJ)/vxmulL.o: /lib/libc.a
581: $(X_LIB)
582:
583: $(LOBJ)/vxremL.o: /lib/libc.a
584: $(X_LIB)
585:
586: $(LOBJ)/waitqL.o:
587: $(MKSTUB)
588:
589: $(LOBJ)/wakeupL.o:
590: $(MKSTUB)
591:
592: $(LOBJ)/fifo_closeL.o:
593: $(MKSTUB)
594:
595: $(LOBJ)/fifo_lenL.o:
596: $(MKSTUB)
597:
598: $(LOBJ)/fifo_openL.o:
599: $(MKSTUB)
600:
601: $(LOBJ)/fifo_readL.o:
602: $(MKSTUB)
603:
604: $(LOBJ)/fifo_rewindL.o:
605: $(MKSTUB)
606:
607: $(LOBJ)/fifo_writeL.o:
608: $(MKSTUB)
609:
610: $(LOBJ)/uart_senseL.o:
611: $(MKSTUB)
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.