nuttx/boards/arm/lpc17xx_40xx
chao.an b88561299b make/expression: improving up asm/C/C++ compile times
In the current compilation environment, the recursive assignment(=) for compile
flags will be delayed until every file is actually need to be compile.

For example:
--------------------------------------------------------------------------------
arch/arm/src/Makefile:

INCLUDES += ${shell $(INCDIR) "$(CC)" $(ARCH_SRCDIR)$(DELIM)chip}
INCLUDES += ${shell $(INCDIR) "$(CC)" $(ARCH_SRCDIR)$(DELIM)common}
INCLUDES += ${shell $(INCDIR) "$(CC)" $(ARCH_SRCDIR)$(DELIM)$(ARCH_SUBDIR)}
INCLUDES += ${shell $(INCDIR) "$(CC)" $(TOPDIR)$(DELIM)sched}

CPPFLAGS += $(INCLUDES) $(EXTRAFLAGS)
CFLAGS += $(INCLUDES) $(EXTRAFLAGS)
CXXFLAGS += $(INCLUDES) $(EXTRAFLAGS)
AFLAGS += $(INCLUDES) $(EXTRAFLAGS)
--------------------------------------------------------------------------------

All compilation options will be included recursively,
which will be delayed until the compilation options are actually used:

tools/Config.mk:

--------------------------------------------------------------------------------
define COMPILE
  @echo "CC: $1"
  $(Q) $(CC) -c $(CFLAGS) $($(strip $1)_CFLAGS) $1 -o $2
endef
--------------------------------------------------------------------------------

All compile flags to be reexecuted $(INCDIR) as long as one file needs to be compiled,
but in fact, the compilation options have not changed in the current directory.

So the we recommand to change the syntax of assignment
From
    Recursive (=)
To
    Simple    (:=)

In this way, we can ensure that all compilation options are expanded only once and reducing repeated works.

Signed-off-by: chao.an <anchao@xiaomi.com>
2020-11-02 07:53:53 -08:00
..
lincoln60 make/expression: improving up asm/C/C++ compile times 2020-11-02 07:53:53 -08:00
lpc4088-devkit make/expression: improving up asm/C/C++ compile times 2020-11-02 07:53:53 -08:00
lpc4088-quickstart make/expression: improving up asm/C/C++ compile times 2020-11-02 07:53:53 -08:00
lpcxpresso-lpc1768 make/expression: improving up asm/C/C++ compile times 2020-11-02 07:53:53 -08:00
lx_cpu make/expression: improving up asm/C/C++ compile times 2020-11-02 07:53:53 -08:00
mbed make/expression: improving up asm/C/C++ compile times 2020-11-02 07:53:53 -08:00
mcb1700 make/expression: improving up asm/C/C++ compile times 2020-11-02 07:53:53 -08:00
olimex-lpc1766stk make/expression: improving up asm/C/C++ compile times 2020-11-02 07:53:53 -08:00
open1788 make/expression: improving up asm/C/C++ compile times 2020-11-02 07:53:53 -08:00
pnev5180b make/expression: improving up asm/C/C++ compile times 2020-11-02 07:53:53 -08:00
u-blox-c027 make/expression: improving up asm/C/C++ compile times 2020-11-02 07:53:53 -08:00
zkit-arm-1769 make/expression: improving up asm/C/C++ compile times 2020-11-02 07:53:53 -08:00