📄 makerules
字号:
# -*-Makefile-*-## Generel Makerules for all builds#VPATH += $(ROOTDIR)/kernelVPATH += $(ROOTDIR)/modulesINCDIR += -I$(ROOTDIR)/kernel/includeINCDIR += -I$(ROOTDIR)/extensionsINCDIR += -I$(ROOTDIR)/extensions/includeINCDIR += -I$(ROOTDIR)/modulesINCDIR += -I$(ROOTDIR)/modules/includeINCDIR += -I$(ROOTDIR)/modules/interfacesINCDIR += -I$(ROOTDIR)/drivers/includeINCDIR += -I$(ROOTDIR)/drivers/i2c/include# platform must be specified firstinclude $(ROOTDIR)/platform/$(PLATFORM)/Makerules#DEFS += -D'DEBUG(arg...)='#DEFS += -D'DEBUG_SHORT(arg...)='CFLAGS += $(MCUFLAG) -Werror -Wall $(DEFS)LDFLAGS += $(MCUFLAG)SFLAGS += $(MCUFLAG)CC = $(TRG)gccAS = $(TRG)gcc OBJCOPY = $(TRG)objcopyOBJDUMP = $(TRG)objdumpSIZE = $(TRG)size -AHOST = $(shell uname -s)##### Basic node configuration informaton# These values can be overriden an the command line####ifneq ($(ADDRESS),)DEFS += -D'NODE_ADDR=$(ADDRESS)'elseADDRESS=1DEFS += -D'NODE_ADDR=$(ADDRESS)'endififneq ($(PANID),)DEFS += -D'VMAC_PANID=$(PANID)'elsePANID=0x2420DEFS += -D'VMAC_PANID=$(PANID)'endififneq ($(ACK_ENABLED),)DEFS += -D'VMAC_ACK_ENABLED=$(ACK_ENABLED)'endififneq ($(UART_ADDRESS),)DEFS += -D'UART_ADDR=$(UART_ADDRESS)'endififneq ($(I2C_ADDRESS),)DEFS += -D'I2C_ADDR=$(I2C_ADDRESS)'endififneq ($(X),)DEFS += -D'NODE_X=$(X)'endififneq ($(Y),)DEFS += -D'NODE_Y=$(Y)'endififneq ($(Z),)DEFS += -D'NODE_Z=$(Z)'endififneq ($(LOC_UNIT),)DEFS += -D'NODE_LOC_UNIT=$(LOC_UNIT)'endififneq ($(SOS_GROUP),)DEFS += -D'NODE_GROUP_ID=$(SOS_GROUP)'endififneq ($(TX_POWER),)DEFS += -D'RADIO_XMIT_POWER=$(TX_POWER)'endififneq ($(CHANNEL),)DEFS += -D'RADIO_CHANNEL=$(CHANNEL)'endififneq ($(GPS_X_DIR),)DEFS += -D'NODE_GPS_X_DIR=$(GPS_X_DIR)'endififneq ($(GPS_X_DEG),)DEFS += -D'NODE_GPS_X_DEG=$(GPS_X_DEG)'endififneq ($(GPS_X_MIN),)DEFS += -D'NODE_GPS_X_MIN=$(GPS_X_MIN)'endififneq ($(GPS_X_SEC),)DEFS += -D'NODE_GPS_X_SEC=$(GPS_X_SEC)'endififneq ($(GPS_Y_DIR),)DEFS += -D'NODE_GPS_Y_DIR=$(GPS_Y_DIR)'endififneq ($(GPS_Y_DEG),)DEFS += -D'NODE_GPS_Y_DEG=$(GPS_Y_DEG)'endififneq ($(GPS_Y_MIN),)DEFS += -D'NODE_GPS_Y_MIN=$(GPS_Y_MIN)'endififneq ($(GPS_Y_SEC),)DEFS += -D'NODE_GPS_Y_SEC=$(GPS_Y_SEC)'endififneq ($(GPS_Z_UNIT),)DEFS += -D'NODE_GPS_Z_UNIT=$(GPS_Z_UNIT)'endififneq ($(GPS_Z),)DEFS += -D'NODE_GPS_Z=$(GPS_Z)'endififneq ($(MAC),)DEFS += -D'MAC_ADDR=$(MAC)'endif##### A few rule prototypes####build_info: @echo "" @echo "PROJ = $(PROJ)" @echo "PLATFORM = $(PLATFORM)" @echo "PROCESSOR = $(PROCESSOR)" @echo "SB = $(SB)" @echo "" @echo "SRCS = $(SRCS)" @echo "" @echo "OBJS = $(OBJS)" @echo "" @echo "VPATH = $(VPATH)" @echo "" @echo "INCDIR = $(INCDIR)" @echo "" @echo "CFLAGS = $(CFLAGS)" @echo ""%.i : %.c $(CC) -E $(CFLAGS) $(INCDIR) $< -o $@%.s : %.c $(CC) -c $(CFLAGS) $(INCDIR) $< -o $@%.o : %.c $(CC) -c $(CFLAGS) $(INCDIR) $< -o $@%.o : %.s $(AS) -c $(INCDIR) $(SFLAGS) $<%.o : %.S $(AS) -c $(SFLAGS) $(INCDIR) $< -o $@%.elf: $(OBJS) $(CC) $(OBJS) $(LIBS) $(LDFLAGS) -o $@ $(SIZE) -A $@%.elf.lst: %.elf $(OBJDUMP) -h -S $< > $@%.srec : %.elf $(OBJCOPY) -j .text -O srec -R .eeprom $< $@%.ihex : %.elf $(OBJCOPY) -j .text -O ihex -R .eeprom $< $@%.cof : %.elf $(OBJCOPY) --debugging -O coff-ext-avr \ --change-section-address .data-0x800000 \ --change-section-address .bss-0x800000 \ --change-section-address .noinit-0x800000 \ --change-section-address .eeprom-0x810000 \ $< $@%.od: %.elf $(OBJDUMP) -zhD $< > $@%.srec.out.$(ADDRESS): %.srec $(ROOTDIR)/tools/utils/set-mote-id $< $@ 0x$(ADDRESS)%.sos : %.elf $(OBJCOPY) -j .text -O binary -R .eeprom $< $@ $(ROOTDIR)/tools/utils/verify_module_header.pl $@%.exe: $(OBJS) $(CC) $(OBJS) $(LIBS) $(LDFLAGS) -o $@
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -