msp.rules

来自「good best block cipher」· RULES 代码 · 共 146 行

RULES
146
字号
#-*-Makefile-*- vim:syntax=make#$Id: msp.rules,v 1.15 2008/06/24 15:39:13 regehr Exp $#$Id: msp.rules,v 1.15 2009/01/28 15:39:13 swathy Exp $#modification for Minisec's make process on IRIS moteMINISEC = /opt/tinyos-2.1/tos/system-minisec define MSP_HELP MSP extras:   debug    : compile with minimal optimization and debug symbols   debugopt : compile with debug symbols   xnp      : compile for network programming Programmer options:   bsl,auto      : (default) use BSL programmer on the first mote found   bsl,<port>    : use BSL programmer on <port> serial port   bsl,ref,<ref> : use BSL programmer on the mote with reference <ref>   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 BSL).endefHELP += $(MSP_HELP)ifdef MAKE_DEPUTY_FLAG        NCC_SAFE_TINYOS_FLAGS = -DSAFE_TINYOS -fnesc-deputy -fnesc-deputy-args='-I$(TOSDIR)/lib/safe/include --FLIDs=build/$(PLATFORM)/flids.txt --envmachine -DSAFE_TINYOS --nolib ' $(TOSDIR)/lib/safe/msp430/fail.c else        NCC_SAFE_TINYOS_FLAGS =endif#MSP_NESC_TARGET ?= msp430#MSP_GCC ?= msp430-gcc#MSP_MCU ?= msp430x149#PFLAGS += -fnesc-target=$(MSP_NESC_TARGET) -gcc=$(MSP_GCC) -mmcu=$(MSP_MCU)OBJCOPY = msp430-objcopyOBJDUMP = msp430-objdumpSET_ID = tos-set-symbolsNCC = nccLIBS = -lmAMADDR = ActiveMessageAddressC\$$addrBUILDDIR ?= build/$(PLATFORM)MAIN_EXE = $(BUILDDIR)/main.exeMAIN_IHEX = $(BUILDDIR)/main.ihexINSTALL_IHEX = $(MAIN_IHEX).out$(if $(NODEID),-$(NODEID),)PFLAGS += -Wall -Wshadow $(NESC_FLAGS)PFLAGS += -target=$(PLATFORM) -fnesc-cfile=$(BUILDDIR)/app.c -board=$(SENSORBOARD)ifdef MSG_SIZEPFLAGS += -DTOSH_DATA_LENGTH=$(MSG_SIZE)endififdef DEFAULT_LOCAL_GROUPPFLAGS += -DDEFINED_TOS_AM_GROUP=$(DEFAULT_LOCAL_GROUP)endifDEFAULT_PROGRAM ?= bslBUILDLESS_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,msp/$(DEFAULT_PROGRAM).extra))# Build storage file if volumes.xml presentifneq ($(wildcard $(VOLUME_FILE)), )build_storage: $(BUILDDIR)/StorageVolumes.hexe0: build_storageVOLUME_ALLOCATOR_FLAGS ?= $(BUILDDIR)/StorageVolumes.h: $(VOLUME_FILE)	$(VOLUME_ALLOCATOR) $(VOLUME_ALLOCATOR_FLAGS) $(PLATFORMDIR) <$(VOLUME_FILE) >$@ || rm -f $@PFLAGS += -I$(BUILDDIR)elsebuild_storage:endififndef BUILD_DEPS  ifeq ($(filter $(BUILDLESS_DEPS),$(GOALS)),)    BUILD_DEPS = tosimage $(POST_BUILD_EXTRA_DEPS)  endifendifsetid: FORCE	@cmd () { echo "$$@"; $$@; }; if [ x = x$(NODEID) ]; then cmd cp $(MAIN_IHEX) $(INSTALL_IHEX); else cmd $(SET_ID) --objcopy $(OBJCOPY) --objdump $(OBJDUMP) --target ihex $(MAIN_IHEX) $(INSTALL_IHEX) TOS_NODE_ID=$(NODEID) $(AMADDR)=$(NODEID); fitos_buildinfo: ihex build_buildinfo FORCE  @:  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) FORCEifdef MINISEC	ifeq ($MINISEC).true)	@echo "use minisec"	mv /opt/tinyos-2.1/tos/system/opt/tinyos-2.1/tos/system-plain	cp -Rf $(MINISECROOT)/opt/tinyos-2.1/tos/system	/opt/tinyos-2.1/tos/system/updateKey	@echo "done running updateKey"endifendif‫@echo "    compiling $(COMPONENT) to a $(PLATFORM) binary"	$(NCC) -o $(MAIN_EXE) $(NCC_SAFE_TINYOS_FLAGS) $(OPTFLAGS) $(PFLAGS) $(CFLAGS) $(WIRING_CHECK_FLAGS) $(COMPONENT).nc $(LIBS) $(LDFLAGS)ifdef WIRING_CHECK_FILE	@nescc-wiring $(WIRING_CHECK_FILE)endif	@echo "    compiled $(COMPONENT) to $(MAIN_EXE)"ifdef MINISECifeq ($MINISEC).true) 	@echo "move minisec back"	rm -Rf $(MINISECROOT)/opt/tinyos-2.1/tos/system	mv /opt/tinyos-2.1/tos/system-plain/opt/tinyos-2.1/tos/system	endifendif‫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 + =
减小字号Ctrl + -
显示快捷键?