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

📄 bt_6000.mak

📁 在高通的手机平台下,一个下载手机.bin文件到手机的flash中的工具,包含PC端的程序代码和运行在基带处理器中的代码.
💻 MAK
字号:
#-------------------------------------------------------------------------------

# Target file name and type definitions

#-------------------------------------------------------------------------------

TARGET     = bt_6000#             # Target name for output files

TARGETDIR  = bt_6000#             # Name for object directory

MAKEFILE   = bt_6000#             # Name of this make file (without extension)

TOOLFILE   = ADS12.min#          # Make include file that specifies tools commands

SCLFILE    = bt_6000.scl#         # Target scatter load file



GETDEP_SCRIPT  = getdep.pl#

MDEPEND_SCRIPT = mdepend.pl#



#-------------------------------------------------------------------------------

# Target compile time symbol definitions

#-------------------------------------------------------------------------------



ARM_ASM = -D_ARM_ASM_#                  # ARM assembly language selection

ARM     = -DT_ARM#                      # ARM processor target



#-------------------------------------------------------------------------------

# Compiler symbol definitions

#-------------------------------------------------------------------------------

# Default definitions

DMSS_CFLAGS = $(ARM)#



#-------------------------------------------------------------------------------

# Assembler symbol definitions

#-------------------------------------------------------------------------------

DMSS_AFLAGS = $(ARM) $(ARM_ASM) $(APCS)#



#-------------------------------------------------------------------------------

# Object groups that are specific to this target

#-------------------------------------------------------------------------------

# INSERT OBJECTS MACROS HERE

# Build the full object list for this target



#-------------------------------------------------------------------------------

# BOOT (boot code)

#-------------------------------------------------------------------------------



# This group should not be used in the combined OBJECTS list to avoid duplicate

# objs. Use BOOT_OBJS.  This is used to create the BOOT_OBJS and NORAM_OBJS

# compile group

BOOT_C_OBJS =   $(TARGETDIR)/boothw_6000.o \

                $(TARGETDIR)/bootmem.o 



#-------------------------------------------------------------------------------

# DLOAD (Downloader)

#-------------------------------------------------------------------------------

# This group should not be used in the combined OBJECTS list to avoid duplicate

# objs. Use DLOAD_OBJS.  This is used to create the DLOAD_OBJS and NORAM_OBJS

# compile group

DLOAD_C_OBJS =  $(TARGETDIR)/dloadarm.o \

                $(TARGETDIR)/dloaduart.o \





# Compile the following code with no compiler optimization to avoid insertion of

# stack push and pop instructions in functions that are called before target

# RAM has been initialized.

# This group should not be used in the combined OBJECTS list to avoid duplicate

# objs. Use BOOT_OBJS or DLOAD_OBJS.  It is a separate compile group.

NORAM_OBJS =    $(BOOT_C_OBJS) \

                $(DLOAD_C_OBJS)



OBJECTS =       $(TARGETDIR)/bootsys.o \

                $(TARGETDIR)/boothw_6000.o \

                $(TARGETDIR)/bootmem.o \

                $(TARGETDIR)/dloadarm.o \

                $(TARGETDIR)/dloaduart.o \

	$(TARGETDIR)/crc.o

#===============================================================================

#                             TOOL DEFINITIONS

#===============================================================================

include $(TOOLFILE)



all : tools $(TARGETDIR)/exist exe hex bin



#-------------------------------------------------------------------------------

# Tools target

#-------------------------------------------------------------------------------



# The tool versions are listed.





tools :

	@echo ------------------------------------------------------------------

	@echo $(ARM_VERSION_BANNER)

	@$(ARMCC) $(VER_FLAG)

	@$(CC)    $(VER_FLAG)

	@$(ASM)   $(VER_FLAG)

	@echo ------------------------------------------------------------------



#-------------------------------------------------------------------------------

# Object directory target

#-------------------------------------------------------------------------------



# The object subdirectoy is created if it does not already exist.



$(TARGETDIR)/exist :

	@if test ! -f $(TARGETDIR)/exist; then mkdir $(TARGETDIR); fi

	@echo Building $(TARGETDIR) > $(TARGETDIR)/exist



#-------------------------------------------------------------------------------

# Image file target

#-------------------------------------------------------------------------------



# The target image file is produced by the linker in the selected image format,

# and then a hex file is created from the target image file.



OBJECT_LISTFILE = ~tmpobj.bak



# Image file

exe : $(TARGET).$(EXETYPE)





$(TARGET).$(EXETYPE) : $(TARGETDIR)\exist sources $(OBJECTS)

	@echo ---------------------------------------------------------------

	@echo TARGET $@

	@if test -f $(OBJECT_LISTFILE); then rm -f $(OBJECT_LISTFILE); fi

	@perl redirect.pl $(OBJECT_LISTFILE) $(OBJECTS)

	$(LD) -$(EXETYPE) $(LFLAGS) $(OBJ_CMD) $@ -VIA $(OBJECT_LISTFILE)



# Hex file

hex : $(TARGET).hex



$(TARGET).hex: $(TARGET).$(EXETYPE)

	@echo

	@echo TARGETDIR $(TARGETDIR).hex

	$(HEXCMD)

	@echo ---------------------------------------------------------------



# Binary file

bin: $(TARGET).bin



$(TARGET).bin: $(TARGET).$(EXETYPE)

	@echo

	@echo TARGETDIR $(TARGETDIR).bin

	$(BINCMD)

	@echo ---------------------------------------------------------------

	

	

#-------------------------------------------------------------------------------

# Clean target

#-------------------------------------------------------------------------------



# The object subdirectory, target image file, and target hex file are deleted.



clean : $(ZIF_PMIC_LIBS:_targ=_clean)

	@echo ---------------------------------------------------------------

	@echo CLEAN

	-if test -d $(TARGETDIR); then rm -rf $(TARGETDIR); fi

	-if test -f $(TARGET).$(EXETYPE); then rm -f $(TARGET).$(EXETYPE); fi

	-if test -f $(TARGET).hex; then rm -f $(TARGET).hex; fi

	-if test -f *._C; then rm -f *._C; fi

	@echo ---------------------------------------------------------------



$(ZIF_PMIC_LIBS:_targ=_clean):

	@echo ------------------------------------------------------------------

	@echo Cleaning library: $(@:_clean=)

	@if test -f $(@:_clean=).mak; then make --no-print-directory -f $(@:_clean=).mak clean TARGET=$(TARGET) TARGETDIR=$(@:_clean=)_OBJS TARGETID=$(TARGETID) CUSTFILE=$(CUSTFILE) TOOLFILE=$(TOOLFILE) TARGFILE=$($(@:_clean=)_TARGFILE); fi

	@echo ------------------------------------------------------------------





#-------------------------------------------------------------------------------

# Test target

#-------------------------------------------------------------------------------



# The flags and symbol definitions for the compiler, assembler and linker are

# listed for makefile test purposes.



test :

	@echo ------------------------------------------------------------------

	@echo AFLAGS : $(AFLAGS)

	@echo ------------------------------------------------------------------

	@echo DMSS_AFLAGS : $(DMSS_AFLAGS)

	@echo ------------------------------------------------------------------

	@echo CFLAGS : $(CFLAGS)

	@echo ------------------------------------------------------------------

	@echo DMSS_CFLAGS : $(DMSS_CFLAGS)

	@echo ------------------------------------------------------------------

	@echo LFLAGS : $(LFLAGS)

	@echo ------------------------------------------------------------------

	@echo LIBS : $(LIBS)

	@echo ------------------------------------------------------------------



#===============================================================================

#                           DEFAULT SUFFIX RULES

#===============================================================================



# The following are the default suffix rules used to compile all objects that

# are not specifically included in one of the module specific rules defined

# in the next section.



# The following macros are used to specify the output object file, MSG_FILE

# symbol definition and input source file on the compile line in the rules

# defined below.

SRC_FILE = $(@:%.o=%.c)#                        Input source file specification

OBJ_FILE = $(OBJ_CMD) $(@)#                     Output obj file specification

SRC_CFILE= $(notdir $(SRC_FILE))#               C File of src without directory

MSG_FILE = -DMSG_FILE=\"$(SRC_CFILE)\"#         MSG_FILE symbol definition



#-------------------------------------------------------------------------------

# C code inference rules

#-------------------------------------------------------------------------------



# Needed for building split files that are in TARGETDIR when not starting

# the build from scratch

$(TARGETDIR)/%.o: $(TARGETDIR)/%.c

	@echo -----------------------------------------------------------------

	@echo OBJECT $@

	$(CC) $(CFLAGS) $(DMSS_CFLAGS) $(MSG_FILE) $(OBJ_CMD) $@ $(TARGETDIR)/$*.c

	@echo -----------------------------------------------------------------



$(TARGETDIR)/%.o %.o: %.c

	@echo -----------------------------------------------------------------

	@echo OBJECT $@

	$(CC) $(CFLAGS) $(DMSS_CFLAGS) $(MSG_FILE) $(OBJ_CMD) $@ $*.c

	@echo -----------------------------------------------------------------



#-------------------------------------------------------------------------------

# Assembly code inference rules

#-------------------------------------------------------------------------------



$(TARGETDIR)/%.o %.o: %.s

	@echo -----------------------------------------------------------------

	@echo OBJECT $@

	$(CC) -E $(DMSS_AFLAGS) < $< | perl $(ASM_SCRIPT) - > $(TARGETDIR)/$*.i

	$(ASM) $(AFLAGS) -list $(TARGETDIR)/$*.lst $(TARGETDIR)/$*.i $(OBJ_CMD) $@

	@echo -----------------------------------------------------------------



#-------------------------------------------------------------------------------

# C++ code inference rules

#-------------------------------------------------------------------------------



$(TARGETDIR)/%.o %.o: %.cpp

	@echo ------------------------------------------------------------------

	@echo OBJECT $@

	$(CPPC) $(CFLAGS) $(DMSS_CFLAGS) $(MSG_FILE) $(OBJ_CMD) $@ $*.cpp

	@echo ------------------------------------------------------------------



#-------------------------------------------------------------------------------

# Mixed source/assembly inference rule

#-------------------------------------------------------------------------------



%.mix: %.c

	@echo -----------------------------------------------------------------

	@echo OBJECT $@ CV

	$(CC) -S -fs $(CFLAGS) $(DMSS_CFLAGS) -DMSG_FILE=\"$<\" $(OBJ_CMD) $@ $<

	@echo -----------------------------------------------------------------



#===============================================================================

#                           MODULE SPECIFIC RULES

#===============================================================================

# The following module specific rules allow sets of objects to be compiled

# with compiler flags other than the defaults used in the suffix rules defined

# above.  The following rules use the module specific compiler flags defined

# at the beginning of this file.  New objects can be added to any of the

# following rules by modifying the corresponding list of objects.



#-------------------------------------------------------------------------------

# No RAM code

#-------------------------------------------------------------------------------

# Compile the boot code with no compiler optimization to avoid insertion of

# stack push and pop instructions in functions that are called before target

# RAM has been initialized.



$(NORAM_OBJS) : $(SRC_FILE)

	@echo -----------------------------------------------------------------

	@echo OBJECT $@

	$(CC) $(CFLAGS0) $(DMSS_CFLAGS) $(MSG_FILE) $(OBJ_FILE) $<

	@echo -----------------------------------------------------------------



#===============================================================================

#                               DEPENDENCIES

