diff options
Diffstat (limited to 'frontends/calculator/CEdev/include/.makefile')
| -rw-r--r-- | frontends/calculator/CEdev/include/.makefile | 426 |
1 files changed, 213 insertions, 213 deletions
diff --git a/frontends/calculator/CEdev/include/.makefile b/frontends/calculator/CEdev/include/.makefile index 8bc89e6..c6f243c 100644 --- a/frontends/calculator/CEdev/include/.makefile +++ b/frontends/calculator/CEdev/include/.makefile @@ -1,213 +1,213 @@ -#---------------------------- -# Core C Makefile -#---------------------------- -CLEANUP ?= YES -BSSHEAP_LOW ?= D031F6 -BSSHEAP_HIGH ?= D13FD6 -STACK_HIGH ?= D1A87E -INIT_LOC ?= D1A87F -USE_FLASH_FUNCTIONS ?= YES -OUTPUT_MAP ?= YES -ARCHIVED ?= NO -OPT_MODE ?= -optsize -#---------------------------- -SRCDIR ?= src -OBJDIR ?= obj -BINDIR ?= bin -GFXDIR ?= src/gfx -#---------------------------- - -VERSION := 8.5 - -#---------------------------- -# try not to edit anything below these lines unless you know what you are doing -#---------------------------- - -#---------------------------- - -# define some common makefile things -empty := -space := $(empty) $(empty) -comma := , - -TARGET ?= $(NAME) -ICONPNG ?= $(ICON) -DEBUGMODE = NDEBUG -CCDEBUGFLAG = -nodebug - -# verbosity -V ?= 0 -ifeq ($(V),0) -Q = @ -else -Q = -endif - -# get the os specific items -ifeq ($(OS),Windows_NT) -SHELL := cmd.exe -MAKEDIR := $(CURDIR) -NATIVEPATH = $(subst /,\,$1) -WINPATH = $(NATIVEPATH) -WINRELPATH = $(subst /,\,$1) -RM = del /q /f 2>nul -CEDEV ?= $(call NATIVEPATH,$(realpath ..\..)) -BIN ?= $(call NATIVEPATH,$(CEDEV)/bin) -LD = $(call NATIVEPATH,$(BIN)/fasmg.exe) -CC = $(call NATIVEPATH,$(BIN)/ez80cc.exe) -CV = $(call NATIVEPATH,$(BIN)/convhex.exe) -PG = $(call NATIVEPATH,$(BIN)/convpng.exe) -CD = cd -CP = copy /y -MV = move /y >nul -NULL = >nul 2>&1 -RMDIR = call && (if exist $1 rmdir /s /q $1) -MKDIR = call && (if not exist $1 mkdir $1) -QUOTE_ARG = "$(subst ",',$1)"#' -TO_LOWER = $1 -else -MAKEDIR := $(CURDIR) -NATIVEPATH = $(subst \,/,$1) -WINPATH = $(shell winepath -w $1) -WINRELPATH = $(subst /,\,$1) -RM = rm -f -CEDEV ?= $(call NATIVEPATH,$(realpath ..\..)) -BIN ?= $(call NATIVEPATH,$(CEDEV)/bin) -CC = $(call NATIVEPATH,wine "$(BIN)/ez80cc.exe") -LD = $(call NATIVEPATH,$(BIN)/fasmg) -CV = $(call NATIVEPATH,$(BIN)/convhex) -PG = $(call NATIVEPATH,$(BIN)/convpng) -CD = cd -CP = cp -MV = mv -RMDIR = rm -rf $1 -MKDIR = mkdir -p $1 -QUOTE_ARG = '$(subst ','\'',$1)'#' -TO_LOWER = $(shell printf %s $(call QUOTE_ARG,$1) | tr [:upper:] [:lower:]) -endif -FASMG_FILES = $(subst $(space),$(comma) ,$(patsubst %,"%",$(subst ",\",$(subst \,\\,$(call NATIVEPATH,$1)))))#" - -# ensure native paths -SRCDIR := $(call NATIVEPATH,$(SRCDIR)) -OBJDIR := $(call NATIVEPATH,$(OBJDIR)) -BINDIR := $(call NATIVEPATH,$(BINDIR)) -GFXDIR := $(call NATIVEPATH,$(GFXDIR)) - -# generate default names -TARGETBIN := $(TARGET).bin -TARGETMAP := $(TARGET).map -TARGET8XP := $(TARGET).8xp -ICON_ASM := iconc.src - -# init conditionals -F_STARTUP := $(call NATIVEPATH,$(CEDEV)/lib/cstartup.src) -F_LAUNCHER := $(call NATIVEPATH,$(CEDEV)/lib/libheader.src) -F_CLEANUP := $(call NATIVEPATH,$(CEDEV)/lib/ccleanup.src) - -# source: http://blog.jgc.org/2011/07/gnu-make-recursive-wildcard-function.html -rwildcard = $(foreach d,$(wildcard $1*),$(call rwildcard,$d/,$2)$(filter $(subst *,%,$2),$d)) - -# find all of the available C, H and ASM files (Remember, you can create C <-> assembly routines easily this way) -CSOURCES := $(call rwildcard,$(SRCDIR),*.c) -CPPSOURCES := $(call rwildcard,$(SRCDIR),*.cpp) -USERHEADERS := $(call rwildcard,$(SRCDIR),*.h *.hpp) -ASMSOURCES := $(call rwildcard,$(SRCDIR),*.asm) - -# create links for later -LINK_CSOURCES := $(CSOURCES:$(SRCDIR)/%.c=$(OBJDIR)/%.src) -LINK_CPPSOURCES := $(CPPSOURCES:$(SRCDIR)/%=$(OBJDIR)/%.src) -LINK_ASMSOURCES := $(ASMSOURCES) - -# files created to be used for linking -LINK_FILES := $(LINK_CSOURCES) $(LINK_CPPSOURCES) $(LINK_ASMSOURCES) -LINK_LIBS := $(wildcard $(CEDEV)/lib/libload/*.lib) -LINK_LIBLOAD := $(CEDEV)/lib/libload.lib - -# check if there is an icon present that we can convert; if so, generate a recipe to build it properly -ifneq ("$(wildcard $(ICONPNG))","") -F_ICON := $(OBJDIR)/$(ICON_ASM) -ICON_CONV := $(PG) -c $(ICONPNG)$(comma)$(call NATIVEPATH,$(F_ICON))$(comma)$(DESCRIPTION) -LINK_ICON = , $(call FASMG_FILES,$(F_ICON)) used -endif - -# determine if output should be archived or compressed -ifeq ($(ARCHIVED),YES) -CVFLAGS += -a -endif -ifeq ($(COMPRESSED),YES) -CVFLAGS += -x -endif -ifeq ($(CLEANUP),YES) -LINK_CLEANUP = , $(call FASMG_FILES,$(F_CLEANUP)) used -endif -ifeq ($(OUTPUT_MAP),YES) -LDMAPFLAG = -i map -endif - -# choose static or linked flash functions -ifeq ($(USE_FLASH_FUNCTIONS),YES) -STATIC := 0 -else -STATIC := 1 -endif - -# define the C flags used by the Zilog compiler -CFLAGS ?= \ - -noasm $(CCDEBUGFLAG) -nogenprint -keepasm -quiet $(OPT_MODE) -cpu:EZ80F91 -noreduceopt -nolistinc -nomodsect -define:_EZ80F91 -define:_EZ80 -define:$(DEBUGMODE) - -# these are the linker flags, basically organized to properly set up the environment -LDFLAGS ?= \ - $(call QUOTE_ARG,$(call NATIVEPATH,$(CEDEV)/include/fasmg-ez80/ld.fasmg)) \ - -i $(call QUOTE_ARG,include $(call FASMG_FILES,$(CEDEV)/include/.linker_script)) \ - $(LDDEBUGFLAG) \ - $(LDMAPFLAG) \ - -i $(call QUOTE_ARG,range bss $$$(BSSHEAP_LOW) : $$$(BSSHEAP_HIGH)) \ - -i $(call QUOTE_ARG,symbol __stack = $$$(STACK_HIGH)) \ - -i $(call QUOTE_ARG,locate header at $$$(INIT_LOC)) \ - -i $(call QUOTE_ARG,STATIC := $(STATIC)) \ - -i $(call QUOTE_ARG,srcs $(call FASMG_FILES,$(F_LAUNCHER)) used if libs.length$(LINK_ICON)$(LINK_CLEANUP)$(comma) $(call FASMG_FILES,$(F_STARTUP)) used$(comma) $(call FASMG_FILES,$(LINK_FILES))) \ - -i $(call QUOTE_ARG,libs $(call FASMG_FILES,$(LINK_LIBLOAD)) used if libs.length$(comma) $(call FASMG_FILES,$(LINK_LIBS))) - -# this rule is trigged to build everything -all: dirs $(BINDIR)/$(TARGET8XP) ; - -# this rule is trigged to build debug everything -debug: LDDEBUGFLAG = -i dbg -debug: DEBUGMODE = DEBUG -debug: CCDEBUGFLAG = -debug -debug: dirs $(BINDIR)/$(TARGET8XP) ; - -dirs: - @echo C CE SDK Version $(VERSION) && \ - $(call MKDIR,$(BINDIR)) && \ - $(call MKDIR,$(OBJDIR)) - -$(BINDIR)/$(TARGET8XP): $(BINDIR)/$(TARGETBIN) - $(Q)$(CD) $(BINDIR) && \ - $(CV) $(CVFLAGS) $(notdir $<) $(notdir $@) - -$(BINDIR)/$(TARGETBIN): $(LINK_FILES) $(F_ICON) - $(Q)$(LD) $(LDFLAGS) $@ - -# this rule handles conversion of the icon, if it is ever updated -$(OBJDIR)/$(ICON_ASM): $(ICONPNG) - $(Q)$(ICON_CONV) - -# these rules compile the source files into object files -$(OBJDIR)/%.src: $(SRCDIR)/%.c $(USERHEADERS) - $(Q)$(call MKDIR,$(call NATIVEPATH,$(@D))) && \ - $(CC) $(CFLAGS) $(call QUOTE_ARG,$(call WINPATH,$(addprefix $(MAKEDIR)/,$<))) && \ - $(MV) $(call QUOTE_ARG,$(call TO_LOWER,$(@F))) $(call QUOTE_ARG,$@) - -clean: - $(Q)$(call RMDIR,$(OBJDIR)) - $(Q)$(call RMDIR,$(BINDIR)) - @echo Cleaned build files. - -gfx: - $(Q)$(CD) $(GFXDIR) && convpng - -version: - @echo C SDK Version $(VERSION) - -.PHONY: all clean version gfx dirs debug +#----------------------------
+# Core C Makefile
+#----------------------------
+CLEANUP ?= YES
+BSSHEAP_LOW ?= D031F6
+BSSHEAP_HIGH ?= D13FD6
+STACK_HIGH ?= D1A87E
+INIT_LOC ?= D1A87F
+USE_FLASH_FUNCTIONS ?= YES
+OUTPUT_MAP ?= YES
+ARCHIVED ?= NO
+OPT_MODE ?= -optsize
+#----------------------------
+SRCDIR ?= src
+OBJDIR ?= obj
+BINDIR ?= bin
+GFXDIR ?= src/gfx
+#----------------------------
+
+VERSION := 8.5
+
+#----------------------------
+# try not to edit anything below these lines unless you know what you are doing
+#----------------------------
+
+#----------------------------
+
+# define some common makefile things
+empty :=
+space := $(empty) $(empty)
+comma := ,
+
+TARGET ?= $(NAME)
+ICONPNG ?= $(ICON)
+DEBUGMODE = NDEBUG
+CCDEBUGFLAG = -nodebug
+
+# verbosity
+V ?= 0
+ifeq ($(V),0)
+Q = @
+else
+Q =
+endif
+
+# get the os specific items
+ifeq ($(OS),Windows_NT)
+SHELL := cmd.exe
+MAKEDIR := $(CURDIR)
+NATIVEPATH = $(subst /,\,$1)
+WINPATH = $(NATIVEPATH)
+WINRELPATH = $(subst /,\,$1)
+RM = del /q /f 2>nul
+CEDEV ?= $(call NATIVEPATH,$(realpath ..\..))
+BIN ?= $(call NATIVEPATH,$(CEDEV)/bin)
+LD = $(call NATIVEPATH,$(BIN)/fasmg.exe)
+CC = $(call NATIVEPATH,$(BIN)/ez80cc.exe)
+CV = $(call NATIVEPATH,$(BIN)/convhex.exe)
+PG = $(call NATIVEPATH,$(BIN)/convpng.exe)
+CD = cd
+CP = copy /y
+MV = move /y >nul
+NULL = >nul 2>&1
+RMDIR = call && (if exist $1 rmdir /s /q $1)
+MKDIR = call && (if not exist $1 mkdir $1)
+QUOTE_ARG = "$(subst ",',$1)"#'
+TO_LOWER = $1
+else
+MAKEDIR := $(CURDIR)
+NATIVEPATH = $(subst \,/,$1)
+WINPATH = $(shell winepath -w $1)
+WINRELPATH = $(subst /,\,$1)
+RM = rm -f
+CEDEV ?= $(call NATIVEPATH,$(realpath ..\..))
+BIN ?= $(call NATIVEPATH,$(CEDEV)/bin)
+CC = $(call NATIVEPATH,wine "$(BIN)/ez80cc.exe")
+LD = $(call NATIVEPATH,$(BIN)/fasmg)
+CV = $(call NATIVEPATH,$(BIN)/convhex)
+PG = $(call NATIVEPATH,$(BIN)/convpng)
+CD = cd
+CP = cp
+MV = mv
+RMDIR = rm -rf $1
+MKDIR = mkdir -p $1
+QUOTE_ARG = '$(subst ','\'',$1)'#'
+TO_LOWER = $(shell printf %s $(call QUOTE_ARG,$1) | tr [:upper:] [:lower:])
+endif
+FASMG_FILES = $(subst $(space),$(comma) ,$(patsubst %,"%",$(subst ",\",$(subst \,\\,$(call NATIVEPATH,$1)))))#"
+
+# ensure native paths
+SRCDIR := $(call NATIVEPATH,$(SRCDIR))
+OBJDIR := $(call NATIVEPATH,$(OBJDIR))
+BINDIR := $(call NATIVEPATH,$(BINDIR))
+GFXDIR := $(call NATIVEPATH,$(GFXDIR))
+
+# generate default names
+TARGETBIN := $(TARGET).bin
+TARGETMAP := $(TARGET).map
+TARGET8XP := $(TARGET).8xp
+ICON_ASM := iconc.src
+
+# init conditionals
+F_STARTUP := $(call NATIVEPATH,$(CEDEV)/lib/cstartup.src)
+F_LAUNCHER := $(call NATIVEPATH,$(CEDEV)/lib/libheader.src)
+F_CLEANUP := $(call NATIVEPATH,$(CEDEV)/lib/ccleanup.src)
+
+# source: http://blog.jgc.org/2011/07/gnu-make-recursive-wildcard-function.html
+rwildcard = $(foreach d,$(wildcard $1*),$(call rwildcard,$d/,$2)$(filter $(subst *,%,$2),$d))
+
+# find all of the available C, H and ASM files (Remember, you can create C <-> assembly routines easily this way)
+CSOURCES := $(call rwildcard,$(SRCDIR),*.c)
+CPPSOURCES := $(call rwildcard,$(SRCDIR),*.cpp)
+USERHEADERS := $(call rwildcard,$(SRCDIR),*.h *.hpp)
+ASMSOURCES := $(call rwildcard,$(SRCDIR),*.asm)
+
+# create links for later
+LINK_CSOURCES := $(CSOURCES:$(SRCDIR)/%.c=$(OBJDIR)/%.src)
+LINK_CPPSOURCES := $(CPPSOURCES:$(SRCDIR)/%=$(OBJDIR)/%.src)
+LINK_ASMSOURCES := $(ASMSOURCES)
+
+# files created to be used for linking
+LINK_FILES := $(LINK_CSOURCES) $(LINK_CPPSOURCES) $(LINK_ASMSOURCES)
+LINK_LIBS := $(wildcard $(CEDEV)/lib/libload/*.lib)
+LINK_LIBLOAD := $(CEDEV)/lib/libload.lib
+
+# check if there is an icon present that we can convert; if so, generate a recipe to build it properly
+ifneq ("$(wildcard $(ICONPNG))","")
+F_ICON := $(OBJDIR)/$(ICON_ASM)
+ICON_CONV := $(PG) -c $(ICONPNG)$(comma)$(call NATIVEPATH,$(F_ICON))$(comma)$(DESCRIPTION)
+LINK_ICON = , $(call FASMG_FILES,$(F_ICON)) used
+endif
+
+# determine if output should be archived or compressed
+ifeq ($(ARCHIVED),YES)
+CVFLAGS += -a
+endif
+ifeq ($(COMPRESSED),YES)
+CVFLAGS += -x
+endif
+ifeq ($(CLEANUP),YES)
+LINK_CLEANUP = , $(call FASMG_FILES,$(F_CLEANUP)) used
+endif
+ifeq ($(OUTPUT_MAP),YES)
+LDMAPFLAG = -i map
+endif
+
+# choose static or linked flash functions
+ifeq ($(USE_FLASH_FUNCTIONS),YES)
+STATIC := 0
+else
+STATIC := 1
+endif
+
+# define the C flags used by the Zilog compiler
+CFLAGS ?= \
+ -noasm $(CCDEBUGFLAG) -nogenprint -keepasm -quiet $(OPT_MODE) -cpu:EZ80F91 -noreduceopt -nolistinc -nomodsect -define:_EZ80F91 -define:_EZ80 -define:$(DEBUGMODE)
+
+# these are the linker flags, basically organized to properly set up the environment
+LDFLAGS ?= \
+ $(call QUOTE_ARG,$(call NATIVEPATH,$(CEDEV)/include/fasmg-ez80/ld.fasmg)) \
+ -i $(call QUOTE_ARG,include $(call FASMG_FILES,$(CEDEV)/include/.linker_script)) \
+ $(LDDEBUGFLAG) \
+ $(LDMAPFLAG) \
+ -i $(call QUOTE_ARG,range bss $$$(BSSHEAP_LOW) : $$$(BSSHEAP_HIGH)) \
+ -i $(call QUOTE_ARG,symbol __stack = $$$(STACK_HIGH)) \
+ -i $(call QUOTE_ARG,locate header at $$$(INIT_LOC)) \
+ -i $(call QUOTE_ARG,STATIC := $(STATIC)) \
+ -i $(call QUOTE_ARG,srcs $(call FASMG_FILES,$(F_LAUNCHER)) used if libs.length$(LINK_ICON)$(LINK_CLEANUP)$(comma) $(call FASMG_FILES,$(F_STARTUP)) used$(comma) $(call FASMG_FILES,$(LINK_FILES))) \
+ -i $(call QUOTE_ARG,libs $(call FASMG_FILES,$(LINK_LIBLOAD)) used if libs.length$(comma) $(call FASMG_FILES,$(LINK_LIBS)))
+
+# this rule is trigged to build everything
+all: dirs $(BINDIR)/$(TARGET8XP) ;
+
+# this rule is trigged to build debug everything
+debug: LDDEBUGFLAG = -i dbg
+debug: DEBUGMODE = DEBUG
+debug: CCDEBUGFLAG = -debug
+debug: dirs $(BINDIR)/$(TARGET8XP) ;
+
+dirs:
+ @echo C CE SDK Version $(VERSION) && \
+ $(call MKDIR,$(BINDIR)) && \
+ $(call MKDIR,$(OBJDIR))
+
+$(BINDIR)/$(TARGET8XP): $(BINDIR)/$(TARGETBIN)
+ $(Q)$(CD) $(BINDIR) && \
+ $(CV) $(CVFLAGS) $(notdir $<) $(notdir $@)
+
+$(BINDIR)/$(TARGETBIN): $(LINK_FILES) $(F_ICON)
+ $(Q)$(LD) $(LDFLAGS) $@
+
+# this rule handles conversion of the icon, if it is ever updated
+$(OBJDIR)/$(ICON_ASM): $(ICONPNG)
+ $(Q)$(ICON_CONV)
+
+# these rules compile the source files into object files
+$(OBJDIR)/%.src: $(SRCDIR)/%.c $(USERHEADERS)
+ $(Q)$(call MKDIR,$(call NATIVEPATH,$(@D))) && \
+ $(CC) $(CFLAGS) $(call QUOTE_ARG,$(call WINPATH,$(addprefix $(MAKEDIR)/,$<))) && \
+ $(MV) $(call QUOTE_ARG,$(call TO_LOWER,$(@F))) $(call QUOTE_ARG,$@)
+
+clean:
+ $(Q)$(call RMDIR,$(OBJDIR))
+ $(Q)$(call RMDIR,$(BINDIR))
+ @echo Cleaned build files.
+
+gfx:
+ $(Q)$(CD) $(GFXDIR) && convpng
+
+version:
+ @echo C SDK Version $(VERSION)
+
+.PHONY: all clean version gfx dirs debug
|