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

📄 makefile.mips

📁 Linux Device Drivers 2nd 经典书籍的配套源码
💻 MIPS
字号:
# This material is inherited from the Linux Makefile: arch/mips/Makefile:#ifdef CONFIG_CPU_LITTLE_ENDIANtool-prefix	= mipsel-linux-elsetool-prefix	= mips-linux-endififdef CONFIG_CROSSCOMPILECROSS_COMPILE  = $(tool-prefix)endif## The ELF GCC uses -G0 -mabicalls -fpic as default.  We don't need PIC# code in the kernel since it only slows down the whole thing.  For the# old GCC these options are just the defaults.  At some point we might# make use of global pointer optimizations.## The DECStation requires an ECOFF kernel for remote booting, other MIPS# machines may also.  Since BFD is incredibly buggy with respect to# crossformat linking we rely on the elf2ecoff tool for format conversion.#GCCFLAGS	:= -G 0 -mno-abicalls -fno-picLINKFLAGS	+= -static -G 0MODFLAGS	+= -mlong-callsifdef CONFIG_REMOTE_DEBUGCFLAGS		:= $(CFLAGS) -gendif## CPU-dependent compiler/assembler options for optimization.#ifdef CONFIG_CPU_R3000GCCFLAGS	+= -mcpu=r3000 -mips1endififdef CONFIG_CPU_R6000GCCFLAGS	+= -mcpu=r6000 -mips2 -Wa,--trapendififdef CONFIG_CPU_R4300GCCFLAGS	+= -mcpu=r4300 -mips2 -Wa,--trapendififdef CONFIG_CPU_R4X00GCCFLAGS	+= -mcpu=r4600 -mips2 -Wa,--trapendififdef CONFIG_CPU_R5000GCCFLAGS	+= -mcpu=r8000 -mips2 -Wa,--trapendififdef CONFIG_CPU_NEVADAGCCFLAGS	+= -mcpu=r8000 -mips2 -Wa,--trap -mmadendififdef CONFIG_CPU_RM7000GCCFLAGS	+= -mcpu=r8000 -mips2 -Wa,--trapendififdef CONFIG_CPU_R8000GCCFLAGS	+= -mcpu=r8000 -mips2 -Wa,--trapendififdef CONFIG_CPU_R10000GCCFLAGS	+= -mcpu=r8000 -mips2 -Wa,--trapendififdef CONFIG_CPU_VR41XXCFLAGS		+= -mcpu=r4600 -mips2 -Wa,-m4100,--trapendififdef CONFIG_CPU_R39XX# if your toolchain supports this, change to# CFLAGS	+= -mcpu=r3900 -mips1CFLAGS		+= -mcpu=r3000 -mips1endififdef CONFIG_MIPS_FPU_EMULATORCORE_FILES      +=arch/mips/fpu_emulator/fpu_emulator.oSUBDIRS         +=arch/mips/fpu_emulatorendif## The pipe options is bad for my low-mem machine# Uncomment this if you want this.#GCCFLAGS	+= -pipeCFLAGS		+= $(GCCFLAGS) $(MODFLAGS)AFLAGS		+= $(GCCFLAGS)## Board-dependent options and extra files#ifdef CONFIG_ALGOR_P4032CORE_FILES    += arch/mips/algor/algor.oSUBDIRS       += arch/mips/algor#LOADADDR      += 0x80000000endif## DECstation family#ifdef CONFIG_DECSTATIONCORE_FILES    += arch/mips/dec/dec.oSUBDIRS       += arch/mips/dec arch/mips/dec/promLIBS          += arch/mips/dec/prom/rexlib.aLOADADDR      += 0x80040000endif## Acer PICA 61, Mips Magnum 4000 and Olivetti M700.#ifdef CONFIG_MIPS_JAZZCORE_FILES    += arch/mips/jazz/jazz.oSUBDIRS       += arch/mips/jazz arch/mips/arcLIBS          += arch/mips/arc/arclib.aLOADADDR      += 0x80080000endififdef CONFIG_COBALT_MICRO_SERVERARCHIVES      += arch/mips/cobalt/cobalt.oSUBDIRS       += arch/mips/cobaltLOADADDR      += 0x80000000endififdef CONFIG_SNI_RM200_PCICORE_FILES    += arch/mips/sni/sni.oSUBDIRS       += arch/mips/sni arch/mips/arcLIBS          += arch/mips/arc/arclib.aLOADADDR      += 0x80080000endififdef CONFIG_SGI_IP22LIBS          += arch/mips/sgi/kernel/sgikern.a arch/mips/arc/arclib.aSUBDIRS       += arch/mips/sgi/kernel arch/mips/arc## Set LOADADDR to >= 0x88069000 if you want to leave space for symmon,# 0x88002000 for production kernels.  Note that the value must be# 8kb aligned or the handling of the current variable will break.#LOADADDR      += 0x88002000endif## Baget/MIPS#ifdef CONFIG_BAGET_MIPSSUBDIRS       += arch/mips/baget arch/mips/baget/promLIBS          += arch/mips/baget/baget.a arch/mips/baget/prom/bagetlib.aLOADADDR      += 0x80001000endif## NEC DDB Vrc-5074#ifdef CONFIG_DDB5074SUBDIRS       += arch/mips/ddb5074LIBS          += arch/mips/ddb5074/ddb5074.aLOADADDR      += 0x80080000endif## Orion Board#ifdef CONFIG_ORIONLIBS          += arch/mips/orion/orionkern.aSUBDIRS       += arch/mips/orionLINKSCRIPT    = arch/mips/orion/ld.script.orionendif## VR41XX-based devices#ifdef CONFIG_CPU_VR41XX  CORE_FILES    += arch/mips/vr41xx/vr41xx.o  SUBDIRS       += arch/mips/vr41xx  # Link kernel just above exception vectors (default).  LOADADDR      = 0x80001000  # arch/mips/config.in can provide .text and .data addresses.  ifdef CONFIG_LINK_TEXT    LOADADDR = $(CONFIG_LINK_TEXT)  endif  ifdef CONFIG_LINK_DATA    DATAADDR = $(CONFIG_LINK_DATA)  endif  ifdef CONFIG_XIP_ROM    ifndef CONFIG_LINK_TEXT      # For XIP ROM, .text address is likely to vary from platform to platform,      # and even from device to device depending on ROM configuration,      # so instead of providing a default and giving a potententially      # false sense of well-being, cause an error instead.      LOADADDR = Error_no_link_text_address_specified_for_xip_rom.    endif    LINKSCRIPT    = arch/mips/vr41xx/rom.lds  endifendif## R39XX-based devices#ifdef CONFIG_CPU_R39XXCORE_FILES    += arch/mips/r39xx/r39xx.oSUBDIRS       += arch/mips/r39xx arch/mips/r39xx/promLIBS          += arch/mips/r39xx/prom/r39xxlib.aifdef CONFIG_VTECH_HELIO  ifndef CONFIG_XIP_ROM    # This is really a condition on whether we plan to use hfload.  Fix later.    # Stay away from the bootloader.    LOADADDR      += 0x80004000  else    LOADADDR      = 0x80000000    # arch/mips/config.in can provide .text and .data addresses.    ifdef CONFIG_LINK_TEXT      LOADADDR = $(CONFIG_LINK_TEXT)    endif    ifdef CONFIG_LINK_DATA      DATAADDR = $(CONFIG_LINK_DATA)    endif    ifndef CONFIG_LINK_TEXT      # For XIP ROM, .text address is likely to vary from platform to platform,      # and even from device to device depending on ROM configuration,      # so instead of providing a default and giving a potententially      # false sense of well-being, cause an error instead.      LOADADDR = Error_no_link_text_address_specified_for_xip_rom.    endif    LINKSCRIPT    = arch/mips/r39xx/rom.lds  endifendifendif# Choosing incompatible machines durings configuration will result in# error messages during linking.  Select a default linkscript if# none has been choosen above.#ifndef LINKSCRIPTifndef CONFIG_CPU_LITTLE_ENDIANLINKSCRIPT    = arch/mips/ld.script.bigelseLINKSCRIPT    = arch/mips/ld.script.littleendifendifLINKFLAGS     += -T $(word 1,$(LINKSCRIPT))ifdef LOADADDRLINKFLAGS     += -Ttext $(word 1,$(LOADADDR))endififdef DATAADDRLINKFLAGS     += -Tdata $(word 1,$(DATAADDR))endif

⌨️ 快捷键说明

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