Using Makefiles to Build Applications
Program Generation 2-21
Example 2-3. Sample Makefile for a DSP/BIOS Program
# Makefile for creation of program named by the PROG variable
# The following naming conventions are used by this makefile:
# <prog>.asm - C55 assembly language source file
# <prog>.obj - C55 object file (compiled/assembled source)
# <prog>.out - C55 executable (fully linked program)
# <prog>cfg.s55 - configuration assembly source file
# generated by Configuration Tool
# <prog>cfg.h55 - configuration assembly header file
# generated by Configuration Tool
# <prog>cfg.cmd - configuration linker command file
# generated by Configuration Tool
include $(TI_DIR)/c5500/bios/include/c55rules.mak
#
# Compiler, assembler, and linker options.
# -g enable symbolic debugging
CC55OPTS = -g
AS55OPTS =
# -q quiet run
LD55OPTS = -q
# Every DSP/BIOS program must be linked with:
# $(PROG)cfg.o55 - object resulting from assembling
# $(PROG)cfg.s55
# $(PROG)cfg.cmd - linker command file generated by
# the Configuration Tool. If additional
# linker command files exist,
# $(PROG)cfg.cmd must appear first.
#
PROG = volume
OBJS = $(PROG)cfg.obj load.obj
LIBS =
CMDS = $(PROG)cfg.cmd
# Targets:
all:: $(PROG).out
$(PROG).out: $(OBJS) $(CMDS)
$(PROG)cfg.obj: $(PROG)cfg.h55
$(PROG).obj:
$(PROG)cfg.s55 $(PROG)cfg.h55 $(PROG)cfg.cmd:
@ echo Error: $@ must be manually regenerated:
@ echo Open and save $(PROG).cdb within the DSP/BIOS Configuration Tool.
@ check $@
.clean clean::
@ echo removing generated configuration files ...
@ remove -f $(PROG)cfg.s55 $(PROG)cfg.h55 $(PROG)cfg.cmd
@ echo removing object files and binaries ...
@ remove -f *.obj *.out *.lst *.map