📄 avr.rules
字号:
#-*-Makefile-*- vim:syntax=make#$Id: avr.rules,v 1.11 2005/05/18 02:15:43 cssharp Exp $define AVR_HELP AVR extras: debug : compile with minimal optimization and debug symbols debugopt : compile with debug symbols xnp : compile for network programming Programmer options: dapa : (default) use parallel port programmer mib510,<dev> : use MIB510 serial port programming board at port <dev> eprb,<host> : use EPRB at hostname <host> avrisp,<dev> : use AVRISP serial programmer at port <dev> The dev or host parameter for the programmer option need not be specified, in which case it is expected to be defined as in an environment variable of the same name in all caps (such as MIB510, EPRB, or AVRISP).endefHELP += $(AVR_HELP)OBJCOPY = avr-objcopyOBJDUMP = avr-objdumpSET_ID = set-mote-idPROGRAMMER = uispNCC = nccLIBS = -lmBUILDDIR = build/$(PLATFORM)MAIN_EXE = $(BUILDDIR)/main.exeMAIN_SREC = $(BUILDDIR)/main.srecMAIN_IHEX = $(BUILDDIR)/main.ihexINSTALL_SREC = $(MAIN_SREC).out$(if $(NODEID),-$(NODEID),)OPTFLAGS ?= -OsPFLAGS += -Wall -Wshadow -DDEF_TOS_AM_GROUP=$(DEFAULT_LOCAL_GROUP) $(NESC_FLAGS)PFLAGS += -target=$(PLATFORM) -fnesc-cfile=$(BUILDDIR)/app.c -board=$(SENSORBOARD)ifdef MSG_SIZEPFLAGS += -DTOSH_DATA_LENGTH=$(MSG_SIZE)endififdef DEFAULT_PROGRAM_AVRDEFAULT_PROGRAM = $(DEFAULT_PROGRAM_AVR)endifDEFAULT_PROGRAM ?= dapaBUILDLESS_DEPS += bytes# Use the 'if' function instead of the 'ifdef' construct because ifdef freaks# out with call in there. I don't know why.$(if $(PROGRAM),,$(call TOSMake_include,avr/$(DEFAULT_PROGRAM).extra))ifndef BUILD_DEPS ifeq ($(filter $(BUILDLESS_DEPS),$(GOALS)),) BUILD_DEPS = srec tosimage bytes $(POST_BUILD_EXTRA_DEPS) endifendifsetid: FORCE @cmd () { echo "$$@"; $$@; }; if [ x = x$(NODEID) ]; then cmd cp $(MAIN_SREC) $(INSTALL_SREC); else cmd $(SET_ID) $(MAIN_SREC) $(INSTALL_SREC) $(NODEID); fidelsetid: FORCE rm -f $(subst .srec.,.exe.,$(INSTALL_SREC)) $(INSTALL_SREC) srec: exe FORCE $(OBJCOPY) --output-target=srec $(MAIN_EXE) $(MAIN_SREC)tosimage: ihex build_tosimage FORCE @:ihex: exe FORCE $(OBJCOPY) --output-target=ihex $(MAIN_EXE) $(MAIN_IHEX)exe: exe0 bytes FORCE @:exe0: builddir $(BUILD_EXTRA_DEPS) FORCE @echo " compiling $(COMPONENT) to a $(PLATFORM) binary" $(NCC) -o $(MAIN_EXE) $(OPTFLAGS) $(PFLAGS) $(CFLAGS) $(COMPONENT).nc $(LIBS) $(LDFLAGS) @echo " compiled $(COMPONENT) to $(MAIN_EXE)"builddir: FORCE mkdir -p $(BUILDDIR)bytes: FORCE @objdump -h $(MAIN_EXE) | perl -ne '$$b{$$1}=hex $$2 if /^\s*\d+\s*\.(text|data|bss)\s+(\S+)/; END { printf("%16d bytes in ROM\n%16d bytes in RAM\n",$$b{text}+$$b{data},$$b{data}+$$b{bss}); }'
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -