# 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 DEBUG # debugging options flags_cl=/G6 /Ot /Z7 flags_link=/DEBUG !else # release options flags_cl=/G6Fy /Ox #/Ob1gity flags_link=/RELEASE !endif DXROOT=c:\sdks\msc\dx7 ENGINEOPTS=/DSUPERBUILD /DPOLYMOST /DUSE_OPENGL CC=cl AS=ml LINK=link /opt:nowin98 /nologo /opt:ref CFLAGS= /MD /J /nologo $(flags_cl) \ /I$(INC) /I$(EINC) /I$(SRC)jmact /I$(SRC)jaudiolib /I..\jfaud\inc \ /DNOCOPYPROTECT $(ENGINEOPTS) \ /I$(DXROOT)\include /DRENDERTYPEWIN=1 LIBS=user32.lib gdi32.lib shell32.lib dxguid.lib winmm.lib wsock32.lib comctl32.lib \ ..\jfaud\jfaud.lib /NODEFAULTLIB:libFLAC.lib \ #opengl32.lib ASFLAGS=/nologo /coff ASFLAGS=/nologo /coff 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 #AUDIOLIB_FX=$(OBJ)jaudiolib_fxstub.$o #AUDIOLIB_MUSIC=$(OBJ)jaudiolib_musicstub.$o #AUDIOLIB_FX=$(OBJ)jaudiolib_fx_fmod.$o AUDIOLIB_JFAUD=$(OBJ)jfaud_sounds.$o AUDIOLIB_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 AUDIOLIB_MUSIC=$(OBJ)midi.$o \ $(OBJ)mpu401.$o \ $(OBJ)music.$o #AUDIOLIBOBJ=$(AUDIOLIB_MUSIC) $(AUDIOLIB_FX) $(OBJ)sounds.$o AUDIOLIBOBJ=$(AUDIOLIB_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)grpscan.$o \ $(OBJ)winbits.$o \ $(OBJ)gameres.res \ $(OBJ)startwin.game.$o \ $(JMACTOBJ) \ $(AUDIOLIBOBJ) EDITOROBJS=$(OBJ)astub.$o \ $(OBJ)buildres.res # RULES .SUFFIXES: .masm {$(SRC)}.masm{$(OBJ)}.$o: $(AS) /c $(ASFLAGS) /Fo$@ $< {$(SRC)jaudiolib}.masm{$(OBJ)}.$o: $(AS) /c $(ASFLAGS) /Fo$@ $< {$(SRC)jmact}.c{$(OBJ)}.$o: $(CC) /c $(CFLAGS) /Fo$@ $< {$(SRC)jaudiolib}.c{$(OBJ)}.$o: $(CC) /c $(CFLAGS) /Fo$@ $< {$(SRC)util}.c{$(OBJ)}.$o: $(CC) /c $(CFLAGS) /Fo$@ $< {$(SRC)}.c{$(OBJ)}.$o: $(CC) /c $(CFLAGS) /Fo$@ $< {$(SRC)}.cpp{$(OBJ)}.$o: $(CC) /c $(CFLAGS) /Fo$@ $< {$(SRC)misc}.rc{$(OBJ)}.res: $(RC) /i$(EINC) /i$(SRC) /fo$@ /r $< # TARGETS all: eduke32$(EXESUFFIX) mapster32$(EXESUFFIX) ; eduke32$(EXESUFFIX): $(GAMEOBJS) $(EOBJ)$(ENGINELIB) $(LINK) /OUT:$@ /SUBSYSTEM:WINDOWS /LIBPATH:$(DXROOT)\lib $(flags_link) /MAP $** $(LIBS) msvcrt.lib mapster32$(EXESUFFIX): $(EDITOROBJS) $(EOBJ)$(ENGINELIB) $(EOBJ)$(EDITORLIB) $(LINK) /OUT:$@ /SUBSYSTEM:WINDOWS /LIBPATH:$(DXROOT)\lib $(flags_link) /MAP $** $(LIBS) msvcrt.lib !include Makefile.deps enginelib editorlib: AlwaysBuild -mkdir $(EOBJ) echo OBJ=$(MAKEDIR)\$(EOBJ) > $(EOBJ)overrides.mak echo CFLAGS=$(ENGINEOPTS) >> $(EOBJ)overrides.mak cd $(EROOT) nmake /f Makefile.msvc "OVERRIDES=$(MAKEDIR)\$(EOBJ)overrides.mak" $@ cd $(MAKEDIR) AlwaysBuild: ; $(EOBJ)$(EDITORLIB): editorlib ; $(EOBJ)$(ENGINELIB): enginelib ; # PHONIES clean: -del $(OBJ)* eduke32$(EXESUFFIX) mapster32$(EXESUFFIX) veryclean: clean -del $(EOBJ)*