📄 makefile
字号:
## This file is subject to the terms and conditions of the GNU General Public# License. See the file "COPYING" in the main directory of this archive# for more details.## Copyright (C) 1994, 1995, 1996 by Ralf Baechle# DECStation modifications by Paul M. Antoine, 1996## This file is included by the global makefile so that you can add your own# architecture-specific flags and dependencies. Remember to do have actions# for "archclean" and "archdep" for cleaning up and making dependencies for# this architecture### Select the object file format to substitute into the linker script.#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.#CFLAGS += -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_R3000CFLAGS := $(CFLAGS) -mcpu=r3000 -mips1endififdef CONFIG_CPU_R6000CFLAGS := $(CFLAGS) -mcpu=r6000 -mips2 -Wa,--trapendififdef CONFIG_CPU_R4300CFLAGS := $(CFLAGS) -mcpu=r4300 -mips2 -Wa,--trapendififdef CONFIG_CPU_R4X00CFLAGS := $(CFLAGS) -mcpu=r4600 -mips2 -Wa,--trapendififdef CONFIG_CPU_R5000CFLAGS := $(CFLAGS) -mcpu=r8000 -mips2 -Wa,--trapendififdef CONFIG_CPU_NEVADACFLAGS := $(CFLAGS) -mcpu=r8000 -mips2 -Wa,--trap -mmadendififdef CONFIG_CPU_R8000CFLAGS := $(CFLAGS) -mcpu=r8000 -mips2 -Wa,--trapendififdef CONFIG_CPU_R10000CFLAGS := $(CFLAGS) -mcpu=r8000 -mips2 -Wa,--trapendif## 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## 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))endif## The pipe options is bad for my low-mem machine# Uncomment this if you want this.#CFLAGS += -pipeHEAD := arch/mips/kernel/head.o arch/mips/kernel/init_task.oSUBDIRS := $(addprefix arch/mips/, tools) $(SUBDIRS) $(addprefix arch/mips/, kernel mm lib)CORE_FILES := arch/mips/kernel/kernel.o arch/mips/mm/mm.o $(CORE_FILES)LIBS := arch/mips/lib/lib.a $(LIBS)ifdef CONFIG_BAGET_MIPSBAGETBOOT = $(MAKE) -C arch/$(ARCH)/bagetbalo: vmlinux $(BAGETBOOT) baloendififdef CONFIG_ORIONORIONBOOT = $(MAKE) -C arch/$(ARCH)/orionorionboot: $(ORIONBOOT) orionbootendifMAKEBOOT = $(MAKE) -C arch/$(ARCH)/bootzImage: vmlinux @$(MAKEBOOT) zImagecompressed: zImagezdisk: vmlinux @$(MAKEBOOT) zdiskarchclean: @$(MAKEBOOT) clean $(MAKE) -C arch/$(ARCH)/kernel clean $(MAKE) -C arch/$(ARCH)/tools clean $(MAKE) -C arch/mips/baget cleanarchmrproper: @$(MAKEBOOT) mrproper $(MAKE) -C arch/$(ARCH)/tools mrproperarchdep: if [ ! -f $(TOPDIR)/include/asm-$(ARCH)/offset.h ]; then \ touch $(TOPDIR)/include/asm-$(ARCH)/offset.h; \ fi; @$(MAKEBOOT) dep
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -