# $Header$ # This file is used by Makefile, Makefile.irix, Makefile.macosx and declares # common rules, a list of common object files etc. # List of all sub modules MODULES := common gui scumm simon sound ZIPFILE := scummvm-`date '+%Y-%m-%d'`.zip INCS = scumm/scumm.h common/scummsys.h common/stdafx.h COMMON_OBJS = common/config-file.o common/gameDetector.o common/main.o \ common/timer.o common/util.o GUI_OBJS = gui/gui.o gui/newgui.o gui/widget.o gui/dialog.o gui/ListWidget.o \ gui/ScrollBarWidget.o SCUMM_OBJS = scumm/actor.o scumm/akos.o scumm/boxes.o scumm/bundle.o \ scumm/costume.o scumm/debug.o scumm/debugrl.o scumm/engine.o scumm/gfx.o \ scumm/imuse.o scumm/insane.o scumm/object.o scumm/resource.o \ scumm/resource_v3.o scumm/resource_v4.o scumm/saveload.o scumm/scaler.o \ scumm/script.o scumm/script_v1.o scumm/script_v2.o scumm/scummvm.o \ scumm/string.o scumm/sys.o scumm/vars.o scumm/verbs.o SIMON_OBJS = simon/debug.o simon/items.o simon/midi.o simon/res.o simon/simon.o \ simon/sys.o simon/verb.o simon/vga.o SOUND_OBJS = sound/fmopl.o sound/mididrv.o sound/mixer.o sound/sound.o OBJS += $(COMMON_OBJS) $(GUI_OBJS) scumm/libscumm.a simon/libsimon.a $(SOUND_OBJS) DISTFILES=$(OBJS:.o=.cpp) Makefile scumm.h scummsys.h stdafx.h stdafx.cpp \ debugrl.h whatsnew.txt readme.txt copying.txt \ scummvm.dsp scummvm.dsw sound/fmopl.h gui.h sound.h all: scummvm$(EXEEXT) scummvm$(EXEEXT): $(OBJS) $(CXX) $(LDFLAGS) -o $(@) $(OBJS) $(LIBS) scumm/libscumm.a: $(SCUMM_OBJS) ar cru $@ $+ ranlib $@ simon/libsimon.a: $(SIMON_OBJS) ar cru $@ $+ ranlib $@ clean: rm -f $(OBJS) $(SCUMM_OBJS) $(SIMON_OBJS) scummvm$(EXEEXT) .PHONY: all clean dist # Default (dumb) compile & dependcy rules #.cpp.o: # $(CXX) $(CFLAGS) $(CPPFLAGS) -c $(<) -o $*.o #$(OBJS): $(INCS) # If you use GCC, disable the above and enable this for intelligent # dependency tracking. DEPDIR := .deps DEPDIRS = $(patsubst %,%/$(DEPDIR),$(MODULES)) DEPFILES = $(wildcard $(DEPDIRS)/*.d) /dev/null .cpp.o: mkdir -p $(*D)/$(DEPDIR) $(CXX) -Wp,-MMD,"$(*D)/$(DEPDIR)/$(*F).d2" $(CFLAGS) $(CPPFLAGS) -c $(<) -o $*.o echo -n "$(*D)/" > $(*D)/$(DEPDIR)/$(*F).d cat "$(*D)/$(DEPDIR)/$(*F).d2" >> "$(*D)/$(DEPDIR)/$(*F).d" rm -f "$(*D)/$(DEPDIR)/$(*F).d2" -include $(DEPDIR)/*.d