head     1.3;
branch   ;
access   ;
symbols  ;
locks    root:1.3;
comment  @@;


1.3
date     92.01.09.13.40.38;  author root;  state Exp;
branches ;
next     1.2;

1.2
date     91.04.30.18.38.22;  author root;  state Exp;
branches ;
next     1.1;

1.1
date     91.04.30.18.37.18;  author root;  state Exp;
branches ;
next     ;


desc
@Runtime support for loadable drivers, including ldlib.a.
@


1.3
log
@update by hal to include dioctl, dpoll, dpower, dread and dtime in ldlib.a
@
text
@# $Header: $(USRSRC)/ldrv/RCS/Makefile,v 1.2 91/04/30 18:38:22 root Exp $

# Loadable Drivers - Makefile
#

# Include directories
USRINC=/usr/include
SYSINC=/usr/include/sys

CC=exec /bin/cc
CFLAGS=

TARGETS=$(USRSYS)/lib/ldrts0.o	\
	$(USRSYS)/lib/ldmain.o	\
	$(USRSYS)/lib/ldswap.o	\
	$(USRSYS)/lib/ldlib.a

ld_support:	$(TARGETS)
	@@sync

$(USRSYS)/lib/ldrts0.o:	ldrts0.s
	as -xo $@@ $<

$(USRSYS)/lib/ldmain.o:	ldmain.c
	$(CC) $(CFLAGS) -c -o $@@ $<

$(USRSYS)/lib/ldswap.o:	ldswap.c
	$(CC) $(CFLAGS) -DNOMONITOR -c -o $@@ $<

# The following script extracts a module from a library.
X_LIB=	OBJFIL=`basename $@@ | sed 's/L//'` ;\
	ar x $< $$OBJFIL ;\
	mv $$OBJFIL $@@

# The following modules are supported in loadable drivers.
# NOTE: Most of them are interface stubs to kernel code.
#	Some of them are entirely driver resident.
LIBOBJ1=$(LOBJ)/absL.o		\
	$(LOBJ)/allocL.o	\
	$(LOBJ)/bclaimL.o	\
	$(LOBJ)/bdoneL.o	\
	$(LOBJ)/blkmvL.o	\
	$(LOBJ)/bootL.o		\
	$(LOBJ)/breadL.o	\
	$(LOBJ)/breleaseL.o	\
	$(LOBJ)/clockedfL.o	\
	$(LOBJ)/clrqL.o		\
	$(LOBJ)/cs_selfL.o	\
	$(LOBJ)/dblockL.o	\
	$(LOBJ)/dcloseL.o	\
	$(LOBJ)/deferL.o	\
	$(LOBJ)/devmsgL.o	\
	$(LOBJ)/dioctlL.o	\
	$(LOBJ)/dmagoL.o	\
	$(LOBJ)/dmalockL.o	\
	$(LOBJ)/dmaoffL.o	\
	$(LOBJ)/dmaonL.o	\
	$(LOBJ)/dmareqL.o	\
	$(LOBJ)/dopenL.o	\
	$(LOBJ)/dpollL.o	\
	$(LOBJ)/dpowerL.o	\
	$(LOBJ)/dreadL.o	\
	$(LOBJ)/drvmapL.o	\
	$(LOBJ)/dtimeL.o	\
	$(LOBJ)/dwriteL.o	\
	$(LOBJ)/fclearL.o	\
	$(LOBJ)/fdiskL.o	\
	$(LOBJ)/ffbyteL.o	\
	$(LOBJ)/ffwordL.o	\
	$(LOBJ)/ffmemL.o	\
	$(LOBJ)/fkcopyL.o	\
	$(LOBJ)/fpxcopyL.o	\
	$(LOBJ)/freeL.o		\
	$(LOBJ)/fucopyL.o	\
	$(LOBJ)/getcsL.o	\
	$(LOBJ)/getqL.o		\
	$(LOBJ)/getubdL.o	\
	$(LOBJ)/getuwdL.o	\
	$(LOBJ)/inbL.o		\
	$(LOBJ)/int11L.o	\
	$(LOBJ)/iogetcL.o	\
	$(LOBJ)/iomapvpL.o	\
	$(LOBJ)/ioputcL.o	\
	$(LOBJ)/ioreadL.o	\
	$(LOBJ)/ioreqL.o	\
	$(LOBJ)/iowriteL.o	\
	$(LOBJ)/ipcaccessL.o	\
	$(LOBJ)/kcallL.o	\
	$(LOBJ)/kfcopyL.o	\
	$(LOBJ)/kclearL.o	\
	$(LOBJ)/kpcopyL.o	\
	$(LOBJ)/kucopyL.o	\
	$(LOBJ)/lockL.o		\
	$(LOBJ)/lxdivL.o	\
	$(LOBJ)/lxmulL.o	\
	$(LOBJ)/lxremL.o	\
	$(LOBJ)/lxsgnL.o	\
	$(LOBJ)/memsetL.o	\
	$(LOBJ)/memtestL.o	\
	$(LOBJ)/nmidisableL.o	\
	$(LOBJ)/nmienableL.o	\
	$(LOBJ)/nondsigL.o	\
	$(LOBJ)/nonedevL.o	\
	$(LOBJ)/nulldevL.o	\

