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