blob: 9fc51a7c9506d6213de24c96e220f7ec768202ec
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 | |
37 | %/: |
38 | \$(MAKE) -C \$(KERNELSRC) O=\$(KERNELOUTPUT) \$@ |
39 | EOF |
40 |