MAINDIR := src MYSRC := $(notdir $(wildcard $(MAINDIR)/*.cpp)) SOURCE := $(MYSRC) OBJS := $(patsubst %.cpp,%.o,$(SOURCE)) EXECUTE = cchess.exe INCLUDE = -I$(MAINDIR)/../inc $(FTINC) CXXFLAGS += $(INCLUDE) -Wall -DALLEGRO_STATICLINK -DALLEGRO_LIB_BUILD -mcpu=i586 -O2 -funroll-loops -ffast-math -fomit-frame-pointer CXXFLAGS += -g ifndef DOS MODE := -s -Wl,--subsystem,windows endif VPATH = $(MAINDIR) $(FTVPATH) %.d: %.cpp @echo checking $@ ... @rm -f $@ @$(CXX) -MM $(CFLAGS) $< > $@ $(EXECUTE) : $(OBJS) $(CXX) $(MODE) -o $(EXECUTE) $(OBJS) -lalleg_s -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lole32 -ldinput -lddraw -ldxguid -lwinmm -ldsound -include $(MYSRC:.cpp=.d) .PHONY : clean veryclean echo badftsrc depends #used for test this makefile echo : @echo $(SOURCE) @echo $(VPATH) clean : -rm -f *.o *.d $(MAINDIR)/*.o veryclean:clean -rm -f $(EXECUTE)