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

TOMOYO Linux Cross Reference
Linux/arch/x86/purgatory/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/x86/purgatory/Makefile (Architecture m68k) and /arch/ppc/purgatory/Makefile (Architecture ppc)


  1 # SPDX-License-Identifier: GPL-2.0                
  2                                                   
  3 purgatory-y := purgatory.o stack.o setup-x86_$    
  4                                                   
  5 targets += $(purgatory-y)                         
  6 PURGATORY_OBJS = $(addprefix $(obj)/,$(purgato    
  7                                                   
  8 $(obj)/string.o: $(srctree)/arch/x86/boot/comp    
  9         $(call if_changed_rule,cc_o_c)            
 10                                                   
 11 $(obj)/sha256.o: $(srctree)/lib/crypto/sha256.    
 12         $(call if_changed_rule,cc_o_c)            
 13                                                   
 14 CFLAGS_sha256.o := -D__DISABLE_EXPORTS -D__NO_    
 15                                                   
 16 # When profile-guided optimization is enabled,    
 17 # overlapping text sections, which is not supp    
 18 # optimization flags.                             
 19 KBUILD_CFLAGS := $(filter-out -fprofile-sample    
 20                                                   
 21 # When LTO is enabled, llvm emits many text se    
 22 # by kexec. Remove -flto=* flags.                 
 23 KBUILD_CFLAGS := $(filter-out $(CC_FLAGS_LTO),    
 24                                                   
 25 # When linking purgatory.ro with -r unresolved    
 26 # also link a purgatory.chk binary without -r     
 27 PURGATORY_LDFLAGS := -e purgatory_start -z nod    
 28 LDFLAGS_purgatory.ro := -r $(PURGATORY_LDFLAGS    
 29 LDFLAGS_purgatory.chk := $(PURGATORY_LDFLAGS)     
 30 targets += purgatory.ro purgatory.chk             
 31                                                   
 32 # These are adjustments to the compiler flags     
 33 # make up the standalone purgatory.ro             
 34                                                   
 35 PURGATORY_CFLAGS_REMOVE := -mcmodel=kernel        
 36 PURGATORY_CFLAGS := -mcmodel=small -ffreestand    
 37 PURGATORY_CFLAGS += -fpic -fvisibility=hidden     
 38 PURGATORY_CFLAGS += $(DISABLE_STACKLEAK_PLUGIN    
 39 PURGATORY_CFLAGS += -fno-stack-protector          
 40                                                   
 41 # Default KBUILD_CFLAGS can have -pg option se    
 42 # in turn leaves some undefined symbols like _    
 43 # sure how to relocate those.                     
 44 ifdef CONFIG_FUNCTION_TRACER                      
 45 PURGATORY_CFLAGS_REMOVE         += $(CC_FLAGS_    
 46 endif                                             
 47                                                   
 48 ifdef CONFIG_STACKPROTECTOR                       
 49 PURGATORY_CFLAGS_REMOVE         += -fstack-pro    
 50 endif                                             
 51                                                   
 52 ifdef CONFIG_STACKPROTECTOR_STRONG                
 53 PURGATORY_CFLAGS_REMOVE         += -fstack-pro    
 54 endif                                             
 55                                                   
 56 ifdef CONFIG_MITIGATION_RETPOLINE                 
 57 PURGATORY_CFLAGS_REMOVE         += $(RETPOLINE    
 58 endif                                             
 59                                                   
 60 ifdef CONFIG_CFI_CLANG                            
 61 PURGATORY_CFLAGS_REMOVE         += $(CC_FLAGS_    
 62 endif                                             
 63                                                   
 64 CFLAGS_REMOVE_purgatory.o       += $(PURGATORY    
 65 CFLAGS_purgatory.o              += $(PURGATORY    
 66                                                   
 67 CFLAGS_REMOVE_sha256.o          += $(PURGATORY    
 68 CFLAGS_sha256.o                 += $(PURGATORY    
 69                                                   
 70 CFLAGS_REMOVE_string.o          += $(PURGATORY    
 71 CFLAGS_string.o                 += $(PURGATORY    
 72                                                   
 73 asflags-remove-y                += $(foreach x    
 74                                                   
 75 $(obj)/purgatory.ro: $(PURGATORY_OBJS) FORCE      
 76                 $(call if_changed,ld)             
 77                                                   
 78 $(obj)/purgatory.chk: $(obj)/purgatory.ro FORC    
 79                 $(call if_changed,ld)             
 80                                                   
 81 $(obj)/kexec-purgatory.o: $(obj)/purgatory.ro     
 82                                                   
 83 obj-y += kexec-purgatory.o                        
                                                      

~ [ 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