adding my fucking makefile
This commit is contained in:
87
Makefile
Normal file
87
Makefile
Normal file
@@ -0,0 +1,87 @@
|
||||
#Troy Rosin
|
||||
|
||||
CC =gcc
|
||||
CFLAGS =-g
|
||||
CPPFLAGS =-c -g -Wall -pedantic -Wextra
|
||||
LDFLAGS =-lSDL2 -lm -lSDL2main -lSDL2_image
|
||||
LDFLAGS +=-L/usr/local/lib -lSDL2_ttf
|
||||
INCFLAGS = -I. -Iinclude
|
||||
|
||||
|
||||
INC =include/
|
||||
BIN =build/bin/
|
||||
LIB =build/lib/
|
||||
OBJ =build/obj/
|
||||
DIRS =$(BIN) $(LIB) $(OBJ)
|
||||
|
||||
debug ?=on
|
||||
ifeq ($(debug),on)
|
||||
CPPFLAGS += -Ddebug
|
||||
endif
|
||||
|
||||
BINARIES = game client_test server_test
|
||||
|
||||
all : $(BINARIES)
|
||||
|
||||
clean :
|
||||
rm -rf build/ $(BINARIES)
|
||||
|
||||
$(DIRS) :
|
||||
mkdir -p $@
|
||||
|
||||
## --- OBJECT FILES ---
|
||||
#$(OBJ) : | $(OBJ)
|
||||
# $(CC) $(CPPFLAGS) -o $@ $< $(INCFLAGS)
|
||||
|
||||
$(OBJ)client_test.o : client_test.c | $(OBJ)
|
||||
$(CC) $(CPPFLAGS) -o $@ $< $(INCFLAGS)
|
||||
|
||||
$(OBJ)server_test.o : server_test.c | $(OBJ)
|
||||
$(CC) $(CPPFLAGS) -o $@ $< $(INCFLAGS)
|
||||
|
||||
$(OBJ)main.o : main.c $(INC)input.h $(INC)game.h | $(OBJ)
|
||||
$(CC) $(CPPFLAGS) -o $@ $< $(INCFLAGS)
|
||||
|
||||
$(OBJ)battle.o : battle.c $(INC)game.h $(INC)deck.h | $(OBJ)
|
||||
$(CC) $(CPPFLAGS) -o $@ $< $(INCFLAGS)
|
||||
|
||||
$(OBJ)input.o : input.c $(INC)input.h | $(OBJ)
|
||||
$(CC) $(CPPFLAGS) -o $@ $< $(INCFLAGS)
|
||||
|
||||
$(OBJ)host.o : host.c $(INC)host.h | $(OBJ)
|
||||
$(CC) $(CPPFLAGS) -o $@ $< $(INCFLAGS)
|
||||
|
||||
$(OBJ)join.o : join.c | $(OBJ)
|
||||
$(CC) $(CPPFLAGS) -o $@ $< $(INCFLAGS)
|
||||
|
||||
$(OBJ)options.o : options.c | $(OBJ)
|
||||
$(CC) $(CPPFLAGS) -o $@ $< $(INCFLAGS)
|
||||
|
||||
$(OBJ)game.o : game.c $(INC)game.h | $(OBJ)
|
||||
$(CC) $(CPPFLAGS) -o $@ $< $(INCFLAGS)
|
||||
|
||||
$(OBJ)overworld.o : overworld.c $(INC)overworld.h | $(OBJ)
|
||||
$(CC) $(CPPFLAGS) -o $@ $< $(INCFLAGS)
|
||||
|
||||
|
||||
|
||||
## --- LIBRARY FILES ---
|
||||
#$(LIB) : | $(LIB)
|
||||
# ar rcs $@ $^
|
||||
|
||||
## --- EXECUTABLE FILES ---
|
||||
#$(BIN) : $(OBJ) | $(BIN)
|
||||
# $(CC) $(CFLAGS) -o $@ $< $(LDFLAGS)
|
||||
|
||||
$(BIN)client_test : $(OBJ)client_test.o | $(BIN)
|
||||
$(CC) $(CFLAGS) -o $@ $< $(LDFLAGS)
|
||||
|
||||
$(BIN)server_test: $(OBJ)server_test.o | $(BIN)
|
||||
$(CC) $(CFLAGS) -o $@ $< $(LDFLAGS)
|
||||
|
||||
$(BIN)game : $(OBJ)main.o $(OBJ)input.o $(OBJ)battle.o $(OBJ)game.o\
|
||||
$(OBJ)options.o $(OBJ)host.o $(OBJ)join.o $(OBJ)overworld.o | $(BIN)
|
||||
$(CC) $(CFLAGS) -o $@ $^ $(LDFLAGS)
|
||||
|
||||
$(BINARIES) : % : $(BIN)%
|
||||
ln -sf $< $@
|
||||
Reference in New Issue
Block a user