diff options
author | Wolfgang Denk <wd@denx.de> | 2009-07-23 13:15:59 +0200 |
---|---|---|
committer | Wolfgang Denk <wd@denx.de> | 2009-07-27 00:11:32 +0200 |
commit | 52b1bf2c5cd2f8af880dab503d0039b35570665b (patch) | |
tree | e9e4be6a20d20700057812ddac99f1c8c09974d7 /Makefile | |
parent | 479105065d965121f57b55dcfe83a940cba46ac1 (diff) | |
download | u-boot-imx-52b1bf2c5cd2f8af880dab503d0039b35570665b.zip u-boot-imx-52b1bf2c5cd2f8af880dab503d0039b35570665b.tar.gz u-boot-imx-52b1bf2c5cd2f8af880dab503d0039b35570665b.tar.bz2 |
Make linking against libgcc configurable
Many (especially ARM) tool chains seem to come with broken or
otherwise unusable (for the purposes of builing U-Boot) run-time
support libraries `libgcc.a'. By using the "USE_PRIVATE_LIBGCC"
setting we allow to use alternative libraries instead.
"USE_PRIVATE_LIBGCC" can either be set as an environment variable in
the shell, or as a command line argument when running "make", i. e.
$ make USE_PRIVATE_LIBGCC=yes
or
$ USE_PRIVATE_LIBGCC=yes
$ export USE_PRIVATE_LIBGCC
$ make
The value of "USE_PRIVATE_LIBGCC" is the name of the directory which
contains the alternative run-time support library `libgcc.a'. The
special value "yes" selects the directory $(OBJTREE)/lib_$(ARCH) .
Note that not all architectures provide an alternative `libgcc.a' in
their lib_$(ARCH) directories - so far, only ARM does.
Signed-off-by: Wolfgang Denk <wd@denx.de>
Cc: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Cc: Prafulla Wadaskar <prafulla@marvell.com>
cc: Stefan Roese <sr@denx.de>
Diffstat (limited to 'Makefile')
-rw-r--r-- | Makefile | 12 |
1 files changed, 11 insertions, 1 deletions
@@ -254,7 +254,17 @@ LIBBOARD = board/$(BOARDDIR)/lib$(BOARD).a LIBBOARD := $(addprefix $(obj),$(LIBBOARD)) # Add GCC lib -PLATFORM_LIBS += -L $(shell dirname `$(CC) $(CFLAGS) -print-libgcc-file-name`) -lgcc +ifdef USE_PRIVATE_LIBGCC +ifeq ("$(USE_PRIVATE_LIBGCC)", "yes") +PLATFORM_LIBGCC = -L $(OBJTREE)/lib_$(ARCH) -lgcc +else +PLATFORM_LIBGCC = -L $(USE_PRIVATE_LIBGCC) -lgcc +endif +else +PLATFORM_LIBGCC = -L $(shell dirname `$(CC) $(CFLAGS) -print-libgcc-file-name`) -lgcc +endif +PLATFORM_LIBS += $(PLATFORM_LIBGCC) +export PLATFORM_LIBS ifeq ($(CONFIG_NAND_U_BOOT),y) NAND_SPL = nand_spl |