Makefile 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. NAME = WalrusRPG
  2. DEBUG = FALSE
  3. CFLAGS_COMMON = -Wall -W -marm $(addprefix -I,$(INCLUDE))
  4. ifeq ($(DEBUG),FALSE)
  5. CFLAGS_COMMON += -Ofast -flto
  6. else
  7. CFLAGS_COMMON += -O0 -g
  8. endif
  9. CC = nspire-gcc
  10. CFLAGS = $(CFLAGS_COMMON) -std=gnu11
  11. CPP = nspire-g++
  12. CPPFLAGS = $(CFLAGS_COMMON) -std=gnu++11
  13. LDFLAGS = $(CFLAGS_COMMON) -Wl,--gc-sections
  14. ZEHN = genzehn
  15. ZEHNFLAGS = --name "$(NAME)" --compress
  16. SRCS_C :=
  17. SRCS_CPP :=
  18. OBJS = $(BUILT_SRCS_C:%.c=%.o) $(BUILD_SRCS_CPP:%.cpp=%.o)
  19. OBJS += $(addprefix $(OUT)/,$(SRCS_C:%.c=%.o) $(SRCS_CPP:%.cpp=%.o))
  20. INCLUDE :=
  21. BUILT_SRCS :=
  22. BUILT_SRCS_C :=
  23. BUILT_SRCS_CPP :=
  24. OUT = out
  25. ELF = $(OUT)/$(NAME).elf
  26. EXE = $(OUT)/$(NAME).tns
  27. CLEAN_SPEC :=
  28. # Figure out where we are.
  29. define whereami
  30. $(strip \
  31. $(eval LOCAL_MODULE_MAKEFILE := $$(lastword $$(MAKEFILE_LIST))) \
  32. $(if $(filter $(BUILD_SYSTEM)/% $(OUT_DIR)/%,$(LOCAL_MODULE_MAKEFILE)), \
  33. $(error my-dir must be called before including any other makefile.) \
  34. , \
  35. $(patsubst %/,%,$(dir $(LOCAL_MODULE_MAKEFILE))) \
  36. ) \
  37. )
  38. endef
  39. include rules.mk