X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=src%2Fco65%2Fmake%2Fwatcom.mak;h=ffc4e83b2fdafede8c2a64cf502887564a44a327;hb=3d1ee0f974987bbe27da2710ed40cca6af01403a;hp=42f99183aec660434976e4d1f1ce8e490d948a2d;hpb=bbb70a2d474ade97e81374cf9efe2db9cb43ce32;p=cc65 diff --git a/src/co65/make/watcom.mak b/src/co65/make/watcom.mak index 42f99183a..ffc4e83b2 100644 --- a/src/co65/make/watcom.mak +++ b/src/co65/make/watcom.mak @@ -5,78 +5,99 @@ # ------------------------------------------------------------------------------ # Generic stuff -AR = WLIB -LD = WLINK +# Environment variables for the watcom compiler +export WATCOM = c:\\watcom +export INCLUDE = $(WATCOM)\\h + +# We will use the windows compiler under linux (define as empty for windows) +export WINEDEBUG=fixme-all +WINE = wine + +# Programs +AR = $(WINE) wlib +CC = $(WINE) wcc386 +LD = $(WINE) wlink +WSTRIP = $(WINE) wstrip -q + LNKCFG = ld.tmp +# Program arguments +CFLAGS = -d1 -obeilr -zp4 -5 -zq -w2 -i=..\\common + +# Target files +EXE = co65.exe + +# Create NT programs by default +ifndef TARGET +TARGET = NT +endif + # --------------------- OS2 --------------------- ifeq ($(TARGET),OS2) SYSTEM = os2v2 -CC = WCC386 -CFLAGS = -bt=$(TARGET) -d1 -onatx -zp4 -5 -zq -w2 +CFLAGS += -bt=$(TARGET) endif # -------------------- DOS4G -------------------- ifeq ($(TARGET),DOS32) SYSTEM = dos4g -CC = WCC386 -CFLAGS = -bt=$(TARGET) -d1 -onatx -zp4 -5 -zq -w2 +CFLAGS += -bt=$(TARGET) endif # --------------------- NT ---------------------- ifeq ($(TARGET),NT) SYSTEM = nt -CC = WCC386 -CFLAGS = -bt=$(TARGET) -d1 -onatx -zp4 -5 -zq -w2 +CFLAGS += -bt=$(TARGET) endif -# Add the include dir -CFLAGS += -i=..\common - # ------------------------------------------------------------------------------ # Implicit rules %.obj: %.c - $(CC) $(CFLAGS) $^ + $(CC) $(CFLAGS) -fo=$@ $^ # ------------------------------------------------------------------------------ # All library OBJ files -OBJS = error.obj \ +OBJS = convert.obj \ + error.obj \ fileio.obj \ global.obj \ main.obj \ + model.obj \ o65.obj -LIBS = ..\common\common.lib +LIBS = ../common/common.lib # ------------------------------------------------------------------------------ # Main targets -all: co65 - -co65: co65.exe +all: $(EXE) # ------------------------------------------------------------------------------ # Other targets -co65.exe: $(OBJS) $(LIBS) - @echo DEBUG ALL > $(LNKCFG) - @echo OPTION QUIET >> $(LNKCFG) - @echo NAME $@ >> $(LNKCFG) - @for %%i in ($(OBJS)) do echo FILE %%i >> $(LNKCFG) - @for %%i in ($(LIBS)) do echo LIBRARY %%i >> $(LNKCFG) - $(LD) system $(SYSTEM) @$(LNKCFG) +$(EXE): $(OBJS) $(LIBS) + @echo "DEBUG ALL" > $(LNKCFG) + @echo "OPTION QUIET" >> $(LNKCFG) + @echo "OPTION MAP" >> $(LNKCFG) + @echo "OPTION STACK=65536" >> $(LNKCFG) + @echo "NAME $@" >> $(LNKCFG) + @for i in $(OBJS); do echo "FILE $${i}"; done >> $(LNKCFG) + @for i in $(LIBS); do echo "LIBRARY $${i}"; done >> $(LNKCFG) + @$(LD) system $(SYSTEM) @$(LNKCFG) @rm $(LNKCFG) clean: - @if exist *.obj del *.obj - @if exist co65.exe del co65.exe + @rm -f *~ core + +zap: clean + @rm -f $(OBJS) $(EXE) $(EXE:.exe=.map) strip: - @-wstrip co65.exe + @-$(WSTRIP) $(EXE)