aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Kay <chris.kay@arm.com>2024-05-01 13:04:58 +0000
committerChris Kay <chris.kay@arm.com>2024-05-10 11:58:45 +0000
commit6d5e7e8bea7ed94f993614e40f131079d62ece48 (patch)
tree9c3e6b72eeb4e05d66d840415288dfdc979b28cc
parent23fc05a33d2bd67d25e20b51f68e18872d761608 (diff)
downloadarm-trusted-firmware-6d5e7e8bea7ed94f993614e40f131079d62ece48.tar.gz
build(libfdt): introduce include guards
In some build configurations the `libfdt.mk` file is included multiple times. Due to the fact that rules cannot (or rather, should not) be defined multiple times, the `MAKE_LIB` function (which this makefile calls) cannot be called twice with the same inputs. Doing so leads to warnings about overridden rules, e.g.: lib/libfdt/libfdt.mk:19: warning: overriding recipe for target libfdt' lib/libfdt/libfdt.mk:19: warning: ignoring old recipe for target libfdt' lib/libfdt/libfdt.mk:19: warning: overriding recipe for target libfdt/fdt.o' lib/libfdt/libfdt.mk:19: warning: ignoring old recipe for target libfdt/fdt.o' lib/libfdt/libfdt.mk:19: warning: overriding recipe for target libfdt/fdt_addresses.o' lib/libfdt/libfdt.mk:19: warning: ignoring old recipe for target libfdt/fdt_addresses.o' lib/libfdt/libfdt.mk:19: warning: overriding recipe for target libfdt/fdt_empty_tree.o' lib/libfdt/libfdt.mk:19: warning: ignoring old recipe for target libfdt/fdt_empty_tree.o' lib/libfdt/libfdt.mk:19: warning: overriding recipe for target libfdt/fdt_ro.o' lib/libfdt/libfdt.mk:19: warning: ignoring old recipe for target libfdt/fdt_ro.o' lib/libfdt/libfdt.mk:19: warning: overriding recipe for target libfdt/fdt_rw.o' lib/libfdt/libfdt.mk:19: warning: ignoring old recipe for target libfdt/fdt_rw.o' lib/libfdt/libfdt.mk:19: warning: overriding recipe for target libfdt/fdt_strerror.o' lib/libfdt/libfdt.mk:19: warning: ignoring old recipe for target libfdt/fdt_strerror.o' lib/libfdt/libfdt.mk:19: warning: overriding recipe for target libfdt/fdt_sw.o' lib/libfdt/libfdt.mk:19: warning: ignoring old recipe for target libfdt/fdt_sw.o' lib/libfdt/libfdt.mk:19: warning: overriding recipe for target libfdt/fdt_wip.o' lib/libfdt/libfdt.mk:19: warning: ignoring old recipe for target libfdt/fdt_wip.o' lib/libfdt/libfdt.mk:19: warning: overriding recipe for target lib/libfdt.a' lib/libfdt/libfdt.mk:19: warning: ignoring old recipe for target lib/libfdt.a' This change introduces an include guard to the file to prevent it from executing twice. This avoids redefining the rules defined by `MAKE_LIB`. Change-Id: I07e0648b07dbd907eaa6dd6fbd0788203b19fddb Signed-off-by: Chris Kay <chris.kay@arm.com>
-rw-r--r--lib/libfdt/libfdt.mk28
1 files changed, 16 insertions, 12 deletions
diff --git a/lib/libfdt/libfdt.mk b/lib/libfdt/libfdt.mk
index 812057d36..c7f54049d 100644
--- a/lib/libfdt/libfdt.mk
+++ b/lib/libfdt/libfdt.mk
@@ -1,19 +1,23 @@
#
-# Copyright (c) 2016, Arm Limited and Contributors. All rights reserved.
+# Copyright (c) 2016-2024, Arm Limited and Contributors. All rights reserved.
#
# SPDX-License-Identifier: BSD-3-Clause
#
-LIBFDT_SRCS := $(addprefix lib/libfdt/, \
- fdt.c \
- fdt_addresses.c \
- fdt_empty_tree.c \
- fdt_ro.c \
- fdt_rw.c \
- fdt_strerror.c \
- fdt_sw.c \
- fdt_wip.c) \
+ifndef libfdt-mk
+ libfdt-mk := 1
-INCLUDES += -Iinclude/lib/libfdt
+ LIBFDT_SRCS := $(addprefix lib/libfdt/, \
+ fdt.c \
+ fdt_addresses.c \
+ fdt_empty_tree.c \
+ fdt_ro.c \
+ fdt_rw.c \
+ fdt_strerror.c \
+ fdt_sw.c \
+ fdt_wip.c)
-$(eval $(call MAKE_LIB,fdt))
+ INCLUDES += -Iinclude/lib/libfdt
+
+ $(eval $(call MAKE_LIB,fdt))
+endif