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

TOMOYO Linux Cross Reference
Linux/arch/powerpc/kernel/vdso/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/powerpc/kernel/vdso/Makefile (Architecture mips) and /arch/alpha/kernel/vdso/Makefile (Architecture alpha)


  1 # SPDX-License-Identifier: GPL-2.0                
  2                                                   
  3 # List of files in the vdso, has to be asm onl    
  4                                                   
  5 # Include the generic Makefile to check the bu    
  6 include $(srctree)/lib/vdso/Makefile              
  7                                                   
  8 obj-vdso32 = sigtramp32-32.o gettimeofday-32.o    
  9 obj-vdso64 = sigtramp64-64.o gettimeofday-64.o    
 10                                                   
 11 obj-vdso32 += getrandom-32.o vgetrandom-chacha    
 12 obj-vdso64 += getrandom-64.o vgetrandom-chacha    
 13                                                   
 14 ifneq ($(c-gettimeofday-y),)                      
 15   CFLAGS_vgettimeofday-32.o += -include $(c-ge    
 16 # Go prior to 1.16.x assumes r30 is not clobbe    
 17 # by accident when the VDSO was hand-written a    
 18 # compiler generated. To avoid breaking Go tel    
 19 # generation is minimal, it will just use r29     
 20   CFLAGS_vgettimeofday-64.o += -include $(c-ge    
 21 endif                                             
 22                                                   
 23 ifneq ($(c-getrandom-y),)                         
 24   CFLAGS_vgetrandom-32.o += -include $(c-getra    
 25   CFLAGS_vgetrandom-64.o += -include $(c-getra    
 26 endif                                             
 27                                                   
 28 # Build rules                                     
 29                                                   
 30 ifdef CROSS32_COMPILE                             
 31     VDSOCC := $(CROSS32_COMPILE)gcc               
 32 else                                              
 33     VDSOCC := $(CC)                               
 34 endif                                             
 35                                                   
 36 targets := $(obj-vdso32) vdso32.so.dbg vgettim    
 37 targets += crtsavres-32.o                         
 38 obj-vdso32 := $(addprefix $(obj)/, $(obj-vdso3    
 39 targets += $(obj-vdso64) vdso64.so.dbg vgettim    
 40 obj-vdso64 := $(addprefix $(obj)/, $(obj-vdso6    
 41                                                   
 42 ccflags-y := -fno-common -fno-builtin -DBUILD_    
 43 ccflags-y += $(DISABLE_LATENT_ENTROPY_PLUGIN)     
 44 ccflags-y += $(call cc-option, -fno-stack-prot    
 45 ccflags-y += -DDISABLE_BRANCH_PROFILING           
 46 ccflags-y += -ffreestanding -fasynchronous-unw    
 47 ccflags-remove-y := $(CC_FLAGS_FTRACE)            
 48 ldflags-y := -Wl,--hash-style=both -nostdlib -    
 49 ldflags-$(CONFIG_LD_IS_LLD) += $(call cc-optio    
 50 ldflags-$(CONFIG_LD_ORPHAN_WARN) += -Wl,--orph    
 51                                                   
 52 # Filter flags that clang will warn are unused    
 53 ldflags-y += $(filter-out $(CC_AUTO_VAR_INIT_Z    
 54                                                   
 55 CC32FLAGS := -m32                                 
 56 CC32FLAGSREMOVE := -mcmodel=medium -mabi=elfv1    
 57   # This flag is supported by clang for 64-bit    
 58   # an unused command line flag warning for th    
 59 ifdef CONFIG_CC_IS_CLANG                          
 60 CC32FLAGSREMOVE += -fno-stack-clash-protection    
 61 endif                                             
 62 LD32FLAGS := -Wl,-soname=linux-vdso32.so.1        
 63 AS32FLAGS := -D__VDSO32__                         
 64                                                   
 65 LD64FLAGS := -Wl,-soname=linux-vdso64.so.1        
 66 AS64FLAGS := -D__VDSO64__                         
 67                                                   
 68 targets += vdso32.lds                             
 69 CPPFLAGS_vdso32.lds += -P -C -Upowerpc            
 70 targets += vdso64.lds                             
 71 CPPFLAGS_vdso64.lds += -P -C                      
 72                                                   
 73 # link rule for the .so file, .lds has to be f    
 74 $(obj)/vdso32.so.dbg: $(obj)/vdso32.lds $(obj-    
 75         $(call if_changed,vdso32ld_and_check)     
 76 $(obj)/vdso64.so.dbg: $(obj)/vdso64.lds $(obj-    
 77         $(call if_changed,vdso64ld_and_check)     
 78                                                   
 79 # assembly rules for the .S files                 
 80 $(obj-vdso32): %-32.o: %.S FORCE                  
 81         $(call if_changed_dep,vdso32as)           
 82 $(obj)/crtsavres-32.o: %-32.o: $(srctree)/arch    
 83         $(call if_changed_dep,vdso32as)           
 84 $(obj)/vgettimeofday-32.o: %-32.o: %.c FORCE      
 85         $(call if_changed_dep,vdso32cc)           
 86 $(obj)/vgetrandom-32.o: %-32.o: %.c FORCE         
 87         $(call if_changed_dep,vdso32cc)           
 88 $(obj-vdso64): %-64.o: %.S FORCE                  
 89         $(call if_changed_dep,vdso64as)           
 90 $(obj)/vgettimeofday-64.o: %-64.o: %.c FORCE      
 91         $(call if_changed_dep,cc_o_c)             
 92 $(obj)/vgetrandom-64.o: %-64.o: %.c FORCE         
 93         $(call if_changed_dep,cc_o_c)             
 94                                                   
 95 # Generate VDSO offsets using helper script       
 96 gen-vdso32sym := $(src)/gen_vdso32_offsets.sh     
 97 quiet_cmd_vdso32sym = VDSO32SYM $@                
 98       cmd_vdso32sym = $(NM) $< | $(gen-vdso32s    
 99 gen-vdso64sym := $(src)/gen_vdso64_offsets.sh     
100 quiet_cmd_vdso64sym = VDSO64SYM $@                
101       cmd_vdso64sym = $(NM) $< | $(gen-vdso64s    
102                                                   
103 include/generated/vdso32-offsets.h: $(obj)/vds    
104         $(call if_changed,vdso32sym)              
105 include/generated/vdso64-offsets.h: $(obj)/vds    
106         $(call if_changed,vdso64sym)              
107                                                   
108 # actual build commands                           
109 quiet_cmd_vdso32ld_and_check = VDSO32L $@         
110       cmd_vdso32ld_and_check = $(VDSOCC) $(ldf    
111 quiet_cmd_vdso32as = VDSO32A $@                   
112       cmd_vdso32as = $(VDSOCC) $(a_flags) $(CC    
113 quiet_cmd_vdso32cc = VDSO32C $@                   
114       cmd_vdso32cc = $(VDSOCC) $(filter-out $(    
115                                                   
116 quiet_cmd_vdso64ld_and_check = VDSO64L $@         
117       cmd_vdso64ld_and_check = $(VDSOCC) $(ldf    
118 quiet_cmd_vdso64as = VDSO64A $@                   
119       cmd_vdso64as = $(VDSOCC) $(a_flags) $(AS    
                                                      

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