Browse Source

kbuild: sync mixed targets handling with Linux 3.16

"make %_config all" was supported for the first time in U-Boot:
  commit 53bca5ab
  kbuild: support simultaneous board configuration and "make all"

Surprisingly it had not been working in Linux Kernel for a long time.

So I sent back the patch to the Linux Kbuild community and it was
accepted with a little code improvement, at commit 9319f453.

Now, you can do "make defconfig all" or "make %_defconfig all"
in Linux too.

This commit updates some scripts to fill the code-diff
between Linux and U-Boot.

Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
master
Masahiro Yamada 6 years ago
committed by Tom Rini
parent
commit
e773440425
2 changed files with 7 additions and 14 deletions
  1. +3
    -3
      Makefile
  2. +4
    -11
      scripts/mkmakefile

+ 3
- 3
Makefile View File

@@ -437,12 +437,12 @@ ifeq ($(mixed-targets),1)
# We're called with mixed targets (*config and build targets).
# Handle them one by one.

PHONY += $(MAKECMDGOALS) build-one-by-one
PHONY += $(MAKECMDGOALS) __build_one_by_one

$(MAKECMDGOALS): build-one-by-one
$(filter-out __build_one_by_one, $(MAKECMDGOALS)): __build_one_by_one
@:

build-one-by-one:
__build_one_by_one:
$(Q)set -e; \
for i in $(MAKECMDGOALS); do \
$(MAKE) -f $(srctree)/Makefile $$i; \


+ 4
- 11
scripts/mkmakefile View File

@@ -42,18 +42,11 @@ MAKEARGS += O=\$(if \$(patsubst /%,,\$(makedir)),\$(CURDIR)/)\$(patsubst %/,%,\$

MAKEFLAGS += --no-print-directory

.PHONY: all \$(MAKECMDGOALS)
.PHONY: __sub-make \$(MAKECMDGOALS)

all := \$(filter-out all Makefile,\$(MAKECMDGOALS))
__sub-make:
\$(Q)\$(MAKE) \$(MAKEARGS) \$(MAKECMDGOALS)

all:
\$(Q)\$(MAKE) \$(MAKEARGS) \$(all)

Makefile:;

\$(all): all
@:

%/: all
\$(filter-out __sub-make, \$(MAKECMDGOALS)): __sub-make
@:
EOF

Loading…
Cancel
Save