b88561299b
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> |
||
---|---|---|
.. | ||
configs | ||
include | ||
scripts | ||
src | ||
Kconfig | ||
README.txt |
Nucleo-64 Boards ================ The Nucleo-F103RB is a member of the Nucleo-64 board family. The Nucleo-64 is a standard board for use with several STM32 parts in the LQFP64 package. Variants include Order code Targeted STM32 ------------- -------------- NUCLEO-F030R8 STM32F030R8T6 NUCLEO-F070RB STM32F070RBT6 NUCLEO-F072RB STM32F072RBT6 NUCLEO-F091RC STM32F091RCT6 NUCLEO-F103RB STM32F103RBT6 NUCLEO-F302R8 STM32F302R8T6 NUCLEO-F303RE STM32F303RET6 NUCLEO-F334R8 STM32F334R8T6 NUCLEO-F401RE STM32F401RET6 NUCLEO-F410RB STM32F410RBT6 NUCLEO-F411RE STM32F411RET6 NUCLEO-F446RE STM32F446RET6 NUCLEO-L053R8 STM32L053R8T6 NUCLEO-L073RZ STM32L073RZT6 NUCLEO-L152RE STM32L152RET6 NUCLEO-L452RE STM32L452RET6 NUCLEO-L476RG STM32L476RGT6