📄 makefile
字号:
include ../cy_codepattern.mak
CROSS_COMPILE = mips_fp_le-
##### Include the make variables (CC, etc...) #####
AS = $(CROSS_COMPILE)as
LD = $(CROSS_COMPILE)ld
CC = $(CROSS_COMPILE)gcc
AR = $(CROSS_COMPILE)ar
OBJCOPY = $(CROSS_COMPILE)objcopy
OBJDUMP = $(CROSS_COMPILE)objdump
HOSTCC = gcc
SREC2FLASH = ../bin/srec2flash
FLASH2BIN = ../bin/flash2bin
# by Oleg INCLUDE_DIRS = -I. -I../inc
INCLUDE_DIRS = -I. -I../inc
##### standard CFLAGS #####
#DEBUG_FLAGS = -g -ggdb -G 0
DEBUG_FLAGS =
CFLAGS = -Wall -Wno-trigraphs -nostdinc -mno-abicalls -fno-pic \
-pedantic -mcpu=r4600 -mips2 -EL
AFLAGS = -Wall -Wno-trigraphs -nostdinc -mno-abicalls -fno-pic \
-pedantic -mcpu=r4600 -mips2 -EL
EXTRAFLAGS = $(DEBUG_FLAGS) -Os -D_STAND_ALONE_ -DEL $(INCLUDE_DIRS)
ifeq ($(BOARD), SEAD2)
else
EXTRAFLAGS += -D_AVALANCHE_
endif
LDFLAGS = -EL -X -N -S
OFORMAT = --oformat elf32-tradlittlemips
LINK_FILE = linux_adam2.xn
BOARD=AR7DB
TARGET=adam2
#FTP Server Enable
FTPS=1
#FTP Client Enable
FTPC=0
#PING Function Enable
PING=1
#DHCP Server Enable
DHCP=0
#TFTP Server Enable
TFTPS=0
#DIAG_TOOL Function Enable
DIAG=0
##By Charles add for check flash Type & Size
ifeq ($(PROJECT), DWG814D)
CODE_PATTERN=DWGA
else
ifeq ($(PROJECT), DWG914D)
CODE_PATTERN=DWGB
else
ifeq ($(PROJECT), DWG814E_HM)
CODE_PATTERN=DWGE
else
ifeq ($(PROJECT), WDR814G)
CODE_PATTERN=DWG1
else
ifeq ($(PROJECT), WDR834G)
CODE_PATTERN=DWGE
else
ifeq ($(PROJECT), WAG54GV2)
ifeq ($(FLASH_SIZE), 8)
ifeq ($(ADSL_TYPE), AnnexA)
CODE_PATTERN=WAG2
else
ifeq ($(ADSL_TYPE), AnnexB)
CODE_PATTERN=WA2B
endif
endif
else
ifeq ($(FLASH_SIZE), 4)
ifeq ($(ADSL_TYPE), AnnexA)
CODE_PATTERN=WA21
else
ifeq ($(ADSL_TYPE), AnnexB)
CODE_PATTERN=WA22
endif
endif
endif
endif
else
ifeq ($(PROJECT), AG241)
ifeq ($(FLASH_SIZE), 8)
ifeq ($(ADSL_TYPE), AnnexA)
CODE_PATTERN=AG2A
else
ifeq ($(ADSL_TYPE), AnnexB)
CODE_PATTERN=AG2B
endif
endif
else
ifeq ($(FLASH_SIZE), 4)
ifeq ($(ADSL_TYPE), AnnexA)
CODE_PATTERN=AG1A
else
ifeq ($(ADSL_TYPE), AnnexB)
CODE_PATTERN=AG1B
endif
endif
endif
endif
else
CODE_PATTERN=NONE
endif
endif
endif
endif
endif
endif
endif
#Addition by Charles for check code pattern promet 04-30-2004
#WAG54G v2 Code Pattern : WAG2
#CODE_PATTERN=WAG2
#DWG-814D Code Pattern : DWGA
#CODE_PATTERN=DWGA
#DWG-914D Code Pattern : DWGB
#CODE_PATTERN=DWGB
#DWG-814E-HM && WDR834g Code Pattern : DWGE
#CODE_PATTERN=DWGE
#WDR814g Code Pattern : DWG1
#CODE_PATTERN=DWG1
#None Code Pattern check : NONE
#CODE_PATTERN=NONE
#None Code Pattern check :AG1A
#CODE_PATTERN=AG1A
#None Code Pattern check :AG1B
#CODE_PATTERN=AG1B
#None Code Pattern check :WA21
#CODE_PATTERN=WA21
#None Code Pattern check :WA22
#CODE_PATTERN=WA22
#By Charles addition for Used Global Veriable
CHECK_GOLBAL=n
ifeq ($(BOARD), AR5D01)
EXTRAFLAGS += -DAR5D01
endif
ifeq ($(BOARD), ACPEP)
EXTRAFLAGS += -DACPEP
endif
ifeq ($(BOARD), WA100)
EXTRAFLAGS += -DWA100
endif
ifeq ($(BOARD), EVM3D)
EXTRAFLAGS += -DEVM3D
endif
ifeq ($(BOARD), EVM3)
EXTRAFLAGS += -DEVM3
endif
ifeq ($(BOARD), AR5W01)
EXTRAFLAGS += -DAR5W01
endif
ifeq ($(BOARD), AR7DB)
EXTRAFLAGS += -DAR7DB
endif
ifeq ($(BOARD), AR7RD)
EXTRAFLAGS += -DAR7RD
endif
ifeq ($(BOARD), SEAD2)
EXTRAFLAGS += -DSEAD2
endif
ifeq ($(BOARD), AR7WRD)
EXTRAFLAGS += -DAR7WRD
endif
ifeq ($(FFS), 1)
EXTRAFLAGS += -DFFS_SUPPORT
endif
ifeq ($(BATCH), 1)
EXTRAFLAGS += -DBATCH_SREC_SUPPORT
endif
ifeq ($(FTPC), 1)
EXTRAFLAGS += -DFTP_CLIENT_SUPPORT
endif
ifeq ($(DHCP), 1)
EXTRAFLAGS += -DDHCP_SUPPORT
endif
ifeq ($(FTPS), 1)
EXTRAFLAGS += -DFTP_SERVER_SUPPORT
endif
ifeq ($(PING), 1)
EXTRAFLAGS += -DPING_SUPPORT
endif
#wwzh add for tftp server
ifeq ($(TFTPS), 1)
EXTRAFLAGS += -DTFTP_SERVER_SUPPORT
endif
ifeq ($(DIAG), 1)
EXTRAFLAGS += -DDIAG_SUPPORT
endif
ifeq ($(FLASH_SIZE), 4)
EXTRAFLAGS += -DFLASH_SIZE=4
else
EXTRAFLAGS += -DFLASH_SIZE=8
endif
ifeq ($(DRAM_SIZE), 16)
EXTRAFLAGS += -DMEM_SIZE=16
else
EXTRAFLAGS += -DMEM_SIZE=32
endif
ifeq ($(BOOT_SIZE), 64)
EXTRAFLAGS += -DBOOT_SIZE=64
else
EXTRAFLAGS += -DBOOT_SIZE=128
endif
#Addition by Charles for check code pattern promet 04-30-2004
ifeq ($(CODE_PATTERN), WAG2)
EXTRAFLAGS += -DWAG2
else
ifeq ($(CODE_PATTERN), WA2B)
EXTRAFLAGS += -DWA2B
else
ifeq ($(CODE_PATTERN), WA21)
EXTRAFLAGS += -DWA21
else
ifeq ($(CODE_PATTERN), WA22)
EXTRAFLAGS += -DWA22
else
ifeq ($(CODE_PATTERN), DWGA)
EXTRAFLAGS += -DDWGA
else
ifeq ($(CODE_PATTERN), DWGB)
EXTRAFLAGS += -DDWGB
else
ifeq ($(CODE_PATTERN), DWGE)
EXTRAFLAGS += -DDWGE
else
ifeq ($(CODE_PATTERN), DWG1)
EXTRAFLAGS += -DDWG1
else
ifeq ($(CODE_PATTERN), NONE)
EXTRAFLAGS += -DNONE
else
ifeq ($(CODE_PATTERN), AG1A)
EXTRAFLAGS += -DAG1A
else
ifeq ($(CODE_PATTERN), AG1B)
EXTRAFLAGS += -DAG1B
else
ifeq ($(CODE_PATTERN), AG2A)
EXTRAFLAGS += -DAG2A
else
ifeq ($(CODE_PATTERN), AG2B)
EXTRAFLAGS += -DAG2B
endif
endif
endif
endif
endif
endif
endif
endif
endif
endif
endif
endif
endif
OBJS = avreset.o avalanche.o init_env.o sio.o main.o shell.o support.o printf.o \
srloader.o env.o mms.o exception.o
######tftp.o strstr.o
ifeq ($(BOARD), AR5D01)
OBJS += ar5.o flashop_amd_.o
else
ifeq ($(BOARD), ACPEP)
OBJS += acpep.o flashop_intel320_.o
else
ifeq ($(BOARD), EVM3D)
OBJS += evm3d.o flashop_intel640_.o
else
ifeq ($(BOARD), WA100)
OBJS += wlan.o flashop_intel160_.o
else
ifeq ($(BOARD), EVM3)
OBJS += evm3.o flashop_intel640_.o
else
ifeq ($(BOARD), AR5W01)
OBJS += ar5.o flashop_amd_.o
else
ifeq ($(BOARD), AR7DB)
OBJS += ar7.o flashop_amd_.o
else
ifeq ($(BOARD), AR7RD)
OBJS += ar7.o flashop_amd_.o
else
ifeq ($(BOARD), AR7WRD)
ifeq ($(FLASHTYPE), AMD)
EXTRAFLAGS += -DAMD
OBJS += ar7.o flashop_amd_.o
else
ifeq ($(FLASHTYPE), INTEL)
EXTRAFLAGS += -DINTEL
#OBJS += ar7.o flashop_intel320_.o
OBJS += ar7.o flashop_intel640C3_.o
else
EXTRAFLAGS += -DNONE
OBJS += ar7.o flashop_amd_.o
endif
endif
else
ifeq ($(BOARD), SEAD2)
OBJS += sead.o flashop_intel640_.o
endif
endif
endif
endif
endif
endif
endif
endif
endif
endif
ifeq ($(FFS), 1)
OBJS += files.o fcb.o ffs.o ffs_util.o
endif
ifeq ($(TFTPS), 1)
OBJS += arp.o
ifeq ($(BOARD), AR7DB)
OBJS += sed_ar7.o
else
ifeq ($(BOARD), AR7RD)
OBJS += sed_ar7.o
else
ifeq ($(BOARD), AR7WRD)
OBJS += sed_ar7.o
else
OBJS += sed.o
endif
endif
endif
else
ifeq ($(FTPC), 1)
OBJS += arp.o
ifeq ($(BOARD), AR7DB)
OBJS += sed_ar7.o
else
ifeq ($(BOARD), AR7RD)
OBJS += sed_ar7.o
else
ifeq ($(BOARD), AR7WRD)
OBJS += sed_ar7.o
else
OBJS += sed.o
endif
endif
endif
else
ifeq ($(FTPS), 1)
OBJS += arp.o
ifeq ($(BOARD), AR7DB)
OBJS += sed_ar7.o
else
ifeq ($(BOARD), AR7RD)
OBJS += sed_ar7.o
else
ifeq ($(BOARD), AR7WRD)
OBJS += sed_ar7.o
else
OBJS += sed.o
endif
endif
endif
else
ifeq ($(DHCP), 1)
OBJS += arp.o
ifeq ($(BOARD), AR7DB)
OBJS += sed_ar7.o
else
ifeq ($(BOARD), AR7RD)
OBJS += sed_ar7.o
else
ifeq ($(BOARD), AR7WRD)
OBJS += sed_ar7.o
else
OBJS += sed.o
endif
endif
endif
endif
endif
endif
endif
ifeq ($(FTPC), 1)
OBJS += tinytcp.o tinyftp.o
else
ifeq ($(FTPS), 1)
OBJS += tinytcp.o tinyftp.o
else
#wwzh add for tftp server
ifeq ($(TFTPS), 1)
OBJS += tinyudp.o tftp.o strstr.o
endif
endif
endif
ifeq ($(DHCP), 1)
OBJS += tinyip.o tinyudp.o tinydhcp.o options.o
else
ifeq ($(FTPS), 1)
OBJS += tinyip.o tinyudp.o
else
ifeq ($(TFTPS), 1)
OBJS += tinyip.o
endif
endif
endif
ifeq ($(PING), 1)
OBJS += tinyicmp.o
endif
##### Taret Rules #####
all: $(TARGET).bin
mv -f $(TARGET).bin ../$(BOARD)-$(FLASHTYPE)$(FLASH_SIZE)-D$(DRAM_SIZE)-B$(BOOT_SIZE)-adam2.bin
mv -f $(TARGET).map ../
clean:
rm -f *.o
rm -f $(TARGET).dis $(TARGET).elf $(TARGET).map $(TARGET).srec $(TARGET).bin
$(TARGET).bin: $(TARGET).elf
$(TARGET).elf: $(OBJS)
$(LD) $(LDFLAGS) -T$(LINK_FILE) -o $(TARGET).elf -Map $(TARGET).map $(OFORMAT) $(OBJS)
$(OBJDUMP) -b elf32-little -g --disassemble-all --line-numbers -EL --source -w $(TARGET).elf > $(TARGET).dis
$(OBJCOPY) -O srec $(TARGET).elf $(TARGET).srec
$(SREC2FLASH) -EL -S29 $(TARGET).srec > $(TARGET).flash
$(FLASH2BIN) -EL $(TARGET).flash > $(TARGET).bin
rm -f $(TARGET).flash bcfg.flash
##### Common rulws to compile the objects #####
.s.o :
$(CC) $(AFLAGS) $(EXTRAFLAGS) -D_ASSEMBLER_ -D_ASMLANGUAGE -DMIPS32SIM -c -o $@ $<
.S.o :
$(CC) $(AFLAGS) $(EXTRAFLAGS) -D_ASSEMBLER_ -D_ASMLANGUAGE -DMIPS32SIM -c -o $@ $<
.c.o:
$(CC) $(CFLAGS) $(EXTRAFLAGS) -c -o $@ $<
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -