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

📄 makefile

📁 单片机学习资料 适合初学者进行开发学习
💻
字号:
## arch/armnommu/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) 1995-2001 by Russell King# Addition of#  (c) Copyright 2001-2002 - S3C4530 by Arcturus Networks Inc.#  (c) Copyright 2002-2003 - S3C2500 by Arcturus Networks Inc.#  LINKFLAGS	:=-p -X -T arch/armnommu/vmlinux.ldsGZFLAGS		:=-9CFLAGS		+=-fno-common -pipe -fno-builtin -D__linux__ifneq ($(CONFIG_NO_FRAME_POINTER),y)CFLAGS		:=$(CFLAGS:-fomit-frame-pointer=)endififeq ($(CONFIG_DEBUG_INFO),y)CFLAGS		+=-gendifCFLAGS += -DNO_MMAFLAGS += -DNO_MM# Select CPU dependent flags.  Note that order of declaration is important;# the options further down the list override previous items.#apcs-$(CONFIG_CPU_26)		:=-mapcs-26 -mcpu=arm3 -Osapcs-$(CONFIG_CPU_32)		:=-mapcs-32arch-$(CONFIG_CPU_32v3)		:=-march=armv3arch-$(CONFIG_CPU_32v4)		:=-march=armv4arch-$(CONFIG_CPU_32v5)		:=-march=armv5proc-$(CONFIG_CPU_32v3)		:=-march=armv3mproc-$(CONFIG_CPU_32v4)		:=-march=armv4proc-$(CONFIG_CPU_32v5)		:=-march=armv5tune-$(CONFIG_CPU_ARM7V3)	:=-mtune=arm610tune-$(CONFIG_CPU_ARM610)	:=-mtune=arm610#tune-$(CONFIG_CPU_ARM710)	:=-mtune=arm710tune-$(CONFIG_CPU_ARM710)	:=-mtune=arm7tdmitune-$(CONFIG_CPU_ARM720T)	:=-mtune=arm7tdmitune-$(CONFIG_CPU_ARM740T)	:=-mtune=arm7tdmitune-$(CONFIG_CPU_ARM920T)	:=-mtune=arm9tdmitune-$(CONFIG_CPU_SA110)	:=-mtune=strongarm110tune-$(CONFIG_CPU_SA1100)	:=-mtune=strongarm1100ifeq ($(CONFIG_CPU_BIG_ENDIAN),y)CFLAGS    	+= -mbig-endianAFLAGS		+= -mbig-endianLINKFLAGS	+= -EBLDFLAGS		+= -EBendifCFLAGS		+= $(apcs-y) $(arch-y) $(tune-y) -mshort-load-bytes -msoft-floatAFLAGS		+= $(apcs-y) $(proc-y) -msoft-float -mno-fpuLIBGCC		:= $(shell $(CC) $(CFLAGS) --print-libgcc-file-name)ifeq ($(CONFIG_CPU_26),y)PROCESSOR	 = armoTEXTADDR	 = 0x02080000endififeq ($(CONFIG_CPU_32),y)PROCESSOR	 = armvTEXTADDR	 = 0xC0008000endififeq ($(CONFIG_ARCH_ARCA5K),y)MACHINE		 = arcendififeq ($(CONFIG_ARCH_RPC),y)MACHINE		 = rpcendififeq ($(CONFIG_ARCH_EBSA110),y)MACHINE		 = ebsa110endififeq ($(CONFIG_ARCH_CLPS7500),y)MACHINE		 = clps7500INCDIR		 = cl7500endififeq ($(CONFIG_FOOTBRIDGE),y)MACHINE		 = footbridgeINCDIR		 = ebsa285endififeq ($(CONFIG_ARCH_CO285),y)TEXTADDR	 = 0x60008000MACHINE		 = footbridgeINCDIR		 = ebsa285endififeq ($(CONFIG_ARCH_NEXUSPCI),y)MACHINE		 = nexuspciendififeq ($(CONFIG_ARCH_SHARK),y)MACHINE		 = sharkendififeq ($(CONFIG_ARCH_SA1100),y)ifeq ($(CONFIG_SA1111),y)# SA1111 DMA bug: we don't want the kernel to live in precious DMA-able memoryTEXTADDR	 = 0xc0208000endifMACHINE		 = sa1100endififeq ($(CONFIG_ARCH_L7200),y)MACHINE		 = l7200endififeq ($(CONFIG_ARCH_INTEGRATOR),y)MACHINE		 = integratorTEXTADDR	 = 0x00008000endififeq ($(CONFIG_ARCH_CLPS711X),y)TEXTADDR	 = 0xc0018000MACHINE		 = clps711xendififeq ($(CONFIG_ARCH_DSC21),y)MACHINE 	 = dsc21TEXTADDR	 = 0x02000000DATAADDR	 = 0x08000000INCDIR		 = dsc21#LINKFLAGS	 = -X -T arch/armnommu/vmlinux.ldsendififeq ($(CONFIG_ARCH_P52),y)TEXTADDR	 = 0x900000MACHINE		 = p52CFLAGS		+= -DNO_MM -DMAGIC_ROM_PTRendififeq ($(CONFIG_ARCH_CX821XX),y)MACHINE		= cx821xxTEXTADDR	= 0x800000CFLAGS		+= -DNO_MM -DMAGIC_ROM_PTRLINKFLAGS	+= -T arch/armnommu/mach-$(MACHINE)/ramlinux.ldsendififeq ($(CONFIG_ARCH_SPIPE),y)TEXTADDR	 = 0x808000MACHINE		 = spipeendififeq ($(CONFIG_ARCH_ATMEL),y)TEXTADDR	= 0x1000000MACHINE		= atmelendififeq ($(CONFIG_ARCH_NETARM),y)MACHINE 	 = netarm# This allows it to use the internal bootloader.TEXTADDR	 = 0x00000000INCDIR  	 = netarmCFLAGS		+= -mcpu=arm7tdmi#LINKFLAGS	 = -X -T arch/armnommu/vmlinux.ldsendififeq ($(CONFIG_ARCH_TA7S),y)  ifeq ($(CONFIG_USE_A7HAL),y)    CFLAGS += -I$(HPATH)/asm/arch/a7hal \	  -I$(HPATH)/asm/arch/a7hal/soft  endif  PROCESSOR	 = armv  MACHINE 	 = ta7s  TEXTADDR	 = 0x00000000  INCDIR  	 = ta7sendififeq ($(CONFIG_ARCH_TA7V),y)  ifeq ($(CONFIG_ARCH_TA7VL),y)	CFLAGS += -DA7VL  endif  ifeq ($(CONFIG_ARCH_TA7VE),y)	CFLAGS += -DA7VE  endif  ifeq ($(CONFIG_ARCH_TA7VC),y)	CFLAGS += -DA7VC  endif  ifeq ($(CONFIG_ARCH_TA7VT),y)	CFLAGS += -DA7VT  endif  ifeq ($(CONFIG_USE_A7HAL),y)    CFLAGS += -I$(HPATH)/asm/arch/a7hal \	  -I$(HPATH)/asm/arch/a7hal/soft  endif  PROCESSOR	 = armv  MACHINE 	 = ta7s  TEXTADDR	 = 0x00000000  INCDIR  	 = ta7sendififeq ($(CONFIG_ARCH_SWARM),y)MACHINE    = swarmTEXTADDR   = 0x00008000endififeq ($(CONFIG_BOARD_SNDS100),y)TEXTADDR   	 = 0x00008000MACHINE    	 = snds100endififeq ($(CONFIG_BOARD_EVS3C4530HEI),y)TEXTADDR         = 0x00020000MACHINE          = evS3C4530HEI#INCDIR           = $(MACHINE)endififeq ($(CONFIG_BOARD_SMDK2500),y)MACHINE		= SMDK2500#INCDIR		= $(MACHINE)TEXTADDR	= 0x20000endififeq ($(CONFIG_BOARD_S3C2500REFRGP),y)MACHINE		= S3C2500REFRGP#INCDIR		= $(MACHINE)TEXTADDR	= 0x20000endififeq ($(CONFIG_BOARD_SMDK40100),y)TEXTADDR   	 = 0x01020000MACHINE          = S3C3410INCDIR           = $(MACHINE)endififeq ($(CONFIG_BOARD_MBA44),y)TEXTADDR   	 = 0x0c000000MACHINE          = S3C44B0XINCDIR           = $(MACHINE)CORE_FILES	:= $(CORE_FILES) romfs.oendififeq ($(CONFIG_ARCH_C5471), y)MACHINE         = c5471endifexport	LDFLAGS LIBGCC MACHINE PROCESSOR TEXTADDR GZFLAGS# Only set INCDIR if its not already defined above# Grr, ?= doesn't work as all the other assignment operators do.  Make bug?ifeq ($(origin INCDIR), undefined)INCDIR		:= $(MACHINE)endif# If we have a machine-specific directory, then include it in the build.MACHDIR		:= arch/armnommu/mach-$(MACHINE)ifeq ($(MACHDIR),$(wildcard $(MACHDIR)))SUBDIRS		+= $(MACHDIR)CORE_FILES	:= $(MACHDIR)/$(MACHINE).o $(CORE_FILES)endifHEAD		:= arch/armnommu/kernel/head-$(PROCESSOR).oifeq ($(CONFIG_ARCH_DSC21),y)HEAD		:= arch/armnommu/kernel/head-arm-dsc21.oendififeq ($(CONFIG_ARCH_C5471),y)HEAD		:= arch/armnommu/kernel/head-arm-c5471.oendifHEAD		+= arch/armnommu/kernel/init_task.oSUBDIRS		+= arch/armnommu/kernel arch/armnommu/mm arch/armnommu/lib arch/armnommu/nwfpeCORE_FILES	:= arch/armnommu/kernel/kernel.o arch/armnommu/mm/mm.o $(CORE_FILES)LIBS		:= arch/armnommu/lib/lib.a $(LIBS) $(LIBGCC)ifeq ($(CONFIG_NWFPE),y)LIBS		:= arch/armnommu/nwfpe/math-emu.o $(LIBS)endififeq ($(CONFIG_ARCH_CLPS7500),y)SUBDIRS		+= drivers/acorn/charDRIVERS		+= drivers/acorn/char/acorn-char.oendififeq ($(CONFIG_ARCH_NETARM),y)HEAD		:= arch/armnommu/kernel/head-arm-netarm.o \		   arch/armnommu/kernel/init_task.oendif## If you want the kernel build to build modules outside of the tree# then define this and pass it to the main linux makefile#ifdef EXTRA_MODULE_DIRSSUBDIRS += $(EXTRA_MODULE_DIRS)endifMAKEBOOT	 = $(MAKE) -C arch/$(ARCH)/boot LINUX=$(LINUX)MAKETOOLS	 = $(MAKE) -C arch/$(ARCH)/tools LINUX=$(LINUX)# The following is a hack to get 'constants.h' up# to date before starting compilation$(patsubst %,_dir_%, $(SUBDIRS)): maketools$(patsubst %,_modsubdir_%,$(MOD_DIRS)): maketoolssymlinks: archsymlinksarchsymlinks:	$(RM) include/asm-armnommu/arch include/asm-armnommu/proc	(cd include/asm-armnommu; ln -sf arch-$(INCDIR) arch; ln -sf proc-$(PROCESSOR) proc)$(LINUX): arch/armnommu/vmlinux.ldsarch/armnommu/vmlinux.lds: arch/armnommu/vmlinux-$(PROCESSOR).lds.in dummyifeq ($(CONFIG_ARCH_DSC21),y)	@sed 's/TEXTADDR/$(TEXTADDR)/' <$< >tmp.ld	@sed 's/DATAADDR/$(DATAADDR)/' <tmp.ld >$@	$(RM) tmp.ldelseifeq ($(CONFIG_ARCH_C5471),y)	@sed 's/TEXTADDR/$(FLASH_MEM_BASE)/;s/DATAADDR/$(DRAM_BASE)/' <$< >$@else	@sed 's/TEXTADDR/$(TEXTADDR)/' <$< >$@endifendifarch/armnommu/kernel arch/armnommu/mm arch/armnommu/lib: dummy	$(MAKE) CFLAGS="$(CFLAGS) $(CFLAGS_KERNEL)" $(subst $@, _dir_$@, $@)bzImage zImage zinstall Image bootpImage install: $(LINUX)	@$(MAKEBOOT) $@CLEAN_FILES	+= \	arch/armnommu/vmlinux.lds \	include/asm-armnommu/constants.h* \	include/asm-armnommu/mach-types.hMRPROPER_FILES	+= \	include/asm-armnommu/arch \	include/asm-armnommu/proc# We use MRPROPER_FILES and CLEAN_FILES nowarchmrproper:	@/bin/truearchclean:	@$(MAKEBOOT) cleanarchdep: scripts/mkdep archsymlinks	@$(MAKETOOLS) dep	@$(MAKEBOOT) depmaketools: checkbin	@$(MAKETOOLS) all# Ensure this is ld "2.9.4" or laterNEW_LINKER	:= $(shell $(LD) --gc-sections --version >/dev/null 2>&1; echo $$?)ifneq ($(NEW_LINKER),0)checkbin:	@echo '*** ${VERSION}.${PATCHLEVEL} kernels no longer build correctly with old versions of binutils.'	@echo '*** Please upgrade your binutils to 2.9.5.'	@falseelsecheckbin:	@trueendif# My testing targets (that short circuit a few dependencies)zImg:;	@$(MAKEBOOT) zImageImg:;	@$(MAKEBOOT) Imagei:;	@$(MAKEBOOT) installzi:;	@$(MAKEBOOT) zinstallbp:;	@$(MAKEBOOT) bootpImage## Configuration targets.  Use these to select a# configuration for your architecture%_config:	@( \	CFG=$(@:_config=); \	if [ -f arch/armnommu/def-configs/$$CFG ]; then \	  $(RM) arch/armnommu/defconfig; \	  cp arch/armnommu/def-configs/$$CFG arch/armnommu/defconfig; \	  echo "*** Default configuration for $$CFG installed"; \	  echo "*** Next, you may run 'make oldconfig'"; \	else \	  echo "$$CFG does not exist"; \	fi; \	)

⌨️ 快捷键说明

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