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

vpath %.c c ../watcom/c

all: $(OBJDIR) $(OBJDIR)/wmake

CFILES=macros.c main.c massert.c mautodep.c mautoomf.c mautoorl.c mautores.c \
 mcache.c memory.c mexec.c mglob.c mhash.c misc.c mlex.c mlexmac.c mlexprs.c \
 mparse.c mpathgrp.c mpreproc.c mrcmsg.c msg.c mstream.c msuffix.c msysdep.c \
 mtarget.c mupdate.c mvecstr.c autodept.c

OBJS=$(CFILES:.c=.o)
OBJS:=$(foreach i,$(OBJS),$(OBJDIR)/$i)

$(OBJDIR)/usage.rc : h/usage.sp
	wsplice -kIS_RC -kENGLISH -f '%+(MSG_USE_E_BASE+%#-1), "%s"' $< $@

$(OBJDIR)/usagej.rc : h/usage.sp
	wsplice -kIS_RC -kJAPANESE -f '%+(MSG_USE_J_BASE+%#-1), "%s"' $< $@

$(OBJDIR)/usageend.gh: $(OBJDIR)/usage.rc $(OBJDIR)/usagej.rc
	wsplice $< -o "%n%n%n%n" $(OBJDIR)/usage.rcp
	wsplice -f "%+" $(OBJDIR)/usage.rcp -o "#define USAGE_LAST (USAGE_BASE+%#)%n" $@
	rm -f $(OBJDIR)/usage.rcp

$(OBJDIR)/cretype : cretype.c
	$(CC) -o $@ $<

$(OBJDIR)/isarray.gh : $(OBJDIR)/cretype
	$< > $@

$(OBJDIR)/wmake.res : h/wmake.rc h/mrcmsg.h $(OBJDIR)/usage.rc $(OBJDIR)/usagej.rc
	wrc -i$(OBJDIR) -q -bt=windows -ih -i../watcom/h -zk0 -q -r -fo=$@ $<

INCDIRS = $(OBJDIR) h $(WATCOMH) $(RC_DIR)/h $(LIB_MISC_DIR)/h $(ORL_DIR)/h
LIBDIRS = $(ORL_DIR)/$(OBJDIR) $(WRES_DIR)/$(OBJDIR) $(WCLIB_DIR)/$(OBJDIR)
LIBS += -lorl -lwres -lwatcom

$(OBJDIR)/wmake: $(OBJDIR)/usageend.gh $(OBJDIR)/isarray.gh $(OBJS) $(OBJDIR)/wmake.res
	$(CC) -g -o wmake $(OBJS) $(LIBS) -o $@
	wstrip -q -r -a $@ . $(OBJDIR)/wmake.res

$(OBJDIR):
	mkdir $(OBJDIR)

clean:
	rm -f *.o *.gh
