| #!/bin/sh |
| # Generates a small Makefile used in the root of the output |
| # directory, to allow make to be started from there. |
| # The Makefile also allow for more convinient build of external modules |
| |
| # Usage |
| # $1 - Kernel src directory |
| # $2 - Output directory |
| # $3 - version |
| # $4 - patchlevel |
| |
| |
| test ! -r $2/Makefile -o -O $2/Makefile || exit 0 |
| # Only overwrite automatically generated Makefiles |
| # (so we do not overwrite kernel Makefile) |
| if ! grep -q Automatically $2/Makefile |
| then |
| exit 0 |
| fi |
| echo " GEN $2/Makefile" |
| |
| cat << EOF > $2/Makefile |
| # Automatically generated by $0: don't edit |
| |
| VERSION = $3 |
| PATCHLEVEL = $4 |
| |
| KERNELSRC := $1 |
| KERNELOUTPUT := $2 |
| |
| MAKEFLAGS += --no-print-directory |
| |
| .PHONY: all \$(MAKECMDGOALS) |
| |
| all := \$(filter-out all Makefile,\$(MAKECMDGOALS)) |
| |
| all: |
| \$(MAKE) -C \$(KERNELSRC) O=\$(KERNELOUTPUT) \$(all) |
| |
| Makefile:; |
| |
| \$(all) %/: all |
| @: |
| EOF |