#===============================================================================



# The dependencies listed at the end of this makefile can be automatically

# updated by making the 'depend' target to invoke the following rules.



MAKEFILE_NAME   = $(MAKEFILE).mak

MAKEFILE_BACKUP = $(MAKEFILE).bak

MAKEFILE_TMP    = $(MAKEFILE).mak.tmp



.SUFFIXES: .s .o .c .dep



%.dep:%.c

	$(CC) $(CFLAGS) $(DMSS_CFLAGS) -E < $< | perl $(GETDEP_SCRIPT) $(basename $@).o $< > $*.de_

	@rm -f $(TARGETDIR)/$(@F).dep

	mv $*.de_ $*.dep



$(TARGETDIR)/%.dep:%.c

	$(CC) $(CFLAGS) $(DMSS_CFLAGS) -E < $< | perl $(GETDEP_SCRIPT) $(basename $@).o $< > $(TARGETDIR)/$*.de_

	@rm -f $(TARGETDIR)/$*.dep

	mv $(TARGETDIR)/$*.de_ $(TARGETDIR)/$*.dep



$(TARGETDIR)/%.dep:%.s

	$(CC) $(CFLAGS) $(DMSS_AFLAGS) $(DMSS_CFLAGS) -E < $< | perl $(GETDEP_SCRIPT) $(basename $@).o $< > $(TARGETDIR)/$*.de_

	@rm -f $(TARGETDIR)/$*.dep

	mv $(TARGETDIR)/$*.de_ $(TARGETDIR)/$*.dep



depend: $(TARGETDIR)/exist $(OBJECTS:.o=.dep) force.frc

	perl $(MDEPEND_SCRIPT) $(MAKEFILE_NAME) $(TARGETDIR) > $(MAKEFILE_TMP)

	rm -f $(MAKEFILE_BACKUP)

	mv $(MAKEFILE_NAME) $(MAKEFILE_BACKUP)

	mv $(MAKEFILE_TMP) $(MAKEFILE_NAME)



force.frc:



sources:

#===============================================================================

#                               DEPENDENCIES

#===============================================================================





# ------------------------------

# DO NOT EDIT BELOW THIS LINE


bt_6000/boothw_6000.o: boothw_6000.c

bt_6000/boothw_6000.o: boothwi_6000.h

bt_6000/boothw_6000.o: msm6000bits.h

bt_6000/boothw_6000.o: msm6000redefs.h

bt_6000/boothw_6000.o: msm6000reg.h


bt_6000/bootmem.o: bootmem.c

bt_6000/bootmem.o: armasm.h

bt_6000/bootmem.o: msm6000reg.h


bt_6000/bootsys.o: bootsys.s

bt_6000/bootsys.o: armasm.h

bt_6000/bootsys.o: comdef.h

bt_6000/bootsys.o: msm6000reg.h


bt_6000/crc.o: crc.c

bt_6000/crc.o: comdef.h

bt_6000/crc.o: crc.h


bt_6000/dloadarm.o: dloadarm.c

bt_6000/dloadarm.o: clkrgm_6000.h

bt_6000/dloadarm.o: comdef.h

bt_6000/dloadarm.o: dloadarm.h

bt_6000/dloadarm.o: dloaduart.h

bt_6000/dloadarm.o: msm6000bits.h

bt_6000/dloadarm.o: msm6000redefs.h

bt_6000/dloadarm.o: msm6000reg.h


bt_6000/dloaduart.o: dloaduart.c

bt_6000/dloaduart.o: clkrgm_6000.h

bt_6000/dloaduart.o: comdef.h

bt_6000/dloaduart.o: dloaduart.h

bt_6000/dloaduart.o: msm6000bits.h

bt_6000/dloaduart.o: msm6000redefs.h

bt_6000/dloaduart.o: msm6000reg.h


# End of auto generated dependencies.

⌨️ 快捷键说明

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