~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/arch/arm/Makefile

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

Diff markup

Differences between /arch/arm/Makefile (Version linux-6.12-rc7) and /arch/i386/Makefile (Version linux-5.2.21)


  1 #                                                 
  2 # arch/arm/Makefile                               
  3 #                                                 
  4 # This file is included by the global makefile    
  5 # architecture-specific flags and dependencies    
  6 #                                                 
  7 # This file is subject to the terms and condit    
  8 # License.  See the file "COPYING" in the main    
  9 # for more details.                               
 10 #                                                 
 11 # Copyright (C) 1995-2001 by Russell King         
 12                                                   
 13 LDFLAGS_vmlinux := --no-undefined -X --pic-ven    
 14 ifeq ($(CONFIG_CPU_ENDIAN_BE8),y)                 
 15 LDFLAGS_vmlinux += --be8                          
 16 KBUILD_LDFLAGS_MODULE   += --be8                  
 17 endif                                             
 18                                                   
 19 GZFLAGS         :=-9                              
 20 #KBUILD_CFLAGS  +=-pipe                           
 21                                                   
 22 # Never generate .eh_frame                        
 23 KBUILD_CFLAGS   += $(call cc-option,-fno-dwarf    
 24                                                   
 25 # Disable FDPIC ABI                               
 26 KBUILD_CFLAGS   += $(call cc-option,-mno-fdpic    
 27                                                   
 28 # This should work on most of the modern platf    
 29 KBUILD_DEFCONFIG := multi_v7_defconfig            
 30                                                   
 31 # defines filename extension depending memory     
 32 ifeq ($(CONFIG_MMU),)                             
 33 MMUEXT          := -nommu                         
 34 KBUILD_CFLAGS   += $(call cc-option,-mno-unali    
 35 endif                                             
 36                                                   
 37 ifeq ($(CONFIG_FRAME_POINTER),y)                  
 38 KBUILD_CFLAGS   +=-fno-omit-frame-pointer         
 39 ifeq ($(CONFIG_CC_IS_GCC),y)                      
 40 KBUILD_CFLAGS += -mapcs -mno-sched-prolog         
 41 endif                                             
 42 endif                                             
 43                                                   
 44 ifeq ($(CONFIG_CPU_BIG_ENDIAN),y)                 
 45 KBUILD_CPPFLAGS += -mbig-endian                   
 46 CHECKFLAGS      += -D__ARMEB__                    
 47 KBUILD_LDFLAGS  += -EB                            
 48 else                                              
 49 KBUILD_CPPFLAGS += -mlittle-endian                
 50 CHECKFLAGS      += -D__ARMEL__                    
 51 KBUILD_LDFLAGS  += -EL                            
 52 endif                                             
 53                                                   
 54 #                                                 
 55 # The Scalar Replacement of Aggregates (SRA) o    
 56 # later may result in code being generated tha    
 57 # char struct members incorrectly. So disable     
 58 # (https://gcc.gnu.org/bugzilla/show_bug.cgi?i    
 59 #                                                 
 60 KBUILD_CFLAGS   += $(call cc-option,-fno-ipa-s    
 61                                                   
 62 # This selects which instruction set is used.     
 63 arch-$(CONFIG_CPU_32v7M)        :=-march=armv7    
 64 arch-$(CONFIG_CPU_32v7)         :=-march=armv7    
 65 arch-$(CONFIG_CPU_32v6)         :=-march=armv6    
 66 # Only override the compiler option if ARMv6.     
 67 # always available in ARMv7                       
 68 ifeq ($(CONFIG_CPU_32v6),y)                       
 69 arch-$(CONFIG_CPU_32v6K)        :=-march=armv6    
 70 endif                                             
 71 arch-$(CONFIG_CPU_32v5)         :=-march=armv5    
 72 arch-$(CONFIG_CPU_32v4T)        :=-march=armv4    
 73 arch-$(CONFIG_CPU_32v4)         :=-march=armv4    
 74 arch-$(CONFIG_CPU_32v3)         :=-march=armv3    
 75                                                   
 76 # Note that GCC does not numerically define an    
 77 # macro, but instead defines a whole series of    
 78 # testing for a specific architecture or later    
 79 cpp-$(CONFIG_CPU_32v7M)         :=-D__LINUX_AR    
 80 cpp-$(CONFIG_CPU_32v7)          :=-D__LINUX_AR    
 81 cpp-$(CONFIG_CPU_32v6)          :=-D__LINUX_AR    
 82 # Only override the compiler option if ARMv6.     
 83 # always available in ARMv7                       
 84 ifeq ($(CONFIG_CPU_32v6),y)                       
 85 cpp-$(CONFIG_CPU_32v6K)         :=-D__LINUX_AR    
 86 endif                                             
 87 cpp-$(CONFIG_CPU_32v5)          :=-D__LINUX_AR    
 88 cpp-$(CONFIG_CPU_32v4T)         :=-D__LINUX_AR    
 89 cpp-$(CONFIG_CPU_32v4)          :=-D__LINUX_AR    
 90 cpp-$(CONFIG_CPU_32v3)          :=-D__LINUX_AR    
 91                                                   
 92 # This selects how we optimise for the process    
 93 tune-$(CONFIG_CPU_ARM7TDMI)     :=-mtune=arm7t    
 94 tune-$(CONFIG_CPU_ARM720T)      :=-mtune=arm7t    
 95 tune-$(CONFIG_CPU_ARM740T)      :=-mtune=arm7t    
 96 tune-$(CONFIG_CPU_ARM9TDMI)     :=-mtune=arm9t    
 97 tune-$(CONFIG_CPU_ARM940T)      :=-mtune=arm9t    
 98 tune-$(CONFIG_CPU_ARM946E)      :=-mtune=arm9e    
 99 tune-$(CONFIG_CPU_ARM920T)      :=-mtune=arm9t    
100 tune-$(CONFIG_CPU_ARM922T)      :=-mtune=arm9t    
101 tune-$(CONFIG_CPU_ARM925T)      :=-mtune=arm9t    
102 tune-$(CONFIG_CPU_ARM926T)      :=-mtune=arm9t    
103 tune-$(CONFIG_CPU_FA526)        :=-mtune=arm9t    
104 tune-$(CONFIG_CPU_SA110)        :=-mtune=stron    
105 tune-$(CONFIG_CPU_SA1100)       :=-mtune=stron    
106 tune-$(CONFIG_CPU_XSCALE)       :=-mtune=xscal    
107 tune-$(CONFIG_CPU_XSC3)         :=-mtune=xscal    
108 tune-$(CONFIG_CPU_FEROCEON)     :=-mtune=xscal    
109 tune-$(CONFIG_CPU_V6)           :=-mtune=arm11    
110 tune-$(CONFIG_CPU_V6K)          :=-mtune=arm11    
111                                                   
112 ifeq ($(CONFIG_AEABI),y)                          
113 CFLAGS_ABI      :=-mabi=aapcs-linux -mfpu=vfp     
114 else                                              
115 CFLAGS_ABI      :=$(call cc-option,-mapcs-32,-    
116 endif                                             
117                                                   
118 ifeq ($(CONFIG_ARM_UNWIND),y)                     
119 CFLAGS_ABI      +=-funwind-tables                 
120 endif                                             
121                                                   
122 ifeq ($(CONFIG_CC_IS_CLANG),y)                    
123 CFLAGS_ABI      += -meabi gnu                     
124 endif                                             
125                                                   
126 ifeq ($(CONFIG_CURRENT_POINTER_IN_TPIDRURO),y)    
127 KBUILD_CFLAGS   += -mtp=cp15                      
128 endif                                             
129                                                   
130 # Accept old syntax despite ".syntax unified"     
131 AFLAGS_NOWARN   :=$(call as-option,-Wa$(comma)    
132                                                   
133 # The GCC option -ffreestanding is required in    
134 # ARM/NEON intrinsics in a non C99-compliant e    
135 CC_FLAGS_FPU    := -ffreestanding                 
136 # Enable <arm_neon.h>                             
137 CC_FLAGS_FPU    += -isystem $(shell $(CC) -pri    
138 CC_FLAGS_FPU    += -march=armv7-a -mfloat-abi=    
139                                                   
140 ifeq ($(CONFIG_THUMB2_KERNEL),y)                  
141 CFLAGS_ISA      :=-Wa,-mimplicit-it=always $(A    
142 AFLAGS_ISA      :=$(CFLAGS_ISA) -Wa$(comma)-mt    
143 CFLAGS_ISA      +=-mthumb                         
144 else                                              
145 CFLAGS_ISA      :=$(call cc-option,-marm,) $(A    
146 AFLAGS_ISA      :=$(CFLAGS_ISA)                   
147 endif                                             
148                                                   
149 # Need -Uarm for gcc < 3.x                        
150 KBUILD_CPPFLAGS +=$(cpp-y)                        
151 KBUILD_CFLAGS   +=$(CFLAGS_ABI) $(CFLAGS_ISA)     
152 KBUILD_AFLAGS   +=$(CFLAGS_ABI) $(AFLAGS_ISA)     
153                                                   
154 CHECKFLAGS      += -D__arm__                      
155                                                   
156 # Text offset. This list is sorted numerically    
157 # provide a means to avoid/resolve conflicts i    
158 # Note: the 32kB below this value is reserved     
159 # during boot, and this offset is critical to     
160 # kexec-tools.                                    
161 textofs-y       := 0x00008000                     
162 # RTD1195 has Boot ROM at start of address spa    
163 textofs-$(CONFIG_ARCH_REALTEK)  := 0x00108000     
164 # SA1111 DMA bug: we don't want the kernel to     
165 ifeq ($(CONFIG_ARCH_SA1100),y)                    
166 textofs-$(CONFIG_SA1111) := 0x00208000            
167 endif                                             
168 textofs-$(CONFIG_ARCH_QCOM_RESERVE_SMEM) := 0x    
169 textofs-$(CONFIG_ARCH_MESON) := 0x00208000        
170 textofs-$(CONFIG_ARCH_AXXIA) := 0x00308000        
171                                                   
172 # Machine directory name.  This list is sorted    
173 # by CONFIG_* macro name.                         
174 machine-$(CONFIG_ARCH_ACTIONS)          += act    
175 machine-$(CONFIG_ARCH_ALPINE)           += alp    
176 machine-$(CONFIG_ARCH_ARTPEC)           += art    
177 machine-$(CONFIG_ARCH_ASPEED)           += asp    
178 machine-$(CONFIG_ARCH_AT91)             += at9    
179 machine-$(CONFIG_ARCH_AXXIA)            += axx    
180 machine-$(CONFIG_ARCH_BCM)              += bcm    
181 machine-$(CONFIG_ARCH_BERLIN)           += ber    
182 machine-$(CONFIG_ARCH_CLPS711X)         += clp    
183 machine-$(CONFIG_ARCH_DAVINCI)          += dav    
184 machine-$(CONFIG_ARCH_DIGICOLOR)        += dig    
185 machine-$(CONFIG_ARCH_DOVE)             += dov    
186 machine-$(CONFIG_ARCH_EXYNOS)           += exy    
187 machine-$(CONFIG_ARCH_FOOTBRIDGE)       += foo    
188 machine-$(CONFIG_ARCH_GEMINI)           += gem    
189 machine-$(CONFIG_ARCH_HIGHBANK)         += hig    
190 machine-$(CONFIG_ARCH_HISI)             += his    
191 machine-$(CONFIG_ARCH_HPE)              += hpe    
192 machine-$(CONFIG_ARCH_IXP4XX)           += ixp    
193 machine-$(CONFIG_ARCH_KEYSTONE)         += key    
194 machine-$(CONFIG_ARCH_LPC18XX)          += lpc    
195 machine-$(CONFIG_ARCH_LPC32XX)          += lpc    
196 machine-$(CONFIG_ARCH_MESON)            += mes    
197 machine-$(CONFIG_ARCH_MMP)              += mmp    
198 machine-$(CONFIG_ARCH_MV78XX0)          += mv7    
199 machine-$(CONFIG_ARCH_MVEBU)            += mve    
200 machine-$(CONFIG_ARCH_MXC)              += imx    
201 machine-$(CONFIG_ARCH_MEDIATEK)         += med    
202 machine-$(CONFIG_ARCH_MILBEAUT)         += mil    
203 machine-$(CONFIG_ARCH_MXS)              += mxs    
204 machine-$(CONFIG_ARCH_MSTARV7)          += mst    
205 machine-$(CONFIG_ARCH_NOMADIK)          += nom    
206 machine-$(CONFIG_ARCH_NPCM)             += npc    
207 machine-$(CONFIG_ARCH_OMAP1)            += oma    
208 machine-$(CONFIG_ARCH_OMAP2PLUS)        += oma    
209 machine-$(CONFIG_ARCH_ORION5X)          += ori    
210 machine-$(CONFIG_ARCH_PXA)              += pxa    
211 machine-$(CONFIG_ARCH_QCOM)             += qco    
212 machine-$(CONFIG_ARCH_REALTEK)          += rea    
213 machine-$(CONFIG_ARCH_ROCKCHIP)         += roc    
214 machine-$(CONFIG_ARCH_RPC)              += rpc    
215 machine-$(CONFIG_PLAT_SAMSUNG)          += s3c    
216 machine-$(CONFIG_ARCH_S5PV210)          += s5p    
217 machine-$(CONFIG_ARCH_SA1100)           += sa1    
218 machine-$(CONFIG_ARCH_RENESAS)          += shm    
219 machine-$(CONFIG_ARCH_INTEL_SOCFPGA)    += soc    
220 machine-$(CONFIG_ARCH_STI)              += sti    
221 machine-$(CONFIG_ARCH_STM32)            += stm    
222 machine-$(CONFIG_ARCH_SUNXI)            += sun    
223 machine-$(CONFIG_ARCH_TEGRA)            += teg    
224 machine-$(CONFIG_ARCH_U8500)            += ux5    
225 machine-$(CONFIG_ARCH_VT8500)           += vt8    
226 machine-$(CONFIG_ARCH_ZYNQ)             += zyn    
227 machine-$(CONFIG_PLAT_VERSATILE)        += ver    
228 machine-$(CONFIG_PLAT_SPEAR)            += spe    
229                                                   
230 # legacy platforms provide their own mach/*.h     
231 # these three are mutually exclusive              
232 machdirs-$(CONFIG_ARCH_FOOTBRIDGE)      += arc    
233 machdirs-$(CONFIG_ARCH_RPC)             += arc    
234 machdirs-$(CONFIG_ARCH_SA1100)          += arc    
235 KBUILD_CPPFLAGS += $(patsubst %,-I$(srctree)/%    
236                                                   
237 # The byte offset of the kernel image in RAM f    
238 TEXT_OFFSET := $(textofs-y)                       
239                                                   
240 export  TEXT_OFFSET GZFLAGS MMUEXT                
241                                                   
242 # If we have a machine-specific directory, the    
243 core-y                          += $(patsubst     
244 # For cleaning                                    
245 core-                           += $(patsubst     
246                                                   
247 core-$(CONFIG_PLAT_ORION)       += arch/arm/pl    
248                                                   
249 libs-y                          := arch/arm/li    
250                                                   
251 # Default target when executing plain make        
252 boot := arch/arm/boot                             
253 ifeq ($(CONFIG_XIP_KERNEL),y)                     
254 KBUILD_IMAGE := $(boot)/xipImage                  
255 else                                              
256 KBUILD_IMAGE := $(boot)/zImage                    
257 endif                                             
258                                                   
259 ifeq ($(CONFIG_STACKPROTECTOR_PER_TASK),y)        
260 prepare: stack_protector_prepare                  
261 ifeq ($(CONFIG_CC_HAVE_STACKPROTECTOR_TLS),y)     
262 stack_protector_prepare: prepare0                 
263         $(eval KBUILD_CFLAGS += \                 
264                 -mstack-protector-guard=tls \     
265                 -mstack-protector-guard-offset    
266                         awk '{if ($$2 == "TSK_    
267                                 include/genera    
268 else                                              
269 stack_protector_prepare: prepare0                 
270         $(eval SSP_PLUGIN_CFLAGS := \             
271                 -fplugin-arg-arm_ssp_per_task_    
272                         awk '{if ($$2 == "TSK_    
273                                 include/genera    
274         $(eval KBUILD_CFLAGS += $(SSP_PLUGIN_C    
275         $(eval GCC_PLUGINS_CFLAGS += $(SSP_PLU    
276 endif                                             
277 endif                                             
278                                                   
279 all:    $(notdir $(KBUILD_IMAGE))                 
280                                                   
281                                                   
282 archheaders:                                      
283         $(Q)$(MAKE) $(build)=arch/arm/tools ua    
284                                                   
285 archprepare:                                      
286         $(Q)$(MAKE) $(build)=arch/arm/tools ka    
287                                                   
288 # Convert bzImage to zImage                       
289 bzImage: zImage                                   
290                                                   
291 BOOT_TARGETS    = zImage Image xipImage bootpI    
292 INSTALL_TARGETS = zinstall uinstall install       
293                                                   
294 PHONY += bzImage $(BOOT_TARGETS) $(INSTALL_TAR    
295                                                   
296 bootpImage uImage: zImage                         
297 zImage: Image                                     
298                                                   
299 $(BOOT_TARGETS): vmlinux                          
300         $(Q)$(MAKE) $(build)=$(boot) $(boot)/$    
301         @$(kecho) '  Kernel: $(boot)/$@ is rea    
302                                                   
303 $(INSTALL_TARGETS): KBUILD_IMAGE = $(boot)/$(p    
304 $(INSTALL_TARGETS):                               
305         $(call cmd,install)                       
306                                                   
307 vdso-install-$(CONFIG_VDSO) += arch/arm/vdso/v    
308                                                   
309 # My testing targets (bypasses dependencies)      
310 bp:;    $(Q)$(MAKE) $(build)=$(boot) $(boot)/b    
311                                                   
312 include $(srctree)/scripts/Makefile.defconf       
313 PHONY += multi_v7_lpae_defconfig                  
314 multi_v7_lpae_defconfig:                          
315         $(call merge_into_defconfig,multi_v7_d    
316                                                   
317 define archhelp                                   
318   echo  '* zImage        - Compressed kernel i    
319   echo  '  Image         - Uncompressed kernel    
320   echo  '* xipImage      - XIP kernel image, i    
321   echo  '  uImage        - U-Boot wrapped zIma    
322   echo  '  bootpImage    - Combined zImage and    
323   echo  '                  (supply initrd imag    
324   echo  '  install       - Install uncompresse    
325   echo  '  zinstall      - Install compressed     
326   echo  '  uinstall      - Install U-Boot wrap    
327   echo  '                  Install using (your    
328   echo  '                  (distribution) /sbi    
329   echo  '                  install to $$(INSTA    
330   echo                                            
331   echo  '  multi_v7_lpae_defconfig     - multi    
332 endef                                             
                                                      

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php