LIBOBJ2=$(LOBJ)/outbL.o		\
	$(LOBJ)/panicL.o	\
	$(LOBJ)/pclearL.o	\
	$(LOBJ)/pkcopyL.o	\
	$(LOBJ)/plrcopyL.o	\
	$(LOBJ)/pollopenL.o	\
	$(LOBJ)/pollwakeL.o	\
	$(LOBJ)/printfL.o	\
	$(LOBJ)/prlcopyL.o	\
	$(LOBJ)/ptovL.o		\
	$(LOBJ)/pucopyL.o	\
	$(LOBJ)/putcharL.o	\
	$(LOBJ)/putqL.o		\
	$(LOBJ)/putubdL.o	\
	$(LOBJ)/putuwdL.o	\
	$(LOBJ)/rucopyL.o	\
	$(LOBJ)/s5_to_sgL.o	\
	$(LOBJ)/s5_to_tcL.o	\
	$(LOBJ)/sallocL.o	\
	$(LOBJ)/sclearL.o	\
	$(LOBJ)/sendsigL.o	\
	$(LOBJ)/setivecL.o	\
	$(LOBJ)/sfreeL.o	\
	$(LOBJ)/sfbyteL.o	\
	$(LOBJ)/sfwordL.o	\
	$(LOBJ)/sfmemL.o	\
	$(LOBJ)/sg_to_s5L.o	\
	$(LOBJ)/sleepL.o	\
	$(LOBJ)/slrcopyL.o	\
	$(LOBJ)/sphiL.o		\
	$(LOBJ)/splL.o		\
	$(LOBJ)/sploL.o		\
	$(LOBJ)/superL.o	\
	$(LOBJ)/swapioL.o	\
	$(LOBJ)/tc_to_s5L.o	\
	$(LOBJ)/timeoutL.o	\
	$(LOBJ)/ttcloseL.o	\
	$(LOBJ)/tthupL.o	\
	$(LOBJ)/ttflushL.o	\
	$(LOBJ)/ttinL.o		\
	$(LOBJ)/ttioctlL.o	\
	$(LOBJ)/ttopenL.o	\
	$(LOBJ)/ttoutL.o	\
	$(LOBJ)/ttpollL.o	\
	$(LOBJ)/ttreadL.o	\
	$(LOBJ)/ttsetgrpL.o	\
	$(LOBJ)/ttsignalL.o	\
	$(LOBJ)/ttstartL.o	\
	$(LOBJ)/ttwriteL.o	\
	$(LOBJ)/uexitL.o	\
	$(LOBJ)/ufcopyL.o	\
	$(LOBJ)/ukcopyL.o	\
	$(LOBJ)/unlockL.o	\
	$(LOBJ)/upcopyL.o	\
	$(LOBJ)/urcopyL.o	\
	$(LOBJ)/vprintL.o	\
	$(LOBJ)/vrelseL.o	\
	$(LOBJ)/vremapL.o	\
	$(LOBJ)/vtopL.o		\
	$(LOBJ)/vxdivL.o	\
	$(LOBJ)/vxmulL.o	\
	$(LOBJ)/vxremL.o	\
	$(LOBJ)/waitqL.o	\
	$(LOBJ)/wakeupL.o	\

LIBOBJ3=$(LOBJ)/fifo_closeL.o		\
	$(LOBJ)/fifo_lenL.o		\
	$(LOBJ)/fifo_openL.o		\
	$(LOBJ)/fifo_readL.o		\
	$(LOBJ)/fifo_rewindL.o		\
	$(LOBJ)/fifo_writeL.o		\

$(USRSYS)/lib/ldlib.a:	mkstub.m4 $(LIBOBJ1) $(LIBOBJ2) $(LIBOBJ3)
	rm -f  $@@
	ar rc  $@@ $(LIBOBJ1)
	ar rc  $@@ $(LIBOBJ2)
	ar rc  $@@ $(LIBOBJ3)
	ranlib $@@

# Here is mkstub.m4:
#define(sym, substr(basename, -2, ))dnl
#	.globl	sym`_'
#sym`_':	mov	ax,`$K'sym`_'
#	.byte	0x9A
#	.word	xcalled
#	.word	0x0060
#	ret

MKSTUB=	echo "define(basename, `basename $*`)dnl" | m4 - mkstub.m4 > $*.s ;\
	as -gxo $@@ $*.s; rm $*.s

$(LOBJ)/absL.o:
	$(MKSTUB)

$(LOBJ)/allocL.o:
	$(MKSTUB)

$(LOBJ)/bclaimL.o:
	$(MKSTUB)

$(LOBJ)/bdoneL.o:
	$(MKSTUB)

$(LOBJ)/blkmvL.o:	/lib/libc.a
	$(X_LIB)

$(LOBJ)/bootL.o:
	$(MKSTUB)

$(LOBJ)/breadL.o:
	$(MKSTUB)

$(LOBJ)/breleaseL.o:
	$(MKSTUB)

$(LOBJ)/clockedfL.o:	clockedf.c
	$(CC) $(CFLAGS) -c -o $@@ $<

$(LOBJ)/clrivecL.o:
	$(MKSTUB)

$(LOBJ)/clrqL.o:
	$(MKSTUB)

$(LOBJ)/cs_selfL.o:	cs_self.s
	as -gxo $@@ $<

$(LOBJ)/dblockL.o:
	$(MKSTUB)

$(LOBJ)/dcloseL.o:
	$(MKSTUB)

$(LOBJ)/deferL.o:	defer.s
	as -gxo $@@ $<

$(LOBJ)/devmsgL.o:
	$(MKSTUB)

$(LOBJ)/dioctlL.o:
	$(MKSTUB)

$(LOBJ)/dmagoL.o:
	$(MKSTUB)

$(LOBJ)/dmalockL.o:	dmalock.c
	$(CC) $(CFLAGS) -c -o $@@ $<

$(LOBJ)/dmaoffL.o:
	$(MKSTUB)

$(LOBJ)/dmaonL.o:
	$(MKSTUB)

$(LOBJ)/dmareqL.o:
	$(MKSTUB)

$(LOBJ)/dopenL.o:
	$(MKSTUB)

$(LOBJ)/dpollL.o:
	$(MKSTUB)

$(LOBJ)/dpowerL.o:
	$(MKSTUB)

$(LOBJ)/dreadL.o:
	$(MKSTUB)

$(LOBJ)/drvmapL.o:
	$(MKSTUB)

$(LOBJ)/dtimeL.o:
	$(MKSTUB)

$(LOBJ)/dwriteL.o:
	$(MKSTUB)

$(LOBJ)/fclearL.o:
	$(MKSTUB)

$(LOBJ)/fdiskL.o:
	$(MKSTUB)

$(LOBJ)/ffbyteL.o:	ffbyte.s
	as -gxo $@@ $<

$(LOBJ)/ffwordL.o:	ffword.s
	as -gxo $@@ $<

$(LOBJ)/ffmemL.o:	ffmem.s
	as -gxo $@@ $<

$(LOBJ)/fkcopyL.o:
	$(MKSTUB)

$(LOBJ)/fpxcopyL.o:
	$(MKSTUB)

$(LOBJ)/freeL.o:
	$(MKSTUB)

$(LOBJ)/fucopyL.o:
	$(MKSTUB)

$(LOBJ)/getcsL.o:	getcs.s
	as -gxo $@@ $<

$(LOBJ)/getqL.o:
	$(MKSTUB)

$(LOBJ)/getubdL.o:
	$(MKSTUB)

$(LOBJ)/getuwdL.o:
	$(MKSTUB)

$(LOBJ)/inbL.o:		inb.s
	as -gxo $@@ $<

$(LOBJ)/int11L.o:
	$(MKSTUB)

$(LOBJ)/iogetcL.o:
	$(MKSTUB)

$(LOBJ)/iomapvpL.o:
	$(MKSTUB)

$(LOBJ)/ioputcL.o:
	$(MKSTUB)

$(LOBJ)/ioreadL.o:
	$(MKSTUB)

$(LOBJ)/ioreqL.o:
	$(MKSTUB)

$(LOBJ)/iowriteL.o:
	$(MKSTUB)

$(LOBJ)/ipcaccessL.o:
	$(MKSTUB)

$(LOBJ)/kcallL.o:	kcall.s
	as -gxo $@@ $<

$(LOBJ)/kclearL.o:
	$(MKSTUB)

$(LOBJ)/kfcopyL.o:
	$(MKSTUB)

$(LOBJ)/kpcopyL.o:
	$(MKSTUB)

$(LOBJ)/kucopyL.o:
	$(MKSTUB)

$(LOBJ)/lockL.o:
	$(MKSTUB)

$(LOBJ)/lxdivL.o:	/lib/libc.a
	$(X_LIB)

$(LOBJ)/lxmulL.o:	/lib/libc.a
	$(X_LIB)

$(LOBJ)/lxremL.o:	/lib/libc.a
	$(X_LIB)

$(LOBJ)/lxsgnL.o:	/lib/libc.a
	$(X_LIB)

$(LOBJ)/memsetL.o:	/lib/libc.a
	$(X_LIB)

$(LOBJ)/memtestL.o:
	$(MKSTUB)

$(LOBJ)/nmidisableL.o:
	$(MKSTUB)

$(LOBJ)/nmienableL.o:
	$(MKSTUB)

$(LOBJ)/nondsigL.o:
	$(MKSTUB)

$(LOBJ)/nonedevL.o:	nonedev.c
	$(CC) $(CFLAGS) -c -o $@@ $<

$(LOBJ)/nulldevL.o:	nulldev.c
	$(CC) $(CFLAGS) -c -o $@@ $<

$(LOBJ)/outbL.o:		outb.s
	as -gxo $@@ $<

$(LOBJ)/panicL.o:
	$(MKSTUB)

$(LOBJ)/pclearL.o:
	$(MKSTUB)

$(LOBJ)/plrcopyL.o:
	$(MKSTUB)

$(LOBJ)/pkcopyL.o:
	$(MKSTUB)

$(LOBJ)/pollopenL.o:
	$(MKSTUB)

$(LOBJ)/pollwakeL.o:
	$(MKSTUB)

$(LOBJ)/printfL.o:
	$(MKSTUB)

$(LOBJ)/prlcopyL.o:
	$(MKSTUB)

$(LOBJ)/ptovL.o:
	$(MKSTUB)

$(LOBJ)/pucopyL.o:
	$(MKSTUB)

