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

TOMOYO Linux Cross Reference
Linux/arch/s390/kernel/vdso64/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 ] ~

  1 # SPDX-License-Identifier: GPL-2.0
  2 # List of files in the vdso
  3 
  4 # Include the generic Makefile to check the built vdso.
  5 include $(srctree)/lib/vdso/Makefile
  6 obj-vdso64 = vdso_user_wrapper.o note.o vgetrandom-chacha.o
  7 obj-cvdso64 = vdso64_generic.o getcpu.o vgetrandom.o
  8 VDSO_CFLAGS_REMOVE := -pg $(CC_FLAGS_FTRACE) $(CC_FLAGS_EXPOLINE) $(CC_FLAGS_CHECK_STACK)
  9 CFLAGS_REMOVE_getcpu.o = $(VDSO_CFLAGS_REMOVE)
 10 CFLAGS_REMOVE_vgetrandom.o = $(VDSO_CFLAGS_REMOVE)
 11 CFLAGS_REMOVE_vdso64_generic.o = $(VDSO_CFLAGS_REMOVE)
 12 
 13 ifneq ($(c-getrandom-y),)
 14         CFLAGS_vgetrandom.o += -include $(c-getrandom-y)
 15 endif
 16 
 17 # Build rules
 18 
 19 targets := $(obj-vdso64) $(obj-cvdso64) vdso64.so vdso64.so.dbg
 20 obj-vdso64 := $(addprefix $(obj)/, $(obj-vdso64))
 21 obj-cvdso64 := $(addprefix $(obj)/, $(obj-cvdso64))
 22 
 23 KBUILD_AFLAGS += -DBUILD_VDSO
 24 KBUILD_CFLAGS += -DBUILD_VDSO -DDISABLE_BRANCH_PROFILING
 25 
 26 KBUILD_AFLAGS_64 := $(filter-out -m64,$(KBUILD_AFLAGS))
 27 KBUILD_AFLAGS_64 += -m64
 28 
 29 KBUILD_CFLAGS_64 := $(filter-out -m64,$(KBUILD_CFLAGS))
 30 KBUILD_CFLAGS_64 := $(filter-out -mpacked-stack,$(KBUILD_CFLAGS_64))
 31 KBUILD_CFLAGS_64 := $(filter-out -mno-pic-data-is-text-relative,$(KBUILD_CFLAGS_64))
 32 KBUILD_CFLAGS_64 := $(filter-out -munaligned-symbols,$(KBUILD_CFLAGS_64))
 33 KBUILD_CFLAGS_64 := $(filter-out -fno-asynchronous-unwind-tables,$(KBUILD_CFLAGS_64))
 34 KBUILD_CFLAGS_64 += -m64 -fPIC -fno-common -fno-builtin -fasynchronous-unwind-tables
 35 ldflags-y := -shared -soname=linux-vdso64.so.1 \
 36              --hash-style=both --build-id=sha1 -T
 37 
 38 $(targets:%=$(obj)/%.dbg): KBUILD_CFLAGS = $(KBUILD_CFLAGS_64)
 39 $(targets:%=$(obj)/%.dbg): KBUILD_AFLAGS = $(KBUILD_AFLAGS_64)
 40 
 41 obj-y += vdso64_wrapper.o
 42 targets += vdso64.lds
 43 CPPFLAGS_vdso64.lds += -P -C -U$(ARCH)
 44 
 45 # Force dependency (incbin is bad)
 46 $(obj)/vdso64_wrapper.o : $(obj)/vdso64.so
 47 
 48 quiet_cmd_vdso_and_check = VDSO    $@
 49       cmd_vdso_and_check = $(cmd_ld); $(cmd_vdso_check)
 50 
 51 # link rule for the .so file, .lds has to be first
 52 $(obj)/vdso64.so.dbg: $(obj)/vdso64.lds $(obj-vdso64) $(obj-cvdso64) FORCE
 53         $(call if_changed,vdso_and_check)
 54 
 55 # strip rule for the .so file
 56 $(obj)/%.so: OBJCOPYFLAGS := -S
 57 $(obj)/%.so: $(obj)/%.so.dbg FORCE
 58         $(call if_changed,objcopy)
 59 
 60 # assembly rules for the .S files
 61 $(obj-vdso64): %.o: %.S FORCE
 62         $(call if_changed_dep,vdso64as)
 63 
 64 $(obj-cvdso64): %.o: %.c FORCE
 65         $(call if_changed_dep,vdso64cc)
 66 
 67 # actual build commands
 68 quiet_cmd_vdso64as = VDSO64A $@
 69       cmd_vdso64as = $(CC) $(a_flags) -c -o $@ $<
 70 quiet_cmd_vdso64cc = VDSO64C $@
 71       cmd_vdso64cc = $(CC) $(c_flags) -c -o $@ $<
 72 
 73 # Generate VDSO offsets using helper script
 74 gen-vdsosym := $(src)/gen_vdso_offsets.sh
 75 quiet_cmd_vdsosym = VDSOSYM $@
 76         cmd_vdsosym = $(NM) $< | $(gen-vdsosym) | LC_ALL=C sort > $@
 77 
 78 include/generated/vdso64-offsets.h: $(obj)/vdso64.so.dbg FORCE
 79         $(call if_changed,vdsosym)

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