📄 common.make
字号:
#
# Copyright (C) ARM Limited 1998. All rights reserved.
# common.makefile for the uHAL library.
# board.in describes the board, everything else is generic.
#
#************************************************************
# Common makefile stuff for the ARM uHAL library.
#************************************************************
#************************************************************
# Globally defined things.
#************************************************************
LIBOBJECTS = $(TARGET)/boot.o $(TARGET)/external.o $(TARGET)/iolib.o \
$(TARGET)/led.o $(TARGET)/timer.o $(TARGET)/crt.o \
$(TARGET)/irq.o $(TARGET)/irqtrap.o $(TARGET)/irqlib.o \
$(TARGET)/mmu.o $(TARGET)/cache.o $(TARGET)/divide.o \
$(TARGET)/cpumode.o $(TARGET)/control.o $(TARGET)/pci.o \
$(TARGET)/board.o $(TARGET)/driver.o $(TARGET)/memmap.o \
$(TARGET)/heap.o
#************************************************************
# uHAL code.
#************************************************************
#------------------------------------------------------------
# Common Platform Specific Objects.
#------------------------------------------------------------
$(TARGET)/board.o: $(UHALBOARDDIR)/board.c $(UHAL_INCLUDE_FILES) $(UHALBOARDDIR)/platform.h
$(ARMCC) $(CDEFS) -c $(INCL) $(PROC_TYPE) $< -o $*.o
$(TARGET)/driver.o: $(UHALBOARDDIR)/driver.s $(UHALBOARDDIR)/target.s
$(ARMASM) $(ADEFS) $(INCL) $< -arch 4 -o $*.o
$(TARGET)/memmap.o: $(UHALBOARDDIR)/memmap.s $(UHALBOARDDIR)/target.s
$(ARMASM) $(ADEFS) $(INCL) $< -arch 4 -o $*.o
$(UHALBOARDDIR)/platform.h: $(UHALBOARDDIR)/platform.s
rm -f $(UHALBOARDDIR)/platform.h
awk -f $(UHALTOOLDIR)/s2h.awk $(UHALBOARDDIR)/platform.s > $(UHALBOARDDIR)/platform.h
$(UHALPROCESSORDIR)/mmu_h.h: $(UHALPROCESSORDIR)/mmu_h.s
rm -f $(UHALPROCESSORDIR)/mmu_h.h
awk -f $(UHALTOOLDIR)/s2h.awk $(UHALPROCESSORDIR)/mmu_h.s > $(UHALPROCESSORDIR)/mmu_h.h
#------------------------------------------------------------
# common code.
#------------------------------------------------------------
$(TARGET)/heap.o: $(UHALLIBDIR)heap.c $(UHAL_INCLUDE_FILES) \
$(UHALINCLUDEDIR)/except_h.h $(UHALINCLUDEDIR)/uart.h
$(ARMCC) $(CDEFS) -c $(INCL) $(PROC_TYPE) $< -o $*.o
$(TARGET)/iolib.o: $(UHALLIBDIR)iolib.c $(UHAL_INCLUDE_FILES) \
$(UHALINCLUDEDIR)/except_h.h $(UHALINCLUDEDIR)/uart.h
$(ARMCC) $(CDEFS) -c $(INCL) $(PROC_TYPE) $< -o $*.o
$(TARGET)/timer.o: $(UHALLIBDIR)timer.c $(UHAL_INCLUDE_FILES)
$(ARMCC) $(CDEFS) -c $(INCL) $(PROC_TYPE) $< -o $*.o
$(TARGET)/irq.o: $(UHALLIBDIR)irq.c $(UHAL_INCLUDE_FILES)
$(ARMCC) $(CDEFS) -c $(INCL) $(PROC_TYPE) $< -o $*.o
$(TARGET)/cache.o: $(UHALPROCESSORDIR)/cache.c $(UHAL_INCLUDE_FILES) $(UHALPROCESSORDIR)/mmu_h.h
$(ARMCC) $(CDEFS) -c $(INCL) $(PROC_TYPE) $< -o $*.o
$(TARGET)/led.o: $(UHALLIBDIR)led.c $(UHAL_INCLUDE_FILES)
$(ARMCC) $(CDEFS) -c $(INCL) $(PROC_TYPE) $< -o $*.o
$(TARGET)/crt.o: $(UHALLIBDIR)crt.c $(UHAL_INCLUDE_FILES)
$(ARMCC) $(CDEFS) -c $(INCL) $(PROC_TYPE) $< -o $*.o
$(TARGET)/pci.o: $(UHALLIBDIR)pci.c $(UHAL_INCLUDE_FILES)
$(ARMCC) $(CDEFS) -c $(INCL) $(PROC_TYPE) $< -o $*.o
$(TARGET)/control.o: $(UHALPROCESSORDIR)/control.s $(UHAL_INCLUDE_FILES)
$(ARMASM) $(ADEFS) $(INCL) $< -arch 4 -o $*.o
$(TARGET)/irqtrap.o: $(UHALLIBDIR)irqtrap.s $(UHALPROCESSORDIR)/mmumacro.s $(UHAL_INCLUDE_FILES) \
$(UHALINCLUDEDIR)/except_h.s
$(ARMASM) $(ADEFS) $(INCL) $< -arch 4 -o $*.o
$(TARGET)/cpumode.o: $(UHALLIBDIR)cpumode.s $(SYSTEM_INCLUDE_FILES)
$(ARMASM) $(ADEFS) $(INCL) $< -arch 4 -o $*.o
$(TARGET)/irqlib.o: $(UHALLIBDIR)irqlib.s $(UHAL_INCLUDE_FILES) $(UHALPROCESSORDIR)/mmu_h.s\
$(UHALINCLUDEDIR)/except_h.s $(UHALPROCESSORDIR)/mmumacro.s
$(ARMASM) $(ADEFS) $(INCL) $< -arch 4 -o $*.o
$(TARGET)/mmu.o: $(UHALPROCESSORDIR)/mmu.s $(UHALPROCESSORDIR)/mmumacro.s $(UHAL_INCLUDE_FILES)
$(ARMASM) $(ADEFS) $(INCL) $< -arch 4 -o $*.o
$(TARGET)/divide.o: $(UHALLIBDIR)divide.s
$(ARMASM) $(ADEFS) $(INCL) $< -arch 4 -o $*.o
$(TARGET)/boot.o: $(UHALLIBDIR)boot.s $(UHAL_INCLUDE_FILES) $(UHALINCLUDEDIR)/linkdata.s \
$(UHALINCLUDEDIR)/except_h.s $(UHALBOARDDIR)/target.s
$(ARMASM) $(ADEFS) $(INCL) $< -arch 4 -o $*.o
$(TARGET)/external.o: $(UHALLIBDIR)external.s $(UHAL_INCLUDE_FILES) $(UHALINCLUDEDIR)/linkdata.s \
$(UHALINCLUDEDIR)/except_h.s $(UHALBOARDDIR)/target.s
$(ARMASM) $(ADEFS) $(INCL) $< -arch 4 -o $*.o
$(UHALINCLUDEDIR)/except_h.h: $(UHALINCLUDEDIR)/except_h.s
rm -f $(UHALINCLUDEDIR)/except_h.h
awk -f $(UHALTOOLDIR)/s2h.awk $(UHALINCLUDEDIR)/except_h.s > $(UHALINCLUDEDIR)/except_h.h
$(UHALINCLUDEDIR)/sizes.h: $(UHALINCLUDEDIR)/sizes.s
rm -f $(UHALINCLUDEDIR)/sizes.h
awk -f $(UHALTOOLDIR)/s2h.awk $(UHALINCLUDEDIR)/sizes.s > $(UHALINCLUDEDIR)/sizes.h
$(UHALINCLUDEDIR)/bits.h: $(UHALINCLUDEDIR)/bits.s
rm -f $(UHALINCLUDEDIR)/bits.h
awk -f $(UHALTOOLDIR)/s2h.awk $(UHALINCLUDEDIR)/bits.s > $(UHALINCLUDEDIR)/bits.h
#************************************************************
# uHAL library (DEMON, SEMIHOSTED and STANDALONE variants)
#************************************************************
ifeq ($(ADS_BUILD),1)
$(TARGET)/uHALlibrary.$(LIB_EXT): $(SPECIFICOBJECTS) $(LIBOBJECTS)
$(AR) $(AR_OPTS) $(UHALLIB) $(SPECIFICOBJECTS) $(LIBOBJECTS)
else
$(TARGET)/uHALlibrary.$(LIB_EXT): $(SPECIFICOBJECTS) $(LIBOBJECTS)
$(AR) $(AR_OPTS) $(UHALLIB) $(SPECIFICOBJECTS) $(LIBOBJECTS)
endif
#************************************************************
# uHAL library (DEMON, SEMIHOSTED and STANDALONE variants)
#************************************************************
$(TARGET)_all: $(TARGET)/uHALlibrary.$(LIB_EXT)
#************************************************************
# clean up the development tree.
#************************************************************
$(TARGET)_clean:
rm -f $(TARGET)/*.bin
rm -f $(TARGET)/*.$(LIB_EXT)
rm -f $(TARGET)/*~
rm -f *~
rm -f $(LIBOBJECTS)
rm -f $(SPECIFICOBJECTS)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -