From 3711c92f43eedbd698a9c477e3248fb87892fbd9 Mon Sep 17 00:00:00 2001 From: Tom Smeding Date: Fri, 15 Feb 2019 11:32:44 +0100 Subject: Multiple AI's (+RAND) --- Makefile | 38 ++++++++++++++++++++++++++++++++------ 1 file changed, 32 insertions(+), 6 deletions(-) (limited to 'Makefile') diff --git a/Makefile b/Makefile index c8bca05..c1a3ee7 100644 --- a/Makefile +++ b/Makefile @@ -2,20 +2,36 @@ CXX := g++ CXXFLAGS := -Wall -Wextra -std=c++11 -g -O2 LDFLAGS := -TARGET := ai OBJDIR := .objs -CXX_SOURCES := $(wildcard *.cpp) -OBJ_FILES := $(patsubst %.cpp,$(OBJDIR)/%.o,$(CXX_SOURCES)) -DEP_FILES := $(patsubst %.cpp,$(OBJDIR)/%.d,$(CXX_SOURCES)) +ifneq ($(value AI),) + AI_UPPER := $(shell echo '$(value AI)' | tr a-z A-Z) + AI_LOWER := $(shell echo '$(value AI)' | tr A-Z a-z) +else + AI_UPPER := MC + AI_LOWER := mc +endif +CXXFLAGS += -DAI=$(AI_UPPER) -.PHONY: all clean +MAIN_OBJ := $(OBJDIR)/main_$(AI_LOWER).o +CXX_SOURCES := $(filter-out main.cpp ai_%.cpp,$(wildcard *.cpp)) ai_$(AI_LOWER).cpp +OBJ_FILES := $(patsubst %.cpp,$(OBJDIR)/%.o,$(CXX_SOURCES)) $(MAIN_OBJ) +DEP_FILES := $(patsubst %.cpp,$(OBJDIR)/%.d,$(CXX_SOURCES)) $(MAIN_OBJ:.o=.d) + +TARGET := ai$(AI_LOWER) + +AI_ALL_LOWER := $(patsubst ai_%.cpp,%,$(wildcard ai_*.cpp)) + +TARGET_ALL := $(patsubst %,ai%,$(AI_ALL_LOWER)) + + +.PHONY: all clean debug all: $(TARGET) clean: - rm -f $(TARGET) + rm -f $(TARGET_ALL) rm -rf $(OBJDIR) $(TARGET): $(OBJ_FILES) termio/libtermio.a @@ -32,6 +48,16 @@ $(OBJDIR)/%.d: %.cpp termio/libtermio.a @echo DEP $< @$(CXX) -MT $(OBJDIR)/$*.o -MM $(CXXFLAGS) $< >$@ +$(OBJDIR)/main_$(AI_LOWER).o: main.cpp termio/libtermio.a + @mkdir -p $(dir $@) + @echo CXX "$< -o $(notdir $@)" + @$(CXX) $(CXXFLAGS) -c -o $@ $< + +$(OBJDIR)/main_$(AI_LOWER).d: main.cpp termio/libtermio.a + @mkdir -p $(dir $@) + @echo DEP "$< -o $(notdir $@)" + @$(CXX) -MT $(OBJDIR)/$*.o -MM $(CXXFLAGS) $< >$@ + termio/.git: git submodule update --init -- cgit v1.2.3-70-g09d2