2 # (C) Copyright 2000-2006
3 # Wolfgang Denk, DENX Software Engineering, wd@denx.de.
5 # SPDX-License-Identifier: GPL-2.0+
9 extra-
$(CONFIG_SMC91111
) += smc91111_eeprom
10 extra-
$(CONFIG_SMC911X
) += smc911x_eeprom
11 extra-
$(CONFIG_SPI_FLASH_ATMEL
) += atmel_df_pow2
12 extra-
$(CONFIG_MPC5xxx
) += interrupt
13 extra-
$(CONFIG_8xx
) += test_burst timer
14 extra-
$(CONFIG_8260
) += mem_to_mem_idma2intr
15 extra-
$(CONFIG_PPC
) += sched
18 # Some versions of make do not handle trailing white spaces properly;
19 # leading to build failures. The problem was found with GNU Make 3.80.
20 # Using 'strip' as a workaround for the problem.
22 ELF
:= $(strip $(extra-y
))
24 extra-y
+= $(addsuffix .srec
,$(extra-y
)) $(addsuffix .bin
,$(extra-y
))
25 clean-files
:= $(extra-
) $(addsuffix .srec
,$(extra-
)) $(addsuffix .bin
,$(extra-
))
30 LIB
= $(obj
)libstubs.o
32 LIBAOBJS-
$(CONFIG_PPC
) += ppc_longjmp.o ppc_setjmp.o
33 LIBAOBJS-
$(CONFIG_8xx
) += test_burst_lib.o
34 LIBAOBJS
:= $(LIBAOBJS-y
)
38 LIBOBJS
= $(addprefix $(obj
),$(LIBAOBJS
) $(LIBCOBJS
))
40 SRCS
:= $(COBJS
:.o
=.c
) $(LIBCOBJS
:.o
=.c
) $(LIBAOBJS
:.o
=.S
)
41 OBJS
:= $(addprefix $(obj
),$(COBJS
))
42 ELF
:= $(addprefix $(obj
),$(ELF
))
44 gcclibdir
:= $(shell dirname
`$(CC) -print-libgcc-file-name`)
46 # For PowerPC there's no need to compile standalone applications as a
47 # relocatable executable. The relocation data is not needed, and
48 # also causes the entry point of the standalone application to be
50 ifeq ($(ARCH
),powerpc
)
51 AFLAGS
:= $(filter-out $(RELFLAGS
),$(AFLAGS
))
52 CFLAGS
:= $(filter-out $(RELFLAGS
),$(CFLAGS
))
53 CPPFLAGS
:= $(filter-out $(RELFLAGS
),$(CPPFLAGS
))
56 # We don't want gcc reordering functions if possible. This ensures that an
57 # application's entry point will be the first function in the application's
59 CFLAGS
+= $(call cc-option
,-fno-toplevel-reorder
)
61 #########################################################################
63 $(call cmd_link_o_target
, $(LIBOBJS
))
66 $(obj
)%: $(obj
)%.o
$(LIB
)
67 $(LD
) $(LDFLAGS
) -g
-Ttext
$(CONFIG_STANDALONE_LOAD_ADDR
) \
68 -o
$@
-e
$(SYM_PREFIX
)$(notdir $(<:.o
=)) $< $(LIB
) \
72 $(OBJCOPY
) -O srec
$< $@
2>/dev
/null
75 $(OBJCOPY
) -O binary
$< $@
2>/dev
/null