aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorRoland McGrath <roland@redhat.com>2008-02-11 17:38:51 -0500
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2008-02-11 23:50:09 -0500
commit2c1582699872d38682b136b1446953ee351bc7e1 (patch)
treedddb7212b201067ae89a41a2589d61976f981826 /arch
parent31f1de46b90ad360a16e7af3e277d104961df923 (diff)
x86: vdso_install fix
The makefile magic for installing the 32-bit vdso images on disk had a little error. A single-line change would fix that bug, but this does a little more to reduce the error-prone duplication of this bit of makefile variable magic. Signed-off-by: Roland McGrath <roland@redhat.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'arch')
-rw-r--r--arch/x86/vdso/Makefile22
1 files changed, 12 insertions, 10 deletions
diff --git a/arch/x86/vdso/Makefile b/arch/x86/vdso/Makefile
index d28dda574700..f385a4b4a484 100644
--- a/arch/x86/vdso/Makefile
+++ b/arch/x86/vdso/Makefile
@@ -7,7 +7,7 @@ VDSO32-$(CONFIG_X86_32) := y
7VDSO32-$(CONFIG_COMPAT) := y 7VDSO32-$(CONFIG_COMPAT) := y
8 8
9vdso-install-$(VDSO64-y) += vdso.so 9vdso-install-$(VDSO64-y) += vdso.so
10vdso-install-$(VDSO32-y) += $(vdso32-y:=.so) 10vdso-install-$(VDSO32-y) += $(vdso32-images)
11 11
12 12
13# files to link into the vdso 13# files to link into the vdso
@@ -63,6 +63,8 @@ vdso32.so-$(CONFIG_X86_32) += int80
63vdso32.so-$(CONFIG_COMPAT) += syscall 63vdso32.so-$(CONFIG_COMPAT) += syscall
64vdso32.so-$(VDSO32-y) += sysenter 64vdso32.so-$(VDSO32-y) += sysenter
65 65
66vdso32-images = $(vdso32.so-y:%=vdso32-%.so)
67
66CPPFLAGS_vdso32.lds = $(CPPFLAGS_vdso.lds) 68CPPFLAGS_vdso32.lds = $(CPPFLAGS_vdso.lds)
67VDSO_LDFLAGS_vdso32.lds = -m elf_i386 -Wl,-soname=linux-gate.so.1 69VDSO_LDFLAGS_vdso32.lds = -m elf_i386 -Wl,-soname=linux-gate.so.1
68 70
@@ -71,21 +73,21 @@ VDSO_LDFLAGS_vdso32.lds = -m elf_i386 -Wl,-soname=linux-gate.so.1
71override obj-dirs = $(dir $(obj)) $(obj)/vdso32/ 73override obj-dirs = $(dir $(obj)) $(obj)/vdso32/
72 74
73targets += vdso32/vdso32.lds 75targets += vdso32/vdso32.lds
74targets += $(vdso32.so-y:%=vdso32-%.so.dbg) $(vdso32.so-y:%=vdso32-%.so) 76targets += $(vdso32-images) $(vdso32-images:=.dbg)
75targets += vdso32/note.o $(vdso32.so-y:%=vdso32/%.o) 77targets += vdso32/note.o $(vdso32.so-y:%=vdso32/%.o)
76 78
77extra-y += $(vdso32.so-y:%=vdso32-%.so) 79extra-y += $(vdso32-images)
78 80
79$(obj)/vdso32.o: $(vdso32.so-y:%=$(obj)/vdso32-%.so) 81$(obj)/vdso32.o: $(vdso32-images:%=$(obj)/%)
80 82
81KBUILD_AFLAGS_32 := $(filter-out -m64,$(KBUILD_AFLAGS)) 83KBUILD_AFLAGS_32 := $(filter-out -m64,$(KBUILD_AFLAGS))
82$(vdso32.so-y:%=$(obj)/vdso32-%.so.dbg): KBUILD_AFLAGS = $(KBUILD_AFLAGS_32) 84$(vdso32-images:%=$(obj)/%.dbg): KBUILD_AFLAGS = $(KBUILD_AFLAGS_32)
83$(vdso32.so-y:%=$(obj)/vdso32-%.so.dbg): asflags-$(CONFIG_X86_64) += -m32 85$(vdso32-images:%=$(obj)/%.dbg): asflags-$(CONFIG_X86_64) += -m32
84 86
85$(vdso32.so-y:%=$(obj)/vdso32-%.so.dbg): $(obj)/vdso32-%.so.dbg: FORCE \ 87$(vdso32-images:%=$(obj)/%.dbg): $(obj)/vdso32-%.so.dbg: FORCE \
86 $(obj)/vdso32/vdso32.lds \ 88 $(obj)/vdso32/vdso32.lds \
87 $(obj)/vdso32/note.o \ 89 $(obj)/vdso32/note.o \
88 $(obj)/vdso32/%.o 90 $(obj)/vdso32/%.o
89 $(call if_changed,vdso) 91 $(call if_changed,vdso)
90 92
91# Make vdso32-*-syms.lds from each image, and then make sure they match. 93# Make vdso32-*-syms.lds from each image, and then make sure they match.