2 # (C) Copyright 2002-2006
3 # Wolfgang Denk, DENX Software Engineering, wd@denx.de.
5 # SPDX-License-Identifier: GPL-2.0+
8 include $(TOPDIR)/config.mk
10 LIB = $(obj)lib$(ARCH).o
11 LIBGCC = $(obj)libgcc.o
23 ifndef CONFIG_SPL_BUILD
25 ifndef CONFIG_SYS_GENERIC_BOARD
30 COBJS-$(CONFIG_OF_LIBFDT) += bootm-fdt.o
31 COBJS-$(CONFIG_CMD_BOOTM) += bootm.o
32 COBJS-$(CONFIG_SYS_L2_PL310) += cache-pl310.o
34 SOBJS-$(CONFIG_USE_ARCH_MEMSET) += memset.o
35 SOBJS-$(CONFIG_USE_ARCH_MEMCPY) += memcpy.o
37 COBJS-$(CONFIG_SPL_FRAMEWORK) += spl.o
38 ifndef CONFIG_SPL_NO_CPU_SUPPORT_CODE
43 COBJS-y += interrupts.o
47 COBJS-y += cache-cp15.o
49 SRCS := $(GLSOBJS:.o=.S) $(GLCOBJS:.o=.c) \
50 $(SOBJS-y:.o=.S) $(COBJS-y:.o=.c)
51 OBJS := $(addprefix $(obj),$(SOBJS-y) $(COBJS-y))
52 LGOBJS := $(addprefix $(obj),$(GLSOBJS)) \
53 $(addprefix $(obj),$(GLCOBJS))
55 # Always build libarm.o
58 # Build private libgcc only when asked for
59 ifdef USE_PRIVATE_LIBGCC
63 # For EABI conformant tool chains, provide eabi_compat()
64 ifneq (,$(findstring -mabi=aapcs-linux,$(PLATFORM_CPPFLAGS)))
65 TARGETS += $(obj)eabi_compat.o
70 $(LIB): $(obj).depend $(OBJS)
71 $(call cmd_link_o_target, $(OBJS))
73 $(LIBGCC): $(obj).depend $(LGOBJS)
74 $(call cmd_link_o_target, $(LGOBJS))
76 #########################################################################
78 # defines $(obj).depend target
79 include $(SRCTREE)/rules.mk
81 sinclude $(obj).depend
83 #########################################################################