PATCH: Ignore --disable-static in libiberty

H. J. Lu hjl@lucon.org
Sun Dec 19 20:57:00 GMT 2004


On Sun, Dec 19, 2004 at 03:37:09PM -0500, DJ Delorie wrote:
> 
> > Did you mean if David had no problems with
> > 
> > http://gcc.gnu.org/ml/gcc-patches/2004-12/msg01248.html
> > 
> > I could apply it?
> 
> No, I mean I don't want to see another patch unless you both agree
> it's the right one.  Between the two of you it seems you have the
> worst case scenearios, so you should be able to fully test any set of
> patches before they're officially submitted.

I can test my patch on Linux. But someone else has to test AIX.

> 
> > > Go to libiberty, remove mkstemps.o, and type "make".
> > 
> > That is what you get with libtool. The same thing happens in bfd. You
> > have to remove mkstemps.lo to recompile mkstemps.c.
> 
> Did you try it?  It *does* rebuild, that's not the problem.  The
> problem is that it tries to build .libs/libiberty.a but many (but not
> all) of the files therein are missing.
> 

What is what not what I got.

> I'm not pointing out the .o/.lo thing, just using that as a way to
> trigger a rebuild of libiberty.a so you can see that .libs is missing
> about 90% of the objects.

You have to tell me how to reproduce it. With my lastest patch, I got
sh-3.00$ rm mkstemps.lo
bash-3.00$ make
/bin/sh ./libtool --mode=compile gcc -c -DHAVE_CONFIG_H -g -O2 -I.
-I/export/linux/src/binutils/binutils/libiberty/../include  -W -Wall
-Wtraditional -pedantic -c -o mkstemps.lo
/export/linux/src/binutils/binutils/libiberty/mkstemps.c
gcc -c -DHAVE_CONFIG_H -g -O2 -I.
-I/export/linux/src/binutils/binutils/libiberty/../include -W -Wall
-Wtraditional -pedantic -c
/export/linux/src/binutils/binutils/libiberty/mkstemps.c -o mkstemps.o
libtooldir=`/bin/sh ./libtool --config | sed -n -e 's/^objdir=//p'`; \
rm -f ./libiberty.a $libtooldir/./libiberty.a pic/./libiberty.a \
  || true; \
/bin/sh ./libtool --mode=link gcc -g -O2 -o ./libiberty.la -rpath
/usr/local/lib \
  ./regex.lo ./cplus-dem.lo ./cp-demangle.lo ./md5.lo ./alloca.lo
./argv.lo ./choose-temp.lo ./concat.lo ./cp-demint.lo ./dyn-string.lo
./fdmatch.lo ./fibheap.lo ./floatformat.lo ./fnmatch.lo ./getopt.lo
./getopt1.lo ./getpwd.lo ./getruntime.lo ./hashtab.lo ./hex.lo
./lbasename.lo ./lrealpath.lo ./make-relative-prefix.lo
./make-temp-file.lo ./objalloc.lo ./obstack.lo ./partition.lo
./physmem.lo ./pex-unix.lo ./safe-ctype.lo ./sort.lo ./spaces.lo
./splay-tree.lo ./strerror.lo ./strsignal.lo ./ternary.lo ./xatexit.lo
./xexit.lo ./xmalloc.lo ./xmemdup.lo ./xstrdup.lo ./xstrerror.lo
./mkstemps.lo; \
if [ -f $libtooldir/./libiberty.a ]; then \
  cp $libtooldir/./libiberty.a ./libiberty.a.tmp; \
  ranlib ./libiberty.a.tmp; \
  /bin/sh
/export/linux/src/binutils/binutils/libiberty/../move-if-change \
    ./libiberty.a.tmp ./libiberty.a; \
else true; fi; \
rm -f ./libiberty.la $libtooldir/./libiberty*; \
if [ xno = xyes ]; then \
  cd $libtooldir; \
  ar rc ./libiberty.a \
    ./regex.o ./cplus-dem.o ./cp-demangle.o ./md5.o ./alloca.o ./argv.o
./choose-temp.o ./concat.o ./cp-demint.o ./dyn-string.o ./fdmatch.o
./fibheap.o ./floatformat.o ./fnmatch.o ./getopt.o ./getopt1.o
./getpwd.o ./getruntime.o ./hashtab.o ./hex.o ./lbasename.o
./lrealpath.o ./make-relative-prefix.o ./make-temp-file.o ./objalloc.o
./obstack.o ./partition.o ./physmem.o ./pex-unix.o ./safe-ctype.o
./sort.o ./spaces.o ./splay-tree.o ./strerror.o ./strsignal.o
./ternary.o ./xatexit.o ./xexit.o ./xmalloc.o ./xmemdup.o ./xstrdup.o
./xstrerror.o  ./mkstemps.o; \
  ranlib ./libiberty.a; \
  [ -d ../pic ] || mkdir ../pic; \
  rm -f ../pic/./libiberty.a; \
  cp ./libiberty.a ../pic/./libiberty.a; \
  cd ..; \
else true; fi
ar cru ./.libs/libiberty.a  ./regex.o ./cplus-dem.o ./cp-demangle.o
./md5.o ./alloca.o ./argv.o ./choose-temp.o ./concat.o ./cp-demint.o
./dyn-string.o ./fdmatch.o ./fibheap.o ./floatformat.o ./fnmatch.o
./getopt.o ./getopt1.o ./getpwd.o ./getruntime.o ./hashtab.o ./hex.o
./lbasename.o ./lrealpath.o ./make-relative-prefix.o ./make-temp-file.o
./objalloc.o ./obstack.o ./partition.o ./physmem.o ./pex-unix.o
./safe-ctype.o ./sort.o ./spaces.o ./splay-tree.o ./strerror.o
./strsignal.o ./ternary.o ./xatexit.o ./xexit.o ./xmalloc.o ./xmemdup.o
./xstrdup.o ./xstrerror.o ./mkstemps.o
ranlib ./.libs/libiberty.a
creating ./libiberty.la
(cd ./.libs && rm -f libiberty.la && ln -s ../libiberty.la
libiberty.la)
make[1]: Entering directory
`/export/build/linux/binutils-debug/build-i686-linux/libiberty/testsuite'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory
`/export/build/linux/binutils-debug/build-i686-linux/libiberty/testsuite'
bash-3.00$ rm mkstemps.o
bash-3.00$ make
make[1]: Entering directory
`/export/build/linux/binutils-debug/build-i686-linux/libiberty/testsuite'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory
`/export/build/linux/binutils-debug/build-i686-linux/libiberty/testsuite'

I need to see exactly what you got.


H.J.



More information about the Binutils mailing list