X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=lib_arm%2FMakefile;h=02933485cd16600f4f9dbae073a85184a40a7d8d;hb=89f39e177e7b0152aa1d3152baa25d986e36cdcf;hp=c8795b2314066353dfb0f655d57a1396e6cdf880;hpb=42fd5f87b1613d3039f57e93c16f760a768d3e84;p=u-boot diff --git a/lib_arm/Makefile b/lib_arm/Makefile index c8795b2314..02933485cd 100644 --- a/lib_arm/Makefile +++ b/lib_arm/Makefile @@ -24,26 +24,54 @@ include $(TOPDIR)/config.mk LIB = $(obj)lib$(ARCH).a +LIBGCC = $(obj)libgcc.a -SOBJS-y += _ashldi3.o -SOBJS-y += _ashrdi3.o -SOBJS-y += _divsi3.o -SOBJS-y += _modsi3.o -SOBJS-y += _udivsi3.o -SOBJS-y += _umodsi3.o +GLSOBJS += _ashldi3.o +GLSOBJS += _ashrdi3.o +GLSOBJS += _divsi3.o +GLSOBJS += _lshrdi3.o +GLSOBJS += _modsi3.o +GLSOBJS += _udivsi3.o +GLSOBJS += _umodsi3.o + +GLCOBJS += div0.o COBJS-y += board.o COBJS-y += bootm.o COBJS-y += cache.o -COBJS-y += div0.o +ifndef CONFIG_SYS_NO_CP15_CACHE +COBJS-y += cache-cp15.o +endif COBJS-y += interrupts.o +COBJS-y += reset.o -SRCS := $(SOBJS-y:.o=.S) $(COBJS-y:.o=.c) +SRCS := $(GLSOBJS:.o=.S) $(GLCOBJS:.o=.c) \ + $(SOBJS-y:.o=.S) $(COBJS-y:.o=.c) OBJS := $(addprefix $(obj),$(SOBJS-y) $(COBJS-y)) +LGOBJS := $(addprefix $(obj),$(GLSOBJS)) \ + $(addprefix $(obj),$(GLCOBJS)) + +# Always build libarm.a +TARGETS := $(LIB) + +# Build private libgcc only when asked for +ifdef USE_PRIVATE_LIBGCC +TARGETS += $(LIBGCC) +endif + +# For EABI conformant tool chains, provide eabi_compat() +ifneq (,$(findstring -mabi=aapcs-linux,$(PLATFORM_CPPFLAGS))) +TARGETS += $(obj)eabi_compat.o +endif + +all: $(TARGETS) $(LIB): $(obj).depend $(OBJS) $(AR) $(ARFLAGS) $@ $(OBJS) +$(LIBGCC): $(obj).depend $(LGOBJS) + $(AR) $(ARFLAGS) $@ $(LGOBJS) + ######################################################################### # defines $(obj).depend target