$(LOBJ)/putcharL.o:
	$(MKSTUB)

$(LOBJ)/putqL.o:
	$(MKSTUB)

$(LOBJ)/putubdL.o:
	$(MKSTUB)

$(LOBJ)/putuwdL.o:
	$(MKSTUB)

$(LOBJ)/rucopyL.o:
	$(MKSTUB)

$(LOBJ)/s5_to_sgL.o:
	$(MKSTUB)

$(LOBJ)/s5_to_tcL.o:
	$(MKSTUB)

$(LOBJ)/sallocL.o:
	$(MKSTUB)

$(LOBJ)/sclearL.o:
	$(MKSTUB)

$(LOBJ)/sendsigL.o:
	$(MKSTUB)

$(LOBJ)/setivecL.o:	setivec.c
	$(CC) $(CFLAGS) -c -o $@@ $<

$(LOBJ)/sfreeL.o:
	$(MKSTUB)

$(LOBJ)/sfbyteL.o:	sfbyte.s
	as -gxo $@@ $<

$(LOBJ)/sfwordL.o:	sfword.s
	as -gxo $@@ $<

$(LOBJ)/sfmemL.o:	sfmem.s
	as -gxo $@@ $<

$(LOBJ)/sg_to_s5L.o:
	$(MKSTUB)

$(LOBJ)/sleepL.o:
	$(MKSTUB)

$(LOBJ)/slrcopyL.o:
	$(MKSTUB)

$(LOBJ)/sphiL.o:	sphi.s
	as -gxo $@@ $<

$(LOBJ)/splL.o:	spl.s
	as -gxo $@@ $<

$(LOBJ)/sploL.o:	splo.s
	as -gxo $@@ $<

$(LOBJ)/superL.o:
	$(MKSTUB)

$(LOBJ)/swapioL.o:
	$(MKSTUB)

$(LOBJ)/tc_to_s5L.o:
	$(MKSTUB)

$(LOBJ)/timeoutL.o:	timeout.c
	$(CC) $(CFLAGS) -c -o $@@ $<

$(LOBJ)/ttcloseL.o:
	$(MKSTUB)

$(LOBJ)/ttflushL.o:
	$(MKSTUB)

$(LOBJ)/tthupL.o:
	$(MKSTUB)

$(LOBJ)/ttinL.o:
	$(MKSTUB)

$(LOBJ)/ttioctlL.o:
	$(MKSTUB)

$(LOBJ)/ttopenL.o:
	$(MKSTUB)

$(LOBJ)/ttoutL.o:
	$(MKSTUB)

$(LOBJ)/ttpollL.o:
	$(MKSTUB)

$(LOBJ)/ttreadL.o:
	$(MKSTUB)

$(LOBJ)/ttsetgrpL.o:
	$(MKSTUB)

$(LOBJ)/ttsignalL.o:
	$(MKSTUB)

$(LOBJ)/ttstartL.o:
	$(MKSTUB)

$(LOBJ)/ttwriteL.o:
	$(MKSTUB)

$(LOBJ)/uexitL.o:
	$(MKSTUB)

$(LOBJ)/ufcopyL.o:
	$(MKSTUB)

$(LOBJ)/ukcopyL.o:
	$(MKSTUB)

$(LOBJ)/unlockL.o:
	$(MKSTUB)

$(LOBJ)/upcopyL.o:
	$(MKSTUB)

$(LOBJ)/urcopyL.o:
	$(MKSTUB)

$(LOBJ)/vprintL.o:
	$(MKSTUB)

$(LOBJ)/vrelseL.o:
	$(MKSTUB)

$(LOBJ)/vremapL.o:
	$(MKSTUB)

$(LOBJ)/vtopL.o:
	$(MKSTUB)

$(LOBJ)/vxdivL.o:	/lib/libc.a
	$(X_LIB)

$(LOBJ)/vxmulL.o:	/lib/libc.a
	$(X_LIB)

$(LOBJ)/vxremL.o:	/lib/libc.a
	$(X_LIB)

$(LOBJ)/waitqL.o:
	$(MKSTUB)

$(LOBJ)/wakeupL.o:
	$(MKSTUB)

$(LOBJ)/fifo_closeL.o:
	$(MKSTUB)

$(LOBJ)/fifo_lenL.o:
	$(MKSTUB)

$(LOBJ)/fifo_openL.o:
	$(MKSTUB)

$(LOBJ)/fifo_readL.o:
	$(MKSTUB)

$(LOBJ)/fifo_rewindL.o:
	$(MKSTUB)

$(LOBJ)/fifo_writeL.o:
	$(MKSTUB)
@


