|
@@ -2,23 +2,31 @@ NAME = WalrusRPG
|
|
|
|
|
|
|
|
DEBUG = FALSE
|
|
DEBUG = FALSE
|
|
|
|
|
|
|
|
-CC = nspire-g++
|
|
|
|
|
-CFLAGS = -Wall -W -marm -std=gnu++98 -I include -I art
|
|
|
|
|
|
|
+CFLAGS_COMMON = -Wall -W -marm -I include -I art
|
|
|
|
|
|
|
|
ifeq ($(DEBUG),FALSE)
|
|
ifeq ($(DEBUG),FALSE)
|
|
|
- CFLAGS += -Ofast -flto
|
|
|
|
|
|
|
+ CFLAGS_COMMON += -Ofast -flto
|
|
|
else
|
|
else
|
|
|
- CFLAGS += -O0 -g
|
|
|
|
|
|
|
+ CFLAGS_COMMON += -O0 -g
|
|
|
endif
|
|
endif
|
|
|
|
|
|
|
|
|
|
+CC = nspire-gcc
|
|
|
|
|
+CFLAGS = $(CFLAGS_COMMON) -std=gnu11
|
|
|
|
|
+
|
|
|
|
|
+CPP = nspire-g++
|
|
|
|
|
+CPPFLAGS = $(CFLAGS_COMMON) -std=gnu++98
|
|
|
|
|
+
|
|
|
|
|
+LD = arm-none-eabi-ld.gold
|
|
|
|
|
+LDFLAGS =
|
|
|
|
|
+
|
|
|
ZEHN = genzehn
|
|
ZEHN = genzehn
|
|
|
ZEHNFLAGS = --name "$(NAME)"
|
|
ZEHNFLAGS = --name "$(NAME)"
|
|
|
|
|
|
|
|
INCDIR = include
|
|
INCDIR = include
|
|
|
SRCDIR = src
|
|
SRCDIR = src
|
|
|
|
|
|
|
|
-SOURCES_C = art/sprites.c $(wildcard SRCDIR/*.c)
|
|
|
|
|
-SOURCES_CPP = $(wildcard SRCDIR/*.cpp)
|
|
|
|
|
|
|
+SOURCES_C = art/sprites.c $(wildcard $(SRCDIR)/*.c)
|
|
|
|
|
+SOURCES_CPP = $(wildcard $(SRCDIR)/*.cpp)
|
|
|
OBJS = $(patsubst %.c,%.o,$(SOURCES_C)) $(patsubst %.cpp,%.o,$(SOURCES_CPP))
|
|
OBJS = $(patsubst %.c,%.o,$(SOURCES_C)) $(patsubst %.cpp,%.o,$(SOURCES_CPP))
|
|
|
|
|
|
|
|
DISTDIR = bin
|
|
DISTDIR = bin
|
|
@@ -28,17 +36,21 @@ EXE = $(DISTDIR)/$(NAME).tns
|
|
|
|
|
|
|
|
all: $(EXE)
|
|
all: $(EXE)
|
|
|
|
|
|
|
|
-%.o: %.c %.cpp
|
|
|
|
|
|
|
+%.o: %.c
|
|
|
@echo "CC: $@"
|
|
@echo "CC: $@"
|
|
|
@$(CC) $(CFLAGS) -I$(INCDIR) -c $< -o $@
|
|
@$(CC) $(CFLAGS) -I$(INCDIR) -c $< -o $@
|
|
|
|
|
|
|
|
|
|
+%.o: %.cpp
|
|
|
|
|
+ @echo "CPP: $@"
|
|
|
|
|
+ @$(CPP) $(CPPFLAGS) -I$(INCDIR) -c $< -o $@
|
|
|
|
|
+
|
|
|
art/sprites.c:
|
|
art/sprites.c:
|
|
|
@$(MAKE) -C art/
|
|
@$(MAKE) -C art/
|
|
|
|
|
|
|
|
$(ELF): $(OBJS)
|
|
$(ELF): $(OBJS)
|
|
|
@mkdir -p $(DISTDIR)
|
|
@mkdir -p $(DISTDIR)
|
|
|
@echo "CC: $@"
|
|
@echo "CC: $@"
|
|
|
- @+$(CC) $^ -o $(ELF) $(CFLAGS)
|
|
|
|
|
|
|
+ @+$(LD) $^ -o $(ELF) $(LDFLAGS)
|
|
|
|
|
|
|
|
$(EXE): $(ELF)
|
|
$(EXE): $(ELF)
|
|
|
@mkdir -p $(DISTDIR)
|
|
@mkdir -p $(DISTDIR)
|
|
@@ -46,7 +58,6 @@ $(EXE): $(ELF)
|
|
|
@$(ZEHN) --input $(ELF) --output $(EXE) $(ZEHNFLAGS)
|
|
@$(ZEHN) --input $(ELF) --output $(EXE) $(ZEHNFLAGS)
|
|
|
|
|
|
|
|
clean:
|
|
clean:
|
|
|
- echo $(OBJS)
|
|
|
|
|
rm -rf $(DISTDIR)
|
|
rm -rf $(DISTDIR)
|
|
|
rm -f $(OBJS)
|
|
rm -f $(OBJS)
|
|
|
@$(MAKE) -C art/ clean
|
|
@$(MAKE) -C art/ clean
|