89 lines
1.7 KiB
Makefile
89 lines
1.7 KiB
Makefile
|
|
########################
|
|
# 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/TimeUtils.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)/TimeUtils.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 #
|
|
#################
|
|
all: $(BUILDDIR) $(RES_GAMELIB_OUT)
|
|
|
|
$(BUILDDIR):
|
|
$(MKDIR) $(BUILDDIR)
|
|
|
|
clean:
|
|
$(RM) $(BUILDDIR)
|
|
|
|
lib: $(BUILDDIR) $(RES_GAMELIB_OUT)
|
|
|
|
rebuild: clean all
|
|
|
|
#################
|
|
# GameLib Rules #
|
|
#################
|
|
$(BUILDDIR)/TimeUtils.o: src/TimeUtils.c $(HEADS)
|
|
$(DO_CC)
|
|
$(BUILDDIR)/Util.o: src/Util.c $(HEADS)
|
|
$(DO_CC)
|
|
$(BUILDDIR)/QuadArray2D.o: src/QuadArray2D.c $(HEADS)
|
|
$(DO_CC)
|
|
$(BUILDDIR)/Draw.o: src/Draw.c $(HEADS)
|
|
$(DO_CC)
|
|
$(BUILDDIR)/Input.o: src/Input.c $(HEADS)
|
|
$(DO_CC)
|
|
$(BUILDDIR)/Audio.o: src/Audio.c $(HEADS)
|
|
$(DO_CC)
|
|
$(BUILDDIR)/Entity.o: src/Entity.c $(HEADS)
|
|
$(DO_CC)
|
|
$(BUILDDIR)/Anim.o: src/Anim.c $(HEADS)
|
|
$(DO_CC)
|
|
$(BUILDDIR)/GameLib.o: src/GameLib.c $(HEADS)
|
|
$(DO_CC)
|
|
|
|
|
|
################
|
|
# Result Rules #
|
|
################
|
|
|
|
$(RES_GAMELIB_OUT): $(GAMELIBS_OBJS)
|
|
@$(ECHO) "STATICLIB: $@"
|
|
@$(AR) rcs $(RES_GAMELIB_OUT) $(GAMELIBS_OBJS)
|
|
|
|
|
|
|