1.2
log
@Changes to support polled async driver "hs"
@
text
@d1 1
a1 13
# $Header: /usr/src/sys/ldrv/RCS/Makefile,v 1.5 89/06/30 16:31:48 src Exp $
#
#	The  information  contained herein  is a trade secret  of INETCO
#	Systems, Ltd, and is  confidential information.   It is provided
#	under a license agreement,  and may be copied or disclosed  only
#	under  the  terms  of  that  agreement.    Any  reproduction  or
#	disclosure  of  this   material   without  the  express  written
#	authorization of INETCO Systems, Ltd. or persuant to the license
#	agreement is unlawful.
#
#	Copyright (c) 1988
#	An unpublished work by INETCO Systems, Ltd.
#	All rights reserved.
a4 17
# $Log:	/usr/src/sys/ldrv/RCS/Makefile,v $
# Revision 1.5	89/06/30  16:31:48 	src
# Bug:	Multiple simultaneous DMA transfers resulted in data being lost.
# Fix:	Added DMA lock routines to ensure single simultaneous DMA
# 	transfers. (JHB)
# 
# Revision 1.3	88/05/23  17:31:10	src
# Added vtop linkage routine (Jim had filed away in his directory) - ART
# 
# Revision 1.2	88/04/04  16:39:27	src
# defer() function now supported from loadable drivers.
# 
# Revision 1.1	88/03/24  16:30:21	src
# Initial revision
#
# 88/02/16	Jim Belton		/usr/src/sys/ldrv/Makefile
# Added vtop linkage routine to ldlib.a.
a5 2
USRSYS=/usr/sys

a8 3
KERINC=/usr/src/sys/sys
DRVINC=/usr/src/sys/i8086/sys
USSINC=/usr/src/sys
d10 2
a11 7
# Source directories
COHSRC=/usr/src/sys/coh
DRVSRC=/usr/src/sys/i8086/drv
I86SRC=/usr/src/sys/i8086/src
IBMATSRC=/usr/src/sys/i8086/ibm_at
KERSRC=/usr/src/sys/ker
TTYSRC=/usr/src/sys/ttydrv
d13 4
a16 4
# Object directories
I86OBJ=/usr/src/sys/i8086/objects
DRVOBJ=/usr/src/sys/i8086/drv/objects
IBMATOBJ=/usr/src/sys/i8086/ibm_at/objects
d18 1
a18 9
CC=exec /bin/cc
CFLAGS=-I$(DRVINC) -I$(KERINC) -I$(SYSINC)

TARGETS=objects/ldrts0.o	\
	objects/ldmain.o	\
	objects/ldswap.o	\
	objects/ldlib.a

all:		$(TARGETS)
d21 2
a22 4
install:	$(TARGETS)	\
		ldconfig
	cp $(TARGETS) /tmp/usr/sys/lib
	cp ldconfig /tmp/usr/sys
d24 2
a25 2
shrink:
	rm -f objects/*
d27 2
a28 3
objects/ldrts0.o:	ldrts0.s
	as -x ldrts0.s
	mv l.out $@@
d30 4
a33 3
objects/ldmain.o:	ldmain.c
	$(CC) $(CFLAGS) -c ldmain.c
	mv ldmain.o $@@
a34 13
#	$(CC) $(CFLAGS) -c ldswap.c
objects/ldswap.o:	ldswap.c
	$(CC) $(CFLAGS) -DNOMONITOR -c ldswap.c
	mv ldswap.o $@@

# The following script creates a interface stub to a kernel function.
GEN_DRV=objects/mkstub.sh

# The following script extracts a module from a library.
ARX_LIB=set -e; OBJFIL=`basename $@@` ;\
	eval ar x $< $${OBJFIL} ;\
	eval mv $${OBJFIL} $@@

d38 67
a104 62
LIBOBJ1=objects/abs.o		\
	objects/alloc.o		\
	objects/bclaim.o	\
	objects/bdone.o		\
	objects/blkmv.o		\
	objects/boot.o		\
	objects/bread.o		\
	objects/brelease.o	\
	objects/clockedf.o	\
	objects/clrq.o		\
	objects/cs_self.o	\
	objects/dblock.o	\
	objects/dclose.o	\
	objects/defer.o		\
	objects/devmsg.o	\
	objects/dmago.o		\
	objects/dmalock.o	\
	objects/dmaoff.o	\
	objects/dmaon.o		\
	objects/dmareq.o	\
	objects/dopen.o		\
	objects/drvmap.o	\
	objects/dwrite.o	\
	objects/fclear.o	\
	objects/fdisk.o		\
	objects/ffbyte.o	\
	objects/ffword.o	\
	objects/ffmem.o		\
	objects/fkcopy.o	\
	objects/fpxcopy.o	\
	objects/free.o		\
	objects/fucopy.o	\
	objects/getcs.o		\
	objects/getq.o		\
	objects/getubd.o	\
	objects/getuwd.o	\
	objects/inb.o		\
	objects/int11.o		\
	objects/iogetc.o	\
	objects/iomapvp.o	\
	objects/ioputc.o	\
	objects/ioread.o	\
	objects/ioreq.o		\
	objects/iowrite.o	\
	objects/ipcaccess.o	\
	objects/kcall.o		\
	objects/kfcopy.o	\
	objects/kclear.o	\
	objects/kpcopy.o	\
	objects/kucopy.o	\
	objects/lock.o		\
	objects/lxdiv.o		\
	objects/lxmul.o		\
	objects/lxrem.o		\
	objects/lxsgn.o		\
	objects/memset.o	\
	objects/memtest.o	\
	objects/nmidisable.o	\
	objects/nmienable.o	\
	objects/nondsig.o	\
	objects/nonedev.o	\
	objects/nulldev.o	\
d106 64
a169 62
LIBOBJ2=objects/outb.o		\
	objects/panic.o		\
	objects/pclear.o	\
	objects/pkcopy.o	\
	objects/plrcopy.o	\
	objects/pollopen.o	\
	objects/pollwake.o	\
	objects/printf.o	\
	objects/prlcopy.o	\
	objects/ptov.o		\
	objects/pucopy.o	\
	objects/putchar.o	\
	objects/putq.o		\
	objects/putubd.o	\
	objects/putuwd.o	\
	objects/rucopy.o	\
	objects/s5_to_sg.o	\
	objects/s5_to_tc.o	\
	objects/salloc.o	\
	objects/sclear.o	\
	objects/sendsig.o	\
	objects/setivec.o	\
	objects/sfree.o		\
	objects/sfbyte.o	\
	objects/sfword.o	\
	objects/sfmem.o		\
	objects/sg_to_s5.o	\
	objects/sleep.o		\
	objects/slrcopy.o	\
	objects/sphi.o		\
	objects/spl.o		\
	objects/splo.o		\
	objects/super.o		\
	objects/swapio.o	\
	objects/tc_to_s5.o	\
	objects/timeout.o	\
	objects/ttclose.o	\
	objects/tthup.o		\
	objects/ttin.o		\
	objects/ttioctl.o	\
	objects/ttopen.o	\
	objects/ttout.o		\
	objects/ttpoll.o	\
	objects/ttread.o	\
	objects/ttsetgrp.o	\
	objects/ttsignal.o	\
	objects/ttstart.o	\
	objects/ttwrite.o	\
	objects/uexit.o		\
	objects/ufcopy.o	\
	objects/ukcopy.o	\
	objects/unlock.o	\
	objects/upcopy.o	\
	objects/urcopy.o	\
	objects/vrelse.o	\
	objects/vremap.o	\
	objects/vtop.o		\
	objects/vxdiv.o		\
	objects/vxmul.o		\
	objects/vxrem.o		\
	objects/waitq.o		\
	objects/wakeup.o	\
d171 8
a178 3
objects/ldlib.a:	$(GEN_DRV)	\
			$(LIBOBJ1)	\
			$(LIBOBJ2)
d182 1
a183 1
	cp $@@ /usr/sys/lib
d185 8
a192 16
#
# Create the script to create an interface stub to a kernel function.
#
$(GEN_DRV):
	echo ": 'Created by Makefile - do not edit.';\
	set -e; ENTRY=\`basename \$$1\`;(\
	echo \".globl \$${ENTRY}_\";\
	echo \"\$${ENTRY}_: mov ax,\\\\\$$K\$${ENTRY}_\";\
	echo .byte 0x9A;\
	echo .word xcalled;\
	echo .word 0x0060;\
	echo ret;)>/tmp/\$$\$$.s;\
	as -gxo /tmp/\$$\$$.o /tmp/\$$\$$.s;\
	mv /tmp/\$$\$$.o \$$1.o;\
	rm -f /tmp/\$$\$$.s" > $@@
	chmod +x $@@
d194 2
a195 2
objects/abs.o:
	$(GEN_DRV) $*
d197 2
a198 2
objects/alloc.o:
	$(GEN_DRV) $*
d200 2
a201 2
objects/bclaim.o:
	$(GEN_DRV) $*
d203 2
a204 2
objects/bdone.o:
	$(GEN_DRV) $*
d206 2
a207 2
objects/blkmv.o:	/lib/libc.a
	$(ARX_LIB)
d209 2
a210 2
objects/boot.o:
	$(GEN_DRV) $*
d212 2
a213 2
objects/bread.o:
	$(GEN_DRV) $*
d215 2
a216 2
objects/brelease.o:
	$(GEN_DRV) $*
d218 4
a221 1
objects/clockedf.o:	clockedf.c
d224 2
a225 2
objects/clrivec.o:
	$(GEN_DRV) $*
d227 2
a228 2
objects/clrq.o:
	$(GEN_DRV) $*
d230 2
a231 3
objects/cs_self.o:	cs_self.s
	as -gxo cs_self.o cs_self.s
	mv cs_self.o $@@
d233 2
a234 2
objects/dblock.o:
	$(GEN_DRV) $*
d236 2
a237 2
objects/dclose.o:
	$(GEN_DRV) $*
d239 2
a240 3
objects/defer.o:	defer.s
	as -gxo defer.o defer.s
	mv defer.o $@@
d242 2
a243 2
objects/devmsg.o:
	$(GEN_DRV) $*
d245 2
a246 2
objects/dmago.o:
	$(GEN_DRV) $*
d248 2
a249 3
objects/dmalock.o:	dmalock.c
	$(CC) $(CFLAGS) -c dmalock.c
	mv dmalock.o $@@
d251 2
a252 2
objects/dmaoff.o:
	$(GEN_DRV) $*
d254 2
a255 2
objects/dmaon.o:
	$(GEN_DRV) $*
d257 2
a258 2
objects/dmareq.o:
	$(GEN_DRV) $*
d260 2
a261 2
objects/dopen.o:
	$(GEN_DRV) $*
d263 2
a264 2
objects/drvmap.o:
	$(GEN_DRV) $*
d266 2
a267 2
objects/dwrite.o:
	$(GEN_DRV) $*
d269 2
a270 2
objects/fclear.o:
	$(GEN_DRV) $*
d272 2
a273 2
objects/fdisk.o:
	$(GEN_DRV) $*
d275 2
a276 3
objects/ffbyte.o:	ffbyte.s
	as -gxo ffbyte.o ffbyte.s
	mv ffbyte.o $@@
d278 2
a279 3
objects/ffword.o:	ffword.s
	as -gxo ffword.o ffword.s
	mv ffword.o $@@
d281 2
a282 3
objects/ffmem.o:	ffmem.s
	as -gxo ffmem.o ffmem.s
	mv ffmem.o $@@
d284 2
a285 2
objects/fkcopy.o:
	$(GEN_DRV) $*
d287 2
a288 2
objects/fpxcopy.o:
	$(GEN_DRV) $*
d290 2
a291 2
objects/free.o:
	$(GEN_DRV) $*
d293 2
a294 2
objects/fucopy.o:
	$(GEN_DRV) $*
d296 2
a297 3
objects/getcs.o:	getcs.s
	as -gxo getcs.o getcs.s
	mv getcs.o $@@
d299 2
a300 2
objects/getq.o:
	$(GEN_DRV) $*
d302 2
a303 2
objects/getubd.o:
	$(GEN_DRV) $*
d305 2
a306 2
objects/getuwd.o:
	$(GEN_DRV) $*
d308 2
a309 3
objects/inb.o:		inb.s
	as -gxo inb.o inb.s
	mv inb.o $@@
d311 2
a312 2
objects/int11.o:
	$(GEN_DRV) $*
d314 2
a315 2
objects/iogetc.o:
	$(GEN_DRV) $*
d317 2
a318 2
objects/iomapvp.o:
	$(GEN_DRV) $*
d320 2
a321 2
objects/ioputc.o:
	$(GEN_DRV) $*
d323 2
a324 2
objects/ioread.o:
	$(GEN_DRV) $*
d326 2
a327 2
objects/ioreq.o:
	$(GEN_DRV) $*
d329 2
a330 2
objects/iowrite.o:
	$(GEN_DRV) $*
d332 2
a333 2
objects/ipcaccess.o:
	$(GEN_DRV) $*
d335 2
a336 3
objects/kcall.o:	kcall.s
	as -gxo kcall.o kcall.s
	mv kcall.o $@@
d338 2
a339 2
objects/kclear.o:
	$(GEN_DRV) $*
d341 2
a342 2
objects/kfcopy.o:
	$(GEN_DRV) $*
d344 2
a345 2
objects/kpcopy.o:
	$(GEN_DRV) $*
d347 2
a348 2
objects/kucopy.o:
	$(GEN_DRV) $*
d350 2
a351 2
objects/lock.o:
	$(GEN_DRV) $*
d353 2
a354 2
objects/lxdiv.o:	/lib/libc.a
	$(ARX_LIB)
d356 2
a357 2
objects/lxmul.o:	/lib/libc.a
	$(ARX_LIB)
d359 2
a360 2
objects/lxrem.o:	/lib/libc.a
	$(ARX_LIB)
d362 2
a363 2
objects/lxsgn.o:	/lib/libc.a
	$(ARX_LIB)
d365 2
a366 2
objects/memset.o:	/lib/libc.a
	$(ARX_LIB)
d368 2
a369 2
objects/memtest.o:
	$(GEN_DRV) $*
d371 2
a372 2
objects/nmidisable.o:
	$(GEN_DRV) $*
d374 2
a375 2
objects/nmienable.o:
	$(GEN_DRV) $*
d377 2
a378 2
objects/nondsig.o:
	$(GEN_DRV) $*
d380 2
a381 3
objects/nonedev.o:	nonedev.c
	$(CC) $(CFLAGS) -c nonedev.c
	mv nonedev.o $@@
d383 2
a384 3
objects/nulldev.o:	nulldev.c
	$(CC) $(CFLAGS) -c nulldev.c
	mv nulldev.o $@@
d386 2
a387 3
objects/outb.o:		outb.s
	as -gxo outb.o outb.s
	mv outb.o $@@
d389 2
a390 2
objects/panic.o:
	$(GEN_DRV) $*
d392 2
a393 2
objects/pclear.o:
	$(GEN_DRV) $*
d395 2
a396 2
objects/plrcopy.o:
	$(GEN_DRV) $*
d398 2
a399 2
objects/pkcopy.o:
	$(GEN_DRV) $*
d401 2
a402 2
objects/pollopen.o:
	$(GEN_DRV) $*
d404 2
a405 2
objects/pollwake.o:
	$(GEN_DRV) $*
d407 2
a408 2
objects/printf.o:
	$(GEN_DRV) $*
d410 2
a411 2
objects/prlcopy.o:
	$(GEN_DRV) $*
d413 2
a414 2
objects/ptov.o:
	$(GEN_DRV) $*
d416 2
a417 2
objects/pucopy.o:
	$(GEN_DRV) $*
d419 2
a420 2
objects/putchar.o:
	$(GEN_DRV) $*
d422 2
a423 2
objects/putq.o:
	$(GEN_DRV) $*
d425 2
a426 2
objects/putubd.o:
	$(GEN_DRV) $*
d428 2
a429 2
objects/putuwd.o:
	$(GEN_DRV) $*
d431 2
a432 2
objects/rucopy.o:
	$(GEN_DRV) $*
d434 2
a435 2
objects/s5_to_sg.o:
	$(GEN_DRV) $*
d437 2
a438 2
objects/s5_to_tc.o:
	$(GEN_DRV) $*
d440 2
a441 2
objects/salloc.o:
	$(GEN_DRV) $*
d443 2
a444 2
objects/sclear.o:
	$(GEN_DRV) $*
d446 2
a447 2
objects/sendsig.o:
	$(GEN_DRV) $*
d449 2
a450 3
objects/setivec.o:	setivec.c
	$(CC) $(CFLAGS) -c setivec.c
	mv setivec.o $@@
d452 2
a453 2
objects/sfree.o:
	$(GEN_DRV) $*
d455 2
a456 3
objects/sfbyte.o:
	as -gxo sfbyte.o sfbyte.s
	mv sfbyte.o $@@
d458 2
a459 3
objects/sfword.o:
	as -gxo sfword.o sfword.s
	mv sfword.o $@@
d461 2
a462 3
objects/sfmem.o:
	as -gxo sfmem.o sfmem.s
	mv sfmem.o $@@
d464 2
a465 2
objects/sg_to_s5.o:
	$(GEN_DRV) $*
d467 2
a468 2
objects/sleep.o:
	$(GEN_DRV) $*
d470 2
a471 2
objects/slrcopy.o:
	$(GEN_DRV) $*
d473 2
a474 3
objects/sphi.o:
	as -gxo sphi.o sphi.s
	mv sphi.o $@@
d476 2
a477 3
objects/spl.o:
	as -gxo spl.o spl.s
	mv spl.o $@@
d479 2
a480 3
objects/splo.o:
	as -gxo splo.o splo.s
	mv splo.o $@@
d482 2
a483 2
objects/super.o:
	$(GEN_DRV) $*
d485 2
a486 2
objects/swapio.o:
	$(GEN_DRV) $*
d488 2
a489 2
objects/tc_to_s5.o:
	$(GEN_DRV) $*
d491 2
a492 3
objects/timeout.o:	timeout.c
	$(CC) $(CFLAGS) -c timeout.c
	mv timeout.o $@@
d494 2
a495 2
objects/ttclose.o:
	$(GEN_DRV) $*
d497 2
a498 2
objects/tthup.o:
	$(GEN_DRV) $*
d500 2
a501 2
objects/ttin.o:
	$(GEN_DRV) $*
d503 2
a504 2
objects/ttioctl.o:
	$(GEN_DRV) $*
d506 2
a507 2
objects/ttopen.o:
	$(GEN_DRV) $*
d509 2
a510 2
objects/ttout.o:
	$(GEN_DRV) $*
d512 2
a513 2
objects/ttpoll.o:
	$(GEN_DRV) $*
d515 2
a516 2
objects/ttread.o:
	$(GEN_DRV) $*
d518 2
a519 2
objects/ttsetgrp.o:
	$(GEN_DRV) $*
d521 2
a522 2
objects/ttsignal.o:
	$(GEN_DRV) $*
d524 2
a525 2
objects/ttstart.o:
	$(GEN_DRV) $*
d527 2
a528 2
objects/ttwrite.o:
	$(GEN_DRV) $*
d530 2
a531 2
objects/uexit.o:
	$(GEN_DRV) $*
d533 2
a534 2
objects/ufcopy.o:
	$(GEN_DRV) $*
d536 2
a537 2
objects/ukcopy.o:
	$(GEN_DRV) $*
d539 2
a540 2
objects/unlock.o:
	$(GEN_DRV) $*
d542 2
a543 2
objects/upcopy.o:
	$(GEN_DRV) $*
d545 2
a546 2
objects/urcopy.o:
	$(GEN_DRV) $*
d548 2
a549 2
objects/vrelse.o:
	$(GEN_DRV) $*
d551 2
a552 2
objects/vremap.o:
	$(GEN_DRV) $*
d554 2
a555 2
objects/vtop.o:
	$(GEN_DRV) $*
d557 2
a558 2
objects/vxdiv.o:	/lib/libc.a
	$(ARX_LIB)
d560 2
a561 2
objects/vxmul.o:	/lib/libc.a
	$(ARX_LIB)
d563 2
a564 2
objects/vxrem.o:	/lib/libc.a
	$(ARX_LIB)
d566 2
a567 2
objects/waitq.o:
	$(GEN_DRV) $*
d569 2
a570 2
objects/wakeup.o:
	$(GEN_DRV) $*
d572 38
@


1.1
log
@Shipped with 3.0.0 COHERENT.
@
text
@d35 1
a35 4
CC=/bin/cc
#IFLAGS=-I/usr/include/sys -I/usr/src/sys/sys -I/usr/src/sys/i8086/sys
IFLAGS=-I/tmp/usr/include/sys -I/tmp/usr/src/sys/sys -I/tmp/usr/src/sys/i8086/sys
CFLAGS=$(IFLAGS)
d37 23
d108 1
a108 1
	objects/clocked.o	\
d110 1
d146 1
a147 1
	objects/kfcopy.o	\
d167 1
d171 1
d233 1
d276 2
a277 2
objects/clocked.o:
	$(GEN_DRV) $*
d285 4
d462 3
d477 3
@
