Lines Matching +full:build +full:- +full:rules
1 # SPDX-License-Identifier: GPL-2.0
8 obj-vdso64 = vdso_user_wrapper.o note.o
9 obj-cvdso64 = vdso64_generic.o getcpu.o
10 VDSO_CFLAGS_REMOVE := -pg $(CC_FLAGS_FTRACE) $(CC_FLAGS_EXPOLINE) $(CC_FLAGS_CHECK_STACK)
14 # Build rules
16 targets := $(obj-vdso64) $(obj-cvdso64) vdso64.so vdso64.so.dbg
17 obj-vdso64 := $(addprefix $(obj)/, $(obj-vdso64))
18 obj-cvdso64 := $(addprefix $(obj)/, $(obj-cvdso64))
20 KBUILD_AFLAGS += -DBUILD_VDSO
21 KBUILD_CFLAGS += -DBUILD_VDSO -DDISABLE_BRANCH_PROFILING
23 KBUILD_AFLAGS_64 := $(filter-out -m64,$(KBUILD_AFLAGS))
24 KBUILD_AFLAGS_64 += -m64
26 KBUILD_CFLAGS_64 := $(filter-out -m64,$(KBUILD_CFLAGS))
27 KBUILD_CFLAGS_64 := $(filter-out -mno-pic-data-is-text-relative,$(KBUILD_CFLAGS_64))
28 KBUILD_CFLAGS_64 += -m64 -fPIC -fno-common -fno-builtin
29 ldflags-y := -fPIC -shared -soname=linux-vdso64.so.1 \
30 --hash-style=both --build-id=sha1 -T
35 obj-y += vdso64_wrapper.o
37 CPPFLAGS_vdso64.lds += -P -C -U$(ARCH)
52 $(obj)/vdso64.so.dbg: $(src)/vdso64.lds $(obj-vdso64) $(obj-cvdso64) FORCE
56 $(obj)/%.so: OBJCOPYFLAGS := -S
60 # assembly rules for the .S files
61 $(obj-vdso64): %.o: %.S FORCE
64 $(obj-cvdso64): %.o: %.c FORCE
67 # actual build commands
69 cmd_vdso64as = $(CC) $(a_flags) -c -o $@ $<
71 cmd_vdso64cc = $(CC) $(c_flags) -c -o $@ $<
78 @mkdir -p $(MODLIB)/vdso
84 gen-vdsosym := $(srctree)/$(src)/gen_vdso_offsets.sh
86 cmd_vdsosym = $(NM) $< | $(gen-vdsosym) | LC_ALL=C sort > $@
88 include/generated/vdso64-offsets.h: $(obj)/vdso64.so.dbg FORCE