# EDuke32 Makefile for Watcom Make SRC=source\ OBJ=obj\ EROOT=..\build\ EINC=$(EROOT)include\ EOBJ=eobj\ INC=$(SRC) o=obj ENGINELIB=engine.lib EDITORLIB=build.lib !ifdef __LOADDLL__ ! loaddll wcc386 wccd386 !endif DXROOT=c:\sdks\msc\dx7 ENGINEOPTS=-dSUPERBUILD -dPOLYMOST -dUSE_OPENGL CC=wcc386 CXX=wpp386 CFLAGS= -zq -5r -s -orb -fp5 -d2 -db & -i=watcomhax -i=$(INC) -i=$(EINC) -i=$(SRC)jmact -i=$(SRC)jaudiolib -i=$(DXROOT)\include & -dRENDERTYPEWIN=1 -dNOCOPYPROTECT $(ENGINEOPTS) -i=..\jfaud\inc LIBS=wsock32.lib dxguid.lib ..\jfaud\jfaud.lib winmm.lib #opengl32.lib WASMFLAGS=-d1 EXESUFFIX=.exe JMACTOBJ=$(OBJ)util_lib.$o & $(OBJ)file_lib.$o & $(OBJ)control.$o & $(OBJ)keyboard.$o & $(OBJ)mouse.$o & $(OBJ)mathutil.$o & $(OBJ)scriplib.$o JAUDIOLIB_FX_STUB=$(OBJ)jaudiolib_fxstub.$o JAUDIOLIB_MUSIC_STUB=$(OBJ)jaudiolib_musicstub.$o JAUDIOLIB_JFAUD=$(OBJ)jfaud_sounds.$o JAUDIOLIB_FX=$(OBJ)mv_mix.$o & $(OBJ)mv_mix16.$o & $(OBJ)mvreverb.$o & $(OBJ)pitch.$o & $(OBJ)multivoc.$o & $(OBJ)ll_man.$o & $(OBJ)fx_man.$o & $(OBJ)dsoundout.$o JAUDIOLIB_MUSIC=$(OBJ)midi.$o & $(OBJ)mpu401.$o & $(OBJ)music.$o #JAUDIOLIBOBJ=$(JAUDIOLIB_MUSIC) $(JAUDIOLIB_FX) $(OBJ)sounds.$o #JAUDIOLIBOBJ=$(JAUDIOLIB_MUSIC_STUB) $(JAUDIOLIB_FX_STUB) $(OBJ)sounds.$o JAUDIOLIBOBJ=$(JAUDIOLIB_JFAUD) GAMEOBJS=$(OBJ)game.$o & $(OBJ)actors.$o & $(OBJ)anim.$o & $(OBJ)gamedef.$o & $(OBJ)gameexec.$o & $(OBJ)global.$o & $(OBJ)menus.$o & $(OBJ)namesdyn.$o & $(OBJ)player.$o & $(OBJ)premap.$o & $(OBJ)savegame.$o & $(OBJ)sector.$o & $(OBJ)rts.$o & $(OBJ)config.$o & $(OBJ)animlib.$o & $(OBJ)testcd.$o & $(OBJ)osdfuncs.$o & $(OBJ)osdcmds.$o & $(OBJ)winbits.$o & $(OBJ)startwin.game.$o & $(JMACTOBJ) & $(JAUDIOLIBOBJ) EDITOROBJS=$(OBJ)astub.$o # RULES .EXTENSIONS: .wasm .res .rc .wasm: $(SRC) .wasm: $(SRC)jaudiolib/ .c: $(SRC) .cpp: $(SRC) .c: $(SRC)jmact/ .c: $(SRC)jaudiolib/ .c: $(SRC)util/ .rc: $(SRC)misc/ .wasm.$o: wasm $(WASMFLAGS) -fo=$(OBJ).$o $[@ .c.$o: $(CC) $(CFLAGS) -fo=$(OBJ).$o $[@ .cpp.$o: $(CXX) $(CFLAGS) -fo=$(OBJ).$o $[@ .rc.res: wrc -i=$(EINC) -i=$(SRC) -fo=$^*.res -r $[@ # TARGETS all: eduke32$(EXESUFFIX) build$(EXESUFFIX) .SYMBOLIC %null eduke32$(EXESUFFIX): $(GAMEOBJS) $(OBJ)gameres.res $(EOBJ)$(ENGINELIB) wlink NAME $@ & SYSTEM WIN95 & DEBUG ALL & FILE { $(GAMEOBJS) $(ENGINEOBJS) } & RESOURCE $(OBJ)gameres.res & LIBPATH $(DXROOT)\lib & LIBPATH $(EOBJ) & LIBRARY { $(ENGINELIB) $(LIBS) } mapster32$(EXESUFFIX): $(EDITOROBJS) $(OBJ)buildres.res $(EOBJ)$(ENGINELIB) $(EOBJ)$(EDITORLIB) wlink NAME $@ & SYSTEM WIN95 & DEBUG ALL & FILE { $(EDITOROBJS) } & RESOURCE $(OBJ)buildres.res & LIBPATH $(DXROOT)\lib & LIBPATH $(EOBJ) & LIBRARY { $(LIBS) $(ENGINELIB) $(EDITORLIB) } !include Makefile.deps cwd=$+ $(%cwd) $- enginelib editorlib: .SYMBOLIC -mkdir $(EOBJ) %write $(EOBJ)overrides.mak OBJ=$(cwd)\$(EOBJ) %write $(EOBJ)overrides.mak CFLAGS=$(ENGINEOPTS) cd $(EROOT) wmake -f Makefile.watcom OVERRIDES=$(cwd)\$(EOBJ)overrides.mak $@ cd $(cwd) $(EOBJ)$(EDITORLIB): editorlib .SYMBOLIC $(EOBJ)$(ENGINELIB): enginelib .SYMBOLIC # PHONIES clean: .SYMBOLIC -del $(OBJ)* eduke32$(EXESUFFIX) mapster32$(EXESUFFIX) veryclean: clean .SYMBOLIC -del $(EOBJ)*