⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 makefile

📁 含t h r e a d x,u c o s 的b s p
💻
字号:
######################################################################## 
# 
# Project: Bootable/FLASHable example makefile
# 
# Description: 
#  Makefile
# 
######################################################################## 
# SHARP MICROELECTRONICS OF THE AMERICAS MAKES NO REPRESENTATION
# OR WARRANTIES WITH RESPECT TO THE PERFORMANCE OF THIS SOFTWARE,
# AND SPECIFICALLY DISCLAIMS ANY RESPONSIBILITY FOR ANY DAMAGES, 
# SPECIAL OR CONSEQUENTIAL, CONNECTED WITH THE USE OF THIS SOFTWARE.
#
# SHARP MICROELECTRONICS OF THE AMERICAS PROVIDES THIS SOFTWARE SOLELY 
# FOR THE PURPOSE OF SOFTWARE DEVELOPMENT INCORPORATING THE USE OF A 
# SHARP MICROCONTROLLER OR SYSTEM-ON-CHIP PRODUCT. USE OF THIS SOURCE
# FILE IMPLIES ACCEPTANCE OF THESE CONDITIONS.
#
# COPYRIGHT (C) 2001 SHARP MICROELECTRONICS OF THE AMERICAS, INC.
#     CAMAS, WA
########################################################################

EXECNAME    =startup

########################################################################
#
# Pick up the default build rules 
#
########################################################################

include $(SHARPMCU_SOFTWARE)/makerule/$(CSP)/make.$(CSP).$(TOOL)

########################################################################
#
# Gcc compiler/linker specific stuff
#
########################################################################

ifeq ($(TOOL), gnu)
MEXT        =.map
MAPFILE     =$(EXECNAME)
C_ENTRY     =
ENTRY       =
CFLAGS      +=-gdwarf-2 -I../../include
AFLAGS      +=-I../../include
LDRAMSCRIPT =../linker/ldscript_iram_$(TOOL).ld
LDSCRIPT    =../linker/ldscript_rom_$(TOOL).ld
endif

########################################################################
#
# Arm compiler/linker specific stuff
#
# ARM examples enter via __main and are linked at address 0x8000
#
########################################################################

ifeq ($(TOOL), arm)
MEXT        =.map
MAPFILE     =$(EXECNAME)
C_ENTRY     =
ENTRY       =
CFLAGS      +=-g -I../../include
AFLAGS      +=-g -I../../include
LDRAMSCRIPT =../linker/ldscript_iram_$(TOOL).ld
LDSCRIPT    =../linker/ldscript_rom_$(TOOL).ld
endif

########################################################################
#
# Ghs compiler/linker specific stuff
#
########################################################################

ifeq ($(TOOL), ghs)
MEXT        =
MAPFILE     =
C_ENTRY     =_start
CFLAGS      +=-g -I../../include
AFLAGS      +=-g -I../../include
LDRAMSCRIPT =../linker/ldscript_iram_$(TOOL).ld
LDSCRIPT    =../linker/ldscript_rom_$(TOOL).ld
endif

########################################################################
#
# Pick up the assembler and C source files in the directory  
#
########################################################################
ifeq ($(TOOL), gnu)
ASM_EXT     =asm
endif

ifeq ($(TOOL), arm)
ASM_EXT     =s
endif

ifeq ($(TOOL), ghs)
ASM_EXT     =as
endif

########################################################################
#
# Pick up all *.c and assembly files and include them in the build
#
########################################################################

OBJS        =$(SRC:%.c=%.o) $(ASM:%.$(ASM_EXT)=%.o)

########################################################################
#
# Rules to build the executable 
#
########################################################################

default: release

release:	$(OBJS)
	@$(MAKE) TOOL=$(TOOL) -C ../../ clean
	@$(MAKE) TOOL=$(TOOL) -C ../../
	@$(CP) ../../*.o .
	@$(MAKE) TOOL=$(TOOL) debug
	@$(MAKE) TOOL=$(TOOL) bin

test:	$(OBJS)
	@$(MAKE) TOOL=$(TOOL) -C ../../ clean
	@$(MAKE) TOOL=$(TOOL) -C ../../
	@$(CP) ../../*.o .
	@$(MAKE) TOOL=$(TOOL) debugtest
	@$(MAKE) TOOL=$(TOOL) bin

debug:
	$(LD) *.o $(LDFLAGS) $(LK) $(SCAN) $(MAP) $(MAPFILE)$(MEXT) \
	$(LDESC) $(LDSCRIPT) $(ENTRY) $(C_ENTRY) -o $(EXECNAME)$(EXT)

debugtest:
	$(LD) *.o $(LDFLAGS) $(LK) $(SCAN) $(MAP) $(MAPFILE)$(MEXT) \
	$(LDESC) $(LDRAMSCRIPT) $(ENTRY) $(C_ENTRY) -o $(EXECNAME)$(EXT)

bin: 
	$(ELFTOBIN) $(EXECNAME)$(EXT) $(EXECNAME).bin

########################################################################
#
# Pick up the compiler and assembler rules
#
########################################################################

include $(SHARPMCU_SOFTWARE)/makerule/common/make.rules.build


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -