Version:  2.0.40 2.2.26 2.4.37 3.13 3.14 3.15 3.16 3.17 3.18 3.19 4.0 4.1 4.2 4.3 4.4 4.5 4.6 4.7 4.8 4.9 4.10

Linux/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 # Only overwrite automatically generated Makefiles
 15 # (so we do not overwrite kernel Makefile)
 16 if test -e $2/Makefile && ! grep -q Automatically $2/Makefile
 17 then
 18         exit 0
 19 fi
 20 if [ "${quiet}" != "silent_" ]; then
 21         echo "  GEN     $2/Makefile"
 22 fi
 23 
 24 cat << EOF > $2/Makefile
 25 # Automatically generated by $0: don't edit
 26 
 27 VERSION = $3
 28 PATCHLEVEL = $4
 29 
 30 lastword = \$(word \$(words \$(1)),\$(1))
 31 makedir := \$(dir \$(call lastword,\$(MAKEFILE_LIST)))
 32 
 33 ifeq ("\$(origin V)", "command line")
 34 VERBOSE := \$(V)
 35 endif
 36 ifneq (\$(VERBOSE),1)
 37 Q := @
 38 endif
 39 
 40 MAKEARGS := -C $1
 41 MAKEARGS += O=\$(if \$(patsubst /%,,\$(makedir)),\$(CURDIR)/)\$(patsubst %/,%,\$(makedir))
 42 
 43 MAKEFLAGS += --no-print-directory
 44 
 45 .PHONY: __sub-make \$(MAKECMDGOALS)
 46 
 47 __sub-make:
 48         \$(Q)\$(MAKE) \$(MAKEARGS) \$(MAKECMDGOALS)
 49 
 50 \$(filter-out __sub-make, \$(MAKECMDGOALS)): __sub-make
 51         @:
 52 EOF

This page was automatically generated by LXR 0.3.1 (source).  •  Linux is a registered trademark of Linus Torvalds  •  Contact us