Gitweb:     
http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=1d3b3bfab121cdef07d19797f42f413dccdd65f0
Commit:     1d3b3bfab121cdef07d19797f42f413dccdd65f0
Parent:     df578e7d831b4d280bf7c621eafb737e78cd26eb
Author:     Jan Beulich <[EMAIL PROTECTED]>
AuthorDate: Fri Jan 11 09:09:00 2008 +0000
Committer:  Sam Ravnborg <[EMAIL PROTECTED]>
CommitDate: Mon Jan 28 23:14:38 2008 +0100

    kbuild: scripts/mkmakefile: dynamic determination of output directory
    
    Rather than fixing the output directory in the generated Makefile,
    determine it from the placement of Makefile. This allows moving
    the build tree around or accessing it through different mount paths.
    
    (The lastword definition is a compatibility one for make prior to 3.81;
    newer make will simply ignore it and use the [faster] built-in.)
    
    Signed-off-by: Jan Beulich <[EMAIL PROTECTED]>
    Signed-off-by: Sam Ravnborg <[EMAIL PROTECTED]>
---
 scripts/mkmakefile |   10 +++++++---
 1 files changed, 7 insertions(+), 3 deletions(-)

diff --git a/scripts/mkmakefile b/scripts/mkmakefile
index e0f54b9..e65d8b3 100644
--- a/scripts/mkmakefile
+++ b/scripts/mkmakefile
@@ -25,8 +25,11 @@ cat << EOF > $2/Makefile
 VERSION = $3
 PATCHLEVEL = $4
 
-KERNELSRC    := $1
-KERNELOUTPUT := $2
+lastword = \$(word \$(words \$(1)),\$(1))
+makedir := \$(dir \$(call lastword,\$(MAKEFILE_LIST)))
+
+MAKEARGS := -C $1
+MAKEARGS += O=\$(if \$(patsubst /%,,\$(makedir)),\$(CURDIR)/)\$(patsubst 
%/,%,\$(makedir))
 
 MAKEFLAGS += --no-print-directory
 
@@ -35,10 +38,11 @@ MAKEFLAGS += --no-print-directory
 all    := \$(filter-out all Makefile,\$(MAKECMDGOALS))
 
 all:
-       \$(MAKE) -C \$(KERNELSRC) O=\$(KERNELOUTPUT) \$(all)
+       \$(MAKE) \$(MAKEARGS) \$(all)
 
 Makefile:;
 
 \$(all) %/: all
        @:
+
 EOF
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to