Separate example game to Example.GameLib.

This commit is contained in:
2020-04-20 03:11:23 +02:00
committed by Valeriano A.R
parent 08068a825b
commit 8349b60b34
51 changed files with 829 additions and 935 deletions

89
Makefile.common.mk Normal file
View File

@@ -0,0 +1,89 @@
########################
# Utility Declarations #
########################
ifeq ($(VERBOSE_BUILD),true)
DO_CC=$(CC) $(CFLAGS) -o $@ -c $<
DO_CXX=$(CXX) $(CFLAGS) -o $@ -c $<
else
DO_CC=@$(ECHO) "CC: $@" ;\
$(CC) $(CFLAGS) -o $@ -c $<
DO_CXX=@$(ECHO) "CXX: $@" ;\
$(CXX) $(CFLAGS) -o $@ -c $<
endif
########################
# GameLib Declarations #
########################
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
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)
#################
# General Rules #
#################
all: $(BUILDDIR) $(RES_GAMELIB_OUT)
$(BUILDDIR):
$(MKDIR) $(BUILDDIR)
$(MKDIR) $(BUILDDIR)$(SLASH)GameLib.o
clean:
$(RM) $(GAMELIBS_OBJS) $(RES_GAMELIB_OUT)
lib: $(BUILDDIR) $(RES_GAMELIB_OUT)
rebuild: clean all
#################
# GameLib Rules #
#################
$(BUILDDIR)$(SLASH)GameLib.o$(SLASH)Time.o: src$(SLASH)Time.c $(HEADS)
$(DO_CC)
$(BUILDDIR)$(SLASH)GameLib.o$(SLASH)Util.o: src$(SLASH)Util.c $(HEADS)
$(DO_CC)
$(BUILDDIR)$(SLASH)GameLib.o$(SLASH)QuadArray2D.o: src$(SLASH)QuadArray2D.c $(HEADS)
$(DO_CC)
$(BUILDDIR)$(SLASH)GameLib.o$(SLASH)Draw.o: src$(SLASH)Draw.c $(HEADS)
$(DO_CC)
$(BUILDDIR)$(SLASH)GameLib.o$(SLASH)Input.o: src$(SLASH)Input.c $(HEADS)
$(DO_CC)
$(BUILDDIR)$(SLASH)GameLib.o$(SLASH)Audio.o: src$(SLASH)Audio.c $(HEADS)
$(DO_CC)
$(BUILDDIR)$(SLASH)GameLib.o$(SLASH)Entity.o: src$(SLASH)Entity.c $(HEADS)
$(DO_CC)
$(BUILDDIR)$(SLASH)GameLib.o$(SLASH)Anim.o: src$(SLASH)Anim.c $(HEADS)
$(DO_CC)
$(BUILDDIR)$(SLASH)GameLib.o$(SLASH)GameLib.o: src$(SLASH)GameLib.c $(HEADS)
$(DO_CC)
################
# Result Rules #
################
$(RES_GAMELIB_OUT): $(GAMELIBS_OBJS)
@$(ECHO) "STATICLIB: $@"
@$(AR) rcs $(RES_GAMELIB_OUT) $(GAMELIBS_OBJS)