# 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 = xshell.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 = addarg.obj cmd.obj lexan.obj shell.obj x_bpool.obj x_cat.obj \
x_chdsk.obj x_clear.obj x_close.obj x_color.obj x_conf.obj x_cp.obj \
x_date.obj x_devs.obj x_di.obj x_dir.obj x_dos.obj x_dskst.obj x_echo.obj \
x_exit.obj x_format.obj x_goto.obj x_help.obj x_int.obj x_kill.obj \
x_memsta.obj x_more.obj x_mount.obj x_pipsta.obj x_ps.obj x_rm.obj \
x_sleep.obj x_status.obj x_ttyst.obj x_unmou.obj x_wc.obj 

update:
	@make -DUPDATE all

all: $(OBJS)

objs: all

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

clean:
	del *.obj

make:
	makemake

xref:
	objxref @xmodules


addarg.obj: $(H)\conf.h $(H)\dos.h $(H)\xtypes.h $(H)\kernel.h $(H)\xtypes.h $(H)\proc.h addarg.c
cmd.obj: $(H)\cmd.h $(H)\conf.h $(H)\kernel.h $(H)\xtypes.h $(H)\shell.h cmd.c
lexan.obj: $(H)\conf.h $(H)\kernel.h $(H)\xtypes.h $(H)\shell.h lexan.c
shell.obj: $(H)\cmd.h $(H)\conf.h $(H)\io.h $(H)\kernel.h $(H)\xtypes.h $(H)\mem.h $(H)\xtypes.h $(H)\name.h $(H)\proc.h $(H)\shell.h $(H)\tty.h $(H)\window.h shell.c
x_bpool.obj: $(H)\bufpool.h $(H)\mark.h $(H)\conf.h $(H)\kernel.h $(H)\xtypes.h $(H)\mark.h x_bpool.c
x_cat.obj: $(H)\conf.h $(H)\io.h $(H)\kernel.h $(H)\xtypes.h $(H)\mem.h $(H)\xtypes.h x_cat.c
x_chdsk.obj: $(H)\conf.h $(H)\disk.h $(H)\dir.h $(H)\iblock.h $(H)\file.h $(H)\kernel.h $(H)\xtypes.h $(H)\mem.h $(H)\xtypes.h $(H)\name.h x_chdsk.c
x_clear.obj: $(H)\conf.h $(H)\kernel.h $(H)\xtypes.h $(H)\mem.h $(H)\xtypes.h $(H)\name.h $(H)\tty.h $(H)\window.h x_clear.c
x_close.obj: $(H)\conf.h $(H)\ctype.h $(H)\io.h $(H)\kernel.h $(H)\xtypes.h x_close.c
x_color.obj: $(H)\conf.h $(H)\kernel.h $(H)\xtypes.h $(H)\tty.h $(H)\window.h x_color.c
x_conf.obj: $(H)\conf.h $(H)\kernel.h $(H)\xtypes.h x_conf.c
x_cp.obj: $(H)\conf.h $(H)\io.h $(H)\kernel.h $(H)\xtypes.h $(H)\mem.h $(H)\xtypes.h x_cp.c
x_date.obj: $(H)\conf.h $(H)\kernel.h $(H)\xtypes.h $(H)\mem.h $(H)\xtypes.h $(H)\sleep.h x_date.c
x_devs.obj: $(H)\conf.h $(H)\dos.h $(H)\xtypes.h $(H)\io.h $(H)\kernel.h $(H)\xtypes.h x_devs.c
x_di.obj: $(H)\conf.h $(H)\io.h $(H)\kernel.h $(H)\xtypes.h x_di.c
x_dir.obj: $(H)\conf.h $(H)\kernel.h $(H)\xtypes.h $(H)\mem.h $(H)\xtypes.h $(H)\sleep.h x_dir.c
x_dos.obj: $(H)\conf.h $(H)\kernel.h $(H)\xtypes.h $(H)\shell.h x_dos.c
x_dskst.obj: $(H)\conf.h $(H)\disk.h $(H)\dir.h $(H)\iblock.h $(H)\file.h $(H)\kernel.h $(H)\xtypes.h x_dskst.c
x_echo.obj: $(H)\conf.h $(H)\kernel.h $(H)\xtypes.h x_echo.c
x_exit.obj: $(H)\conf.h $(H)\kernel.h $(H)\xtypes.h $(H)\shell.h x_exit.c
x_format.obj: $(H)\conf.h $(H)\disk.h $(H)\dir.h $(H)\iblock.h $(H)\file.h $(H)\kernel.h $(H)\xtypes.h $(H)\mem.h $(H)\xtypes.h $(H)\name.h x_format.c
x_goto.obj: $(H)\conf.h $(H)\kernel.h $(H)\xtypes.h $(H)\tty.h $(H)\window.h x_goto.c
x_help.obj: $(H)\cmd.h $(H)\conf.h $(H)\kernel.h $(H)\xtypes.h $(H)\shell.h x_help.c
x_int.obj: $(H)\conf.h $(H)\kernel.h $(H)\xtypes.h $(H)\proc.h x_int.c
x_kill.obj: $(H)\conf.h $(H)\kernel.h $(H)\xtypes.h $(H)\proc.h $(H)\shell.h x_kill.c
x_memsta.obj: $(H)\conf.h $(H)\dos.h $(H)\xtypes.h $(H)\kernel.h $(H)\xtypes.h $(H)\mem.h $(H)\xtypes.h x_memsta.c
x_more.obj: $(H)\conf.h $(H)\io.h $(H)\kernel.h $(H)\xtypes.h $(H)\tty.h $(H)\window.h x_more.c
x_mount.obj: $(H)\conf.h $(H)\io.h $(H)\kernel.h $(H)\xtypes.h $(H)\name.h x_mount.c
x_pipsta.obj: $(H)\conf.h $(H)\kernel.h $(H)\xtypes.h $(H)\pipe.h x_pipsta.c
x_ps.obj: $(H)\butler.h $(H)\conf.h $(H)\kernel.h $(H)\xtypes.h x_ps.c
x_rm.obj: $(H)\conf.h $(H)\disk.h $(H)\dir.h $(H)\iblock.h $(H)\file.h $(H)\kernel.h $(H)\xtypes.h x_rm.c
x_sleep.obj: $(H)\conf.h $(H)\kernel.h $(H)\xtypes.h x_sleep.c
x_status.obj: $(H)\conf.h $(H)\kernel.h $(H)\xtypes.h $(H)\proc.h x_status.c
x_ttyst.obj: $(H)\conf.h $(H)\kernel.h $(H)\xtypes.h $(H)\sem.h $(H)\tty.h $(H)\window.h x_ttyst.c
x_unmou.obj: $(H)\conf.h $(H)\io.h $(H)\kernel.h $(H)\xtypes.h $(H)\name.h x_unmou.c
x_wc.obj: $(H)\conf.h $(H)\ctype.h $(H)\kernel.h $(H)\xtypes.h $(H)\mffile.h x_wc.c
