Blame view
scripts/mkmakefile
1.19 KB
1da177e4c
|
1 |
#!/bin/sh |
b24413180
|
2 |
# SPDX-License-Identifier: GPL-2.0 |
1da177e4c
|
3 4 5 6 7 8 9 10 11 |
# 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 |
fd5f0cd6b
|
12 |
test ! -r $2/Makefile -o -O $2/Makefile || exit 0 |
18c32dac7
|
13 14 |
# Only overwrite automatically generated Makefiles # (so we do not overwrite kernel Makefile) |
971edcfc8
|
15 |
if test -e $2/Makefile && ! grep -q Automatically $2/Makefile |
18c32dac7
|
16 17 18 |
then exit 0 fi |
d2301249e
|
19 20 21 |
if [ "${quiet}" != "silent_" ]; then echo " GEN $2/Makefile" fi |
fd5f0cd6b
|
22 23 |
cat << EOF > $2/Makefile |
1da177e4c
|
24 25 26 27 |
# Automatically generated by $0: don't edit VERSION = $3 PATCHLEVEL = $4 |
1d3b3bfab
|
28 29 |
lastword = \$(word \$(words \$(1)),\$(1)) makedir := \$(dir \$(call lastword,\$(MAKEFILE_LIST))) |
0ff35771f
|
30 31 32 33 34 35 |
ifeq ("\$(origin V)", "command line") VERBOSE := \$(V) endif ifneq (\$(VERBOSE),1) Q := @ endif |
1d3b3bfab
|
36 37 |
MAKEARGS := -C $1 MAKEARGS += O=\$(if \$(patsubst /%,,\$(makedir)),\$(CURDIR)/)\$(patsubst %/,%,\$(makedir)) |
1da177e4c
|
38 39 |
MAKEFLAGS += --no-print-directory |
9319f4539
|
40 |
.PHONY: __sub-make \$(MAKECMDGOALS) |
96678281b
|
41 |
|
9319f4539
|
42 43 |
__sub-make: \$(Q)\$(MAKE) \$(MAKEARGS) \$(MAKECMDGOALS) |
0b35786d7
|
44 |
|
9319f4539
|
45 |
\$(filter-out __sub-make, \$(MAKECMDGOALS)): __sub-make |
3c955b407
|
46 |
@: |
1da177e4c
|
47 |
EOF |