mirror of
https://xff.cz/git/u-boot/
synced 2025-08-31 16:22:36 +02:00
Makefile: descend into subdirectories only when CONFIG_API is defined
All objects under api/ and examples/api/ directories are selected by CONFIG_API. So we can move CONFIG_API switch to the top Makefile. In order to use CONFIG_API, the definition of SUBDIR_EXAMPLES-y must be moved after "sinlude $(obj)include/autoconf.mk". Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
This commit is contained in:
committed by
Tom Rini
parent
fdb87049d8
commit
8a7e7d5697
11
Makefile
11
Makefile
@@ -136,7 +136,6 @@ unexport CDPATH
|
|||||||
# The "examples" conditionally depend on U-Boot (say, when USE_PRIVATE_LIBGCC
|
# The "examples" conditionally depend on U-Boot (say, when USE_PRIVATE_LIBGCC
|
||||||
# is "yes"), so compile examples after U-Boot is compiled.
|
# is "yes"), so compile examples after U-Boot is compiled.
|
||||||
SUBDIR_TOOLS = tools
|
SUBDIR_TOOLS = tools
|
||||||
SUBDIR_EXAMPLES = examples/standalone examples/api
|
|
||||||
SUBDIRS = $(SUBDIR_TOOLS)
|
SUBDIRS = $(SUBDIR_TOOLS)
|
||||||
|
|
||||||
.PHONY : $(SUBDIRS) $(VERSION_FILE) $(TIMESTAMP_FILE)
|
.PHONY : $(SUBDIRS) $(VERSION_FILE) $(TIMESTAMP_FILE)
|
||||||
@@ -150,8 +149,10 @@ all:
|
|||||||
sinclude $(obj)include/autoconf.mk.dep
|
sinclude $(obj)include/autoconf.mk.dep
|
||||||
sinclude $(obj)include/autoconf.mk
|
sinclude $(obj)include/autoconf.mk
|
||||||
|
|
||||||
|
SUBDIR_EXAMPLES-y := examples/standalone
|
||||||
|
SUBDIR_EXAMPLES-$(CONFIG_API) += examples/api
|
||||||
ifndef CONFIG_SANDBOX
|
ifndef CONFIG_SANDBOX
|
||||||
SUBDIRS += $(SUBDIR_EXAMPLES)
|
SUBDIRS += $(SUBDIR_EXAMPLES-y)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
# load ARCH, BOARD, and CPU configuration
|
# load ARCH, BOARD, and CPU configuration
|
||||||
@@ -277,7 +278,7 @@ LIBS-y += drivers/usb/phy/
|
|||||||
LIBS-y += drivers/usb/ulpi/
|
LIBS-y += drivers/usb/ulpi/
|
||||||
LIBS-y += common/
|
LIBS-y += common/
|
||||||
LIBS-y += lib/libfdt/
|
LIBS-y += lib/libfdt/
|
||||||
LIBS-y += api/
|
LIBS-$(CONFIG_API) += api/
|
||||||
LIBS-y += post/
|
LIBS-y += post/
|
||||||
LIBS-y += test/
|
LIBS-y += test/
|
||||||
|
|
||||||
@@ -362,7 +363,7 @@ endif
|
|||||||
|
|
||||||
build := -f $(TOPDIR)/scripts/Makefile.build -C
|
build := -f $(TOPDIR)/scripts/Makefile.build -C
|
||||||
|
|
||||||
all: $(ALL-y) $(SUBDIR_EXAMPLES)
|
all: $(ALL-y) $(SUBDIR_EXAMPLES-y)
|
||||||
|
|
||||||
$(obj)u-boot.dtb: checkdtc $(obj)u-boot
|
$(obj)u-boot.dtb: checkdtc $(obj)u-boot
|
||||||
$(MAKE) $(build) dts binary
|
$(MAKE) $(build) dts binary
|
||||||
@@ -550,7 +551,7 @@ $(LIBS): depend $(SUBDIR_TOOLS)
|
|||||||
$(SUBDIRS): depend
|
$(SUBDIRS): depend
|
||||||
$(MAKE) -C $@ all
|
$(MAKE) -C $@ all
|
||||||
|
|
||||||
$(SUBDIR_EXAMPLES): $(obj)u-boot
|
$(SUBDIR_EXAMPLES-y): $(obj)u-boot
|
||||||
|
|
||||||
$(LDSCRIPT): depend
|
$(LDSCRIPT): depend
|
||||||
$(MAKE) -C $(dir $@) $(notdir $@)
|
$(MAKE) -C $(dir $@) $(notdir $@)
|
||||||
|
@@ -4,5 +4,6 @@
|
|||||||
# SPDX-License-Identifier: GPL-2.0+
|
# SPDX-License-Identifier: GPL-2.0+
|
||||||
#
|
#
|
||||||
|
|
||||||
obj-$(CONFIG_API) += api.o api_display.o api_net.o api_storage.o \
|
obj-y += api.o api_display.o api_net.o api_storage.o
|
||||||
api_platform-$(ARCH).o
|
obj-$(CONFIG_ARM) += api_platform-arm.o
|
||||||
|
obj-$(CONFIG_PPC) += api_platform-powerpc.c
|
||||||
|
@@ -14,25 +14,22 @@ endif
|
|||||||
include $(TOPDIR)/config.mk
|
include $(TOPDIR)/config.mk
|
||||||
|
|
||||||
# Resulting ELF and binary exectuables will be named demo and demo.bin
|
# Resulting ELF and binary exectuables will be named demo and demo.bin
|
||||||
OUTPUT-$(CONFIG_API) = $(obj)demo
|
OUTPUT = $(obj)demo
|
||||||
OUTPUT = $(OUTPUT-y)
|
|
||||||
|
|
||||||
# Source files located in the examples/api directory
|
# Source files located in the examples/api directory
|
||||||
SOBJ_FILES-$(CONFIG_API) += crt0.o
|
SOBJ_FILES-y += crt0.o
|
||||||
COBJ_FILES-$(CONFIG_API) += demo.o
|
COBJ_FILES-y += demo.o
|
||||||
COBJ_FILES-$(CONFIG_API) += glue.o
|
COBJ_FILES-y += glue.o
|
||||||
COBJ_FILES-$(CONFIG_API) += libgenwrap.o
|
COBJ_FILES-y += libgenwrap.o
|
||||||
|
|
||||||
# Source files which exist outside the examples/api directory
|
# Source files which exist outside the examples/api directory
|
||||||
EXT_COBJ_FILES-$(CONFIG_API) += lib/crc32.o
|
EXT_COBJ_FILES-y += lib/crc32.o
|
||||||
EXT_COBJ_FILES-$(CONFIG_API) += lib/ctype.o
|
EXT_COBJ_FILES-y += lib/ctype.o
|
||||||
EXT_COBJ_FILES-$(CONFIG_API) += lib/div64.o
|
EXT_COBJ_FILES-y += lib/div64.o
|
||||||
EXT_COBJ_FILES-$(CONFIG_API) += lib/string.o
|
EXT_COBJ_FILES-y += lib/string.o
|
||||||
EXT_COBJ_FILES-$(CONFIG_API) += lib/time.o
|
EXT_COBJ_FILES-y += lib/time.o
|
||||||
EXT_COBJ_FILES-$(CONFIG_API) += lib/vsprintf.o
|
EXT_COBJ_FILES-y += lib/vsprintf.o
|
||||||
ifeq ($(ARCH),powerpc)
|
EXT_SOBJ_FILES-$(CONFIG_PPC) += arch/powerpc/lib/ppcstring.o
|
||||||
EXT_SOBJ_FILES-$(CONFIG_API) += arch/powerpc/lib/ppcstring.o
|
|
||||||
endif
|
|
||||||
|
|
||||||
# Create a list of source files so their dependencies can be auto-generated
|
# Create a list of source files so their dependencies can be auto-generated
|
||||||
SRCS += $(addprefix $(SRCTREE)/,$(EXT_COBJ_FILES-y:.o=.c))
|
SRCS += $(addprefix $(SRCTREE)/,$(EXT_COBJ_FILES-y:.o=.c))
|
||||||
|
Reference in New Issue
Block a user