From 55bfff7cf6541caac172b43186cf14405185b14d Mon Sep 17 00:00:00 2001 From: Andrew Opalach Date: Sat, 13 Apr 2019 12:40:52 -0400 Subject: fix curses on linux --- frontends/calculator/CEdev/include/.makefile | 426 +++++++++++++-------------- 1 file changed, 213 insertions(+), 213 deletions(-) (limited to 'frontends/calculator/CEdev/include/.makefile') 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 -- cgit v1.2.3-101-g0448