refactor: seperate engine and game
This commit is contained in:
@@ -31,22 +31,21 @@ DEBUGFLAGS = -std=c++20 -g -O0
|
||||
|
||||
INCLUDES = -I./external/raylib/include \
|
||||
-I./external/entt/single_include \
|
||||
-I./src/include \
|
||||
-I./external/imgui \
|
||||
-I./external/rlImGui \
|
||||
-I./external/box2d/include \
|
||||
-I./external/nhlohmann_json_3.12.0/ \
|
||||
-I./external/asset_packer/bin/include \
|
||||
-I./src \
|
||||
|
||||
WEB_INCLUDES = -I./external/raylib-web/include \
|
||||
-I./external/entt/single_include \
|
||||
-I./src/include \
|
||||
-I./external/imgui \
|
||||
-I./external/rlImGui \
|
||||
-I./external/box2d/include \
|
||||
-I./external/nhlohmann_json_3.12.0/ \
|
||||
-I./external/asset_packer/bin/include \
|
||||
# -I./external/emscripten/include \
|
||||
-I./src \
|
||||
|
||||
IMGUI_SRCS = ./external/imgui/imgui.cpp \
|
||||
./external/imgui/imgui_demo.cpp \
|
||||
@@ -56,38 +55,35 @@ IMGUI_SRCS = ./external/imgui/imgui.cpp \
|
||||
|
||||
IMGUI_BACKEND = ./external/rlImGui/rlImGui.cpp
|
||||
|
||||
# SRC_FILES = ./src/engine/core/application.cpp \
|
||||
# ./src/engine/scene/scene.cpp \
|
||||
# ./src/game/main.cpp
|
||||
|
||||
SRC_FILES := $(shell find ./src -name "*.cpp")
|
||||
|
||||
SRC_FILES = ./src/asset.cpp \
|
||||
./src/movement.cpp \
|
||||
./src/player.cpp \
|
||||
./src/fruit.cpp \
|
||||
./src/render.cpp \
|
||||
./src/scenes/scene.cpp \
|
||||
./src/scenes/game_play_scene.cpp \
|
||||
./src/scenes/menu_scene.cpp
|
||||
|
||||
ENTRY_POINT = ./src/main.cpp
|
||||
TEST_ENTRY_POINT = ./src/test.cpp
|
||||
|
||||
IMGUI_OBJS = $(patsubst ./external/imgui/%.cpp,./bin/%.o,$(IMGUI_SRCS))
|
||||
IMGUI_BACKEND_OBJS = $(patsubst ./external/rlImGui/%.cpp,./bin/%.o,$(IMGUI_BACKEND))
|
||||
OBJS_FILES = $(patsubst ./src/%.cpp,./bin/%.o,$(SRC_FILES))
|
||||
IMGUI_OBJS = $(patsubst ./external/imgui/%.cpp,./bin/external/%.o,$(IMGUI_SRCS))
|
||||
IMGUI_BACKEND_OBJS = $(patsubst ./external/rlImGui/%.cpp,./bin/external/%.o,$(IMGUI_BACKEND))
|
||||
|
||||
DEP_FILES = $(patsubst ./bin/%.o,./bin/%.d,$(OBJS_FILES))
|
||||
OBJS_FILES = $(patsubst ./src/%.cpp,./bin/obj/%.o,$(SRC_FILES))
|
||||
|
||||
DEP_FILES = $(patsubst ./bin/obj/%.o,./bin/obj/%.d,$(OBJS_FILES))
|
||||
|
||||
|
||||
all: build-desktop run-desktop
|
||||
|
||||
./bin/%.o: ./external/imgui/%.cpp
|
||||
./bin/external/%.o: ./external/imgui/%.cpp
|
||||
@mkdir -p bin
|
||||
@mkdir -p $(dir $@)
|
||||
$(CXX) $(CXXFLAGS) $(INCLUDES) -c $< -o $@
|
||||
|
||||
./bin/%.o: ./external/rlImGui/%.cpp
|
||||
./bin/external/%.o: ./external/rlImGui/%.cpp
|
||||
@mkdir -p bin
|
||||
@mkdir -p $(dir $@)
|
||||
$(CXX) $(CXXFLAGS) $(INCLUDES) -c $< -o $@
|
||||
|
||||
./bin/%.o: ./src/%.cpp
|
||||
./bin/obj/%.o: ./src/%.cpp
|
||||
@mkdir -p bin
|
||||
@mkdir -p $(dir $@)
|
||||
$(CXX) $(CXXFLAGS) $(INCLUDES) -c $< -o $@
|
||||
@@ -114,7 +110,7 @@ build-core: $(OBJS_FILES)
|
||||
|
||||
build-desktop: $(OBJS_FILES) $(IMGUI_OBJS) $(IMGUI_BACKEND_OBJS)
|
||||
@mkdir -p bin
|
||||
$(CXX) $(CXXFLAGS) $(INCLUDES) $(ENTRY_POINT) $(OBJS_FILES) $(IMGUI_OBJS) $(IMGUI_BACKEND_OBJS) $(LDFLAGS) $(LIBS) -o ./bin/main.exe
|
||||
$(CXX) $(CXXFLAGS) $(INCLUDES) $(OBJS_FILES) $(IMGUI_OBJS) $(IMGUI_BACKEND_OBJS) $(LDFLAGS) $(LIBS) -o ./bin/main.exe
|
||||
cp ./assets ./bin -rf
|
||||
|
||||
build-test: $(OBJS_FILES) $(IMGUI_OBJS) $(IMGUI_BACKEND_OBJS)
|
||||
@@ -125,20 +121,31 @@ build-test: $(OBJS_FILES) $(IMGUI_OBJS) $(IMGUI_BACKEND_OBJS)
|
||||
|
||||
build-debug:
|
||||
@mkdir -p debug
|
||||
$(CXX) $(DEBUGFLAGS) $(INCLUDES) $(ENTRY_POINT) $(SRC_FILES) $(IMGUI_OBJS) $(IMGUI_BACKEND_OBJS) $(LDFLAGS) $(LIBS) -o ./debug/d.exe
|
||||
$(CXX) $(DEBUGFLAGS) $(INCLUDES) $(SRC_FILES) $(IMGUI_OBJS) $(IMGUI_BACKEND_OBJS) $(LDFLAGS) $(LIBS) -o ./debug/d.exe
|
||||
cp ./data.dat ./debug -rf
|
||||
|
||||
web:
|
||||
@mkdir -p web
|
||||
$(WEB_CXX) $(CXXFLAGS) $(WEB_INCLUDES) $(ENTRY_POINT) $(SRC_FILES) $(IMGUI_SRCS) $(IMGUI_BACKEND) $(WEB_LDFLAGS) $(WEB_LIBS) -o ./web/index.html
|
||||
$(WEB_CXX) $(CXXFLAGS) $(WEB_INCLUDES) $(SRC_FILES) $(IMGUI_SRCS) $(IMGUI_BACKEND) $(WEB_LDFLAGS) $(WEB_LIBS) -o ./web/index.html
|
||||
|
||||
web-native:
|
||||
@mkdir -p web
|
||||
em++ $(CXXFLAGS) $(WEB_INCLUDES) $(ENTRY_POINT) $(SRC_FILES) $(IMGUI_SRCS) $(IMGUI_BACKEND) $(WEB_LDFLAGS) $(WEB_LIBS) -o ./web/index.html
|
||||
|
||||
clean-desktop:
|
||||
clean-all:
|
||||
@rm -r -f ./bin
|
||||
@rm -f compile_commands.json
|
||||
|
||||
clean-engine:
|
||||
@rm -r -f ./bin/obj/engine
|
||||
@rm -r -f ./bin/main.exe
|
||||
|
||||
clean-game:
|
||||
@rm -r -f ./bin/obj/game
|
||||
@rm -r -f ./bin/main.exe
|
||||
|
||||
clean-desktop:
|
||||
@rm -r -f ./bin/obj
|
||||
@rm -r -f ./bin/main.exe
|
||||
|
||||
clean-debug:
|
||||
@rm -r -f ./debug
|
||||
@@ -170,5 +177,5 @@ run-test: build-test
|
||||
pack-assets:
|
||||
./external/asset_packer/bin/assetpacker.exe assets/
|
||||
|
||||
|
||||
|
||||
list-src-files:
|
||||
@echo $(shell find src -name "*.cpp")
|
||||
|
||||
Reference in New Issue
Block a user