PATCH: bootstrap/19135 and bootstrap/19151: Fix libiberty for multilib
H. J. Lu
hjl@lucon.org
Sat Dec 25 16:41:00 GMT 2004
Libtool doesn't always work right for multilib when building .la file.
But I can't reproduce it myself. This patch gets around it to build
.a file directly.
H.J.
----
2004-12-24 H.J. Lu <hongjiu.lu@intel.com>
PR bootstrap/19135
PR bootstrap/19151
* Makefile.in (LTTARGETLIB): Removed.
(PREFIXTARGETLIB): Likewise.
(LTTESTLIB): Likewise.
(PREFIXTESTLIB): Likewise.
(COMPILER): New.
(COMPILE.c): Updated.
(CCLD): Removed.
(LINK): Updated.
($(TARGETLIB)): Updated to build .a file directly.
($(TESTLIB)): Likewise.
--- libiberty/Makefile.in.multilib 2004-12-20 09:10:56.000000000 -0800
+++ libiberty/Makefile.in 2004-12-24 08:51:26.288728747 -0800
@@ -72,11 +72,7 @@ PICFLAG =
MAKEOVERRIDES =
TARGETLIB = ./libiberty.a
-LTTARGETLIB = ./libiberty.la
-PREFIXTARGETLIB= ./libiberty
TESTLIB = ./testlib.a
-LTTESTLIB = ./testlib.la
-PREFIXTESTLIB = ./testlib
LIBOBJS = @LIBOBJS@
LTLIBOBJS = @LTLIBOBJS@
@@ -125,10 +121,10 @@ installcheck: installcheck-subdir
INCDIR=$(srcdir)/$(MULTISRCTOP)../include
-COMPILE.c = $(CC) -c @DEFS@ $(LIBCFLAGS) -I. -I$(INCDIR) $(HDEFINES) @ac_libiberty_warn_cflags@
+COMPILER = $(CC) @DEFS@ $(LIBCFLAGS) $(HDEFINES) @ac_libiberty_warn_cflags@
+COMPILE.c = $(COMPILER) -c -I. -I$(INCDIR)
LTCOMPILE = $(LIBTOOL) --mode=compile $(COMPILE.c)
-CCLD = $(CC)
-LINK = $(LIBTOOL) --mode=link $(CCLD) $(CFLAGS)
+LINK = $(LIBTOOL) --mode=link $(COMPILER)
# Just to make sure we don't use a built-in rule with VPATH
.c.o:
@@ -275,15 +271,8 @@ $(TARGETLIB): $(REQUIRED_LTOFILES) $(EXT
libtooldir=`$(LIBTOOL) --config | sed -n -e 's/^objdir=//p'`; \
rm -f $(TARGETLIB) $$libtooldir/$(TARGETLIB) pic/$(TARGETLIB) \
|| true; \
- $(LINK) -o $(LTTARGETLIB) -rpath $(libdir) \
+ $(LINK) -o $(TARGETLIB) \
$(REQUIRED_LTOFILES) $(EXTRA_LTOFILES) $(LTLIBOBJS); \
- if [ -f $$libtooldir/$(TARGETLIB) ]; then \
- cp $$libtooldir/$(TARGETLIB) $(TARGETLIB).tmp; \
- $(RANLIB) $(TARGETLIB).tmp; \
- $(SHELL) $(srcdir)/../move-if-change \
- $(TARGETLIB).tmp $(TARGETLIB); \
- else true; fi; \
- rm -f $(LTTARGETLIB) $$libtooldir/$(PREFIXTARGETLIB)*; \
if [ x$(enable_shared) = xyes ]; then \
cd $$libtooldir; \
$(AR) $(AR_FLAGS) $(TARGETLIB) \
@@ -298,15 +287,8 @@ $(TARGETLIB): $(REQUIRED_LTOFILES) $(EXT
$(TESTLIB): $(REQUIRED_LTOFILES) $(CONFIGURED_LTOFILES)
libtooldir=`$(LIBTOOL) --config | sed -n -e 's/^objdir=//p'`; \
rm -f $(TESTLIB) $$libtooldir/$(TESTLIB) || true; \
- $(LINK) -o $(LTTESTLIB) -rpath $(libdir) \
- $(REQUIRED_LTOFILES) $(CONFIGURED_LTOFILES); \
- if [ -f $$libtooldir/$(TESTLIB) ]; then \
- cp $$libtooldir/$(TESTLIB) $(TESTLIB).tmp; \
- $(RANLIB) $(TESTLIB).tmp; \
- $(SHELL) $(srcdir)/../move-if-change \
- $(TESTLIB).tmp $(TESTLIB); \
- else true; fi; \
- rm -f $(LTTESTLIB) $$libtooldir/$(PREFIXTESTLIB)*
+ $(LINK) -o $(TESTLIB) \
+ $(REQUIRED_LTOFILES) $(CONFIGURED_LTOFILES)
info: libiberty.info info-subdir
install-info: install-info-subdir
More information about the Binutils
mailing list