Merge git://oss.sgi.com:8090/xfs/xfs-2.6
[linux-2.6] / scripts / mkmakefile
1 #!/bin/sh
2 # Generates a small Makefile used in the root of the output
3 # directory, to allow make to be started from there.
4 # The Makefile also allow for more convinient build of external modules
5
6 # Usage
7 # $1 - Kernel src directory
8 # $2 - Output directory
9 # $3 - version
10 # $4 - patchlevel
11
12
13 test ! -r $2/Makefile -o -O $2/Makefile || exit 0
14 echo "  GEN     $2/Makefile"
15
16 cat << EOF > $2/Makefile
17 # Automatically generated by $0: don't edit
18
19 VERSION = $3
20 PATCHLEVEL = $4
21
22 KERNELSRC    := $1
23 KERNELOUTPUT := $2
24
25 MAKEFLAGS += --no-print-directory
26
27 .PHONY: all \$(MAKECMDGOALS)
28
29 all:
30         \$(MAKE) -C \$(KERNELSRC) O=\$(KERNELOUTPUT)
31
32 Makefile:;
33
34 \$(filter-out all Makefile,\$(MAKECMDGOALS)) %/:
35         \$(MAKE) -C \$(KERNELSRC) O=\$(KERNELOUTPUT) \$@
36 EOF