On 2014-06-04 11:43, Michal Marek wrote: > On 2014-06-04 11:03, Richard Weinberger wrote: >> On Fri, May 9, 2014 at 2:52 PM, Michal Marek <mmarek@xxxxxxx> wrote: >>> The main Makefile sets its working directory to the object tree and >>> never changes it again. Therefore, we can use '.' instead of the >>> absolute path. The only case where we need the absolute path is when >>> creating the 'build' symlink in /lib/modules. >>> >>> Acked-by: Sam Ravnborg <sam@xxxxxxxxxxxx> >>> Signed-off-by: Michal Marek <mmarek@xxxxxxx> >>> --- >>> v1->v2: Fix the 'build' symlink >>> >>> Makefile | 4 ++-- >>> 1 file changed, 2 insertions(+), 2 deletions(-) >>> >>> diff --git a/Makefile b/Makefile >>> index 60ccbfe..480503a 100644 >>> --- a/Makefile >>> +++ b/Makefile >>> @@ -154,7 +154,7 @@ _all: modules >>> endif >>> >>> srctree := $(if $(KBUILD_SRC),$(KBUILD_SRC),$(CURDIR)) >>> -objtree := $(CURDIR) >>> +objtree := . >>> src := $(srctree) >>> obj := $(objtree) >>> >>> @@ -1057,7 +1057,7 @@ _modinst_: >>> @ln -s $(srctree) $(MODLIB)/source >>> @if [ ! $(objtree) -ef $(MODLIB)/build ]; then \ >>> rm -f $(MODLIB)/build ; \ >>> - ln -s $(objtree) $(MODLIB)/build ; \ >>> + ln -s $(CURDIR) $(MODLIB)/build ; \ >>> fi >>> @cp -f $(objtree)/modules.order $(MODLIB)/ >>> @cp -f $(objtree)/modules.builtin $(MODLIB)/ >> >> This commit breaks the of-of-tree build of UML. >> >> CC arch/x86/um/user-offsets.s >> /home/rw/linux-next/arch/x86/um/user-offsets.c:21:29: fatal error: >> asm/syscalls_64.h: No such file or directory >> compilation terminated. >> make[2]: *** [arch/x86/um/user-offsets.s] Error 1 >> make[1]: *** [arch/x86/um/user-offsets.s] Error 2 >> make: *** [sub-make] Error 2 >> >> To reproduce run: >> make defconfig ARCH=um O=/mnt/o && make linux ARCH=um O=/mnt/ >> >> If there is anything in UML which needs fixing, please tell. :-) > > I'll have a look, thanks for the report. Findings so far: For some reason, syscalls_32.h is generated in the source tree (which is wrong) and syscalls_64.h is not generated at all. Looking further. Also, it looks like make O=/dir bzImage on x86_64 non-um has been broken even before this commit. 'make all' works fine. Not sure if it is related. Michal -- To unsubscribe from this list: send the line "unsubscribe linux-kbuild" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html