
MKDIR = $(TMPDIR)XDME
OBJDIR = $(MKDIR)/
LIBDIR = $(OBJDIR)
PROTOS = $(OBJDIR)prog-protos.h
PRECOMP = $(OBJDIR)all.m
HEADER = all.h

XCOMM Flags for cc
DEBUGFLAGS = -s
FLAGS = -proto -r -mi -ms -mRR $(DEBUGFLAGS)
CCFLAGS = -2.0 -I$(OBJDIR) -Iincludes -Ilib/include -H$(PRECOMP)=$(HEADER) -//
STDLIBS = -lrexxsys -lreqtools -lobj
DEBUGLIBS = -ldebug
XCOMM DEBUGLIBS = -ldebug
LIBS = $(STDLIBS) $(DEBUGLIBS)
LNFLAGS = -2.0 -L lib

XCOMM Source-files
SOURCES1 = alias.c amiga.c block.c clipboard.c cmd.c command.c cursor.c\
    drexx.c edit.c filereq.c flags.c globals.c hrexx.c io.c keyaddes.c
SOURCES2 = keycodes.c keycom.c keycontrol.c keytables.c macros.c main.c\
    math.c mem.c menu_dme.c menucom.c menucontrol.c menustrips.c mikro.c
SOURCES3 = prefs.c redraw.c refs.c search.c simplex.c smallspc.c subs.c\
    text.c vars.c varsbases.c varstack.c win.c
SOURCESC = $(SOURCES1) $(SOURCES2) $(SOURCES3)
SOURCESA = wildcmp.a
SOURCES = $(SOURCESC) $(SOURCESA)
HEADERS = includes/defs.h includes/all.h includes/global.h
DOCFILES = docs/xdme.doc
SCRIPTFILES = S/.edrc

XCOMM Other files to delete at cleanup
OTHER = #?.bak
TARGETS = $(MKDIR) precomp

$(MKDIR) : $(MKDIR)
    makedir $(MKDIR)

MakeComplexProgram(XDME)
MakeExeFromObjs(XDME,CreateObjNamesFromSource(SOURCES))
MakeObjFromSource(SOURCES)
MakePrototypes(protos,$(PROTOS),$(SOURCES))
MakePreComp(precomp,$(PRECOMP),$(HEADERS))

install :
    -delete C:Tools/XDME.old
    -rename C:Tools/XDME C:Tools/XDME.old
    copy XDME C:Tools
    resident DME C:Tools/XDME replace

XCOMM Global deps
CreateObjNamesFromSource(SOURCESC) :: $(HEADERS)

$(OBJDIR)keyhashes.o :: includes/defmap.h

XDME :: lib/objsr.lib

clean :
    -delete $(OBJDIR)#? all $(DELETEFLAGS)

archive :
    cd /
    -delete XDME.lha.old
    -rename XDME.lha XDME.lha.old
    lha -v9 -r -x -a -Qh64 a XDME.lha @XDME/.archive XDME.info
    cd
