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

📄 general.mk

📁 enc28j60的驱动
💻 MK
📖 第 1 页 / 共 2 页
字号:
#----------------------------------------------------------------------
# DEFINE TARGET TO BE CREATED
#----------------------------------------------------------------------
ifeq (true, $(PROGRAM_MK))
TARGET     = $(NAME).hex
endif

ifeq (true, $(LIBRARY_MK))
TARGET     = $(NAME).a
endif

ifeq ($(origin TARGET), undefined)
.PHONY: error_message
error_message:
	$(error ERROR: You must specify PROGRAM_MK or LIBRARY_MK)
endif

#----------------------------------------------------------------------
# TOOL DEFINITIONS
#----------------------------------------------------------------------
TOOLTARGET      = arm-elf
AR              = $(TOOLTARGET)-ar
AS              = $(TOOLTARGET)-gcc
AWK             = gawk
CC              = $(TOOLTARGET)-gcc
LD              = $(TOOLTARGET)-gcc
OBJCOPY         = $(TOOLTARGET)-objcopy
RANLIB          = $(TOOLTARGET)-ranlib
RM              = rm -f
SED             = sed
SHELL           = bash --posix
SIZE            = $(TOOLTARGET)-size
STRIP           = $(TOOLTARGET)-strip

#----------------------------------------------------------------------
# DETERMINE ARM/THUMB MODE
#----------------------------------------------------------------------
#check if CODE is undefined
ifeq ($(origin CODE), undefined)
CODE        = ARM
TARGET_MODE = armthumb
else
ifeq ($(CODE),THUMB)
TARGET_MODE = armthumb
else
TARGET_MODE = arm
endif
endif

ifeq ($(TARGET_MODE),armthumb)
THUMB_IW = -mthumb-interwork
else
THUMB_IW =
endif

ifeq ($(CODE),THUMB)
T_FLAGS = -mthumb -DTHUMB_CSTART -DTHUMB_INTERWORK
else
T_FLAGS =
endif

ifeq ($(DEBUG),1)
DBFLAGS += -gdwarf-2
else
DBFLAGS +=
endif

ifeq (RAM, $(LD_RAMROM))
RAM_EXEC = -DRAM_EXEC
else
RAM_EXEC =
endif
#----------------------------------------------------------------------
# COMPILER AND ASSEMBLER OPTIONS
#----------------------------------------------------------------------
W_OPTS    = -Wall -Wcast-align -Wcast-qual -Wimplicit \
            -Wnested-externs -Wpointer-arith -Wswitch \
            -Wreturn-type 
# -Wshadow -Wunused
# -Wmissing-declarations -Wmissing-prototypes -Wredundant-decls -Wstrict-prototypes

CPU       = arm7tdmi
OPTS      = -mcpu=$(CPU) $(THUMB_IW)
CA_OPTS   = $(OPTS) $(INC) -DEL -DGCC $(THUMB_IW) $(T_FLAGS) $(EFLAGS) -D$(CPU_VARIANT) $(RAM_EXEC)
CC_OPTS   = $(CA_OPTS) $(OFLAGS) $(DBFLAGS) $(W_OPTS) -Wa,-ahlms=$(<:.c=.lst)
CC_OPTS_A = $(CA_OPTS) -x assembler-with-cpp -gstabs -Wa,-alhms=$(<:.S=.lst)

#----------------------------------------------------------------------
# LINKER OPTIONS
#----------------------------------------------------------------------

ifeq ($(CPU_VARIANT),LPC2101)
  ifndef LD_SCRIPT
    ifndef LD_RAMROM
LD_SCRIPT = build_files/link_2k_8k_rom.ld
    else
      ifeq ($(LD_RAMROM),ROM)
LD_SCRIPT = build_files/link_2k_8k_rom.ld
      else
LD_SCRIPT = build_files/link_2k_8k_ram.ld
      endif
    endif
  endif
else

ifeq ($(CPU_VARIANT),LPC2102)
  ifndef LD_SCRIPT
    ifndef LD_RAMROM
LD_SCRIPT = build_files/link_4k_16k_rom.ld
    else
      ifeq ($(LD_RAMROM),ROM)
LD_SCRIPT = build_files/link_4k_16k_rom.ld
      else
LD_SCRIPT = build_files/link_4k_16k_ram.ld
      endif
    endif
  endif
else

ifeq ($(CPU_VARIANT),LPC2103)
  ifndef LD_SCRIPT
    ifndef LD_RAMROM
LD_SCRIPT = build_files/link_8k_32k_rom.ld
    else
      ifeq ($(LD_RAMROM),ROM)
LD_SCRIPT = build_files/link_8k_32k_rom.ld
      else
LD_SCRIPT = build_files/link_8k_32k_ram.ld
      endif
    endif
  endif
else

ifeq ($(CPU_VARIANT),LPC2104)
  ifndef LD_SCRIPT
    ifndef LD_RAMROM
LD_SCRIPT = build_files/link_16k_128k_rom.ld
    else
      ifeq ($(LD_RAMROM),ROM)
LD_SCRIPT = build_files/link_16k_128k_rom.ld
      else
LD_SCRIPT = build_files/link_16k_128k_ram.ld
      endif
    endif
  endif
else

ifeq ($(CPU_VARIANT),LPC2105)
  ifndef LD_SCRIPT
    ifndef LD_RAMROM
LD_SCRIPT = build_files/link_32k_128k_rom.ld
    else
      ifeq ($(LD_RAMROM),ROM)
LD_SCRIPT = build_files/link_32k_128k_rom.ld
      else
LD_SCRIPT = build_files/link_32k_128k_ram.ld
      endif
    endif
  endif
else

ifeq ($(CPU_VARIANT),LPC2106)
  ifndef LD_SCRIPT
    ifndef LD_RAMROM
LD_SCRIPT = build_files/link_64k_128k_rom.ld
    else
      ifeq ($(LD_RAMROM),ROM)
LD_SCRIPT = build_files/link_64k_128k_rom.ld
      else
LD_SCRIPT = build_files/link_64k_128k_ram.ld
      endif
    endif
  endif
else

ifeq ($(CPU_VARIANT),LPC2114)
  ifndef LD_SCRIPT
    ifndef LD_RAMROM
LD_SCRIPT = build_files/link_16k_128k_rom.ld
    else
      ifeq ($(LD_RAMROM),ROM)
LD_SCRIPT = build_files/link_16k_128k_rom.ld
      else
LD_SCRIPT = build_files/link_16k_128k_ram.ld
      endif
    endif
  endif
else

ifeq ($(CPU_VARIANT),LPC2124)
  ifndef LD_SCRIPT
    ifndef LD_RAMROM
LD_SCRIPT = build_files/link_16k_256k_rom.ld
    else
      ifeq ($(LD_RAMROM),ROM)
LD_SCRIPT = build_files/link_16k_256k_rom.ld
      else
LD_SCRIPT = build_files/link_16k_256k_ram.ld
      endif
    endif
  endif
else

ifeq ($(CPU_VARIANT),LPC2119)
  ifndef LD_SCRIPT
    ifndef LD_RAMROM
LD_SCRIPT = build_files/link_16k_128k_rom.ld
    else
      ifeq ($(LD_RAMROM),ROM)
LD_SCRIPT = build_files/link_16k_128k_rom.ld
      else
LD_SCRIPT = build_files/link_16k_128k_ram.ld
      endif
    endif
  endif
else

ifeq ($(CPU_VARIANT),LPC2129)
  ifndef LD_SCRIPT
    ifndef LD_RAMROM
LD_SCRIPT = build_files/link_16k_256k_rom.ld
    else
      ifeq ($(LD_RAMROM),ROM)
LD_SCRIPT = build_files/link_16k_256k_rom.ld
      else
LD_SCRIPT = build_files/link_16k_256k_ram.ld
      endif
    endif
  endif
else

ifeq ($(CPU_VARIANT),LPC2131)
  ifndef LD_SCRIPT
    ifndef LD_RAMROM
LD_SCRIPT = build_files/link_8k_32k_rom.ld
    else
      ifeq ($(LD_RAMROM),ROM)
LD_SCRIPT = build_files/link_8k_32k_rom.ld
      else
LD_SCRIPT = build_files/link_8k_32k_ram.ld
      endif
    endif
  endif
else

ifeq ($(CPU_VARIANT),LPC2132)
  ifndef LD_SCRIPT
    ifndef LD_RAMROM
LD_SCRIPT = build_files/link_16k_64k_rom.ld
    else
      ifeq ($(LD_RAMROM),ROM)
LD_SCRIPT = build_files/link_16k_64k_rom.ld
      else
LD_SCRIPT = build_files/link_16k_64k_ram.ld
      endif
    endif
  endif
else

ifeq ($(CPU_VARIANT),LPC2134)
  ifndef LD_SCRIPT
    ifndef LD_RAMROM
LD_SCRIPT = build_files/link_16k_128k_rom.ld
    else
      ifeq ($(LD_RAMROM),ROM)
LD_SCRIPT = build_files/link_16k_128k_rom.ld
      else
LD_SCRIPT = build_files/link_16k_128k_ram.ld
      endif
    endif
  endif
else

ifeq ($(CPU_VARIANT),LPC2136)
  ifndef LD_SCRIPT
    ifndef LD_RAMROM
LD_SCRIPT = build_files/link_32k_256k_rom.ld
    else
      ifeq ($(LD_RAMROM),ROM)
LD_SCRIPT = build_files/link_32k_256k_rom.ld
      else
LD_SCRIPT = build_files/link_32k_256k_ram.ld
      endif
    endif
  endif
else

ifeq ($(CPU_VARIANT),LPC2138)
  ifndef LD_SCRIPT
    ifndef LD_RAMROM
LD_SCRIPT = build_files/link_32k_512k_rom.ld
    else
      ifeq ($(LD_RAMROM),ROM)
LD_SCRIPT = build_files/link_32k_512k_rom.ld
      else
LD_SCRIPT = build_files/link_32k_512k_ram.ld
      endif
    endif
  endif
else

ifeq ($(CPU_VARIANT),LPC2141)
  ifndef LD_SCRIPT
    ifndef LD_RAMROM
LD_SCRIPT = build_files/link_8k_32k_rom.ld
    else
      ifeq ($(LD_RAMROM),ROM)
LD_SCRIPT = build_files/link_8k_32k_rom.ld
      else
LD_SCRIPT = build_files/link_8k_32k_ram.ld
      endif
    endif
  endif
else

ifeq ($(CPU_VARIANT),LPC2142)
  ifndef LD_SCRIPT
    ifndef LD_RAMROM
LD_SCRIPT = build_files/link_16k_64k_rom.ld
    else
      ifeq ($(LD_RAMROM),ROM)
LD_SCRIPT = build_files/link_16k_64k_rom.ld
      else
LD_SCRIPT = build_files/link_16k_64k_ram.ld
      endif
    endif
  endif
else

ifeq ($(CPU_VARIANT),LPC2144)
  ifndef LD_SCRIPT
    ifndef LD_RAMROM
LD_SCRIPT = build_files/link_16k_128k_rom.ld
    else
      ifeq ($(LD_RAMROM),ROM)
LD_SCRIPT = build_files/link_16k_128k_rom.ld
      else
LD_SCRIPT = build_files/link_16k_128k_ram.ld
      endif
    endif
  endif
else

⌨️ 快捷键说明

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