Commit b8b0618c authored by Cheng Renquan's avatar Cheng Renquan Committed by Sam Ravnborg

kbuild: remove extra ifdef/endif of top Makefile

The GNU make's origin function know undefined variable well,
so the outer ifdef/endif conditional checking is unneeded.

From `info make` documentation, origin will return

  `undefined'
     if VARIABLE was never defined.
  `command line'
     if VARIABLE was defined on the command line.
   ...

Therefore, $(origin V) will get a value anyway, killing ifdef/endif is
viable and safe.

Furthermore, I've checked the minimal requirements from
Documentation/Changes is GNU make 3.79.1, and that version of GNU make
has support of origin function well already, so now it's safe to kill
the outer conditional checking, without upgrading the minimal
requirements.
Signed-off-by: default avatarCheng Renquan <crq@kernel.org>
Signed-off-by: default avatarSam Ravnborg <sam@ravnborg.org>
parent 3e56f08b
...@@ -35,10 +35,8 @@ MAKEFLAGS += -rR --no-print-directory ...@@ -35,10 +35,8 @@ MAKEFLAGS += -rR --no-print-directory
# To put more focus on warnings, be less verbose as default # To put more focus on warnings, be less verbose as default
# Use 'make V=1' to see the full commands # Use 'make V=1' to see the full commands
ifdef V ifeq ("$(origin V)", "command line")
ifeq ("$(origin V)", "command line")
KBUILD_VERBOSE = $(V) KBUILD_VERBOSE = $(V)
endif
endif endif
ifndef KBUILD_VERBOSE ifndef KBUILD_VERBOSE
KBUILD_VERBOSE = 0 KBUILD_VERBOSE = 0
...@@ -54,10 +52,8 @@ endif ...@@ -54,10 +52,8 @@ endif
# See the file "Documentation/sparse.txt" for more details, including # See the file "Documentation/sparse.txt" for more details, including
# where to get the "sparse" utility. # where to get the "sparse" utility.
ifdef C ifeq ("$(origin C)", "command line")
ifeq ("$(origin C)", "command line")
KBUILD_CHECKSRC = $(C) KBUILD_CHECKSRC = $(C)
endif
endif endif
ifndef KBUILD_CHECKSRC ifndef KBUILD_CHECKSRC
KBUILD_CHECKSRC = 0 KBUILD_CHECKSRC = 0
...@@ -69,13 +65,11 @@ endif ...@@ -69,13 +65,11 @@ endif
ifdef SUBDIRS ifdef SUBDIRS
KBUILD_EXTMOD ?= $(SUBDIRS) KBUILD_EXTMOD ?= $(SUBDIRS)
endif endif
ifdef M
ifeq ("$(origin M)", "command line") ifeq ("$(origin M)", "command line")
KBUILD_EXTMOD := $(M) KBUILD_EXTMOD := $(M)
endif
endif endif
# kbuild supports saving output files in a separate directory. # kbuild supports saving output files in a separate directory.
# To locate output files in a separate directory two syntaxes are supported. # To locate output files in a separate directory two syntaxes are supported.
# In both cases the working directory must be the root of the kernel src. # In both cases the working directory must be the root of the kernel src.
...@@ -98,10 +92,8 @@ ifeq ($(KBUILD_SRC),) ...@@ -98,10 +92,8 @@ ifeq ($(KBUILD_SRC),)
# OK, Make called in directory where kernel src resides # OK, Make called in directory where kernel src resides
# Do we want to locate output files in a separate directory? # Do we want to locate output files in a separate directory?
ifdef O ifeq ("$(origin O)", "command line")
ifeq ("$(origin O)", "command line")
KBUILD_OUTPUT := $(O) KBUILD_OUTPUT := $(O)
endif
endif endif
# That's our default target when none is given on the command line # That's our default target when none is given on the command line
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment