1#!/bin/sh
2# SPDX-License-Identifier: GPL-2.0
3# Generates a small Makefile used in the root of the output
4# directory, to allow make to be started from there.
5# The Makefile also allow for more convinient build of external modules
6
7# Usage
8# $1 - Kernel src directory
9
10# Only overwrite automatically generated Makefiles
11# (so we do not overwrite kernel Makefile)
12if test -e Makefile && ! grep -q Automatically Makefile
13then
14	exit 0
15fi
16if [ "${quiet}" != "silent_" ]; then
17	echo "  GEN     Makefile"
18fi
19
20cat << EOF > Makefile
21# Automatically generated by $0: don't edit
22
23ifeq ("\$(origin V)", "command line")
24VERBOSE := \$(V)
25endif
26ifneq (\$(VERBOSE),1)
27Q := @
28endif
29
30MAKEFLAGS += --no-print-directory
31
32.PHONY: __sub-make \$(MAKECMDGOALS)
33
34__sub-make:
35	\$(Q)\$(MAKE) -C $1 O=\$(CURDIR) \$(MAKECMDGOALS)
36
37\$(filter-out __sub-make, \$(MAKECMDGOALS)): __sub-make
38	@:
39EOF
40