From 85a2ba407b1ae285b4080e14f8a18ecf4ec7da2c Mon Sep 17 00:00:00 2001 From: Jonathan Bradley Date: Wed, 12 Mar 2025 17:26:48 -0400 Subject: pke: more testing features + more ui flex work --- Makefile | 180 ++++++++++++++++++++++++++++++++++----------------------------- 1 file changed, 96 insertions(+), 84 deletions(-) (limited to 'Makefile') diff --git a/Makefile b/Makefile index f7b4542..f730467 100644 --- a/Makefile +++ b/Makefile @@ -22,43 +22,12 @@ FLG_PKE = -Isub/imgui -Isub/stb -Isub/cgltf -Isub/bullet3/src FLG_EDT = $(FLG_PKE) -Isrc -I/home/pikum/build/msdfgen -I/home/pikum/build/msdf-atlas-gen FLG_MPL = $(FLG_PKE) -Isrc FLG_RUN = $(FLG_PKE) -Isrc +FLG_TST = $(FLG_PKE) -Isrc DIR_OBJ=obj DIR_BIN=bin DIR_DBG=dbg -SRC = \ - src/vendor-pkh-include.cpp \ - src/arg-handler.cpp \ - src/camera.cpp \ - src/ecs.cpp \ - src/entities.cpp \ - src/event.cpp \ - src/font.cpp \ - src/game.cpp \ - src/game-settings.cpp \ - src/helpers.cpp \ - src/level-types.cpp \ - src/level.cpp \ - src/math-helpers.cpp \ - src/dynamic-array.cpp \ - src/asset-manager.cpp \ - src/physics.cpp \ - src/player-input.cpp \ - src/plugins.cpp \ - src/project.cpp \ - src/project-settings.cpp \ - src/static-cube.cpp \ - src/static-plane.cpp \ - src/static-ui.cpp \ - src/thread-pool.cpp \ - src/vendor-cgltf-include.cpp \ - src/vendor-stb-image-include.c \ - src/vendor-tinyfiledialogs.c \ - src/window.cpp \ - tests/pke-test.c \ - tests/pke-test-dummy.c \ - DST_SHADERS = \ $(DIR_OBJ)/shaders/vertex.vert.spv \ $(DIR_OBJ)/shaders/present.vert.spv \ @@ -69,20 +38,8 @@ DST_SHADERS = \ $(DIR_OBJ)/shaders/ui-base.vert.spv \ $(DIR_OBJ)/shaders/ui-base.frag.spv \ -SRC_C = $(filter %.c,$(SRC)) -SRC_CXX = $(filter %.cpp,$(SRC)) -OBJ = $(SRC_C:%.c=%.o) -SOBJ = $(SRC_C:%.c=%.so) -CXXOBJ = $(SRC_CXX:%.cpp=%.o) -CXXSOBJ = $(SRC_CXX:%.cpp=%.so) -TMP_OUT_OBJ = $(notdir $(OBJ)) -TMP_OUT_SOBJ = $(notdir $(SOBJ)) -TMP_OUT_CXXOBJ = $(notdir $(CXXOBJ)) -TMP_OUT_CXXSOBJ = $(notdir $(CXXSOBJ)) -OUT_OBJ = $(TMP_OUT_OBJ:%.o=$(DIR_OBJ)/%.o) -OUT_SOBJ = $(TMP_OUT_SOBJ:%.so=$(DIR_OBJ)/%.so) -OUT_CXXOBJ = $(TMP_OUT_CXXOBJ:%.o=$(DIR_OBJ)/%.o) -OUT_CXXSOBJ = $(TMP_OUT_CXXSOBJ:%.so=$(DIR_OBJ)/%.so) +MAINS_OBJ = obj/editor-main.o obj/pke-runtime.o obj/test-pke.o +MAINS_SOBJ = $(MAINS_OBJ:%.o=%.so) .PHONY: default default: options $(DIR_BIN)/pke-editor $(DIR_BIN)/libpke-example.a $(DIR_BIN)/pke-runtime ; @@ -110,20 +67,22 @@ config.h: %.h: ; -$(SRC_C): config.h config.mk -$(SRC_CXX): config.h config.mk +%.hpp: ; + +$(DIR_OBJ)/%.o : config.h config.mk +$(DIR_OBJ)/%.so : config.h config.mk -$(DIR_OBJ)/%.o: sub/imgui/%.cpp +$(DIR_OBJ)/%.o : sub/imgui/%.cpp $(cxx-bin-command) -Isub/imgui -$(DIR_OBJ)/%.so: sub/imgui/%.cpp +$(DIR_OBJ)/%.so : sub/imgui/%.cpp $(cxx-dbg-command) -Isub/imgui -$(DIR_OBJ)/%.o: sub/imgui/backends/%.cpp +$(DIR_OBJ)/%.o : sub/imgui/backends/%.cpp $(cxx-bin-command) -Isub/imgui -$(DIR_OBJ)/%.so: sub/imgui/backends/%.cpp +$(DIR_OBJ)/%.so : sub/imgui/backends/%.cpp $(cxx-dbg-command) -Isub/imgui -$(DIR_OBJ)/%.o: sub/imgui/misc/cpp/%.cpp +$(DIR_OBJ)/%.o : sub/imgui/misc/cpp/%.cpp $(cxx-bin-command) -Isub/imgui -$(DIR_OBJ)/%.so: sub/imgui/misc/cpp/%.cpp +$(DIR_OBJ)/%.so : sub/imgui/misc/cpp/%.cpp $(cxx-dbg-command) -Isub/imgui $(DIR_OBJ)/shaders/%.vert.spv: assets/shaders/%.vert @@ -131,39 +90,39 @@ $(DIR_OBJ)/shaders/%.vert.spv: assets/shaders/%.vert $(DIR_OBJ)/shaders/%.frag.spv: assets/shaders/%.frag $(GLSLC) $^ -o $@ -$(DIR_OBJ)/%.o : src/%.c +$(DIR_OBJ)/%.o : src/%.c $(cc-bin-command) $(FLG_PKE) $(DIR_OBJ)/%.so : src/%.c $(cc-dbg-command) $(FLG_PKE) -$(DIR_OBJ)/%.o : src/vendor/tinyfiledialogs/%.c +$(DIR_OBJ)/%.o : src/vendor/tinyfiledialogs/%.c $(cc-bin-command) $(FLG_PKE) $(DIR_OBJ)/%.so : src/vendor/tinyfiledialogs/%.c $(cc-dbg-command) $(FLG_PKE) +$(DIR_OBJ)/%.o : tests/%.c + $(cc-bin-command) $(FLG_TST) +$(DIR_OBJ)/%.so : tests/%.c + $(cc-dbg-command) $(FLG_TST) -$(DIR_OBJ)/%.o : src/%.cpp +$(DIR_OBJ)/%.o : src/%.cpp $(cxx-bin-command) $(FLG_PKE) $(DIR_OBJ)/%.so : src/%.cpp $(cxx-dbg-command) $(FLG_PKE) -$(DIR_OBJ)/%.o : tests/%.c - $(cc-bin-command) $(FLG_PKE) -$(DIR_OBJ)/%.so : tests/%.c - $(cc-dbg-command) $(FLG_PKE) -$(DIR_OBJ)/%.o : tests/%.cpp - $(cxx-bin-command) $(FLG_PKE) -$(DIR_OBJ)/%.so : tests/%.cpp - $(cxx-dbg-command) $(FLG_PKE) -$(DIR_OBJ)/%.o : editor/%.cpp +$(DIR_OBJ)/%.o : editor/%.cpp $(cxx-bin-command) $(FLG_EDT) $(DIR_OBJ)/%.so : editor/%.cpp $(cxx-dbg-command) $(FLG_EDT) -$(DIR_OBJ)/%.o : example/%.cpp +$(DIR_OBJ)/%.o : example/%.cpp $(cxx-bin-command) $(FLG_MPL) $(DIR_OBJ)/%.so : example/%.cpp $(cxx-dbg-command) $(FLG_MPL) -$(DIR_OBJ)/%.o : runtime/%.cpp +$(DIR_OBJ)/%.o : runtime/%.cpp $(cxx-bin-command) $(FLG_RUN) $(DIR_OBJ)/%.so : runtime/%.cpp $(cxx-dbg-command) $(FLG_RUN) +$(DIR_OBJ)/%.o : tests/%.cpp + $(cxx-bin-command) $(FLG_TST) +$(DIR_OBJ)/%.so : tests/%.cpp + $(cxx-dbg-command) $(FLG_TST) $(DIR_BIN)/libImgui.a: $(DIR_OBJ)/imgui.o $(DIR_BIN)/libImgui.a: $(DIR_OBJ)/imgui_demo.o @@ -204,13 +163,67 @@ $(DIR_DBG)/libBullet3.a: ranlib $@ $(DIR_BIN)/libpke.a: $(DST_SHADERS) -$(DIR_BIN)/libpke.a: $(OUT_OBJ) $(OUT_CXXOBJ) +$(DIR_BIN)/libpke.a: $(DIR_OBJ)/arg-handler.o +$(DIR_BIN)/libpke.a: $(DIR_OBJ)/asset-manager.o +$(DIR_BIN)/libpke.a: $(DIR_OBJ)/camera.o +$(DIR_BIN)/libpke.a: $(DIR_OBJ)/dynamic-array.o +$(DIR_BIN)/libpke.a: $(DIR_OBJ)/ecs.o +$(DIR_BIN)/libpke.a: $(DIR_OBJ)/entities.o +$(DIR_BIN)/libpke.a: $(DIR_OBJ)/event.o +$(DIR_BIN)/libpke.a: $(DIR_OBJ)/font.o +$(DIR_BIN)/libpke.a: $(DIR_OBJ)/game-settings.o +$(DIR_BIN)/libpke.a: $(DIR_OBJ)/game.o +$(DIR_BIN)/libpke.a: $(DIR_OBJ)/helpers.o +$(DIR_BIN)/libpke.a: $(DIR_OBJ)/level-types.o +$(DIR_BIN)/libpke.a: $(DIR_OBJ)/level.o +$(DIR_BIN)/libpke.a: $(DIR_OBJ)/math-helpers.o +$(DIR_BIN)/libpke.a: $(DIR_OBJ)/physics.o +$(DIR_BIN)/libpke.a: $(DIR_OBJ)/player-input.o +$(DIR_BIN)/libpke.a: $(DIR_OBJ)/plugins.o +$(DIR_BIN)/libpke.a: $(DIR_OBJ)/project-settings.o +$(DIR_BIN)/libpke.a: $(DIR_OBJ)/project.o +$(DIR_BIN)/libpke.a: $(DIR_OBJ)/static-cube.o +$(DIR_BIN)/libpke.a: $(DIR_OBJ)/static-plane.o +$(DIR_BIN)/libpke.a: $(DIR_OBJ)/static-ui.o +$(DIR_BIN)/libpke.a: $(DIR_OBJ)/thread-pool.o +$(DIR_BIN)/libpke.a: $(DIR_OBJ)/vendor-cgltf-include.o +$(DIR_BIN)/libpke.a: $(DIR_OBJ)/vendor-pkh-include.o +$(DIR_BIN)/libpke.a: $(DIR_OBJ)/vendor-stb-image-include.o +$(DIR_BIN)/libpke.a: $(DIR_OBJ)/vendor-tinyfiledialogs.o +$(DIR_BIN)/libpke.a: $(DIR_OBJ)/window.o $(DIR_BIN)/libpke.a: ar rc $@ $(filter %.o,$^) ranlib $@ $(DIR_DBG)/libpke.a: $(DST_SHADERS) -$(DIR_DBG)/libpke.a: $(OUT_SOBJ) $(OUT_CXXSOBJ) +$(DIR_DBG)/libpke.a: $(DIR_OBJ)/arg-handler.so +$(DIR_DBG)/libpke.a: $(DIR_OBJ)/asset-manager.so +$(DIR_DBG)/libpke.a: $(DIR_OBJ)/camera.so +$(DIR_DBG)/libpke.a: $(DIR_OBJ)/dynamic-array.so +$(DIR_DBG)/libpke.a: $(DIR_OBJ)/ecs.so +$(DIR_DBG)/libpke.a: $(DIR_OBJ)/entities.so +$(DIR_DBG)/libpke.a: $(DIR_OBJ)/event.so +$(DIR_DBG)/libpke.a: $(DIR_OBJ)/font.so +$(DIR_DBG)/libpke.a: $(DIR_OBJ)/game-settings.so +$(DIR_DBG)/libpke.a: $(DIR_OBJ)/game.so +$(DIR_DBG)/libpke.a: $(DIR_OBJ)/helpers.so +$(DIR_DBG)/libpke.a: $(DIR_OBJ)/level-types.so +$(DIR_DBG)/libpke.a: $(DIR_OBJ)/level.so +$(DIR_DBG)/libpke.a: $(DIR_OBJ)/math-helpers.so +$(DIR_DBG)/libpke.a: $(DIR_OBJ)/physics.so +$(DIR_DBG)/libpke.a: $(DIR_OBJ)/player-input.so +$(DIR_DBG)/libpke.a: $(DIR_OBJ)/plugins.so +$(DIR_DBG)/libpke.a: $(DIR_OBJ)/project-settings.so +$(DIR_DBG)/libpke.a: $(DIR_OBJ)/project.so +$(DIR_DBG)/libpke.a: $(DIR_OBJ)/static-cube.so +$(DIR_DBG)/libpke.a: $(DIR_OBJ)/static-plane.so +$(DIR_DBG)/libpke.a: $(DIR_OBJ)/static-ui.so +$(DIR_DBG)/libpke.a: $(DIR_OBJ)/thread-pool.so +$(DIR_DBG)/libpke.a: $(DIR_OBJ)/vendor-cgltf-include.so +$(DIR_DBG)/libpke.a: $(DIR_OBJ)/vendor-pkh-include.so +$(DIR_DBG)/libpke.a: $(DIR_OBJ)/vendor-stb-image-include.so +$(DIR_DBG)/libpke.a: $(DIR_OBJ)/vendor-tinyfiledialogs.so +$(DIR_DBG)/libpke.a: $(DIR_OBJ)/window.so $(DIR_DBG)/libpke.a: ar rc $@ $(filter %.so,$^) ranlib $@ @@ -224,12 +237,12 @@ $(DIR_DBG)/libpke-example.a: $(DIR_OBJ)/example.so ranlib $@ $(DIR_BIN)/libpke-test.a: $(DIR_OBJ)/pke-test-dummy.o - ar rc $@ $(filter %.o,$^) - ranlib $@ +$(DIR_BIN)/libpke-test.a: $(DIR_OBJ)/pke-test-static-ui.o + ar rcs $@ $(filter %.o,$^) $(DIR_DBG)/libpke-test.a: $(DIR_OBJ)/pke-test-dummy.so - ar rc $@ $(filter %.so,$^) - ranlib $@ +$(DIR_DBG)/libpke-test.a: $(DIR_OBJ)/pke-test-static-ui.so + ar rcs $@ $(filter %.so,$^) $(DIR_BIN)/pke-editor: $(DIR_BIN)/libpke.a $(DIR_BIN)/libImgui.a $(DIR_BIN)/libBullet3.a $(DIR_BIN)/pke-editor: $(DIR_OBJ)/editor-main.o $(DIR_OBJ)/editor.o @@ -250,22 +263,21 @@ $(DIR_DBG)/pke-runtime: $(DIR_OBJ)/runtime.so @echo $^ $(CXX) -v -std=c++23 $(INCS) $^ $(LDFLAGS) $(CXXFLAGS) -g -O0 -o $@ -$(DIR_BIN)/test-pke: $(DIR_BIN)/libpke.a $(DIR_BIN)/libImgui.a $(DIR_BIN)/libBullet3.a -$(DIR_DBG)/test-pke: $(DIR_BIN)/libpke-test.a -$(DIR_BIN)/test-pke: $(DIR_OBJ)/pke-test.o -$(DIR_BIN)/test-pke: +$(DIR_BIN)/pke-test: $(DIR_BIN)/libpke-test.a $(DIR_BIN)/libpke.a $(DIR_BIN)/libImgui.a $(DIR_BIN)/libBullet3.a +$(DIR_BIN)/pke-test: $(DIR_OBJ)/pke-test.o @echo $^ - $(CC) -std=c2x -v $(INCS) $^ $(LDFLAGS) $(CXXFLAGS) -g -O0 -o $@ + $(CXX) -v -std=c++23 $(INCS) $^ $(LDFLAGS) $(CXXFLAGS) -g -O0 -o $@ -$(DIR_DBG)/test-pke: $(DIR_DBG)/libpke.a $(DIR_DBG)/libImgui.a $(DIR_DBG)/libBullet3.a -$(DIR_DBG)/test-pke: $(DIR_DBG)/libpke-test.a -$(DIR_DBG)/test-pke: $(DIR_OBJ)/pke-test.so +$(DIR_DBG)/pke-test: $(DIR_DBG)/libpke-test.a $(DIR_DBG)/libpke.a $(DIR_DBG)/libImgui.a $(DIR_DBG)/libBullet3.a +$(DIR_DBG)/pke-test: $(DIR_OBJ)/pke-test.so @echo $^ - $(CC) -std=c2x -v $(INCS) $^ $(LDFLAGS) $(CXXFLAGS) -g -O0 -o $@ + $(CXX) -v -std=c++23 $(INCS) $^ $(LDFLAGS) $(CXXFLAGS) -g -O0 -o $@ .PHONY: print print: - @echo $(DST_SHADERS) + @echo $(OUT_OBJ) + @echo $(MAINS_OBJ) + @echo $(MAINS_SOBJ) .PHONY: clean clean: -- cgit v1.2.3