# ============================================================================== # 基本自動設定 # ============================================================================== # 以下、基本設定に基づき自動的に設定されます。 # (本ファイルは、基本的に変更不要です。) # ------------------------------------------------------------------------------ # SRCS, OBJS, DEPS ファイル群の自動設定 # ------------------------------------------------------------------------------ S_SRCS = $(wildcard $(addsuffix /*.s,$(SRCDIR))) C_SRCS = $(wildcard $(addsuffix /*.c,$(SRCDIR))) CXX_SRCS = $(wildcard $(addsuffix /*.cpp,$(SRCDIR))) TMP_SRCS = $(C_SRCS) $(CXX_SRCS) $(S_SRCS) VPATH = $(SRCDIR) SRCS = $(filter-out $(EXCLUDES),$(TMP_SRCS)) OBJS = $(addprefix $(OBJDIR)/, $(notdir $(addsuffix .o, $(basename $(SRCS))))) DEPS = $(OBJS:$(OBJDIR)/%.o=$(OBJDIR)/%.d) # ------------------------------------------------------------------------------ # LINK : リンカー設定 # C++ が含まれる場合、$(CXX) を使用する。 # ------------------------------------------------------------------------------ ifeq ($(strip $(CXX_SRCS)),) LINK = $(CC) else LINK = $(CXX) endif # ------------------------------------------------------------------------------ # ターゲットが ut.exe の場合の設定 # # 1. DEBUG を常に有効に設定する。 # 2. SRCDIR に、../src を追加する。 # 3. INCLUDES に、../include を追加する。 # 4. DEFINE に -DUNITTEST -DDEBUG を追加する。 # ------------------------------------------------------------------------------ ifeq ($(strip $(TARGET)),ut.exe) DEBUG = 1 SRCDIR += ../src INCLUDES += -I../include DEFINE += -DUNITTEST -DDEBUG endif ifeq ($(strip $(DEBUG)),) # ------------------------------------------------------------------------------ # DEBUG が無効な場合の設定 # CFLAGS, CXXFLAGS, LDFLAGS の OPTIMIZATION を有効にする # ------------------------------------------------------------------------------ CFLAGS += $(OPTIMIZATION) CXXFLAGS += $(OPTIMIZATION) else # ------------------------------------------------------------------------------ # DEBUG が有効な場合の設定 # CFLAGS, CXXFLAGS, LDFLAGS の DEBUG_OPTIONS を有効にする # ------------------------------------------------------------------------------ DEFINE += -DENABLED_MEMORY_MANAGE CFLAGS += $(DEBUG_OPTIONS) CXXFLAGS += $(DEBUG_OPTIONS) LDFLAGS += $(DEBUG_LDFLAGS) endif # ------------------------------------------------------------------------------ # CFLAGS, CXXFLAGS, LDFLAGS 設定 # ------------------------------------------------------------------------------ CFLAGS += $(INCLUDES) CFLAGS += $(C_VERSION) CFLAGS += $(C_WARNING_OPTIONS) CFLAGS += $(DEFINE) CFLAGS += $(DEPENDS_OPTIONS) CXXFLAGS += $(INCLUDES) CXXFLAGS += $(CXX_VERSION) CXXFLAGS += $(CXX_WARNING_OPTIONS) CXXFLAGS += $(DEFINE) CXXFLAGS += $(DEPENDS_OPTIONS)