# MAKEFILE (in each subdir of SRC\)
# built by concatenating MAKE[123].ADD (in LIB\)
# LIBFILE from file LIBFILE (in each subdir)
# OBJS and dependency information collected by makemake program

# the latter also makes xmodules and xbldlib

# this makefile adds OBJS to relevant LIB if $(UPDATE) defined

# The env var L3XCOPTS can be set to additional C compiler flags, defines ...

!include ..\..\lib\config.mk


LIBFILE = xio.lib

.c.obj:
	$(CC) -c $(CFLAGS) -I$(H) $<
!ifdef UPDATE
	$(LIB) $(L)\$(LIBFILE) $(LIBFLAGS) -+$*
!endif

.asm.obj:
	$(ASM) $*;
!ifdef UPDATE
	$(LIB) $(L)\$(LIBFILE) $(LIBFLAGS) -+$*
!endif

.c.asm:
	$(CC) -S $(CFLAGS) -I$(H) $<
	rename $*.asm $*.log

OBJS = getpdev.obj mount.obj namcntl.obj naminit.obj nammap.obj nammapd.obj \
namopen.obj namrepl.obj newsiodv.obj setpdev.obj sioclose.obj siocntl.obj \
siogetc.obj sioinit.obj sioopen.obj sioputc.obj sioread.obj sioseek.obj \
siowrite.obj unmount.obj xioopen.obj 

update:
	@make -DUPDATE all

all: $(OBJS)

objs: all

lib: all
 	$(LIB) $(L)\$(LIBFILE) $(LIBFLAGS) @xbldlib

clean:
	del *.obj

make:
	makemake

xref:
	objxref @xmodules


getpdev.obj: $(H)\conf.h $(H)\io.h $(H)\kernel.h $(H)\xtypes.h $(H)\proc.h $(H)\sio.h getpdev.c
mount.obj: $(H)\conf.h $(H)\kernel.h $(H)\xtypes.h $(H)\name.h mount.c
namcntl.obj: $(H)\conf.h $(H)\kernel.h $(H)\xtypes.h $(H)\mem.h $(H)\xtypes.h $(H)\name.h namcntl.c
naminit.obj: $(H)\conf.h $(H)\kernel.h $(H)\xtypes.h $(H)\name.h naminit.c
nammap.obj: $(H)\conf.h $(H)\kernel.h $(H)\xtypes.h $(H)\mem.h $(H)\xtypes.h $(H)\name.h nammap.c
nammapd.obj: $(H)\conf.h $(H)\kernel.h $(H)\xtypes.h $(H)\mem.h $(H)\xtypes.h $(H)\name.h nammapd.c
namopen.obj: $(H)\conf.h $(H)\kernel.h $(H)\xtypes.h $(H)\mem.h $(H)\xtypes.h $(H)\name.h namopen.c
namrepl.obj: $(H)\conf.h $(H)\kernel.h $(H)\xtypes.h $(H)\name.h namrepl.c
newsiodv.obj: $(H)\conf.h $(H)\disk.h $(H)\dir.h $(H)\iblock.h $(H)\file.h $(H)\io.h $(H)\kernel.h $(H)\xtypes.h $(H)\name.h $(H)\proc.h $(H)\sio.h newsiodv.c
setpdev.obj: $(H)\conf.h $(H)\io.h $(H)\kernel.h $(H)\xtypes.h $(H)\proc.h $(H)\sio.h setpdev.c
sioclose.obj: $(H)\conf.h $(H)\io.h $(H)\kernel.h $(H)\xtypes.h $(H)\proc.h sioclose.c
siocntl.obj: $(H)\conf.h $(H)\kernel.h $(H)\xtypes.h $(H)\proc.h siocntl.c
siogetc.obj: $(H)\conf.h $(H)\kernel.h $(H)\xtypes.h $(H)\proc.h siogetc.c
sioinit.obj: $(H)\conf.h $(H)\kernel.h $(H)\xtypes.h $(H)\sio.h sioinit.c
sioopen.obj: $(H)\conf.h $(H)\disk.h $(H)\dir.h $(H)\iblock.h $(H)\file.h $(H)\io.h $(H)\kernel.h $(H)\xtypes.h $(H)\name.h $(H)\proc.h sioopen.c
sioputc.obj: $(H)\conf.h $(H)\kernel.h $(H)\xtypes.h $(H)\proc.h sioputc.c
sioread.obj: $(H)\conf.h $(H)\kernel.h $(H)\xtypes.h $(H)\proc.h sioread.c
sioseek.obj: $(H)\conf.h $(H)\kernel.h $(H)\xtypes.h $(H)\proc.h sioseek.c
siowrite.obj: $(H)\conf.h $(H)\kernel.h $(H)\xtypes.h $(H)\proc.h siowrite.c
unmount.obj: $(H)\conf.h $(H)\kernel.h $(H)\xtypes.h $(H)\name.h unmount.c
xioopen.obj: $(H)\conf.h $(H)\disk.h $(H)\dir.h $(H)\iblock.h $(H)\file.h $(H)\io.h $(H)\kernel.h $(H)\xtypes.h $(H)\name.h $(H)\sio.h xioopen.c
