include $(DEVDIR)/build/mif/master.mk

vpath %.c c ui unix ../posix/misc ../ui/c ../ui/unix/c ../ncurses/c ../watcom/c

SOURCE := 
SOURCE += c

INCDIRS += h
INCDIRS += ../posix/h
INCDIRS += ../posix/misc
INCDIRS += ../rcsdll
INCDIRS += ../ui/h
INCDIRS += ../ui/unix/h
INCDIRS += ../aui/h
INCDIRS += ../ncurses/h
INCDIRS += $(H_DIR)

OBJUNIXTIMEROOT = int.o

OBJUNIXSIZEROOT =	\
	unixcmds.o	\
	biosunix.o

OBJUNIXSIZE =		\
	unixsys.o	\
	unixdir.o	\
	unixmous.o	\
	unixmain.o	\
	time.o		\
	spawn.o

EXTRAOBJS = $(OBJUNIXSIZE)
EXTROBJSROOT = $(OBJUNIXTIMEROOT) $(OBJUNIXSIZEROOT)

OBJTIMEROOT = rxwrap.o rxsupp.o tab_hell.o regsub.o findrx.o \
        mem.o fcbxmint.o addstr.o llrtns.o \
        parse.o

OBJTIME = fcbems.o fcbxms.o fcbdisk.o fcbxmem.o \
        fcbblock.o fcb.o fcbmem.o \
        fcbsplit.o fcbdup.o fcbmerge.o \
        linenew.o dc.o \
        lineptr.o linecfb.o linedisp.o linemisc.o \
        linedel.o lineins.o lineyank.o \
        grep.o editmain.o \
        filesave.o filenew.o \
        undo.o undostks.o undo_do.o \
        clglob.o clsubs.o shove.o \
        match.o cut.o opmove.o \
        srcgen.o fmatch.o \
        status.o expr.o op.o \
	lang.o sstyle.o sstyle_f.o sstyle_c.o \
	sstyle_h.o sstyle_g.o sstyle_m.o rcs.o

OBJINIT = 		\
	init.o		\
	getopt.o	\
	version.o

OBJSIZEROOT = 		\
	name.o 		\
	key.o 		\
        globals.o 	\
	pdata.o 	\
        bind.o 		\
	exdata.o	\
	srcdata.o

OBJSIZE = \
        xmem.o fcbswap.o clset.o hist.o samefile.o \
        dirdisp.o expandfn.o getdir.o \
        mapkey.o editmv.o \
        linenum.o linework.o \
        undoclne.o \
        fcbdmp.o \
        file.o filemove.o filelast.o \
        fini.o autosave.o \
        srchook.o srcgoto.o srcif.o \
        srcfile.o srccs.o srcexpr.o srcvar.o srcinp.o \
        srcassgn.o srcexpnd.o srcnextw.o \
        filestk.o dotmode.o \
        source.o mark.o \
        move.o change.o delete.o \
        linefind.o \
        dat.o parsecl.o \
        findcmd.o savebuf.o error.o cmdline.o editdc.o \
        word.o hide.o \
        editins.o getautoi.o \
        replace.o dir.o select.o \
        io.o clread.o cledit.o misc.o \
        tags.o alias.o bnddata.o abandon.o \
        filter.o ex.o exappend.o \
        wingen.o printf.o getspcmd.o \
        selrgn.o cstatus.o help.o \
        readstr.o tab_e_c.o gencfg.o fts.o

UIOBJS = 		\
	adjwin.o	\
	ctkeyb.o	\
	ctkeyb2.o	\
	filesel.o	\
	hdlmouse.o	\
	kbwait.o	\
	menu.o		\
	mouse.o		\
	mouseev.o	\
	tdisp.o		\
	tixparse.o	\
	tixsupp.o	\
	tmouse.o	\
	trie.o		\
	ui8086.o	\
	uialloc.o	\
	uiarea.o	\
	uiattr.o	\
	uiback.o	\
	uiballoc.o	\
	uibarf.o	\
	uibcopy.o	\
	uibfill.o	\
	uibios.o	\
	uibmous.o	\
	uibstr.o	\
	uicheck.o	\
	uichlen.o	\
	uicurs.o	\
	uidata.o	\
	uidirty.o	\
	uiev.o		\
	uiextrn.o	\
	uifar.o		\
	uifmem.o	\
	uiforce.o	\
	uigadget.o	\
	uigchar.o	\
	uiget.o		\
	uiglob.o	\
	uihook.o	\
	uiinit.o	\
	uikeyb.o	\
	uilist.o	\
	uimem.o		\
	uimous.o	\
	uimousev.o	\
	uipget.o	\
	uiprot.o	\
	uirefer.o	\
	uirfrsh.o	\
	uisnow.o	\
	uivirt.o	\
	uivscrn.o	\
	uivstr.o	\
	uivutil.o	\
	uiwin.o		\
	winaux.o	\
	winbrdr.o	\
	windisp.o	\
	wininit.o	\
	winnew.o	\
	winover.o	\
	winscrl.o	\
	winshow.o	\
	winsize.o	\
	winswap.o	\
	winthumb.o	\
	wintica.o

NCURSOBJS =		\
	access.o	\
	doalloc.o	\
	comp_err.o	\
	fallback.o	\
	free_tty.o	\
	getenv_n.o	\
	home_ter.o	\
	lib_baud.o	\
	lib_beep.o	\
	lib_cur_.o	\
	lib_napm.o	\
	lib_setu.o	\
	lib_tpar.o	\
	lib_tput.o	\
	lib_ttyf.o	\
	read_ent.o

WATCOMOBJS =		\
	autoenv.o

OBJS = $(OBJSIZE) $(OBJTIME) $(EXTRAOBJS) $(XTRAOBJS) $(UIOBJS)
OBJSROOT = $(OBJSIZEROOT) $(OBJUNIXSIZEROOT) $(OBJTIMEROOT) $(OBJUNIXTIMEROOT) $(EXTRAOBJSROOT) $(UIOBJSROOT)

OBJECTS = $(OBJS) $(OBJSROOT) $(NCURSOBJS) $(WATCOMOBJS) $(OBJINIT)

OBJECTS := $(foreach i,$(OBJECTS),$(OBJDIR)/$i)

LIBDIRS = $(WCLIB_DIR)/$(OBJDIR)

LIBS = -lwatcom

CFLAGS += -D__ISVI__

$(OBJDIR)/wvi	: $(OBJDIR) $(OBJECTS)
	echo lpth $(LIBDIRS)	
	$(CC) -o $@ $(CFLAGS) -L$(LIBDIRS) $(OBJECTS) $(LIBS) 

$(OBJDIR) :
	mkdir $(OBJDIR)

.PHONY	: clean
clean	:
	rm -rf $(OBJDIR)
