📄 makefile
字号:
#------------------------------------------------------------------------------
#
# Copyright (c) 2001 by National Semiconductor Corporation
#
# National Semiconductor Corporation
# 2900 Semiconductor Drive
# Santa Clara, California 95051
#
# All rights reserved
#
#------------------------------------------------------------------------------
#
# FILE
# Upper-level Makefile for USB driver
#
# AUTHOR
# Yan Nosovitsky
# Sep 2001
#
#------------------------------------------------------------------------------
ENV = prd
#
# tools used in makefile
#
RM = del
MD = mkdir
CC = crcc
LD = crlink
NBURN = crprom
AS = crasm
AR = crlib
MAKEDEPEND = makedepend
CPP = cpp
LINT = lint
FLOADER = vfl
VIEW = crview
#
# Suffixes
#
.SUFFIXES:
.SUFFIXES: .h .c .s .o .a
#
# Directories
#
DIR_MAPS = maps
DIR_LNK_DEF = link
DRV = drv
MAIN = main
APPS = apps
CLASSES = classes
USB = usb
LOOPBACK = loopback
IO = io
OUTPUTS = outputs
FLASH = flash
START = start
MAIN = main
#----------------------------------------------- objects & libraries ----------
#
# Object files of the project
#
OBJ_DRV = $(DRV)\reset.o $(DRV)\icu.o $(DRV)\dispatch.o
OBJ_IO = $(IO)\sev_seg.o $(IO)\dip_sw.o
OBJ_START = $(START)\start.o
OBJ_LOOPBACK = $(LOOPBACK)\parser.o
OBJ_USB = $(USB)\usb.o $(USB)\usbdrv.o
OBJ_TEMP = temp.o
OBJ_RELEASE = $(START)\release.o
!IFDEF CONFIG
OBJS = $(OBJ_START) $(OBJ_DRV) $(OBJ_IO) $(OBJ_LOOPBACK) $(OBJ_USB) $(OBJ_MAIN) $(OBJ_TEMP)
LIBS =
!ELSE
OBJS = $(OBJ_RELEASE) $(OBJ_START) $(OBJ_DRV) $(OBJ_IO) $(OBJ_LOOPBACK) $(OBJ_USB) $(OBJ_MAIN) $(OBJ_TEMP)
LIBS =
!ENDIF
#----------------------------------------------- flags ------------------------
DEF_dev = -DGNX_MON -DMODE=DEVELOP
DEF_eml = $(DEF_dev)
DEF_prd = -DNDEBUG -DMODE=PRODUCTION
#DEFINES = $(DEF_COMMON) $(DEF_dev) $(EMULATOR)
DEF_BPT = -DBPT
DEF_SEV_SEG = -DSEV_SEG
DEF_TMON = -DTMON
DEF_DEBUG =
DEF_VIO = -DVIO
!IFDEF CONFIG
#DEFINES = $(DEF_DEBUG) $(DEF_BPT) $(DEF_SEV_SEG)
DEFINES = $(DEF_TMON)
#$(DEF_VIO)
!ELSE
DEFINES =
!ENDIF
LINTFLAGS = -abhnu
LINTNOISE = tools\lint.del
LINTFILTER = sed -f $(LINTNOISE)
CFLAGS = -W -O -c -n -J1 $(DEFINES) -finline-functions -g -I..\common -I.
ASFLAGS = -g -c $(DEFINES)
LDFLAGS= -lstart -lc -ld # -e _c_reset
#----------------------------------------------- files ------------------------
TARGET = usb_fw.x
!IFDEF CONFIG
FILE_LNK = $(DIR_LNK_DEF)\link_debug.def
!ELSE
FILE_LNK = $(DIR_LNK_DEF)\link_release.def
!ENDIF
tall:
# $(CC) -n -S $(CFLAGS) debug\coreCR16B.c -o debug\coreCR16B.s
$(CC) -n -S $(CFLAGS) $(DRV)\icu.c -o $(DRV)\icu.s
!IFDEF LOAD
all: $(TARGET) flash_to_device
!ELSE
all: $(TARGET)
!ENDIF
flash_to_device:
cd $(FLASH)
load_fw
cd .
$(TARGET): $(OBJS)
if not exist $(OUTPUTS) $(MD) $(OUTPUTS)
$(LD) -o $(TARGET) -d $(FILE_LNK) $(OBJS) $(LIBS) $(LDFLAGS)
# $(VIEW) -T $(TARGET) > $(OUTPUTS)\asm.out
# $(VIEW) -s $(TARGET) > $(OUTPUTS)\symbol.out
# $(VIEW) -z $(TARGET) > $(OUTPUTS)\size.out
# $(VIEW) -O $(TARGET) > $(OUTPUTS)\section.out
$(NBURN) -i -w1 $(TARGET) -n -o $(FLASH)\out.ihx.
.SUFFIXES:
.SUFFIXES: .h .c .s .o .a .t .i
.c.o:
$(CC) $(CFLAGS) $*.c -o $*.o -Wa,-L$*.lst
.s.o:
$(AS) $(ASFLAGS) $*.s -o $*.o
.c.t:
$(CC) -n -S -g $(CFLAGS) -o $*.t $*.c
.c.i:
$(CC) -P -Wp,-P -c $(CFLAGS) $(CPPFLAGS) $*.c
.c.s:
$(CC) -n -S $(CFLAGS) $(CPPFLAGS) -c $*.c
clean:
$(RM) *.o
$(RM) $(DRV)\*.o
$(RM) $(IO)\*.o
$(RM) $(START)\*.o
$(RM) $(JTAG)\*.o
$(RM) $(USB)\*.o
$(RM) $(MAIN)\*.o
$(RM) $(LOOPBACK)\*.o
$(RM) $(TARGET)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -