From 820f11e769f3e767cc80a6004254056b9f317cb7 Mon Sep 17 00:00:00 2001 From: "Valeriano A.R" Date: Sat, 24 Apr 2021 15:51:55 +0200 Subject: [PATCH] Fix Makefiles --- Example.GameLib/Makefile | 5 -- Example.GameLib/Makefile.common.mk | 25 +++++----- Example.GameLib/Makefile.emscripten.mk | 11 ++--- Example.GameLib/dist-emscripten.cmd | 4 +- Makefile | 3 -- Makefile.common.mk | 63 +++++++++++++------------- Makefile.emscripten.mk | 6 +-- 7 files changed, 52 insertions(+), 65 deletions(-) diff --git a/Example.GameLib/Makefile b/Example.GameLib/Makefile index 5c9caef..2c56af4 100644 --- a/Example.GameLib/Makefile +++ b/Example.GameLib/Makefile @@ -32,7 +32,6 @@ ifeq ($(TARGET_ARCH),mingw) RM := rm -rf MKDIR := mkdir ECHO := echo - SLASH := / endif ifeq ($(TARGET_ARCH),linux) CC := gcc @@ -41,8 +40,6 @@ ifeq ($(TARGET_ARCH),linux) RM := rm -rf MKDIR := mkdir ECHO := echo - SLASH := / - endif ifeq ($(TARGET_ARCH),macosx) CC := gcc @@ -51,8 +48,6 @@ ifeq ($(TARGET_ARCH),macosx) RM := rm -rf MKDIR := mkdir ECHO := echo - VERBOSE_BUILD := false - SLASH := / LIBS := $(LIBS) macosx/SDLMain.m endif diff --git a/Example.GameLib/Makefile.common.mk b/Example.GameLib/Makefile.common.mk index 82855a1..7c1ab25 100644 --- a/Example.GameLib/Makefile.common.mk +++ b/Example.GameLib/Makefile.common.mk @@ -6,21 +6,21 @@ ifeq ($(VERBOSE_BUILD),true) DO_CC=$(CC) $(CFLAGS) -o $@ -c $< DO_CXX=$(CXX) $(CFLAGS) -o $@ -c $< else - DO_CC=@$(ECHO) "CC: $@" ;\ + DO_CC=@$(ECHO) "CC: $@" &&\ $(CC) $(CFLAGS) -o $@ -c $< - DO_CXX=@$(ECHO) "CXX: $@" ;\ + DO_CXX=@$(ECHO) "CXX: $@" &&\ $(CXX) $(CFLAGS) -o $@ -c $< endif ##################### # Game Declarations # ##################### -GAME_HEADS := $(GAMELIB_HEADS) Game$(SLASH)GameEnts.h Game$(SLASH)GameMap.h +GAME_HEADS := Game/GameEnts.h Game/GameMap.h GAME_OBJS := \ - $(BUILDDIR)$(SLASH)Game.o$(SLASH)GameEnts.o \ - $(BUILDDIR)$(SLASH)Game.o$(SLASH)GameMap.o \ - $(BUILDDIR)$(SLASH)Game.o$(SLASH)main.o -RES_GAME_OUT := $(BUILDDIR)$(SLASH)$(RES_GAME) + $(BUILDDIR)/GameEnts.o \ + $(BUILDDIR)/GameMap.o \ + $(BUILDDIR)/main.o +RES_GAME_OUT := $(BUILDDIR)/$(RES_GAME) ################# @@ -34,15 +34,14 @@ all: .FORCE $(BUILDDIR) $(RES_GAME_OUT) $(BUILDDIR): $(MKDIR) $(BUILDDIR) - $(MKDIR) $(BUILDDIR)$(SLASH)Game.o full-clean: clean (cd $(GAMELIB_DIR) && make clean $(GAMELIB_MAKEPARAMS)) clean: - $(RM) $(GAME_OBJS) $(RES_GAME_OUT) + $(RM) $(BUILDDIR) -run: $(BUILDDIR) $(RES_GAME_OUT) +run: .FORCE $(BUILDDIR) $(RES_GAME_OUT) $(LAUNCHER) ./$(RES_GAME_OUT) debug rebuild: clean all @@ -52,11 +51,11 @@ rebuild: clean all # Game Rules # ############## -$(BUILDDIR)$(SLASH)Game.o$(SLASH)GameEnts.o: src$(SLASH)GameEnts.c $(HEADS) +$(BUILDDIR)/GameEnts.o: src/GameEnts.c $(HEADS) $(DO_CC) -$(BUILDDIR)$(SLASH)Game.o$(SLASH)GameMap.o: src$(SLASH)GameMap.c $(HEADS) +$(BUILDDIR)/GameMap.o: src/GameMap.c $(HEADS) $(DO_CC) -$(BUILDDIR)$(SLASH)Game.o$(SLASH)main.o: src$(SLASH)main.c $(HEADS) +$(BUILDDIR)/main.o: src/main.c $(HEADS) $(DO_CC) diff --git a/Example.GameLib/Makefile.emscripten.mk b/Example.GameLib/Makefile.emscripten.mk index 7b360e0..f83ac68 100644 --- a/Example.GameLib/Makefile.emscripten.mk +++ b/Example.GameLib/Makefile.emscripten.mk @@ -1,18 +1,17 @@ CC := emcc AR := emar LAUNCHER := emrun --port 8080 -RM := del +RM := del /Q /S MKDIR := mkdir ECHO := echo -VERBOSE_BUILD := true -SLASH := \\ +VERBOSE_BUILD := false GAMELIB_DIR := .. -GAMELIB_MAKEPARAMS := -f Makefile.emscripten.mk target=release +GAMELIB_MAKEPARAMS := -f Makefile.emscripten.mk LIBS := -STATICLIBS := $(GAMELIB_DIR)$(SLASH)build-emscripten$(SLASH)libgame.a -CFLAGS := -s FULL_ES2=1 -s ASM_JS=1 -O1 -Wno-implicit-function-declaration -DEMSCRIPTEN -I$(GAMELIB_DIR)$(SLASH)src +STATICLIBS := $(GAMELIB_DIR)/build-emscripten/libgame.a +CFLAGS := -s FULL_ES2=1 -s ASM_JS=1 -O1 -Wno-implicit-function-declaration -DEMSCRIPTEN -I$(GAMELIB_DIR)/src PLATFORM := emscripten EXEEXT := .html LDFLAGS := --preload-file data -s TOTAL_MEMORY=134217728 -lidbfs.js diff --git a/Example.GameLib/dist-emscripten.cmd b/Example.GameLib/dist-emscripten.cmd index d44a921..ed1e6d2 100644 --- a/Example.GameLib/dist-emscripten.cmd +++ b/Example.GameLib/dist-emscripten.cmd @@ -4,8 +4,8 @@ make -f Makefile.emscripten.mk target=release full-clean make -f Makefile.emscripten.mk target=release mkdir DIST\web -copy web\* DIST\web\ -copy build-emscripten-release\game.* DIST\web\ +xcopy web\* DIST\web\ /s /e /y +xcopy build-emscripten-release\game.* DIST\web\ /s /e /y pause \ No newline at end of file diff --git a/Makefile b/Makefile index 7906360..b4043d2 100644 --- a/Makefile +++ b/Makefile @@ -20,7 +20,6 @@ ifeq ($(TARGET_ARCH),mingw) RM := rm -rf MKDIR := mkdir ECHO := echo - SLASH := / LIBS := -L/mingw/lib -lopengl32 -lSDL -lm CFLAGS := -g -mwindows -D_GNU_SOURCE=1 -DWIN32 @@ -36,7 +35,6 @@ ifeq ($(TARGET_ARCH),linux) RM := rm -rf MKDIR := mkdir ECHO := echo - SLASH := / LIBS := -lSDL -lpthread -L/usr/X11R6/lib -L/usr/lib -lm -lGL -lX11 CFLAGS := -Wall -g -I/usr/include/ -I/usr/include/SDL/ -I/usr/X11R6/include/ @@ -54,7 +52,6 @@ ifeq ($(TARGET_ARCH),macosx) MKDIR := mkdir ECHO := echo VERBOSE_BUILD := false - SLASH := / LIBS := -framework Cocoa -lm -framework OpenGL -framework SDL macosx/SDLMain.m CFLAGS := -Wall -g -DMACOSX -ObjC -Dmain=SDL_main -I/usr/include/ -I/usr/include/SDL/ -I/usr/X11R6/include/ diff --git a/Makefile.common.mk b/Makefile.common.mk index 481f378..5300b20 100644 --- a/Makefile.common.mk +++ b/Makefile.common.mk @@ -6,9 +6,9 @@ ifeq ($(VERBOSE_BUILD),true) DO_CC=$(CC) $(CFLAGS) -o $@ -c $< DO_CXX=$(CXX) $(CFLAGS) -o $@ -c $< else - DO_CC=@$(ECHO) "CC: $@" ;\ + DO_CC=@$(ECHO) "CC: $@" &&\ $(CC) $(CFLAGS) -o $@ -c $< - DO_CXX=@$(ECHO) "CXX: $@" ;\ + DO_CXX=@$(ECHO) "CXX: $@" &&\ $(CXX) $(CFLAGS) -o $@ -c $< endif @@ -17,26 +17,26 @@ endif ######################## CFLAGS += -Isrc GAMELIB_HEADS := \ - src$(SLASH)Time.h \ - src$(SLASH)Util.h \ - src$(SLASH)QuadArray2D.h \ - src$(SLASH)Draw.h \ - src$(SLASH)Input.h \ - src$(SLASH)Audio.h \ - src$(SLASH)Anim.h \ - src$(SLASH)Entity.h \ - src$(SLASH)GameLib.h + src/Time.h \ + src/Util.h \ + src/QuadArray2D.h \ + src/Draw.h \ + src/Input.h \ + src/Audio.h \ + src/Anim.h \ + src/Entity.h \ + src/GameLib.h GAMELIBS_OBJS := \ - $(BUILDDIR)$(SLASH)GameLib.o$(SLASH)Time.o \ - $(BUILDDIR)$(SLASH)GameLib.o$(SLASH)Util.o \ - $(BUILDDIR)$(SLASH)GameLib.o$(SLASH)QuadArray2D.o \ - $(BUILDDIR)$(SLASH)GameLib.o$(SLASH)Draw.o \ - $(BUILDDIR)$(SLASH)GameLib.o$(SLASH)Input.o \ - $(BUILDDIR)$(SLASH)GameLib.o$(SLASH)Audio.o \ - $(BUILDDIR)$(SLASH)GameLib.o$(SLASH)Anim.o \ - $(BUILDDIR)$(SLASH)GameLib.o$(SLASH)Entity.o \ - $(BUILDDIR)$(SLASH)GameLib.o$(SLASH)GameLib.o -RES_GAMELIB_OUT := $(BUILDDIR)$(SLASH)$(RES_GAMELIB) + $(BUILDDIR)/Time.o \ + $(BUILDDIR)/Util.o \ + $(BUILDDIR)/QuadArray2D.o \ + $(BUILDDIR)/Draw.o \ + $(BUILDDIR)/Input.o \ + $(BUILDDIR)/Audio.o \ + $(BUILDDIR)/Anim.o \ + $(BUILDDIR)/Entity.o \ + $(BUILDDIR)/GameLib.o +RES_GAMELIB_OUT := $(BUILDDIR)/$(RES_GAMELIB) ################# # General Rules # @@ -45,10 +45,9 @@ all: $(BUILDDIR) $(RES_GAMELIB_OUT) $(BUILDDIR): $(MKDIR) $(BUILDDIR) - $(MKDIR) $(BUILDDIR)$(SLASH)GameLib.o clean: - $(RM) $(GAMELIBS_OBJS) $(RES_GAMELIB_OUT) + $(RM) $(BUILDDIR) lib: $(BUILDDIR) $(RES_GAMELIB_OUT) @@ -57,23 +56,23 @@ rebuild: clean all ################# # GameLib Rules # ################# -$(BUILDDIR)$(SLASH)GameLib.o$(SLASH)Time.o: src$(SLASH)Time.c $(HEADS) +$(BUILDDIR)/Time.o: src/Time.c $(HEADS) $(DO_CC) -$(BUILDDIR)$(SLASH)GameLib.o$(SLASH)Util.o: src$(SLASH)Util.c $(HEADS) +$(BUILDDIR)/Util.o: src/Util.c $(HEADS) $(DO_CC) -$(BUILDDIR)$(SLASH)GameLib.o$(SLASH)QuadArray2D.o: src$(SLASH)QuadArray2D.c $(HEADS) +$(BUILDDIR)/QuadArray2D.o: src/QuadArray2D.c $(HEADS) $(DO_CC) -$(BUILDDIR)$(SLASH)GameLib.o$(SLASH)Draw.o: src$(SLASH)Draw.c $(HEADS) +$(BUILDDIR)/Draw.o: src/Draw.c $(HEADS) $(DO_CC) -$(BUILDDIR)$(SLASH)GameLib.o$(SLASH)Input.o: src$(SLASH)Input.c $(HEADS) +$(BUILDDIR)/Input.o: src/Input.c $(HEADS) $(DO_CC) -$(BUILDDIR)$(SLASH)GameLib.o$(SLASH)Audio.o: src$(SLASH)Audio.c $(HEADS) +$(BUILDDIR)/Audio.o: src/Audio.c $(HEADS) $(DO_CC) -$(BUILDDIR)$(SLASH)GameLib.o$(SLASH)Entity.o: src$(SLASH)Entity.c $(HEADS) +$(BUILDDIR)/Entity.o: src/Entity.c $(HEADS) $(DO_CC) -$(BUILDDIR)$(SLASH)GameLib.o$(SLASH)Anim.o: src$(SLASH)Anim.c $(HEADS) +$(BUILDDIR)/Anim.o: src/Anim.c $(HEADS) $(DO_CC) -$(BUILDDIR)$(SLASH)GameLib.o$(SLASH)GameLib.o: src$(SLASH)GameLib.c $(HEADS) +$(BUILDDIR)/GameLib.o: src/GameLib.c $(HEADS) $(DO_CC) diff --git a/Makefile.emscripten.mk b/Makefile.emscripten.mk index dac2b53..3e828c2 100644 --- a/Makefile.emscripten.mk +++ b/Makefile.emscripten.mk @@ -1,11 +1,10 @@ CC := emcc AR := emar LAUNCHER := emrun --port 8080 -RM := del +RM := del /Q /S MKDIR := mkdir ECHO := echo -VERBOSE_BUILD := true -SLASH := \\ +VERBOSE_BUILD := false LIBS := CFLAGS := -s FULL_ES2=1 -s ASM_JS=1 -O1 -Wno-implicit-function-declaration -DEMSCRIPTEN @@ -17,7 +16,6 @@ BUILDDIR := build-emscripten ifeq ($(target),release) CFLAGS := $(CFLAGS) -O2 BUILDDIR := build-emscripten-release - LDFLAGS := --preload-file data -s TOTAL_MEMORY=134217728 --emrun endif include Makefile.common.mk