# Define required raylib variables RAYLIB_PATH ?= C:/raylib5/raylib/src # Define compiler path on Windows COMPILER_PATH ?= C:/raylib/w64devkit/bin # Build mode for project: DEBUG or RELEASE BUILD_MODE ?= RELEASE # Define default C compiler: gcc # NOTE: define g++ compiler if using C++ CC = g++ # Define default make program: Mingw32-make MAKE = mingw32-make tetris # Compile option CFLAGS += -Wall -std=c++14 -D_DEFAULT_SOURCE -Wno-missing-braces ifeq ($(BUILD_MODE),DEBUG) CFLAGS += -g -O0 else CFLAGS += -s -O1 endif # Define include paths for required headers # NOTE: Several external required libraries (stb and others) INCLUDE_PATHS = -I. -I$(RAYLIB_PATH) -I$(RAYLIB_PATH)/external -I'/utils' # Define library paths containing required libs. LDFLAGS = -L. -L$(RAYLIB_PATH) # Define any libraries required on linking # if you want to link libraries (libname.so or libname.a), use the -lname LDLIBS = -lraylib -lopengl32 -lgdi32 -lwinmm # Define all source files required SRC_DIR = . OBJ_DIR = obj #목적 파일 만들기 OBJS = $(OBJ_DIR)/buttonActionMap.o $(OBJ_DIR)/config.o $(OBJ_DIR)/gui.o $(OBJ_DIR)/logo.o $(OBJ_DIR)/game.o $(OBJ_DIR)/menu.o $(OBJ_DIR)/settingscreen.o $(OBJ_DIR)/main.o # Default target entry # NOTE: We call this Makefile target or Makefile.Android target all: $(MAKE) $(OBJ_DIR)/buttonActionMap.o : buttonActionMap.h buttonActionMap.cpp $(CC) -c buttonActionMap.cpp $(CFLAGS) $(INCLUDE_PATHS) -o $@ $(OBJ_DIR)/config.o : config.h config.cpp $(CC) -c config.cpp $(CFLAGS) $(INCLUDE_PATHS) -o $@ $(OBJ_DIR)/gui.o : gui.h gui.cpp $(CC) -c gui.cpp $(CFLAGS) $(INCLUDE_PATHS) -o $@ $(OBJ_DIR)/logo.o : logo.h logo.cpp $(CC) -c logo.cpp $(CFLAGS) $(INCLUDE_PATHS) -o $@ $(OBJ_DIR)/game.o : game.h game.cpp $(CC) -c game.cpp $(CFLAGS) $(INCLUDE_PATHS) -o $@ $(OBJ_DIR)/menu.o : menu.h menu.cpp $(CC) -c menu.cpp $(CFLAGS) $(INCLUDE_PATHS) -o $@ $(OBJ_DIR)/settingscreen.o : settingscreen.h settingscreen.cpp $(CC) -c settingscreen.cpp $(CFLAGS) $(INCLUDE_PATHS) -o $@ $(OBJ_DIR)/main.o : main.cpp $(CC) -c main.cpp $(CFLAGS) $(INCLUDE_PATHS) -o $@ #Icon file path ICON += $(RAYLIB_PATH)/raylib.rc.data #컴파일 tetris : $(OBJS) $(CC) $(CFLAGS) $(OBJS) -o tetris $(INCLUDE_PATHS) $(LDFLAGS) $(LDLIBS) $(ICON)