📄 makefile.inc
字号:
## These are toplevel Make variables common to both processor# make systems. This file governs common make behavior.#export TOOLS_PREFIX=arm-elf-export MAKEFLAGS="-s --no-print-directory"## Create ROM-Image (final)RUN_MODE=ROM_RUN## Create RAM-Image (debugging)#RUN_MODE=RAM_RUNMCU = -mcpu=arm7tdmiARMARCH = -march=armv4tTHUMB = -mthumbTHUMB_IW = -mthumb-interwork# Output format. (can be srec, ihex, binary)#FORMAT = srecFORMAT = binary# Optimization level, can be [0, 1, 2, 3, s]. # 0 = turn off optimization. s = optimize for size.# (Note: 3 is not always the best optimization level. See avr-libc FAQ.)OPTSIZE = -OsOPTNONE = -O0# Debugging format.# Native formats for AVR-GCC's -g are stabs [default], or dwarf-2.# AVR (extended) COFF requires stabs, plus an avr-objcopy run.DEBUG = stabs#DEBUG = dwarf-2# Compiler flag to set the C Standard level.# c89 - "ANSI" C# gnu89 - c89 plus GCC extensions# c99 - ISO C99 standard (not yet fully implemented)# gnu99 - c99 plus GCC extensionsCSTANDARD = -std=gnu99# Place -D or -U options for C hereCDEFS = -D$(RUN_MODE)# Place -I options hereCINCS = -I$(TOPLEVEL)include -I$(TOPLEVEL)libs/include# Place -D or -U options for ASM hereADEFS = -D$(RUN_MODE)# Compiler flags.# -g*: generate debugging information# -O*: optimization level# -f...: tuning, see GCC manual and avr-libc documentation# -Wall...: warning level# -Wa,...: tell GCC to pass this to the assembler.# -adhlns...: create assembler listingCFLAGS = -g$(DEBUG) -march=armv4t#CFLAGS += --verboseCFLAGS += $(CDEFS) $(CINCS)CFLAGS += -Wall -Wstrict-prototypes -Wcast-align -Wcast-qual -WimplicitCFLAGS += -Wmissing-declarationsCFLAGS += -Wmissing-prototypes -Wnested-externs -Wpointer-arith -WswitchCFLAGS += -Wredundant-decls -Wreturn-type -Wshadow -Wstrict-prototypes -WunusedCFLAGS += -Wa,-adhlns=$(<:.c=.lst)CFLAGS += $(patsubst %,-I%,$(EXTRAINCDIRS))CFLAGS += $(CSTANDARD)CFLAGS += -nostdlib -nodefaultlibsCFLAGS += -L$(HOME)/devtools/armThumb/lib/gcc/arm-elf/3.4.3/thumb/interwork/## NONO CFLAGS += -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums# Assembler flags.# -Wa,...: tell GCC to pass this to the assembler.# -ahlms: create listing# -gstabs: have the assembler create line number information; note that# for use in COFF files, additional information about filenames# and function names needs to be present in the assembler source# files -- see avr-libc docs [FIXME: not yet described there]##ASFLAGS = -Wa,-adhlns=$(<:.S=.lst),-gstabs ASFLAGS = $(ADEFS) -Wa,-adhlns=$(<:.S=.lst),-g$(DEBUG)# Define programs and commands.SHELL = shCC = $(TOOLS_PREFIX)gccOBJCOPY = $(TOOLS_PREFIX)objcopyOBJDUMP = $(TOOLS_PREFIX)objdumpSIZE = $(TOOLS_PREFIX)sizeNM = $(TOOLS_PREFIX)nmAR = $(TOOLS_PREFIX)arREMOVE = rm -fCOPY = cp# Define all object files.OBJ = $(SRC:.c=.o) $(ASRC:.S=.o)# Define all listing files.LST = $(ASRC:.S=.lst) $(SRC:.c=.lst)# Compiler flags to generate dependency files.### GENDEPFLAGS = -Wp,-M,-MP,-MT,$(*F).o,-MF,.dep/$(@F).dGENDEPFLAGS = -MD -MP -MF .dep/$(@F).d# Combine all necessary flags and optional flags.# Add target processor to flags.ALL_CFLAGS = $(MCU) $(ARMARCH) -DTOPLEVEL=$(TOPLEVEL) -I. $(CFLAGS) $(GENDEPFLAGS)ALL_ASFLAGS = $(MCU) $(ARMARCH) -I. -x assembler-with-cpp $(ASFLAGS)#sub model must be "LPC2" followed by 3 digit flavor e.g. LPC2138# look in main includes for #ifdef's that are affected by the # particular chip model, i.e. A/D convertor in lpcADC.h#SUBMDL = LPC2138ALL_CFLAGS +=-D$(SUBMDL)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -