summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSam Ravnborg <sam@ravnborg.org>2007-09-15 08:55:39 +0200
committerSam Ravnborg <sam@neptun.(none)>2007-10-12 21:15:31 +0200
commitf5fb976520a53f45f8bbf2e851f16b3b5558d485 (patch)
tree28b66bc8d55c920623062c7b6fc44d6599ec4ad0
parentc01b171d91cf642a70477c7ba525ff1096d5c439 (diff)
downloadlinux-stable-f5fb976520a53f45f8bbf2e851f16b3b5558d485.tar.gz
linux-stable-f5fb976520a53f45f8bbf2e851f16b3b5558d485.tar.bz2
linux-stable-f5fb976520a53f45f8bbf2e851f16b3b5558d485.zip
kbuild: fix directory traversal bug
Previously kbuild choked over the following: obj-y += ../../../arch/i386/kernel/bootflag.o This has resulted in some rather ugly workarounds in current x86_64 tree. This patch fixes kbuild to allow the above and enable potential cleanups in x86_64 and maybe in other places. Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
-rw-r--r--scripts/Makefile.lib6
1 files changed, 3 insertions, 3 deletions
diff --git a/scripts/Makefile.lib b/scripts/Makefile.lib
index fc498fee68ed..03905aa620cc 100644
--- a/scripts/Makefile.lib
+++ b/scripts/Makefile.lib
@@ -44,9 +44,9 @@ multi-objs-y := $(foreach m, $(multi-used-y), $($(m:.o=-objs)) $($(m:.o=-y)))
multi-objs-m := $(foreach m, $(multi-used-m), $($(m:.o=-objs)) $($(m:.o=-y)))
multi-objs := $(multi-objs-y) $(multi-objs-m)
-# $(subdir-obj-y) is the list of objects in $(obj-y) which do not live
-# in the local directory
-subdir-obj-y := $(foreach o,$(obj-y),$(if $(filter-out $(o),$(notdir $(o))),$(o)))
+# $(subdir-obj-y) is the list of objects in $(obj-y) which uses dir/ to
+# tell kbuild to descend
+subdir-obj-y := $(filter %/built-in.o, $(obj-y))
# $(obj-dirs) is a list of directories that contain object files
obj-dirs := $(dir $(multi-objs) $(subdir-obj-y))