📄 null.rules
字号:
#-*-Makefile-*- vim:syntax=make
#$Id: null.rules,v 1.9 2009/11/14 06:51:21 razvanm Exp $
define NULL_HELP
NULL extras:
debug : compile with minimal optimization and debug symbols
endef
HELP += $(NULL_HELP)
export GCC=gcc
OBJCOPY = objcopy
OBJDUMP = objdump
NCC = ncc
LIBS = -lm
BUILDDIR ?= build/$(PLATFORM)
MAIN_EXE = $(BUILDDIR)/main.exe
MAIN_SREC = $(BUILDDIR)/main.srec
MAIN_IHEX = $(BUILDDIR)/main.ihex
INSTALL_SREC = $(MAIN_SREC).out$(if $(NODEID),-$(NODEID),)
VOLUMEFILE = volumes-at45db.xml
VOLUME_ALLOCATOR ?= tos-storage-at45db
PFLAGS += -Wall -Wshadow -fnesc-gcc=$(GCC) $(NESC_FLAGS)
PFLAGS += -target=$(PLATFORM) -fnesc-cfile=$(BUILDDIR)/app.c
ifdef MSG_SIZE
PFLAGS += -DTOSH_DATA_LENGTH=$(MSG_SIZE)
endif
ifdef DEFAULT_LOCAL_GROUP
PFLAGS += -DDEFINED_TOS_AM_GROUP=$(DEFAULT_LOCAL_GROUP)
endif
ifeq ($(findstring Darwin, $(shell uname)), Darwin)
CFLAGS += -D_FORTIFY_SOURCE=0
OBJCOPY = /usr/bin/true
OBJDUMP = /usr/bin/true
endif
BUILDLESS_DEPS += bytes
# Build storage file if volumes.xml present
# We "steal" the at45db storage spec
ifneq ($(wildcard $(VOLUMEFILE)), )
build_storage: $(BUILDDIR)/StorageVolumes.h
exe0: build_storage
$(BUILDDIR)/StorageVolumes.h: $(VOLUMEFILE)
$(VOLUME_ALLOCATOR) $(VOLUME_ALLOCATOR_FLAGS) <$(VOLUMEFILE) >$@
PFLAGS += -I$(BUILDDIR)
else
build_storage:
endif
ifndef BUILD_DEPS
ifeq ($(filter $(BUILDLESS_DEPS),$(GOALS)),)
BUILD_DEPS = exe bytes $(POST_BUILD_EXTRA_DEPS)
endif
endif
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 + -