discard “Configured with” line from gcc -v output

2009-09-08 Thread Alexandre Oliva
Since the latest libtool update in GCC, I've had problems building
libstdc++-v3 on x86_64-linux-gnu.  The symptom was an incomplete link
command line, resulting from a trailing «'» character in a -L flag added
by libtool.

It turned out to be improperly auto-detected from the gcc -shared -v
output.  The issue is that, after zero or perhaps more reconfigurations
of the gcc top-level, the arguments passed to the gcc configure, and
that are reported by gcc -v in the build tree, look like this:

Configured with: ../configure --cache-file=./config.cache -C 
--prefix=/l/tmp/build/toolchains/x86_64-linux-gnu --enable-checking 
--enable-shared --enable-threads=posix --enable-__cxa_atexit 
--disable-libunwind-exceptions --enable-java-awt-but=gtk --disable-dssi 
--enable-plugin-but --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre 
--enable-libgcj-multifile --disable-java-maintainer-mode 
--with-ecj-jar=/usr/share/java/eclipse-ecj.jar --with-cpu=generic CC='ccache 
gcc -fno-working-directory -m64' CXX='ccache g++ -fno-working-directory -m64' 
CCC='ccache g++ -fno-working-directory -m64' 
target_alias=x86_64-unknown-linux-gnu CFLAGS='-g -O2' LDFLAGS= CXXFLAGS='-g 
-O2' 'CC_FOR_TARGET=distccrel 
/l/tmp/build/gcc/trunk/obj-x86_64-linux-gnu/./gcc/xgcc 
-B/l/tmp/build/gcc/trunk/obj-x86_64-linux-gnu/./gcc/' 'CXX_FOR_TARGET=distccrel 
/l/tmp/build/gcc/trunk/obj-x86_64-linux-gnu/./gcc/g++ 
-B/l/tmp/build/gcc/trunk/obj-x86_64-linux-gnu/./gcc/ -nostdinc++  
-L/l/tmp/build/gcc/trunk/obj-x86_64-linux-gnu/x86_64-unknown-linux-gnu/libstdc++-v3/src
 
-L/l/tmp/build/gcc/trunk/obj-x86_64-linux-gnu/x86_64-unknown-linux-gnu/libstdc++-v3/src/.libs'
 'GCJ_FOR_TARGET=distccrel 
/l/tmp/build/gcc/trunk/obj-x86_64-linux-gnu/./gcc/gcj 
-B/l/tmp/build/gcc/trunk/obj-x86_64-linux-gnu/./gcc/' 
'GFORTRAN_FOR_TARGET=distccrel 
/l/tmp/build/gcc/trunk/obj-x86_64-linux-gnu/./gcc/gfortran 
-B/l/tmp/build/gcc/trunk/obj-x86_64-linux-gnu/./gcc/' AR_FOR_TARGET=ar 
AS_FOR_TARGET=as DLLTOOL_FOR_TARGET=dlltool LD_FOR_TARGET=ld 
LIPO_FOR_TARGET=lipo NM_FOR_TARGET=nm OBJDUMP_FOR_TARGET=objdump 
RANLIB_FOR_TARGET=ranlib STRIP_FOR_TARGET=strip WINDRES_FOR_TARGET=windres 
WINDMC_FOR_TARGET=windmc --enable-languages=c,ada,c++,fortran,java,objc 
--no-create --no-recursion

The attentive reader will notice the -L flag at the end of
CXX_FOR_TARGET.  libtool.m4 is not clever enough to realize that the
trailing «'» is just closing the one before CXX_FOR_TARGET, and to
disregard the whole thing, so it takes the argument at face value, with
a trailing apostrophe and all.  That doesn't quite work.

The fix I came up with was to avoid lines that didn't contain the
information libtool was interested in.  It turns out that only lines
started with blanks contain the actual commands line that GCC runs, so I
narrowed the grep for -L flags to such lines.

Here's what I'm going to installing in the GCC tree momentarily.  I
suggest libtool to adopt something along the same lines.

for  ChangeLog
from  Alexandre Oliva  aol...@redhat.com

	* libtool.m4 (output_verbose_link_cmd): Require leading blank, and
	blank before -L.
	
for  gcc/ChangeLog
from  Alexandre Oliva  aol...@redhat.com

	* configure: Rebuilt with modified libtool.m4.

for  libstdc++-v3/ChangeLog
from  Alexandre Oliva  aol...@redhat.com

	* configure: Rebuilt with modified libtool.m4.

for  boehm-gc/ChangeLog
from  Alexandre Oliva  aol...@redhat.com

	* configure: Rebuilt with modified libtool.m4.

for  libjava/ChangeLog
from  Alexandre Oliva  aol...@redhat.com

	* configure: Rebuilt with modified libtool.m4.

Index: libtool.m4
===
--- libtool.m4.orig	2009-09-07 04:31:45.0 -0300
+++ libtool.m4	2009-09-07 04:33:09.0 -0300
@@ -5471,7 +5471,7 @@ if test $_lt_caught_CXX_error != yes; 
   # Commands to make compiler produce verbose output that lists
   # what hidden libraries, object files and flags are used when
   # linking a shared library.
-  output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 21 | $GREP \-L'
+  output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 21 | $GREP ^ .* -L'
 
 else
   GXX=no
@@ -5716,7 +5716,7 @@ if test $_lt_caught_CXX_error != yes; 
 # explicitly linking system object files so we need to strip them
 # from the output so that they don't get included in the library
 # dependencies.
-output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 21) | $EGREP \-L`; list=; for z in $templist; do case $z in conftest.$objext) list=$list $z;; *.$objext);; *) list=$list $z;;esac; done; $ECHO X$list | $Xsed'
+output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 21) | $GREP ^ .* -L`; list=; for z in $templist; do case $z in conftest.$objext) list=$list $z;; *.$objext);; *) list=$list $z;;esac; done; $ECHO X$list | $Xsed'
 ;;
   *)
 if test $GXX

Re: discard “Configured with” line from gcc -v output

2009-09-08 Thread Alexandre Oliva
On Sep  8, 2009, Ralf Wildenhues ralf.wildenh...@gmx.de wrote:

 * Alexandre Oliva wrote on Tue, Sep 08, 2009 at 05:17:28PM CEST:

 The symptom was an incomplete link command line, resulting from a
 trailing «'» character in a -L flag added by libtool.

 FWIW, it is not clear to me why this shouldn't have hurt you earlier.

I was just as surprised.  I couldn't find any particular change that
would have exposed this latent problem.

It *could* be related with the upgrade to a newer autoconf in GCC, which
might in turn have started adding more variables to the config.status
--recofigure command line.

 Here's what I'm going to installing in the GCC tree momentarily.  I
 suggest libtool to adopt something along the same lines.

 The patch is not ok for upstream Libtool, which unfortunately also has
 to support other compilers that pretend to be GCC, but produce different
 '-v -shared' output (ICC and PathScale are in this boat IIRC).  ICC
 won't match your changed grep, I think.  Yes, it's ugly and they should
 be punished for being an imperfect impersonation, but that's not
 something you can tell users.

:-)

 Have you checked older GCC versions for the format?

Not really, although I'm pretty sure this leading whitespace oddity has
bugged me for a very long time.  But given the above, it shouldn't
really matter.

 One possibility would be to grep out Configured with lines.  I'll look
 into it.

That ought to work.  Thanks!

-- 
Alexandre Oliva, freedom fighterhttp://FSFLA.org/~lxoliva/
You must be the change you wish to see in the world. -- Gandhi
Be Free! -- http://FSFLA.org/   FSF Latin America board member
Free Software Evangelist  Red Hat Brazil Compiler Engineer




[SCM] GNU Libtool annotated tag, release-1-3-2, deleted. release-1-3-1-13-g453b778

2008-04-19 Thread Alexandre Oliva
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project GNU Libtool.

The annotated tag, release-1-3-2 has been deleted
   was  3d22b623e62dd494382e05a8e66213c397f518f9

---
tag release-1-3-2
Tagger: Alexandre Oliva [EMAIL PROTECTED]
Date:   Wed May 26 00:28:32 1999 +

453b778addf1c4da6062e83128451577e5329aff * configure.in: Bumped to 1.3.2.
---


hooks/post-receive
--
GNU Libtool


___
Libtool-commit mailing list
Libtool-commit@gnu.org
http://lists.gnu.org/mailman/listinfo/libtool-commit


[SCM] GNU Libtool annotated tag, multi-language-fork, deleted. automake_1-4-515-gfad95cc

2008-04-19 Thread Alexandre Oliva
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project GNU Libtool.

The annotated tag, multi-language-fork has been deleted
   was  f75f53d202ac4f8adb15c291939b511019d5c979

---
tag multi-language-fork
Tagger: Alexandre Oliva [EMAIL PROTECTED]
Date:   Fri Dec 3 03:21:29 1999 +

fad95cc179f3861f1da488fb979d0d5aedba6523 * ltconfig.in (ac_compile): Use 
$ac_ext instead of .c. (ac_link): Likewise. (dlfcn.h, ac_try): Do not add 
filename, it is already in ac_compile. Reported by Stephane Conversy [EMAIL 
PROTECTED]
---


hooks/post-receive
--
GNU Libtool


___
Libtool-commit mailing list
Libtool-commit@gnu.org
http://lists.gnu.org/mailman/listinfo/libtool-commit


[SCM] GNU Libtool annotated tag, multi-language-fork, created. multi-language-fork

2008-04-19 Thread Alexandre Oliva
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project GNU Libtool.

The annotated tag, multi-language-fork has been created
at  e993633d6fbe756826b998951c82ca8cb842b9a7 (tag)
   tagging  4b1b95eabf46e7b994adecb5667f73a2b9fb9d8a (commit)
  replaces  release-1-3b
 tagged by  Gary V. Vaughan
on  Thu Apr 17 13:08:59 2008 -0400

- Log -
multi-language-fork

Albert Cheng (1):
  * ltmain.in (shlibpath_var): ensure the variable is non-empty before

Alexandre Oliva (13):
  * doc/libtool.texi (Porting inter-library dependencies): Typos
  * ltmain.in: Fix creation of relative links to object files in
  * libltdl/COPYING.LIB: Update to version 2.1.
  * ltconfig.in (CDPATH): Set to `:' instead of empty.
  * libltdl/ltdl.c (lt_dlopen): Do not search paths when the
  * configure.in: Move ltconfig and ltmain.sh generation back...
  * tests/sh.test: New test to detect uses of quotes within
  * libtool.m4: Do not AC_SUBST anything other than LIBTOOL.
  * ltconfig.in (irix6*): Do not override deplibs_check_method
  * configure.in: AC_SUBST variables that are used by ltconfig to
  * libtool.m4: Use host when --target is not specified.
  * ltconfig.in (linux-gnu*): Disable hardcode_into_libs until it
  * ltconfig.in (ac_compile): Use $ac_ext instead of .c.

Bert Driehuis (1):
  * ltconfig.in:  Updated bsdi4 soname specs to be more like

Donald Anderson (1):
  * ltconfig.in (sco3.2v5): use pass_all deplibs_check_method

Erez Zadok (2):
  * doc/PLATFORMS: Updated mostly *bsd platforms.
  * doc/PLATFORMS (i*86-*openbsd2.5):  New platform.

Gary V. Vaughan (18):
  * configure.in: bumped version to 1.3c.
  * README-alpha:  improved the release instructions to mention
  * configure.in (AC_PROG_RANLIB):  No longer required as we now use
  * libtool.m4 (mingw*, AC_PROG_LD): use tr for carriage return
  * ltconfig.in (ltdll.c, impgen.c): Prevent the shell from
  * ltconfig.in (whole-archive-flag-spec): test whether the
  * ltconfig.in (whole-archive-flag-spec):  I had been
  * libtool.m4: be sure to AC_SUBST values no longer tested in
  * configure.in (AC_OUTPUT_COMMANDS): generate ltmain.sh
  * ltconfig.in:  Set $FILE to @FILE@ for substitution with
  * ltmain.in (-no-fast-install):  Wrapper script used to add the
  * ltmain.in (-no-install):  This doesn't work on win32 since
  * NEWS: updtaed.
  * libtool.m4 (AC_PATH_PROG_VERSION_GREP): removed in favour of the
  * libtool.m4 (AC_PATH_FILE): new macro replaces
  * ltmain.in:  Damnit!  Cygwin cvs committed all the
  * libtool.m4:  better use of $target instead of $host to support
  * ltconfig.in:  Be friendlier to C++ compilers when testing

Manfred Weichel (1):
  * ltconfig.in (sysv5): Added support required for shared

Michael Forster (1):
  * ltconfig.in (linux-gnu*): Set hardcode_into_libs=yes.

Mumit Khan (1):
  * ltconfig.in:  Read line at a time to avoid tokenisation by

Olly Betts (9):
  * doc/libtool.texi (C++ Libraries):  fixed a typo.
  * NEWS: Note new user visible changes.
  * libtool.m4(cygwin mingw32, AC_LIBTOOL_SETUP):  On second
  * libtool.m4(cygwin mingw32, AC_LIBTOOL_SETUP): Oops.  Fix some
  * ltconfig.in(cygwin mingw32, archive_expsym_cmds): Only compile
  * libtool.m4 (AC_PROG_LD): strip carriage returns from the
  * doc/libtool.texi (Compile mode): typo correction.
  * libtool.m4:  Third time lucky, with Tor's patch.
  * ltconfig.in (opt_cr):  Handle crlf sequences output by the

Pavel Roskin (2):
  * ltmain.in: Ensure that gcc on HPsUX uses -fPIC, or else
  Added pending patches file to mail subdir

Stephane Conversy (1):
  * ltmain.in (-DPIC):  changed the order of pic flags a little to

Thomas Tanner (7):
  * doc/PLATFORMS: 1.3b passes all tests on cygwin
  * NEWS, TODO: updated (pic flags)
  * NEWS: mention fixes
  * ltmain.in: don't ignore convenience libraries for objects/archives
  * NEWS: new -no-install flag
  * NEWS: updated
  * configure.in: generate ltconfig and ltmain.sh before configuring

Tor Lillqvist (2):
  * libtool.m4: test command used == which should be =.
  * libtool.m4:  these was a missing `*' in the -mno-cygwin

Vadim (1):
  * ltconfig.in (sysv):  More UW7 support.

---


hooks/post-receive
--
GNU Libtool


___
Libtool-commit mailing list
Libtool-commit@gnu.org
http://lists.gnu.org/mailman/listinfo/libtool-commit


[SCM] GNU Libtool annotated tag, release-1-3, created. release-1-3

2008-04-19 Thread Alexandre Oliva
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project GNU Libtool.

The annotated tag, release-1-3 has been created
at  70b19aae7c43fe4894e88cad7c502d4113ce4385 (tag)
   tagging  1340c3dc7b314bb1f90294794d4eb17e3ae66d18 (commit)
 tagged by  Gary V. Vaughan
on  Thu Apr 17 13:37:20 2008 -0400

- Log -
1.3

Alexandre Oliva (385):
  * demo/Makefile.am (objdir): there are no longer quotes around
  * libtool.m4 (CFLAGS): check whether -belf is needed on SCO, as
  * autogen: new script; run it to bootstrap libtool after checking
  * AUTHORS: added myself as a co-maintainer
  * ltmain.in (libobj): default value must not contain directory
  added a few extra headers for gnus
  * ltmain.in: correctly create libraries and programs with
  thou shalt not commit before make check :-)
  added a suggestion of how to create shared libraries with undefined 
symbols
  * THANKS: Added Eric Estievenart
  * ltconfig.in (need_locks): if neither `-c -o' nor hard links are
  * THANKS: Added Marc J. Fraioli
  * ltconfig.in (compiler_o_lo): check whether we can write directly
  * ltconfig.in (hardcode_minus_L): Revert Ian's patch for
  * libtool.m4 (sco): fix typo
  * ltconfig.in: On AIX, don't treat GNU ld specially.
  1998-11-04  Alexandre Oliva  [EMAIL PROTECTED]
  * THANKS: Added Thomas Tanner and Gary V. Vaughan
  moved from aix to c++
  fixed
  installed
  * ltconfig.in: add --falback-echo, to be used if everything else
  * sh.test (test X): ensure that the double-quote supposed to be
  * ltconfig.in (sunos*, sympat, symxfrm): remove underscore
  * ltconfig.in: make use of '~' field separator in reload_cmds,
  * NEWS: updated
  * ltmain.in (IFS): revert Gary's patch when parsing version
  * NEWS: Mention -export-symbols and new dlpreopen
  * PORTING: Porting instructions are in the libtool manual already
  * ltmain.in (C_compiler): copy $CC before it is overwritten with
  * NEWS: -module and libtldl
  * ltmain.in (output_objdir): compute it from $output, not $arg
  * ltmain.in (installed): new variable defined within a .la file,
  * ltmain.in (installed): new variable defined within a .la file,
  * ltconfig.in (echo_test_string): the whole ltconfig script was
  * ltmain.in: missing `test' between `' and `$module'
  * mdemo/Makefile.am (hell_debug_LDFLAGS): -dlpreopen - -dlopen
  added message with -export-symbols syntax for various platforms
  * ltconfig.in (archive_cmds, osf3, osf4, solaris, sunos4): create
  * libltdl/ltdl.c: replace NULL with 0, so that we don't depend on
  * doc/PLATFORMS: updated last-tested release for platforms I've
  * ltconfig.in (echo): avoid shell error messages when we're
  * libtool.spec (URL): point to www.gnu.org
  Initial revision
  imported from autoconf CVS tree
  * ltconfig.in (solaris): do not use $CC for linking if GNU ld is
  * Makefile.am (mdemo_distfiles): libfoo[12].sym no longer exist
  * libtool.m4 (ac_cv_sys_symbol_underscore): `test a == b' doesn't
  * doc/libtool.texi (author): listed all the AUTHORS
  * configure.in: we no longer use PRCS
  C++ problems are documented
  * ltmain.in (convenience, deplibs): propagate dependencies
  * PORTING: removed the text Akim Demaille converted to .texi
  * configure.in (AC_CONFIG_SUBDIRS): added libltdl
  * ltmain.in (-DSTATIC): changed to -DLIBTOOL_STATIC, and defined
  * tests/Makefile.am (EXTRA_DIST): remove ltdl-*.test
  * demo/configure.in (BINARY_HELLDL): test whether dlopen is
  * libltdl/configure.in (stdlib.h, unistd.h, stdio.h): check
  * libltdl/Makefile.am (EXTRA_DIST): removed, nothing needed
  * THANKS: added Stephan Kulow; removed Gary V. Vaughan and Thomas
  * NEWS: Added Thomas Tanner and Gary V. Vaughan to the list of new
  * ltmain.in (-force-static, force_static): removed
  new file
  * Makefile.am (cvs-dist): our release tags are in lower case
  reverted addition of depdemo; it's completely unusable yet :-(
  * NEWS, configure.in, libtool.spec: Bumped to 1.2d for release
  missing colon at EOL
  cvs-dist: missing quotes in sed command
  * NEWS, configure.in, libtool.spec: Bumped to 1.2e for CVS
  * Makefile.am (SUBDIRS): prepend `.' to avoid am-recursive
  * libltdl/Makefile.am: install libltdl conditionally...
  * libltdl/Makefile.am: install libltdl conditionally...
  * ltmain.in (SP2NL, NL2SP): use `tr' magic to avoid passing very
  * ltconfig.in (cygwin, archive_cmds, archive_sym_cmds): Moved
  * ltmain.in (SP2NL, NL2SP): Don't delete empty lines, as this
  * ltmain.in (libobjs_save, oldobjs): when building an
  * libltdl/ltdl.c

[SCM] GNU Libtool annotated tag, autoconf_pre_2-13, deleted. start-10-ge17a168

2008-04-19 Thread Alexandre Oliva
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project GNU Libtool.

The annotated tag, autoconf_pre_2-13 has been deleted
   was  40127ffe60da20296fcaca0b292da94e1901590e

---
tag autoconf_pre_2-13
Tagger: Alexandre Oliva [EMAIL PROTECTED]
Date:   Tue Dec 1 17:00:17 1998 +

e17a1688be305b503b5f13374e6f8367dbeb9925 imported from autoconf CVS tree
---


hooks/post-receive
--
GNU Libtool


___
Libtool-commit mailing list
Libtool-commit@gnu.org
http://lists.gnu.org/mailman/listinfo/libtool-commit


[SCM] GNU Libtool annotated tag, multi-language-merge-point, created. multi-language-merge-point

2008-04-19 Thread Alexandre Oliva
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project GNU Libtool.

The annotated tag, multi-language-merge-point has been created
at  cb5daad1957d375af11d4b3280995a568155df0b (tag)
   tagging  0d579bb3f6014bc7f91ea5578ab3aa7792e8bc73 (commit)
  replaces  release-1-3b
 tagged by  Gary V. Vaughan
on  Thu Apr 17 13:06:57 2008 -0400

- Log -
multi-language-merge-point

Akim Demaille (5):
  * libtool.m4: Adjust the copyright notice.
  * libtool.m4:  Don't depend on Autoconf internals:
  * libtool.m4 (AC_PATH_TOOL_PREFIX): Similarly with
  * libtool.m4: s/[ t]*$//
  * ltmain.sh: Don't quote the argument of case/esac and

Albert Cheng (1):
  * ltmain.in (shlibpath_var): ensure the variable is non-empty before

Albert Chin (1):
  * ltcf-cxx.sh (archive_cmds) [HP-UX, GCC]: Link with -fPIC.

Albert Chin-A-Young (3):
  * ltcf-cxx.sh (archive_cmds, irix): Added -Wl to -update_registry
  * ltcf-cxx.sh (old_archive_cmds):  With IRIX C++ 7.3.1.1m, CC -ar
  * ltconfig.in: Handle case where /bin/nm -p outputs multiple

Alexandre Oliva (95):
  * doc/libtool.texi (Porting inter-library dependencies): Typos
  * ltmain.in: Fix creation of relative links to object files in
  * libltdl/COPYING.LIB: Update to version 2.1.
  * ltconfig.in (CDPATH): Set to `:' instead of empty.
  * libltdl/ltdl.c (lt_dlopen): Do not search paths when the
  * configure.in: Move ltconfig and ltmain.sh generation back...
  * tests/sh.test: New test to detect uses of quotes within
  * libtool.m4: Do not AC_SUBST anything other than LIBTOOL.
  * ltconfig.in (irix6*): Do not override deplibs_check_method
  * configure.in: AC_SUBST variables that are used by ltconfig to
  * libtool.m4: Use host when --target is not specified.
  * ltconfig.in (linux-gnu*): Disable hardcode_into_libs until it
  * ltconfig.in (ac_compile): Use $ac_ext instead of .c.
  The beginnings of multi-compiler/language support in libtool.
  The beginnings of multi-compiler/language support in libtool.
  Change that is part of Alexandre's configuration tags patch but isn't
  Added this file.  It contains all of the C compiler related
  Added this file.  It contains C++ compiler related configuration
  Moved the contents of the ChangeLog of the head branch to this file so
  * configure.in: Bump version number to 1.4a, since this will
  * tagdemo/Makefile.am (lib_LTLIBRARIES): Moved libbaz.la from
  * libtool.m4 (_AC_PROG_LIBTOOL): Renamed from...
  * configure.in: Look for C++ compiler.
  * libtool.m4 (AC_LIBLTDL_CONVENIENCE, AC_LIBLTDL_INSTALLABLE):
  Adjust docs
  * configure.in (ACINCLUDE_M4_LIST): Removed libltdl/acinclude.m4.
  * ltmain.in (compile): When output object is in subdir, create
  * ltconfig.in: Make the output script executable after updating
  * ltmain.in: Output libobj file in a temporary file, then
  typo
  * ltmain.in (xform): Recognize *.class and *.java.
  * libtool.m4 (_AC_PROG_LIBTOOL): Run before AC_LIBTOOL_GCJ.
  * configure.in (GCJ): Check.
  * THANKS: Added Art Pope.
  * libtool.m4 (AM_PROG_GCJ): Quote it so that aclocal won't bring
  * configure.in (AM_PROG_GCJ): Re-enable, with definition copied
  * libtool.m4 (AC_LIBTOOL_GCJ): Require either AC_PROG_GCJ or
  * libtool.m4 (lt_cv_deplibs_check_method, freebsd): Do not depend
  * ltconfig.in (dynamic_linker, linux, powerpc): Do not disable
  * ltcf-c.sh (wlarc, netbsd, aout): Set wlarc to empty.
  * ltcf-c.sh, ltcf-cxx.sh: Check if -lc is necessary for building
  * ltcf-c.sh (linkopts): Don't set for test.
  * ltmain.in: Support GNU shtool's install.
  * ltmain.in (irix, major): Prepend a `.'.
  * ltmain.in (tagname): Use `case' instead of `grep' to infer it.
  * configure.in (AM_PROG_GCJ): Moved definition...
  * ltcf-c.sh (need_lc): Fix test message.  Set wl for archive_cmds.
  * ltmain.in (shtool): Use echo|grep instead of expr, as in the
  * ltcf-c.sh, ltcf-cxx.sh, ltcf-gcj.sh (archive_cmds,
  * tests/link-2.test: Create hell.lo in the format expected by
  * demo/Makefile.am: Don't extract configuration variables directly
  * ltmain.in (variables_saved_for_relink): Attempt to unset them
  * tests/defs (CC): Extract from the libtool script.
  * tests/quote.test: Move the match test out of case statements, to
  * libtool.m4 (AM_PROG_GCJ): Removed.
  * ltconfig.in (enable_dlopen): Set to no when lt_cv_dlopen is no.
  * ltmain.in (newdlprefiles): Use dlname if it's available and
  * tests/mdemo-exec.test: Modify failure message.
  * ltdl.m4 (HAVE_LIBDL): Look for dlopen in -lsvld.
  * libltdl/ltdl.c (lt_dlopen): Set dlname from library_names

[SCM] GNU Libtool annotated tag, automake_1-4, created. automake_1-4

2008-04-19 Thread Alexandre Oliva
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project GNU Libtool.

The annotated tag, automake_1-4 has been created
at  f276c455108f436a79d360a5436ad799e1d8d93d (tag)
   tagging  67646eef648c64869164053c006f5efdbd358a6f (commit)
 tagged by  Gary V. Vaughan
on  Thu Apr 17 14:44:09 2008 -0400

- Log -
automake_1-4

Alexandre Oliva (120):
  * demo/Makefile.am (objdir): there are no longer quotes around
  * libtool.m4 (CFLAGS): check whether -belf is needed on SCO, as
  * autogen: new script; run it to bootstrap libtool after checking
  * AUTHORS: added myself as a co-maintainer
  * ltmain.in (libobj): default value must not contain directory
  added a few extra headers for gnus
  * ltmain.in: correctly create libraries and programs with
  thou shalt not commit before make check :-)
  added a suggestion of how to create shared libraries with undefined 
symbols
  * THANKS: Added Eric Estievenart
  * ltconfig.in (need_locks): if neither `-c -o' nor hard links are
  * THANKS: Added Marc J. Fraioli
  * ltconfig.in (compiler_o_lo): check whether we can write directly
  * ltconfig.in (hardcode_minus_L): Revert Ian's patch for
  * libtool.m4 (sco): fix typo
  * ltconfig.in: On AIX, don't treat GNU ld specially.
  1998-11-04  Alexandre Oliva  [EMAIL PROTECTED]
  * THANKS: Added Thomas Tanner and Gary V. Vaughan
  moved from aix to c++
  fixed
  installed
  * ltconfig.in: add --falback-echo, to be used if everything else
  * sh.test (test X): ensure that the double-quote supposed to be
  * ltconfig.in (sunos*, sympat, symxfrm): remove underscore
  * ltconfig.in: make use of '~' field separator in reload_cmds,
  * NEWS: updated
  * ltmain.in (IFS): revert Gary's patch when parsing version
  * NEWS: Mention -export-symbols and new dlpreopen
  * PORTING: Porting instructions are in the libtool manual already
  * ltmain.in (C_compiler): copy $CC before it is overwritten with
  * NEWS: -module and libtldl
  * ltmain.in (output_objdir): compute it from $output, not $arg
  * ltmain.in (installed): new variable defined within a .la file,
  * ltmain.in (installed): new variable defined within a .la file,
  * ltconfig.in (echo_test_string): the whole ltconfig script was
  * ltmain.in: missing `test' between `' and `$module'
  * mdemo/Makefile.am (hell_debug_LDFLAGS): -dlpreopen - -dlopen
  added message with -export-symbols syntax for various platforms
  * ltconfig.in (archive_cmds, osf3, osf4, solaris, sunos4): create
  * libltdl/ltdl.c: replace NULL with 0, so that we don't depend on
  * doc/PLATFORMS: updated last-tested release for platforms I've
  * ltconfig.in (echo): avoid shell error messages when we're
  * libtool.spec (URL): point to www.gnu.org
  Initial revision
  imported from autoconf CVS tree
  * ltconfig.in (solaris): do not use $CC for linking if GNU ld is
  * Makefile.am (mdemo_distfiles): libfoo[12].sym no longer exist
  * libtool.m4 (ac_cv_sys_symbol_underscore): `test a == b' doesn't
  * doc/libtool.texi (author): listed all the AUTHORS
  * configure.in: we no longer use PRCS
  C++ problems are documented
  * ltmain.in (convenience, deplibs): propagate dependencies
  * PORTING: removed the text Akim Demaille converted to .texi
  * configure.in (AC_CONFIG_SUBDIRS): added libltdl
  * ltmain.in (-DSTATIC): changed to -DLIBTOOL_STATIC, and defined
  * tests/Makefile.am (EXTRA_DIST): remove ltdl-*.test
  * demo/configure.in (BINARY_HELLDL): test whether dlopen is
  * libltdl/configure.in (stdlib.h, unistd.h, stdio.h): check
  * libltdl/Makefile.am (EXTRA_DIST): removed, nothing needed
  * THANKS: added Stephan Kulow; removed Gary V. Vaughan and Thomas
  * NEWS: Added Thomas Tanner and Gary V. Vaughan to the list of new
  * ltmain.in (-force-static, force_static): removed
  new file
  * Makefile.am (cvs-dist): our release tags are in lower case
  reverted addition of depdemo; it's completely unusable yet :-(
  * NEWS, configure.in, libtool.spec: Bumped to 1.2d for release
  missing colon at EOL
  cvs-dist: missing quotes in sed command
  * NEWS, configure.in, libtool.spec: Bumped to 1.2e for CVS
  * Makefile.am (SUBDIRS): prepend `.' to avoid am-recursive
  * libltdl/Makefile.am: install libltdl conditionally...
  * libltdl/Makefile.am: install libltdl conditionally...
  * ltmain.in (SP2NL, NL2SP): use `tr' magic to avoid passing very
  * ltconfig.in (cygwin, archive_cmds, archive_sym_cmds): Moved
  * ltmain.in (SP2NL, NL2SP): Don't delete empty lines, as this
  * ltmain.in (libobjs_save, oldobjs): when building an
  * libltdl

[SCM] GNU Libtool annotated tag, release-1-2d, created. release-1-2d

2008-04-19 Thread Alexandre Oliva
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project GNU Libtool.

The annotated tag, release-1-2d has been created
at  409998bf99ad50e9bae46861d272f50e5921021f (tag)
   tagging  bf8a4660a3a417893ca1879dee42f5b9dfef531e (commit)
 tagged by  Gary V. Vaughan
on  Thu Apr 17 14:46:03 2008 -0400

- Log -
1.2d

Alexandre Oliva (68):
  * demo/Makefile.am (objdir): there are no longer quotes around
  * libtool.m4 (CFLAGS): check whether -belf is needed on SCO, as
  * autogen: new script; run it to bootstrap libtool after checking
  * AUTHORS: added myself as a co-maintainer
  * ltmain.in (libobj): default value must not contain directory
  added a few extra headers for gnus
  * ltmain.in: correctly create libraries and programs with
  thou shalt not commit before make check :-)
  added a suggestion of how to create shared libraries with undefined 
symbols
  * THANKS: Added Eric Estievenart
  * ltconfig.in (need_locks): if neither `-c -o' nor hard links are
  * THANKS: Added Marc J. Fraioli
  * ltconfig.in (compiler_o_lo): check whether we can write directly
  * ltconfig.in (hardcode_minus_L): Revert Ian's patch for
  * libtool.m4 (sco): fix typo
  * ltconfig.in: On AIX, don't treat GNU ld specially.
  1998-11-04  Alexandre Oliva  [EMAIL PROTECTED]
  * THANKS: Added Thomas Tanner and Gary V. Vaughan
  moved from aix to c++
  fixed
  installed
  * ltconfig.in: add --falback-echo, to be used if everything else
  * sh.test (test X): ensure that the double-quote supposed to be
  * ltconfig.in (sunos*, sympat, symxfrm): remove underscore
  * ltconfig.in: make use of '~' field separator in reload_cmds,
  * NEWS: updated
  * ltmain.in (IFS): revert Gary's patch when parsing version
  * NEWS: Mention -export-symbols and new dlpreopen
  * PORTING: Porting instructions are in the libtool manual already
  * ltmain.in (C_compiler): copy $CC before it is overwritten with
  * NEWS: -module and libtldl
  * ltmain.in (output_objdir): compute it from $output, not $arg
  * ltmain.in (installed): new variable defined within a .la file,
  * ltmain.in (installed): new variable defined within a .la file,
  * ltconfig.in (echo_test_string): the whole ltconfig script was
  * ltmain.in: missing `test' between `' and `$module'
  * mdemo/Makefile.am (hell_debug_LDFLAGS): -dlpreopen - -dlopen
  added message with -export-symbols syntax for various platforms
  * ltconfig.in (archive_cmds, osf3, osf4, solaris, sunos4): create
  * libltdl/ltdl.c: replace NULL with 0, so that we don't depend on
  * doc/PLATFORMS: updated last-tested release for platforms I've
  * ltconfig.in (echo): avoid shell error messages when we're
  * libtool.spec (URL): point to www.gnu.org
  Initial revision
  imported from autoconf CVS tree
  * ltconfig.in (solaris): do not use $CC for linking if GNU ld is
  * Makefile.am (mdemo_distfiles): libfoo[12].sym no longer exist
  * libtool.m4 (ac_cv_sys_symbol_underscore): `test a == b' doesn't
  * doc/libtool.texi (author): listed all the AUTHORS
  * configure.in: we no longer use PRCS
  C++ problems are documented
  * ltmain.in (convenience, deplibs): propagate dependencies
  * PORTING: removed the text Akim Demaille converted to .texi
  * configure.in (AC_CONFIG_SUBDIRS): added libltdl
  * ltmain.in (-DSTATIC): changed to -DLIBTOOL_STATIC, and defined
  * tests/Makefile.am (EXTRA_DIST): remove ltdl-*.test
  * demo/configure.in (BINARY_HELLDL): test whether dlopen is
  * libltdl/configure.in (stdlib.h, unistd.h, stdio.h): check
  * libltdl/Makefile.am (EXTRA_DIST): removed, nothing needed
  * THANKS: added Stephan Kulow; removed Gary V. Vaughan and Thomas
  * NEWS: Added Thomas Tanner and Gary V. Vaughan to the list of new
  * ltmain.in (-force-static, force_static): removed
  new file
  * Makefile.am (cvs-dist): our release tags are in lower case
  reverted addition of depdemo; it's completely unusable yet :-(
  * NEWS, configure.in, libtool.spec: Bumped to 1.2d for release
  missing colon at EOL
  cvs-dist: missing quotes in sed command

Bruno Haible (1):
  * doc/libtool.texi (Tested platforms): broken `sed' programs

David Heine (1):
  * ltmain.in (pass_all): actively pass the flags

Eric Estievenart (2):
  * ltmain.in (output_obj): typo
  * doc/libtool.texi (Compile mode): Document that -o is fully

Gary V. Vaughan (9):
  Fixed archive_cmd for cygwin32, mingw32, aix3 and aix4.
  Added LD path canonicalization.
  require AC_CANONICAL_HOST for path canonicalization
  Test for leading underscore on compiled symbols at configure time

[SCM] GNU Libtool annotated tag, release-1-2f, created. release-1-2f

2008-04-19 Thread Alexandre Oliva
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project GNU Libtool.

The annotated tag, release-1-2f has been created
at  0d247ae6c56d33ecc663114b824c56a67049627f (tag)
   tagging  d6b6c13f5b8ece8a1bad355637d65fc1a41aa64d (commit)
 tagged by  Gary V. Vaughan
on  Thu Apr 17 13:38:36 2008 -0400

- Log -
1.2f

Alexandre Oliva (296):
  * demo/Makefile.am (objdir): there are no longer quotes around
  * libtool.m4 (CFLAGS): check whether -belf is needed on SCO, as
  * autogen: new script; run it to bootstrap libtool after checking
  * AUTHORS: added myself as a co-maintainer
  * ltmain.in (libobj): default value must not contain directory
  added a few extra headers for gnus
  * ltmain.in: correctly create libraries and programs with
  thou shalt not commit before make check :-)
  added a suggestion of how to create shared libraries with undefined 
symbols
  * THANKS: Added Eric Estievenart
  * ltconfig.in (need_locks): if neither `-c -o' nor hard links are
  * THANKS: Added Marc J. Fraioli
  * ltconfig.in (compiler_o_lo): check whether we can write directly
  * ltconfig.in (hardcode_minus_L): Revert Ian's patch for
  * libtool.m4 (sco): fix typo
  * ltconfig.in: On AIX, don't treat GNU ld specially.
  1998-11-04  Alexandre Oliva  [EMAIL PROTECTED]
  * THANKS: Added Thomas Tanner and Gary V. Vaughan
  moved from aix to c++
  fixed
  installed
  * ltconfig.in: add --falback-echo, to be used if everything else
  * sh.test (test X): ensure that the double-quote supposed to be
  * ltconfig.in (sunos*, sympat, symxfrm): remove underscore
  * ltconfig.in: make use of '~' field separator in reload_cmds,
  * NEWS: updated
  * ltmain.in (IFS): revert Gary's patch when parsing version
  * NEWS: Mention -export-symbols and new dlpreopen
  * PORTING: Porting instructions are in the libtool manual already
  * ltmain.in (C_compiler): copy $CC before it is overwritten with
  * NEWS: -module and libtldl
  * ltmain.in (output_objdir): compute it from $output, not $arg
  * ltmain.in (installed): new variable defined within a .la file,
  * ltmain.in (installed): new variable defined within a .la file,
  * ltconfig.in (echo_test_string): the whole ltconfig script was
  * ltmain.in: missing `test' between `' and `$module'
  * mdemo/Makefile.am (hell_debug_LDFLAGS): -dlpreopen - -dlopen
  added message with -export-symbols syntax for various platforms
  * ltconfig.in (archive_cmds, osf3, osf4, solaris, sunos4): create
  * libltdl/ltdl.c: replace NULL with 0, so that we don't depend on
  * doc/PLATFORMS: updated last-tested release for platforms I've
  * ltconfig.in (echo): avoid shell error messages when we're
  * libtool.spec (URL): point to www.gnu.org
  Initial revision
  imported from autoconf CVS tree
  * ltconfig.in (solaris): do not use $CC for linking if GNU ld is
  * Makefile.am (mdemo_distfiles): libfoo[12].sym no longer exist
  * libtool.m4 (ac_cv_sys_symbol_underscore): `test a == b' doesn't
  * doc/libtool.texi (author): listed all the AUTHORS
  * configure.in: we no longer use PRCS
  C++ problems are documented
  * ltmain.in (convenience, deplibs): propagate dependencies
  * PORTING: removed the text Akim Demaille converted to .texi
  * configure.in (AC_CONFIG_SUBDIRS): added libltdl
  * ltmain.in (-DSTATIC): changed to -DLIBTOOL_STATIC, and defined
  * tests/Makefile.am (EXTRA_DIST): remove ltdl-*.test
  * demo/configure.in (BINARY_HELLDL): test whether dlopen is
  * libltdl/configure.in (stdlib.h, unistd.h, stdio.h): check
  * libltdl/Makefile.am (EXTRA_DIST): removed, nothing needed
  * THANKS: added Stephan Kulow; removed Gary V. Vaughan and Thomas
  * NEWS: Added Thomas Tanner and Gary V. Vaughan to the list of new
  * ltmain.in (-force-static, force_static): removed
  new file
  * Makefile.am (cvs-dist): our release tags are in lower case
  reverted addition of depdemo; it's completely unusable yet :-(
  * NEWS, configure.in, libtool.spec: Bumped to 1.2d for release
  missing colon at EOL
  cvs-dist: missing quotes in sed command
  * NEWS, configure.in, libtool.spec: Bumped to 1.2e for CVS
  * Makefile.am (SUBDIRS): prepend `.' to avoid am-recursive
  * libltdl/Makefile.am: install libltdl conditionally...
  * libltdl/Makefile.am: install libltdl conditionally...
  * ltmain.in (SP2NL, NL2SP): use `tr' magic to avoid passing very
  * ltconfig.in (cygwin, archive_cmds, archive_sym_cmds): Moved
  * ltmain.in (SP2NL, NL2SP): Don't delete empty lines, as this
  * ltmain.in (libobjs_save, oldobjs): when building an
  * libltdl/ltdl.c

[SCM] GNU Libtool annotated tag, release-1-3-2, created. release-1-3-2

2008-04-19 Thread Alexandre Oliva
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project GNU Libtool.

The annotated tag, release-1-3-2 has been created
at  1e0311748fd84597e697ace06c79d99110321119 (tag)
   tagging  97087392045d12b18115a5de72c1ac11de418d73 (commit)
 tagged by  Gary V. Vaughan
on  Thu Apr 17 13:35:20 2008 -0400

- Log -
1.3.2

Alexandre Oliva (400):
  * demo/Makefile.am (objdir): there are no longer quotes around
  * libtool.m4 (CFLAGS): check whether -belf is needed on SCO, as
  * autogen: new script; run it to bootstrap libtool after checking
  * AUTHORS: added myself as a co-maintainer
  * ltmain.in (libobj): default value must not contain directory
  added a few extra headers for gnus
  * ltmain.in: correctly create libraries and programs with
  thou shalt not commit before make check :-)
  added a suggestion of how to create shared libraries with undefined 
symbols
  * THANKS: Added Eric Estievenart
  * ltconfig.in (need_locks): if neither `-c -o' nor hard links are
  * THANKS: Added Marc J. Fraioli
  * ltconfig.in (compiler_o_lo): check whether we can write directly
  * ltconfig.in (hardcode_minus_L): Revert Ian's patch for
  * libtool.m4 (sco): fix typo
  * ltconfig.in: On AIX, don't treat GNU ld specially.
  1998-11-04  Alexandre Oliva  [EMAIL PROTECTED]
  * THANKS: Added Thomas Tanner and Gary V. Vaughan
  moved from aix to c++
  fixed
  installed
  * ltconfig.in: add --falback-echo, to be used if everything else
  * sh.test (test X): ensure that the double-quote supposed to be
  * ltconfig.in (sunos*, sympat, symxfrm): remove underscore
  * ltconfig.in: make use of '~' field separator in reload_cmds,
  * NEWS: updated
  * ltmain.in (IFS): revert Gary's patch when parsing version
  * NEWS: Mention -export-symbols and new dlpreopen
  * PORTING: Porting instructions are in the libtool manual already
  * ltmain.in (C_compiler): copy $CC before it is overwritten with
  * NEWS: -module and libtldl
  * ltmain.in (output_objdir): compute it from $output, not $arg
  * ltmain.in (installed): new variable defined within a .la file,
  * ltmain.in (installed): new variable defined within a .la file,
  * ltconfig.in (echo_test_string): the whole ltconfig script was
  * ltmain.in: missing `test' between `' and `$module'
  * mdemo/Makefile.am (hell_debug_LDFLAGS): -dlpreopen - -dlopen
  added message with -export-symbols syntax for various platforms
  * ltconfig.in (archive_cmds, osf3, osf4, solaris, sunos4): create
  * libltdl/ltdl.c: replace NULL with 0, so that we don't depend on
  * doc/PLATFORMS: updated last-tested release for platforms I've
  * ltconfig.in (echo): avoid shell error messages when we're
  * libtool.spec (URL): point to www.gnu.org
  Initial revision
  imported from autoconf CVS tree
  * ltconfig.in (solaris): do not use $CC for linking if GNU ld is
  * Makefile.am (mdemo_distfiles): libfoo[12].sym no longer exist
  * libtool.m4 (ac_cv_sys_symbol_underscore): `test a == b' doesn't
  * doc/libtool.texi (author): listed all the AUTHORS
  * configure.in: we no longer use PRCS
  C++ problems are documented
  * ltmain.in (convenience, deplibs): propagate dependencies
  * PORTING: removed the text Akim Demaille converted to .texi
  * configure.in (AC_CONFIG_SUBDIRS): added libltdl
  * ltmain.in (-DSTATIC): changed to -DLIBTOOL_STATIC, and defined
  * tests/Makefile.am (EXTRA_DIST): remove ltdl-*.test
  * demo/configure.in (BINARY_HELLDL): test whether dlopen is
  * libltdl/configure.in (stdlib.h, unistd.h, stdio.h): check
  * libltdl/Makefile.am (EXTRA_DIST): removed, nothing needed
  * THANKS: added Stephan Kulow; removed Gary V. Vaughan and Thomas
  * NEWS: Added Thomas Tanner and Gary V. Vaughan to the list of new
  * ltmain.in (-force-static, force_static): removed
  new file
  * Makefile.am (cvs-dist): our release tags are in lower case
  reverted addition of depdemo; it's completely unusable yet :-(
  * NEWS, configure.in, libtool.spec: Bumped to 1.2d for release
  missing colon at EOL
  cvs-dist: missing quotes in sed command
  * NEWS, configure.in, libtool.spec: Bumped to 1.2e for CVS
  * Makefile.am (SUBDIRS): prepend `.' to avoid am-recursive
  * libltdl/Makefile.am: install libltdl conditionally...
  * libltdl/Makefile.am: install libltdl conditionally...
  * ltmain.in (SP2NL, NL2SP): use `tr' magic to avoid passing very
  * ltconfig.in (cygwin, archive_cmds, archive_sym_cmds): Moved
  * ltmain.in (SP2NL, NL2SP): Don't delete empty lines, as this
  * ltmain.in (libobjs_save, oldobjs): when building an
  * libltdl/ltdl.c

Re: libtool 1.5 -static and installed libraries

2005-09-09 Thread Alexandre Oliva
On Sep  8, 2005, Howard Chu [EMAIL PROTECTED] wrote:

 Ralf Wildenhues wrote:
 Well, that behavior would be fine to me (and it would mean no changes to
 the code, which is good!), but would not match our current
 documentation:
 | @item -static
 | If @var{output-file} is a program, then do not link it against any
 | uninstalled shared libtool libraries.  If @var{output-file} is a
 | library, then only create a static library.
 AFAICS this has always been part of the documentation.

 Indeed. And in libtool 1.4 (at least versions 1.4.2 and 1.4.3) the
 behavior matched the documentation.

Yuck.  I didn't know that.  I guess I'll have to take that back, and
agree it is a regression.

 If you want to link with static versions of uninstalled libraries,
 that's relatively easy to accomplish: create a static-only version of
 such libraries, with different names, perhaps even as convenience
 archives, and link with them.  Then you won't have to use -static for
 linking, and this will take care of getting the shared version of
 libdb linked in.

 Tell me there's a libtool switch that does this for me and I may be OK
 with it.

To create the convenienec archive, do exactly as you say below and
you'll get a convenience archive only.  As long as you don't add a
`-rpath' argument, that is.

 But right now we create a library with
   libtool --mode=link -o libfoo.la $(OBJS)
 and libtool decides what to name the shared and static libraries that
 it creates. If there is no libtool switch to provide the behavior you
 suggest then I think your suggestion is unreasonable.

-- 
Alexandre Oliva http://www.lsd.ic.unicamp.br/~oliva/
Red Hat Compiler Engineer   [EMAIL PROTECTED], gcc.gnu.org}
Free Software Evangelist  [EMAIL PROTECTED], gnu.org}


___
http://lists.gnu.org/mailman/listinfo/libtool


Re: Libtool API suggestion: LTDL_SHLIB_PRE and/or char* ltdl_map_shared_name(const char* name)

2005-09-08 Thread Alexandre Oliva
On Aug 23, 2005, Albert Chin [EMAIL PROTECTED] wrote:

 [2] ltdl.c from HEAD:
 812   if (strncmp(p, -l, 2) == 0)
 813 {
 814   size_t name_len = 3+ /* lib */ LT_STRLEN (p
 + 2);
 815   name = MALLOC (char, 1+ name_len);
 816   if (name)
 817 sprintf (name, lib%s, p+2);
 818 }

 From inspection, this appears wrong. It doesn't honor
 $need_lib_prefix.

I don't think it should.  need_lib_prefix refers to whether dlopen et
al support loading libraries that don't start with lib.  It's
unrelated with what the linker (ld, not ld.so) does with `-lname' to
find the library to link with, which is what ltdl.c is trying to do
here.  Prepending lib unconditionally here is the right thing to do,
unless the linker actually does something different.  I don't know of
any linker that searches for say foo.a when given -lfoo.

-- 
Alexandre Oliva http://www.lsd.ic.unicamp.br/~oliva/
Red Hat Compiler Engineer   [EMAIL PROTECTED], gcc.gnu.org}
Free Software Evangelist  [EMAIL PROTECTED], gnu.org}


___
http://lists.gnu.org/mailman/listinfo/libtool


Re: libtool 1.5 -static and installed libraries

2005-09-08 Thread Alexandre Oliva
On Aug 29, 2005, Ralf Wildenhues [EMAIL PROTECTED] wrote:

 Hi Howard, Alexandre, others,
 * Howard Chu wrote on Sun, Aug 28, 2005 at 10:19:03PM CEST:

 By default we link with -static so 
 that our local libtool-generated libraries get statically linked. But we 
 don't use -all-static; we don't want to alter the default linking for 
 system-installed libraries.

 OK.

AFAIK, -static and -all-static are not supposed to distinguish
installed from non-installed libraries.  -all-static means, do not,
ever, link in a shared library.  -static means just prefer static
libraries, but if one library is not available in static form, go
ahead with the dynamic version instead.  And this is exactly the
behavior you're getting.

If you want to link with static versions of uninstalled libraries,
that's relatively easy to accomplish: create a static-only version of
such libraries, with different names, perhaps even as convenience
archives, and link with them.  Then you won't have to use -static for
linking, and this will take care of getting the shared version of
libdb linked in.

-- 
Alexandre Oliva http://www.lsd.ic.unicamp.br/~oliva/
Red Hat Compiler Engineer   [EMAIL PROTECTED], gcc.gnu.org}
Free Software Evangelist  [EMAIL PROTECTED], gnu.org}


___
http://lists.gnu.org/mailman/listinfo/libtool


Re: 1.5 release

2005-04-23 Thread Alexandre Oliva
On Apr 23, 2005, Ralf Wildenhues [EMAIL PROTECTED] wrote:

 -New in 1.5.15a: 2005-??-??; CVS version 1.5.15a, Libtool team:
 +New in 1.5.16: 2005-04-23; CVS version 1.5.15a, Libtool team:

Erhm...  If this is going out soon, could we perhaps get the patch I
posted for libtool.m4 in, to avoid configuring CXX and F77 in every
single libtool script, part of packages that only care about C?

For reference:

Index: ChangeLog
from  Alexandre Oliva  [EMAIL PROTECTED]

	* libtool.m4 (_LT_AC_TAGCONFIG): Don't bring in CXX and F77 unless
	the corresponding AC_PROG_ macro was provided.

Index: libtool.m4
===
RCS file: /cvsroot/libtool/libtool/Attic/libtool.m4,v
retrieving revision 1.314.2.81
diff -u -p -r1.314.2.81 libtool.m4
--- libtool.m4 15 Apr 2005 14:40:09 - 1.314.2.81
+++ libtool.m4 17 Apr 2005 04:49:36 -
@@ -1701,6 +1701,7 @@ if test -f $ltmain  test -n $tagnam
   echo appending configuration tag \$tagname\ to $ofile
 
   case $tagname in
+AC_PROVIDE_IFELSE([AC_PROG_CXX],[
   CXX)
 	if test -n $CXX  ( test X$CXX != Xno 
 	( (test X$CXX = Xg++  `g++ -v /dev/null 21` ) ||
@@ -1711,6 +1712,8 @@ if test -f $ltmain  test -n $tagnam
 	fi
 	;;
 
+])dnl
+AC_PROVIDE_IFELSE([AC_PROG_F77],[
   F77)
 	if test -n $F77  test X$F77 != Xno; then
 	  AC_LIBTOOL_LANG_F77_CONFIG
@@ -1719,6 +1722,7 @@ if test -f $ltmain  test -n $tagnam
 	fi
 	;;
 
+])dnl
   GCJ)
 	if test -n $GCJ  test X$GCJ != Xno; then
 	  AC_LIBTOOL_LANG_GCJ_CONFIG

-- 
Alexandre Oliva http://www.ic.unicamp.br/~oliva/
Red Hat Compiler Engineer   [EMAIL PROTECTED], gcc.gnu.org}
Free Software Evangelist  [EMAIL PROTECTED], gnu.org}


don't force CXX and F77 to be configured in

2005-04-17 Thread Alexandre Oliva
Currently, at least in the 1.5 branch, a configure.ac as simple as:



configure.ac
Description: Binary data

causes libtool to be configured for CXX and F77, in addition to the
implicitly requested CC tag.

That's caused by an undesirable interaction between _LT_AC_TAGCONFIG
and the code that detects whether AC_PROG_{CXX,F77} were used:
_LT_AC_TAGCONFIG expands unconditionally macros that AC_REQUIRE
AC_PROG_CXX and AC_PROG_F77, such that the test whether they are
provided always results positive.

This patch avoids expanding the AC_REQUIREing macros if they haven't
been explicitly brought in before, using the same logic as the
existing test, thereby fixing the problem.  Ok to install?


Incidentally, I noticed that, even after the fix, adding AC_PROG_CXX
or AC_PROG_F77 after AC_PROG_LIBTOOL doesn't trigger the autoconf
AC_BEFORE error I expected; it instead now causes a configure-time
error because the CXX and F77 sections of _LT_AC_TAGCONFIG are
missing.  I wish we could do better than this, but I couldn't quite
figure out how.


(Ralf, thanks for picking up the patch I posted a couple of weeks ago,
and sorry for not completing the work before noticing you'd already
done it :-)

Index: ChangeLog
from  Alexandre Oliva  [EMAIL PROTECTED]

	* libtool.m4 (_LT_AC_TAGCONFIG): Don't bring in CXX and F77 unless
	the corresponding AC_PROG_ macro was provided.

Index: libtool.m4
===
RCS file: /cvsroot/libtool/libtool/Attic/libtool.m4,v
retrieving revision 1.314.2.81
diff -u -p -r1.314.2.81 libtool.m4
--- libtool.m4 15 Apr 2005 14:40:09 - 1.314.2.81
+++ libtool.m4 17 Apr 2005 04:49:36 -
@@ -1701,6 +1701,7 @@ if test -f $ltmain  test -n $tagnam
   echo appending configuration tag \$tagname\ to $ofile
 
   case $tagname in
+AC_PROVIDE_IFELSE([AC_PROG_CXX],[
   CXX)
 	if test -n $CXX  ( test X$CXX != Xno 
 	( (test X$CXX = Xg++  `g++ -v /dev/null 21` ) ||
@@ -1711,6 +1712,8 @@ if test -f $ltmain  test -n $tagnam
 	fi
 	;;
 
+])dnl
+AC_PROVIDE_IFELSE([AC_PROG_F77],[
   F77)
 	if test -n $F77  test X$F77 != Xno; then
 	  AC_LIBTOOL_LANG_F77_CONFIG
@@ -1719,6 +1722,7 @@ if test -f $ltmain  test -n $tagnam
 	fi
 	;;
 
+])dnl
   GCJ)
 	if test -n $GCJ  test X$GCJ != Xno; then
 	  AC_LIBTOOL_LANG_GCJ_CONFIG

-- 
Alexandre Oliva http://www.ic.unicamp.br/~oliva/
Red Hat Compiler Engineer   [EMAIL PROTECTED], gcc.gnu.org}
Free Software Evangelist  [EMAIL PROTECTED], gnu.org}


Re: CC can be a program name *with arguments*

2005-03-03 Thread Alexandre Oliva
On Mar  3, 2005, Bob Friesenhahn [EMAIL PROTECTED] wrote:

 In making this decision, we must consider what existing Automake
 does. If it searches for installed libtool by looking for a 'libtool'
 program in the path, then there will be problems.

Automake uses libtool the way it was designed to be used, namely,
using the script created by the configure script of the package being
built.

-- 
Alexandre Oliva http://www.ic.unicamp.br/~oliva/
Red Hat Compiler Engineer   [EMAIL PROTECTED], gcc.gnu.org}
Free Software Evangelist  [EMAIL PROTECTED], gnu.org}




Re: fallback-echo, finding a suitable $ECHO

2005-01-29 Thread Alexandre Oliva
On Jan 27, 2005, Ralf Wildenhues [EMAIL PROTECTED] wrote:

 Which systems do actually need libtool's --fallback-echo?

Probably ones that didn't support shell functions either.  I don't
recall exactly which systems required --fallback-echo, but I do recall
it was added for a very good reason, given how disgusting it is :-)

Since we've now moved on to better systems, supporting shell functions
and all, we might as well give libtool a new try without this gunk and
see how it goes.  Failing that, a shell function might be good enough,
although the fact that not even bash gets it right in some cases
doesn't exactly give me a warm fuzzy feeling about this construct :-)

 func_fallback_echo ()
 {
 # Without the eval, Bourne shells create the here doc at definition time.
 eval 'cat _LT_EOF
 $*
 _LT_EOF
 '
 : # work around bash bug
 }

-- 
Alexandre Oliva http://www.ic.unicamp.br/~oliva/
Red Hat Compiler Engineer   [EMAIL PROTECTED], gcc.gnu.org}
Free Software Evangelist  [EMAIL PROTECTED], gnu.org}


___
http://lists.gnu.org/mailman/listinfo/libtool


Re: Understanding -static

2005-01-29 Thread Alexandre Oliva
On Jan  5, 2005, Akim Demaille [EMAIL PROTECTED] wrote:

 Le 4 janv. 05,  00:02, Peter O'Gorman a crit :

 I have no idea what is supposed to happen in this situation. You have
 specified that static libraries should not be built and also asked that
 executables be statically linked against not-yet-installed libraries.

 Right.

Note quite.  -static, for libtool, doesn't mean `reject any dynamic
libraries', it just means `prefer static libraries over dynamic
ones'.  Yes, it's different from what compilers and linkers have done
for -static historically, but it was deemed more useful to implement
it this way.  If you really, really, absolutely need a static
executable, use -all-static.  This should get the link to fail should
a library only be available in dynamic form, or the system reject
static binaries altogether.

 Right.  But linking statically a dynamic library doesn't sound
 absurd to me (but I may be naive here).

It sounds absurd to me, FWIW :-)

 At least, it works fine on GNU/Linux.

Are you sure?

-- 
Alexandre Oliva http://www.ic.unicamp.br/~oliva/
Red Hat Compiler Engineer   [EMAIL PROTECTED], gcc.gnu.org}
Free Software Evangelist  [EMAIL PROTECTED], gnu.org}


___
http://lists.gnu.org/mailman/listinfo/libtool


Re: RFC: proposal for indirect deplibs

2004-12-22 Thread Alexandre Oliva
On Nov 24, 2004, Ralf Wildenhues [EMAIL PROTECTED] wrote:

 On the other hand, on systems without a needed-following linker, it is
 necessary to explicitly list all dependent libraries.

It's a bit more complicated than this, actually.  Some linkers are
smart enough to look for dependencies, but they look for them in
different directories than those listed in -L.  GNU ld, for example,
looks for DT_NEEDED libs in -rpath-link, so unless you pass
-rpath-link for the needed libs, linking might pick up an old version
of a library that happens to be in say /usr/lib.  However, if you link
the lib in explicitly with -l, then it finds it in the -L-specified
search path.  If you build and install libs in multiple dirs, this can
get you into a very confusing situation, unless libtool takes care of
issuing the corresponding -rpath-link flags.

Also, the encoding of dependent libraries is only possible in dynamic
libraries, so you have to know with 100% of certainty whether the
linker is going to link a library statically or dynamically.  This
means taking flags such as -Bstatic and -Bdynamic into account,
otherwise you may end up refraining from linking in the dependencies
of a libtool library because you know the linker will, but then the
linker ends up using the static library, and then your assumption
falls apart.

Personally, I'd rather not attempt to second-guess the linker, and
instead use the --as-needed flag newly-added to GNU ld to implement
the libtool semantics you suggest, or perhaps even use --as-needed by
default whenever it's available.  This would require some portability
checking on whether dynamic loaders can actually handle inter-library
dependencies properly.  We can probably assume GNU/Linux dynamic
loaders do, but I wouldn't assume the same for other OSs, particularly
non-ELF ones.

-- 
Alexandre Oliva http://www.ic.unicamp.br/~oliva/
Red Hat Compiler Engineer   [EMAIL PROTECTED], gcc.gnu.org}
Free Software Evangelist  [EMAIL PROTECTED], gnu.org}


___
http://lists.gnu.org/mailman/listinfo/libtool


Re: Installed libstdc++.la depends on GCC build directory

2004-09-11 Thread Alexandre Oliva
On Sep  8, 2004, Bob Friesenhahn [EMAIL PROTECTED] wrote:

 After installing GCC 3.4.2 today, I see that it still suffers from a
 libtool bug which may upset builds unless the GCC build directory is
 removed.  I have reported this bug to the GCC bug tracking system:

It's not exactly a bug.  The problem is that libtool can't tell that
some directory needed to bring in dep libs is to be used only at build
time.  We need some mechanism to tell libtool to strip certain
directories from the installable .la file, something like -option
/dir, that would omit options such as -L/dir and -L/dir/* specified in
the command line into the build-time .la file, but not into the
installable one.

I suspect this problem affects many packages that rely on libtool's
ability to resolve libtool dep libs given as -Ldir -lib, instead of as
dir/libib.la.

This happens to be a security issue, since if the build tree is
removed and anyone can recreate the same tree (think
/tmp/build/gcc/...), all you have to do is create some libraries with
carefully-chosen names in there and wait for someone to link a C++
program using libtool and run it.

-- 
Alexandre Oliva http://www.ic.unicamp.br/~oliva/
Red Hat Compiler Engineer   [EMAIL PROTECTED], gcc.gnu.org}
Free Software Evangelist  [EMAIL PROTECTED], gnu.org}


___
Libtool mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/libtool


Re: GNU Libtool 1.5.8 released.

2004-09-08 Thread Alexandre Oliva
On Aug 11, 2004, Daniel Reed [EMAIL PROTECTED] wrote:

 On 2004-08-12T09:00+0900, Peter O'Gorman wrote:
 ) Daniel Reed wrote:
 )  On 2004-08-11T10:06+0900, Peter O'Gorman wrote:
 )  ) Daniel Reed wrote:
 )  )   libtool-1.4.2-multilib.patch
 )  )This patch is needed for multilib support.  It has been sent upstream
 )  )but basically rejected in its current form as being too Red Hat specific.
 )  )  [Is this still the case? Is there an alternate solution for this problem, or
 )  )   is .multilib still the only one?]
 ) Thanks for the url. I have to agree with Scott, looks like adding this patch
 ) here would be a bad thing, it may break other linux distros. Someone,
 ) someday, will come up with a generic way of doing this that works on all
 ) flavours of GNU/linux. They don't seem to have done so yet.

 Would it be reasonable to make this a ./configure option at libtool build
 time?

God, no!

It means every package would have to use this option at configure
time, otherwise it wouldn't work.

I think the best we can do is to run something like:

case `$CC $CFLAGS -print-file-name=libc.so || gcc -print-file-name=libc.a` in
# common case, good
*/lib/libc.so | */lib/libc.a) libsuff= ;;
# many 64/32 arches use lib for 32-bit libs and lib64 for 64-bit libs
*/lib64/libc.so | */lib64/libc.a) libsuff=64 ;;
# mips64-linux uses lib32 for N32
*/lib32/libc.so | */lib32/libc.a) libsuff=32 ;;
# Shouldn't happen...  What now?
*) libsuff= ;;
esac


This should probably be amended to match Debian GNU/Linux x86_64
practice.

-- 
Alexandre Oliva http://www.ic.unicamp.br/~oliva/
Red Hat Compiler Engineer   [EMAIL PROTECTED], gcc.gnu.org}
Free Software Evangelist  [EMAIL PROTECTED], gnu.org}


___
Libtool mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/libtool


Re: Linking against indirect dependencies

2004-05-29 Thread Alexandre Oliva
On May 28, 2004, Szombathelyi Gyrgy [EMAIL PROTECTED] wrote:

 AFAIK it's possible to link in libdep to libfoo if libdep is static

Depends on the platform.  Some combinations of OSs, ABIs and hardware
architectures don't allow non-PIC in shared libraries.  Yes, several
of the platforms that don't support this are GNU/Linux ports.

Try this on x86_64-linux-gnu, for example.  It won't work, unless you
somehow arrange for libdep.o to not contain any relocations that
aren't PIC.

-- 
Alexandre Oliva http://www.ic.unicamp.br/~oliva/
Red Hat Compiler Engineer   [EMAIL PROTECTED], gcc.gnu.org}
Free Software Evangelist  [EMAIL PROTECTED], gnu.org}


___
Libtool mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/libtool


Re: Linking against indirect dependencies

2004-05-28 Thread Alexandre Oliva
On May 26, 2004, Bob Friesenhahn [EMAIL PROTECTED] wrote:

 It also depends on libtool being 100% accurate in determining if a
 library is a static library or a shared library since static
 libraries don't support library dependencies.

And there's another problem.  When libtool passes -ldependency in the
command line, the linker will look for libdependency in the
directories where it looks for libraries (-L).  If libdependency is
only brought in by another shared library that has it in DT_RPATH,
libdependency will be looked for in the --rpath-link search path, and
it will have to be a shared library, i.e., static libs will be
ignored.

Now consider the following scenario:

- libfoo.la is linked with libdep.la, but libdep.la was PIC and
  static-only.  Both are installed.

- libdep is rebuilt as both static and shared, and reinstalled.

- program links with libfoo.la, using symbols from libdep.la that
  weren't brought into libfoo.la

- libtool sees libdep.la is available as a shared lib, so it drops it
  from the link command.  Link fails because libfoo.so doesn't bring
  in libdep.a.

The only way to avoid this sort of problem would be to annotate
libfoo.la with some indication that libdep.la was static-only at the
time libfoo.la was created, as opposed to attempting to detect what
kind of lib it is at the time libfoo.la is linked into something else.

I.e., for libraries that are built as both dynamic and static, libtool
would have to keep two dependency lists, one for the dynamic version,
and one for the static version, such that the dynamic dependency list
doesn't contain dependencies that are shared libraries.

I think it can be made to work, but it's going to be a significant
amount of work, and there are probably some additional problems that
I haven't thought of.  Risky...

-- 
Alexandre Oliva http://www.ic.unicamp.br/~oliva/
Red Hat Compiler Engineer   [EMAIL PROTECTED], gcc.gnu.org}
Free Software Evangelist  [EMAIL PROTECTED], gnu.org}


___
Libtool mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/libtool


Re: [MAD SCIENCE EXPERIMENT]: Replace some libtool functionality with handcoded C

2003-12-10 Thread Alexandre Oliva
On Dec  9, 2003, Tom Tromey [EMAIL PROTECTED] wrote:

 Alexandre == Alexandre Oliva [EMAIL PROTECTED] writes:
Alexandre the *_OBJECT definitions assume the absence of shell-active
Alexandre characters in filenames, which is probably a safe
Alexandre assumption for Makefiles.

 It isn't unreasonable for a Java .class file's name to contain $.

Oh, but if you look closely at the macros I posted, you'll notice that
this doesn't matter all that much.  As long as the automake- or
hand-generated definition of ofile doesn't contain shell-active
characters (and IIRC automake already takes care of turning them into
underscores), you're fine.

And then, if it does, we need an additional variable set by the rule
preamble that sets a shell-safe version of ofile.  The point here is
to avoid the overhead of having to run ofile through sed to protect it
at build time, when we can do it at Makefile-generation time.

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer [EMAIL PROTECTED], gcc.gnu.org}
CS PhD student at IC-Unicamp[EMAIL PROTECTED], gnu.org}
Free Software EvangelistProfessional serial bug killer


___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool


Re: [MAD SCIENCE EXPERIMENT]: Replace some libtool functionality with handcoded C

2003-12-03 Thread Alexandre Oliva
On Dec  3, 2003, Mohan Embar [EMAIL PROTECTED] wrote:

 I wanted to see how much faster the libgcj build would go if I took
 libtool out of the picture for some of the pieces.

I'm not all that surprised your C program is much faster that the
shell script.  For starters, it fails to support all of libtool's
configure-time options, such as --disable-static, --disable-shared,
--with-pic, as well as their per-compilation equivalent command-line
flags.

That said, even if it supported them all, I do believe there's a lot
of potential for such code.  It has been in libtool's roadmap since
long before I pretty much stopped working on libtool, which was a
while before release 1.5.  There were a number of discussions about
doing in C what we currently do in a slow and unmaintainable shell
script.  Gary V. Vaughan had a small language with a small interpreter
that could reasonably be bundled into a libtool package as a
replacement for ltconfig/ltmain.sh, but we never got as far as
integrating it an actually making the transition.  I suppose if you'd
like to do that, it would be very welcome, since many people
(rightfully) complain about libtool slowing things down, and using a
fast shell with many built ins isn't quite enough to get builds fast.

Back during the GCC summit, Zack Weinberg suggested an alternative
approach that could speed things up: getting the libtool code to
define additional Makefile macros that would enable someone to inline
the libtool calls into the Makefile itself.  We talked a lot about it,
and it seems to me that if we got libtool to define the macros
referenced below and automake to generate them, we could have some
significant speed up by avoiding the need for the shell to at least
parse the entire libtool script for every command.  That said, we
might be able to achieve similarly good results by simply splitting
the several libtool --modes into separate files, that could then be
ran with `.', which would at least minimize parsing.

foo.lo: foo.c
lofile=$@ dir=. ofile=foo.o; \
$(LIBTOOL_BEGIN_COMPILE_CC) FLAGS foo.c \
$(LIBTOOL_END_COMPILE_CC)

given the following possible additional definitions: (yeah, it's ugly,
and I sort of doubt we can get AC_SUBST to portably emit
LIBTOOL_END_COMPILE_CC like the snippet below, but hey!, it *might*
work, even if we have to break it up in smaller pieces to avoid
running into hard-coded limitations of sed substitutions)

LIBTOOL_BEGIN_COMPILE_CC = set fnord \

LIBTOOL_END_COMPILE_CC = ; shift 1; \
  { test -d $$dir/$(libtool_libdir) || \
$(mkdir_p) $$dir/$(libtool_libdir); }  \
  rm -f $$lofileT $$lofile $$dir/$$ofile \
$$dir/$(libtool_libdir)/$$ofile || : ; \
  $(LIBTOOL_COMPILE_CC_PIC) -o $$dir/$(libtool_libdir)/$$ofile \
$${1+$$@}  \
  $(LIBTOOL_COMPILE_CC_NONPIC) -o $$dir/$$ofile $${1+$$@}  \
  { echo pic_object=$(LIBTOOL_PIC_OBJECT); \
echo non_pic_object=$(LIBTOOL_NONPIC_OBJECT); }  $$lofileT  \
  mv $$lofileT $$lofile

mkdir_p = mkdir -p # or $(mkinstalldirs), depending on configure tests

libtool_libdir = .libs # or _libs, depending on configure tests

LIBTOOL_COMPILE_CC_PIC = $(CC) -fPIC -DPIC # or equivalent, or :
LIBTOOL_COMPILE_CC_NONPIC = $(CC) # or : if disable static
LIBTOOL_PIC_OBJECT = $(libtool_libdir)/$$ofile # or none
LIBTOOL_NONPIC_OBJECT = $$ofile # or none

the *_OBJECT definitions assume the absence of shell-active characters
in filenames, which is probably a safe assumption for Makefiles.  In
case libtool configuration finds that $(CC) is not up to e.g. the task
of outputting to object files named in the command line, it just falls
back to running the slow libtool script, with these definitions:

LIBTOOL_BEGIN_CC_COMPILE = $(LIBTOOL) --mode=compile $(CC) -o $$lofile
LIBTOOL_END_CC_COMPILE =


The best news is that we don't really need to modify libtool to play
with these ideas.  We can play with the idea with a new set of
autoconf macros that extracts configuration variables from libtool
with --config and defines the appropriate AC_SUBST variables according
to them, then use custom build rules instead of automake-generated
ones.  If it proves to be a good idea, the macros can be bundled with
libtool, and then automake can gain an option to generate such rules.

It will need a lot of experimenting, and some polishing of the macro
set that I posted above, but I believe you can realize most of the
gains you intend to realize with it, and then you won't be introducing
the need for running yet another program.

Wanna give it a try?

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer [EMAIL PROTECTED], gcc.gnu.org}
CS PhD student at IC-Unicamp[EMAIL PROTECTED], gnu.org}
Free Software EvangelistProfessional serial bug killer


___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool


Re: printing exceptions?

2002-03-15 Thread Alexandre Oliva

On Mar  6, 2002, Tom Tromey [EMAIL PROTECTED] wrote:

 Alexandre == Alexandre Oliva [EMAIL PROTECTED] writes:
Alexandre Actually, I was thinking of libgcj.la being linked with
Alexandre $(THREADLIBS) first, which would solve the problem just the
Alexandre same.

 We already do that:

 libgcj_la_LDFLAGS = -rpath $(toolexeclibdir) $(THREADLIBS) $(LIBLTDL) \
   $(GCLIBS) $(ZLIBS) \

 So something else must be required.

Ok, I see the problem now.  It's indeed a bug in libtool.

Basically, the problem is that libtool sometimes decides it can drop
duplicate -l flags from the command line, when it thinks it is safe to
do so.  Currently, the rules is that, if a library does not explicitly
appear more than once in the dependency list of a library, libtool
assumes there's no problem if it simply discards any previous
occurrences of such a library.  On the other hand, if a library
appears more than once in a dependency list (say, libjava is linked
with -lgcc_s -lc -lgcc_s), libtool considers the duplicate library as
a special library that strongly depends on ordering, and does not move
it.

The problem is that -lpthread ends up being removed from before the
first copy of -lgcc_s, because it is not explicitly duplicated and
thus it's taken as a movable library, while the first copy of -lgcc_s
remains, as it is taken as unmovable.

I don't see an easy way to fix this problem in libtool.  It would
require every unmovable library to establish a barrier such that no
libraries that appear before it can be dropped.  Since every C++
library has -lgcc_s -lc -lgcc_s in its dependency list, this would
defeat the whole purpose of the duplicate-removal of dependencies,
that was an absolute must for large packages with hundreds of
libraries, such as KDE.  Without such an optimization, building KDE
would easily overflow the command line size on most, if not all OSs
(except any one that does not impose fixed limits on command line
sizes), due to exponential explosion of `-lm -lgcc -lc -lgcc' in the
command line.

Ideally, libtool should try to tell whether a library is dynamic or
static in order to decide whether to eliminate all but the first or
all but the last duplicates of -l flags (except for static libraries
marked as special), but I'm not even sure this would be correct.

Anyway, there are several ways to alleviate the impact of this problem
in libjava and GCC.

The simplest solution I could come up with was to drop from the link
command of executables any libraries that were already in the
dependency list of libgcj, so they'd be automatically brought in.
This was enough to fix the problem at hand: now gij is linked with
-lpthread before -lgcc_s, since there's no duplicate of -lpthread
after the first implicit occurrence of -lgcc_s that was brought in
from libgcj.la itself.  The patch that fixes this problem is
attached.

Another possibility that occurred to me, that would further alleviate
the problem of duplicate shared libraries, would be to get GCC to no
longer issue the `-lgcc_s -lc -lgcc_s' sequence, but instead, to use
just `-lgcc_s -lc'.  I believe this would be a perfectly safe thing to
do in the context of a shared -lgcc_s, no?  We'd might still have to
add duplicates for -lgcc and -lgcc_eh, so it might end up not being of
much help.  It's probably worth a shot, though.  Any opposition to my
changing the GCC specs to that effect?

Yet another solution would be to get libtool to recognize libraries
and object files implicitly linked in especially.  It already does
something to that effect, but it still considers duplicate libraries
at such points as special.  Sometimes I think adding the code to peek
into the flags implicitly passed by g++ to the linker was a mistake,
but then I think of how nice it is to be able to link with a libtool
(possibly static) library using `libtool gcc', even if the library
itself contains C++ code and has to be linked with -lstdc++, with the
certainty that libtool will add the -lstdc++ dependency by itself
since it learned about such dependency when looking at the arguments
g++ passed to the linker when creating the original library.  And
then, sometimes libtool just can't use (old versions of) g++ to link
shared libraries, because they're broken, and then it's essential for
it to figure out which flags g++ would pass to the linker, drop those
that would break (such as static libstdc++ that can't be linked into a
shared library) and go with the rest of the args running the linker
directly.

Other libtoolers, any further suggestions as to how to fix this real
libtool bug?

Anyway, here's the patch for libjava.  I'm checking it in mainline and
in the 3.1 branch.  Bootstrapped on athlon-pc-linux-gnu with
--enable-threads, and verified by visual inspection that the link
command line of gij and other libjava executables did contain
-lpthread before -lgcc_s -lc -lgcc_s.



Index: libjava/ChangeLog
from  Alexandre Oliva  [EMAIL PROTECTED]

	* Makefile.am (jv_convert_LDADD): Don't

Re: printing exceptions?

2002-03-15 Thread Alexandre Oliva

On Mar 15, 2002, Richard Henderson [EMAIL PROTECTED] wrote:

 On Fri, Mar 15, 2002 at 07:43:43PM -0300, Alexandre Oliva wrote:
 Another possibility that occurred to me, that would further alleviate
 the problem of duplicate shared libraries, would be to get GCC to no
 longer issue the `-lgcc_s -lc -lgcc_s' sequence, but instead, to use
 just `-lgcc_s -lc'.

 Seems ok.

Yay!  I'll try to implement this in the next few days.

 We'd might still have to add duplicates for -lgcc and -lgcc_eh...

 Not for gcc_eh.  The point of the duplicate is to cater to a libc
 that uses e.g. __divdi3.

More specifically, and static libc that uses __divdi3, since a shared
one would have its own __divdi3, no?

However, I kind of fail to see the point of having -lgcc before -lc.
I understand the idea is to resolve symbols of the program with the
implementations in libgcc, but what if the program doesn't reference a
symbol, but libc does?  Then, we won't get the definition from libgcc,
but rather from libc itself.  Could this ever be a problem?  If not,
why don't we just drop the -lgcc from before -lc and stick with the
one after -lc only?

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software EvangelistProfessional serial bug killer

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: printing exceptions?

2002-03-15 Thread Alexandre Oliva

On Mar 15, 2002, Andreas Schwab [EMAIL PROTECTED] wrote:

 Alexandre Oliva [EMAIL PROTECTED] writes:
 | However, I kind of fail to see the point of having -lgcc before -lc.

 The point of having -lgcc before -lc is that -lgcc can add references to
 -lc functions that were not referenced before.

Oh!  Yes, indeed.  I forgot about that.  Thanks for the reminder.

So, -lgcc -lc -lgcc is indeed one of the special cases that libtool is
going to have to learn to live with.  Perhaps it could learn to treat
them as a unit, though...

Fortunately, libtool only peeks into flags implicitly passed to the
linker in non-C tags, which means we're only going to get -lgcc_s
(because of the implicit -shared-libgcc in g++ and gcj), and things
will Just Work (TM).

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software EvangelistProfessional serial bug killer

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: No static libraries?

2002-03-01 Thread Alexandre Oliva

On Mar  1, 2002, Anthony Green [EMAIL PROTECTED] wrote:

 Libtool isn't building static libraries for my project, although it does
 try to install them (and fail).

What's the exact failure mode (snipped of the make output)?  What does
libtool --features print?  What is in the .la file that it's trying to
install?

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software EvangelistProfessional serial bug killer

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: PATCH: Fix libtool to support Linux/mips

2002-02-07 Thread Alexandre Oliva

On Feb  7, 2002, H . J . Lu [EMAIL PROTECTED] wrote:

 What is libbfd.la good for? It has

 dependency_libs=' -L/export/build/gnu/binutils-import/build-i686-linux/libiberty/pic 
-liberty'

In your case, nothing.  If libiberty were a libtool library, you'd get
appropriate pathnames for its install location in the dependency list
of libbfd, such that you'd be able to link with libbfd.la and you'd
get libiberty linked in automatically, as God intended.

 I simply don't like the idea of dependency on static
 libraries under Linux.

You're free to not like it, but it's necessary for correct linking of
static libraries.  Try --disable-shared on binutils, install libbfd
and try to link with it and you'll see what I mean.  Try both
libbfd.la and libbfd.a to tell the difference.

 When I need libiberty.a, I will add -liberty.

If you want to have to do that, don't use libtool once the library is
installed, and get rid of the .la file so that you don't get tempted
to use it again :-)

 I don't need libtool to add things which don't belong there.

You don't have to use libtool.  Especially if you don't want to.

 libtool should just behave like ld/ar and nothing more.

If that's what you want, omit -liberty from the link command of
libbfd.  You'll get a perfectly broken libbfd then, just the way you
want :-)

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software EvangelistProfessional serial bug killer

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: PATCH: Fix libtool to support Linux/mips

2002-02-07 Thread Alexandre Oliva

On Feb  7, 2002, Andreas Schwab [EMAIL PROTECTED] wrote:

 Then why wasn't this done explicitly in the first place?  Why is there an
 incomplete test for architectures != arm when it is much more robust to
 make a single check for arm?

Because for unlisted architectures, the status was unknown, so libtool
took the conservative approach of assuming that linking static
libraries into shared libraries didn't always work.

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software EvangelistProfessional serial bug killer

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: PATCH: Fix mips*-*-linux*

2002-02-07 Thread Alexandre Oliva

On Feb  7, 2002, Robert Boehne [EMAIL PROTECTED] wrote:

 You have my approval to un-do my mistsake.

Thanks, I've just installed the patch.

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software EvangelistProfessional serial bug killer

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: PATCH: Fix mips*-*-linux*

2002-02-07 Thread Alexandre Oliva

On Feb  7, 2002, H . J . Lu [EMAIL PROTECTED] wrote:

 Well, there is no libiberty.so. You wind up with always linking files
 in libiberty.a when libtool is used, no matter they are needed or
 not.

And what is the problem with linking libiberty.a, if libbfd actually
depends on it?

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software EvangelistProfessional serial bug killer

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: PATCH: Fix libtool to support Linux/mips

2002-02-06 Thread Alexandre Oliva

On Feb  4, 2002, H . J . Lu [EMAIL PROTECTED] wrote:

 On Mon, Feb 04, 2002 at 09:52:04AM -0200, Alexandre Oliva wrote:
 On Feb  4, 2002, H . J . Lu [EMAIL PROTECTED] wrote:
 
 * libtool.m4 (lt_cv_deplibs_check_method): Support Linux/mips.
 
 Before I waste any further time on it, is it any different from the
 patch I rejected some months ago?  It seems to still have the same
 problem.

 I don't remember why you rejected it. FWIW, my patch is in the current
 libtool source in CVS:

All this means is that you managed to get the patch in while I wasn't
looking, and in spite of my strong objections to the patch.  Oh,
well... :-(

*sigh*

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software EvangelistProfessional serial bug killer

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: PATCH: Fix libtool to support Linux/mips

2002-02-06 Thread Alexandre Oliva

On Feb  4, 2002, H . J . Lu [EMAIL PROTECTED] wrote:

 On Mon, Feb 04, 2002 at 09:52:04AM -0200, Alexandre Oliva wrote:
 On Feb  4, 2002, H . J . Lu [EMAIL PROTECTED] wrote:
 
 * libtool.m4 (lt_cv_deplibs_check_method): Support Linux/mips.
 
 Before I waste any further time on it, is it any different from the
 patch I rejected some months ago?  It seems to still have the same
 problem.

 I don't remember why you rejected it.

The reason was that your patch enabled dependency tracking control
that is unnecessary for most GNU/Linux systems.  It was only necessary
for old ARM systems whose glibc was broken.  Perhaps such dependency
control is also necessary for mips, because of the way its relocations
are set up, in which case you could have removed mips|mipsel from the
list of cpus that can use pass_all, and added a case for mips|mipsel
with a file_magic that handled the output of file on mips.  I.e., fix
the problem you had without causing problems for others, exactly the
way I had asked for earlier.

But no, you had to go ahead and make libtool slower on all other
GNU/Linux architectures slower because you didn't understand what was
going on and chose not to take my advice.  Nice move!  :-/

Now please submit a patch for libtool that reverts your incorrect
patch and introduces the correct fix I suggest above.

Thanks in advance,

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software EvangelistProfessional serial bug killer

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: PATCH: Fix libtool to support Linux/mips

2002-02-06 Thread Alexandre Oliva

On Feb  7, 2002, H . J . Lu [EMAIL PROTECTED] wrote:

 Please read my original message again.

Please read my original reply again.

 # gcc -fPIC -c foo.c
 # ar rcs libfoo.a foo.o
 # gcc -fPIC -c bar.c
 # gcc -shared -o libar.so bar.o -lfoo -L.

 The linker will include files in libfoo.a to generate libbar.so. In
 libbar.so, there is no dependency on libfoo.a.

Of course.  There couldn't possibly be any such dependence.  DT_NEEDED
can only refer to other shared libraries.

 However, for some strange reason, libtool decides not to includes
 files from libfoo.a whene generating libbar.so.

Huh?  Libtool doesn't decide anything.  Libtool would pass -lfoo to
the link command such that the linker would make this decision.
However, after your patch, it no longer passes -lfoo to the linker
when it finds that libfoo is a static library, because with your
change you're telling libtool that it's not safe to link shared
libraries with static libraries.  On most GNU/Linux ports, it is.

If something was dropping members of libfoo.a from libbar.so, it was
the linker, and that's exactly what it's supposed to do when you link
a static library in, no matter if it's into a program or another
shared library.  It links in only members of an archive that are
necessary, unless the --whole-archive option is in effect.  But you
already knew that.

 Instead, it puts a dependency on libfoo.a
 in libar.la.

That, it does regardless of whether libfoo is static or dynamic, and
that's correct.  In case both libbar.a and libfoo.a are static, when
you link with libbar.la you have to get libfoo.a linked in too, such
that dependencies are resolved.  Also, a number of linkers will fail
if -lfoo is omitted when -lbar depends on it even if both are dynamic
libraries, and it doesn't hurt to pass -lfoo anyway, so libtool does
it.  Or did it, before your change.  Now, it's broken.  Unless you
managed to break it further with that other patch that I rejected.

 That is not what the Linux linker does. If you can fix this libtool
 bug, I will be more than happy to send a patch to revert my change.

If you can describe the bug, I might attempt to fix it.  But so far
you have only described correct and expected behavior.

 Please don't tell me it is a libtool feature. It is a real bug.

Then show me the actual bug you're trying to fix.  The sequence of
commands again doesn't even involve libtool.

 I am not interested in any explanation why libtool has to/should do
 it that way.

So you want to modify libtool without understanding what's going on.
This won't work.  In fact, it has already failed.  It's too bad that
your incorrect patch went in and broke what was working fine.

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software EvangelistProfessional serial bug killer

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: PATCH: Fix mips*-*-linux*

2002-02-06 Thread Alexandre Oliva

On Oct 23, 2001, Robert Boehne [EMAIL PROTECTED] wrote:

 Here is the patch reworked for HEAD.  If noone objects
 I'll commit it.

*wakes up*
*stretches*
*yawns*
*looks around*

*thinks*

-- Hmm...  It's been a long time since I last posted in
   libtool-patches.  In fact, it's been a while since I last opened
   its mail folder, so I had completely missed this one.  I wonder if
   it's too late...

*shouts*

-- OBJECTION!

*looks at the CVS repo*
*thinks*

-- Hmm...  No, it *was* too late :-(


Oh, well.  I really think this shouldn't have gone in, for the reasons
brought up in gcc-patches and libtool mailing lists.  But, after such
a long silence, I don't feel I'm entitled to just come back and start
checking in or reverting patches, so...  Ok to revert that patch, by
checking this one in?  Tested on athlon-pc-linux-gnu, no regressions,
so this must be right for at least GNU/Linux/x86, right? ;-)

For the record, the reason is that, contrary to the claim in the
patch, on a number of OSs it's not safe to link a static library into
a shared library and, on those in which it is safe, using file_magic
is pointless: pass_all is supposed to behave exactly the way
H.J. intended.

Sorry for having dropped the ball for so long.  It's too bad I don't
foresee this changing in the near future :-(



Index: ChangeLog
from  Alexandre Oliva  [EMAIL PROTECTED]

	Reverted incorrect patch:
	2001-10-24  H.J. Lu  [EMAIL PROTECTED]
	* ltmain.sh: Allow link against an archive when building a
	shared library.
	* libtool.m4 (lt_cv_deplibs_check_method): Always use
	file_magic for Linux ELF.

Index: ltmain.in
===
RCS file: /cvsroot/libtool/libtool/ltmain.in,v
retrieving revision 1.286
diff -u -p -r1.286 ltmain.in
--- ltmain.in 29 Jan 2002 22:58:35 - 1.286
+++ ltmain.in 7 Feb 2002 06:58:05 -
@@ -2990,13 +2990,6 @@ EOF
 			*) potlib=`$echo X$potlib | $Xsed -e 's,[^/]*$,,'`$potliblink;;
 			esac
 		  done
-		  # It is ok to link against an archive when
-		  # building a shared library.
-		  if $AR -t $potlib  /dev/null 21; then
-		newdeplibs=$newdeplibs $a_deplib
-		a_deplib=
-		break 2
-		  fi
 		  if eval $file_magic_cmd \\$potlib\ 2/dev/null \
 			 | ${SED} 10q \
 			 | egrep $file_magic_regex  /dev/null; then
Index: libtool.m4
===
RCS file: /cvsroot/libtool/libtool/libtool.m4,v
retrieving revision 1.247
diff -u -p -r1.247 libtool.m4
--- libtool.m4 30 Jan 2002 16:39:24 - 1.247
+++ libtool.m4 7 Feb 2002 06:58:08 -
@@ -1949,7 +1949,6 @@ linux*)
 # glibc up to 2.1.1 does not perform some relocations on ARM
 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )' ;;
   esac
-  lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )'
   lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
   ;;
 



-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software EvangelistProfessional serial bug killer



Re: PATCH: Fix libtool to support Linux/mips

2002-02-06 Thread Alexandre Oliva

On Feb  7, 2002, H . J . Lu [EMAIL PROTECTED] wrote:

 # gcc -fPIC -c foo.c
 # ar rcs libfoo.a foo.o
 # gcc -fPIC -c bar.c
 # gcc -shared -o libar.so bar.o -lfoo -L.

 I don't want ANY dependency of libfoo.a in libbar.so.

With the commands above, you don't get any dependency of libtool.a in
libbar.so.  I don't understand what you're complaining about.  This
doesn't even use libtool.

 That is I can give libbar.so to someone. He/she can use it without
 libfoo.a. With the current binutils in CVS, I got

 /bin/sh ./libtool --mode=link gcc -W -Wall -Wstrict-prototypes -Wmissing-prototypes 
-g -O2  -o libbfd.la -rpath /export/tools/lib -release 2.11.93  archive.lo 
archures.lo bfd.lo cache.lo coffgen.lo corefile.lo format.lo init.lo libbfd.lo 
opncls.lo reloc.lo section.lo syms.lo targets.lo hash.lo linker.lo srec.lo binary.lo 
tekhex.lo ihex.lo stabs.lo stab-syms.lo merge.lo dwarf2.lo archive64.lo `cat ofiles` 
-L../libiberty/pic -liberty 

 Did you see

 dependency_libs=' -L/export/build/gnu/binutils-import/build-i686-linux/libiberty/pic 
-liberty'

Ah, ok, so it's the -liberty in libbfd.la that troubles you?

If all you want is to be able to give libbfd.so to someone else, do
so.  You don't have to take libbfd.la along with it; just get rid of
it.  And make sure you don't give libbfd.a away either, because it's
useless without the libiberty.a that you don't want to include in your
package.

 That is completely bogus for Linux.

Nope, it's absolutely correct.

Try to link with libbfd.la with -static, then drop -liberty from the
command line you get and you'll see why.

 Please fix it.

You still haven't shown that there's anything to be fixed.

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software EvangelistProfessional serial bug killer

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: PATCH: Fix libtool to support Linux/mips

2002-02-04 Thread Alexandre Oliva

On Feb  4, 2002, H . J . Lu [EMAIL PROTECTED] wrote:

   * libtool.m4 (lt_cv_deplibs_check_method): Support Linux/mips.

Before I waste any further time on it, is it any different from the
patch I rejected some months ago?  It seems to still have the same
problem.

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software EvangelistProfessional serial bug killer

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: libtool hates twiddling

2002-01-14 Thread Alexandre Oliva

On Jan 15, 2002, Tom Tromey [EMAIL PROTECTED] wrote:

 Alexandre == Alexandre Oliva [EMAIL PROTECTED] writes:
Alexandre In general, I recommend specifying the tag name explicitly,
Alexandre like some Makefiles already do, and automake should
Alexandre eventually do.

 Could you submit an automake PR for that?
 Otherwise I guarantee we'll forget about it :-)

Done

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: MLB merge is done! Hurray!

2001-07-12 Thread Alexandre Oliva

On Jul 11, 2001, Gary V. Vaughan [EMAIL PROTECTED] wrote:

 On Wednesday 11 July 2001  3:56 am, Alexandre Oliva wrote:
 Congratulations for completing the merge, and sorry about my long
 absence.  I'm afraid it will still last for a while, though :-(

 No problem.  Is your PhD demanding more attention these days?

Nope.  In fact, I wish I could have dedicated more to my PhD lately.
But my lack of time for libtool has been a combination of time devoted
to my job at Red Hat and random personal appointments that have
managed to take up most of the remaining time that I used to devote to
free software projects :-(

 Why not leave it officially closed so that we needn't pay it any attention, 
 but unnofficially maintain it purely to expedite the GCC project?

The GCC release manager agreed to accept local patches in the GCC 3.0
branch, as long as I enforce the policy that they make it to the
libtool CVS tree first.  So, we're not going to need the branch any
more.

Thanks anyway!

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: MLB merge is done! Hurray!

2001-07-10 Thread Alexandre Oliva

Congratulations for completing the merge, and sorry about my long
absence.  I'm afraid it will still last for a while, though :-(

On Jun 24, 2001, Gary V.Vaughan [EMAIL PROTECTED] wrote:

 Anyway, I would like to declare MLB officially dead, and reopen HEAD for 
 development.

Hmm...  This would be a bit of a problem.  The recently-released GCC
3.0 is based on the MLB branch of libtool, and I don't yet feel
confident enough to just drop the branch and adopt the result of your
merge for GCC 3.0.1; the risk of regressions is way too high.  Still,
people have been finding and fixing some minor bugs and porting
issues, and in GCC we have a rule of not modifying libtool files in
place, but rather of only merging from the libtool tree.  This is the
only way I could find to make sure patches proposed by GCC developers
don't get lost, failing to make it to the libtool tree.

Unfortunately, the end result is that I have to either temporarily
lift the rule in the GCC CVS tree, or reopen the MLB branch in the
libtool CVS tree, perhaps renamed to GCC 3.0 branch and used solely
for this purpose, and never having a patch checked in that is not
backed by a corresponding patch for libtool mainline.

Would anybody mind if I kept using the libtool MLB for this purpose,
and explain to anybody who happens to post a patch for that branch
that a corresponding patch for mainline is required before the patch
can go in the branch?

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: libtool: not configured to build any kind of library

2001-07-04 Thread Alexandre Oliva

On Jun 27, 2001, [EMAIL PROTECTED] wrote:

 Libtool builds only shared or static libraries. If you tell it to do
 neither, how is it going to work?

It used to default to static-libraries only, in this case.  I guess it
was broken during the merge :-(

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: dll cross-compile, .libs/impgen is a win-exe, not a linux-binary

2001-06-21 Thread Alexandre Oliva

On Jun 20, 2001, Olly Betts [EMAIL PROTECTED] wrote:

 The name CC_FOR_BUILD is preferable - see the discussion stemming
 from the first url below - perhaps libtool ought to change to this?

I'd approve any reasonable patch that fixed this :-)

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: spec-files ?

2001-06-21 Thread Alexandre Oliva

On Jun 20, 2001, Enrico Weigelt [EMAIL PROTECTED] wrote:

 could anyone write an specfile for libtool ?

Sure.  In fact, a number of people already did.  Just pick your
preferred RPM-based GNU/Linux distribution and get the spec file from
the libtool source RPM package.

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: ld --auto-import for cygwin and libtool

2001-06-19 Thread Alexandre Oliva

On Jun 11, 2001, Robert Collins [EMAIL PROTECTED] wrote:

 I think the shlib_overrides_runpath means the LDPATH on unix systems,
 and PATH on win32 systems, overriding the -rpath compiled in path. In
 which case it should be yes on win32, because AFAIK the compiled in path
 is ignored :].

We should probably fix this problem by getting the compiled-in path
set up in a wrapper executable.

Oh, and I'd like to take the opportunity to publicly congratulate Paul
Sokolovsky for proving me wrong in my impression that it was
impossible to create shared libraries without source decoration on
Windows.  Great job, Paul! :-)

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: dll installation logic

2001-06-17 Thread Alexandre Oliva

On Jun  8, 2001, Gary V. Vaughan [EMAIL PROTECTED] wrote:

 Unfortunately this probably comes dow to wrapper scripts, which is ugly too 

Since we're talking Cygwin, shouldn't it be a wrapper executable?

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: dll installation logic

2001-06-17 Thread Alexandre Oliva

On Jun  8, 2001, Guido Draheim [EMAIL PROTECTED] wrote:

 hmmm, or an autoconf wrapper macro?

Nope, this wouldn't work for libraries that are not installed in
libdir, but in a subdir thereof.

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: Fortran support in multi-language branch?

2001-06-17 Thread Alexandre Oliva

On Jun 15, 2001, Robert Boehne [EMAIL PROTECTED] wrote:

 One thing I'd like to see in Libtool is support for
 multiple-language libraries where f90 C and C++ sources can be used
 together in a single shared library.

I suppose you can already do this by creating single-language
convenience libraries, then linking them all together into a single
libtool archive.

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: Enabling/disabling shared or static libs from Makefile.am

2001-06-09 Thread Alexandre Oliva

On Jun  8, 2001, Pierre Sarrazin [EMAIL PROTECTED] wrote:

 libutils_la_LDFLAGS = -version-info 0:0:0 -no-undefined -static

 But the source files are still compiled twice.

Use the multi-language branch of libtool and add `--tag disable-shared' 
to AM_CFLAGS.

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: Line length limitations

2001-06-05 Thread Alexandre Oliva

On Jun  5, 2001, Robert Boehne [EMAIL PROTECTED] wrote:

 So I'm sure how to check the limits under SGI without
 the 'wc' command.

Use cmp.

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: objc/2902: collect2 doesn't ...: libtool should use collect2?

2001-06-04 Thread Alexandre Oliva

On May 31, 2001, John David Anglin [EMAIL PROTECTED] wrote:

 OTOH, since we do know it is safe to link in libgcc, because it's PIC,
 we might just get rid of the -nostdlib, and let GCC do the library
 magic by itself.  This should be good enough for objc.

 Could you test such a change and re-post the patch, in case it works?

 It does.  Test results for hppa1.1-hp-hpux10.20 are here:
 http://gcc.gnu.org/ml/gcc-testresults/2001-05/msg00734.html.  I
 also ran `-static'.  The revised patch is enclosed.

Thanks, installing.

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: make install-strip with libtool (CVS HEAD) automake (CVS HEAD) fails

2001-06-03 Thread Alexandre Oliva

On Jun  3, 2001, Robert Collins [EMAIL PROTECTED] wrote:

 automake's makefile calls libtool:

  STRIPPROG='strip' /bin/sh ./libtool --mode=install -s hello.exe
 /usr/src/hellolib/build/t
 /usr/local/bin/hello.exe

Looks like the name of the `install' program is missing between
`--mode=install' and `-s'.

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: Libtool for C++, Windows and Unix

2001-05-31 Thread Alexandre Oliva

On May 31, 2001, Esben Haabendal Soerensen [EMAIL PROTECTED] wrote:

 So am I going to run into trouble when I move my stuff to HP-UX ?

Yep.

 Or can I avoid trouble by only using dynamic libraries ?

Static libraries, you mean?  Yes, this would help.

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: Libtool for C++, Windows and Unix

2001-05-30 Thread Alexandre Oliva

On May 30, 2001, Esben Haabendal Soerensen [EMAIL PROTECTED] wrote:

 I am using libtool 1.3.3 for my C++ project using libtool and
 libltdl.  I seem to have it working.  What are the reasons I should
 need the ML-branch ?

Because libtool works for C++ only on the few targets on which it uses
the compiler for linking.  On most targets that don't support linking
static libraries into shared libraries, libtool runs the linker
directly, which means that you won't get either of the C++ library or
the dynamic-constructor support object files linked in.

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: libjava testsuite problem under i686-pc-linux-gnu

2001-05-28 Thread Alexandre Oliva

On May 28, 2001, John David Anglin [EMAIL PROTECTED] wrote:

 LD_LIBRARY_PATH is ignored for dependencies of shared libraries.
 What does work for me, is adding `rpath' options for the relink
 based on the path in LD_LIBRARY_PATH.

How about setting LD_RUN_PATH?

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: libjava testsuite problem under i686-pc-linux-gnu

2001-05-28 Thread Alexandre Oliva

On May 28, 2001, John David Anglin [EMAIL PROTECTED] wrote:

 I still don't understand why libtool doesn't use `-B' and `-L' when it
 creates the `rpath' list for building the preinstall version of an
 application.

Because -B and -L specify static link (compile)-time search paths,
whereas -R and -rpath specify the dynamic link (run)-time search path.
If libtool got -rpath from -B and you built any executable for the
target in the GCC tree, that executable would search for libgcc in the
build tree, even after being installed.

 Why does it matter whether a library is a libtool library
 in the magic .libs subdirectory or a non-libtool library?

libtool knows whether a library is in the build tree or has already
been installed, and creates executables that, when installed, look for
libraries in their installed locations, but that locate libraries in
the build tree when run inside the build tree.

It get increasingly difficult to do this when one to-be-installed
library depends on another yet-to-be-installed library.  If we want to
get that library to automatically find its dependencies, we may need
to create two copies of that library, since you have found out
LD_LIBRARY_PATH doesn't affect this search.  Libtool takes care of
this problem too, but it can only do it when the library being linked
in is a libtool library.

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: objc/2902: collect2 doesn't ...: libtool should use collect2?

2001-05-28 Thread Alexandre Oliva

On May 28, 2001, John David Anglin [EMAIL PROTECTED] wrote:

 It's possible that libtool runs the linker directly on HP-UX for the
 same reason it does on Solaris: because non-PIC static libraries can't
 be linked into shared ones.  In the old pre-MLB days, this caused a
 lot of grief to g++, that would link in libstdc++ even when it was not
 a shared library.  With MLB, this is no longer an issue.  But it's
 hard to tell whether we can safely make this change.  But I suppose
 we're going to have to bite the bullet and try it.  Libtoolers,
 GCCers, does anybody disagree?

 As far as I know, using the linker directly won't help resolve this
 under hpux.  We're talking about `gcc -shared', not `g++ -shared',
 for the shared archive link command when we have gcc.

Yep.  But, before MLB, there was no distinction between gcc and g++,
as far as libtool could tell, and this is where the problem stemmed
from.  libtool didn't know about the implicitly linked in libraries.
When a static libstdc++ was implicitly linked into a shared library,
things broke.  I believe this is the reason why we use ld directly on
a number of platforms that don't support this kind of linkage.  So I'm
convinced the way to go is to go back to using GCC -shared, without
-nostdlib, since we no longer have to worry about libstdc++ in the
C configuration.

 This shouldn't be a problem unless people don't do a full bootstrap.

I was thinking of a unified tree build, in which binutils are also
built using libtool.

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: libjava testsuite problem under i686-pc-linux-gnu

2001-05-27 Thread Alexandre Oliva

On May 26, 2001, John David Anglin [EMAIL PROTECTED] wrote:

 As a result, the pre-install version of Array_1 (lt-Array_1) has an
 incorrect runtime location for libgcc_s.so.0.  It uses the old
 version in the install directory rather than the new version in the
 gcc build directory.

As posted in the libgcj mailing list, the problem is that libgcc_s is
not a libtool library, so libtool can't do its magic of handling
to-be-installed libraries.  Setting LD_LIBRARY_PATH so that libgcc_s
is found in the right place might work, but then, it's possible that
LD_LIBRARY_PATH is ignored when looking for dependencies of dependence
libraries.  I seem to recall such an odd behavior is present on some
platform; perhaps Solaris?

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: objc/2902: collect2 doesn't ...: libtool should use collect2?

2001-05-27 Thread Alexandre Oliva

On May 25, 2001, John David Anglin [EMAIL PROTECTED] wrote:

 Here is a libtool fix for the above problem.  It changes libtool to use
 `gcc -shared' for linking shared archives under hpux when $with_gcc = yes.

It also makes libtool use -nostdlib, which is most definitely wrong
without a definition of output_verbose_link_cmd.  It appears to me
that you have simply copied the definitions from ltcf-cxx.sh, where
output_verbose_link_cmd is set whenever the compiler is GCC.
ltcf-c.sh doesn't.

I suppose the right solution for this problem is to introduce
ltcf-objc.sh, perhaps mostly as a copy of ltcf-gcj.sh, where this
problem should already have been taken care of.  [checks...]  No, it
isn't, and this is certainly going to be a problem whenever libgcj is
ported to HP-UX.  Perhaps we could kill both problems at the same
time.  Or, ever better, we might introduce a ltcf-gcc.sh to take care
of all languages supported by GCC in a generic way, instead of
duplicating it over all language-specific scripts.

 However, this may only be the tip of the ice berg.  The same problem
 may apply to quite a few other oses.

True.  But there's certainly a reason why we don't use GCC -shared on
HP-UX; it was used on all OSs in which it worked, back in the early
days of libtool.  I wish I knew what reason it was, in the case of
HP-UX :-(

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: install phase fails

2001-05-24 Thread Alexandre Oliva

On May 23, 2001, Brian May [EMAIL PROTECTED] wrote:

 for some reason this hasn't been a problem (with libtool 1.4) until
 just now (maybe upgrading to glibc 2.2.3 from 2.2.2 triggered it)?

The problem has to do with requiring relinking at install time.  This
is necessary when one library in the build tree depends on another
library in the build tree.  The other library must be installed first,
and, when the former is to be installed, the other must already be
accessible in its previously-specified installation path, which is
different from the prefix you have specified at install time.

In general, when relinking is necessary, you must not use a different
prefix to install than the one used to build.

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: DLLs with mingw or cygwin

2001-05-22 Thread Alexandre Oliva

On May 22, 2001, Sebastien Sable [EMAIL PROTECTED] wrote:

 As far as I know, those are as recent as they can get, but still no
 dll anywhere :

AC_LIBTOOL_WIN32_DLL ?

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: Removing duplicate occurences from dependency_libs

2001-05-20 Thread Alexandre Oliva

On May 20, 2001, Martin Baulig [EMAIL PROTECTED] wrote:

 If you have a complicated dependency setup, this will slow down linking
 in a very extreme way (it is more than 5 times slower for me) because I get
 libraries like -lm or -ldl listed over 30 times in the dependency_libs.

 Is it possible to add an argument to libtool to get back the old behavior,
 for instance -unique-dependency-libs ?

Just make sure no library appears explicitly more than once in the
dependence list of any library or program, and you'll get exactly what
you want.

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: Removing duplicate occurences from dependency_libs

2001-05-20 Thread Alexandre Oliva

On May 20, 2001, Martin Baulig [EMAIL PROTECTED] wrote:

 I'll debug it later on.

Thanks!

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: Removing duplicate occurences from dependency_libs

2001-05-20 Thread Alexandre Oliva

On May 20, 2001, Sander Vesik [EMAIL PROTECTED] wrote:

 ld.so never sees static libraries.

But libtool does.  That's the difference.  It's not just about
creating shared libraries.  It must take creation of static libraries
into account.

Besides, there are indeed a number of dynamic linkers that don't
support inter-library dependencies properly.

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: [egagnon@j-meg.com: Bug#97759: libtool: build problem]

2001-05-17 Thread Alexandre Oliva

On May 17, 2001, Ossama Othman [EMAIL PROTECTED] wrote:

 Bug report for libtool 1.4 from a Debian user.  Any ideas?

My first guess would be that libffi has been mis-installed.  What does
/usr/lib/libffi.la look like?

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: lots of -lresolv added to command line?

2001-05-17 Thread Alexandre Oliva

On May 17, 2001, Ossama Othman [EMAIL PROTECTED] wrote:

 On the other hand, shouldn't libtool be able to handle stuff like this
 without producing dozens of consecutive duplicates?

The heuristics we use is that, if a library is explicitly listed more
than once in the dependence list of a single library, we don't ever
remove duplicates of it.  If such a library is used as a dependence of
multiple other libraries, the duplicate dependency will end up
appearing multiple times in their dependency lists.

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: [MLB] BUG in install when piecewise linking

2001-05-17 Thread Alexandre Oliva

On May 17, 2001, Robert Boehne [EMAIL PROTECTED] wrote:

 Can we get around these problems easier in the binary-branch?

I'm not sure it's going to be easier, but it's hopefully going to be
far more efficient :-)

 I envision a binary libtool that could do all of the processing
 itself, without needing to use sed or shell until it needed to
 call a compiler.

Yep.

 Since users can use GNU sed on the two affected platforms, there's a
 simple workaround, and that leads me to a more protracted but more
 complete solution to the problem.

Agreed.  In fact, that's the only way out for the moment.  I wish we
could at least warn the users about the problem, though.  That would
be better than simply failing.

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: custom wrapper script hooks

2001-05-17 Thread Alexandre Oliva

On May 17, 2001, Havoc Pennington [EMAIL PROTECTED] wrote:

 Does that sound like a reasonable feature?

While this has pretty much nothing to do with building and using
libraries, I'll give you that this is a very nice feature, and it fits
in nicely with one of the most important features of libtool, which is
that of helping testing of uninstalled programs, so I'd vote for
installing a patch that implemented it.  Would any other libtool
maintainer oppose to this feature?

I suppose this new switch could be useful not only at library creation
time, but also at program creation time.

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: libtool: link order problem affecting gij

2001-05-16 Thread Alexandre Oliva

On May 16, 2001, Bryce McKinlay [EMAIL PROTECTED] wrote:

 Jeff Sturm wrote:
 On Sun, 13 May 2001, Bryce McKinlay wrote:
  libtool inserting lib flags (-lgcc_s -lc -lgcc_s) into the gcj link
  command line _before_ other lib flags which we are passing to it. This
  means that libc is being linked before libpthread, which is bad:
 
 Yeah.  This has been happening for a little while:
 
 http://gcc.gnu.org/ml/java/2001-04/msg00297.html

 Does Zack's patch help?
 
 http://gcc.gnu.org/ml/java-patches/2001-q2/msg00166.html
 
 By eliminating libsupc++ from the build, its side effects (linking with
 explicit -lc) should go away.

 Zack's patch does indeed fix this problem and I notice that he has checked
 it in. Thanks Zack!

Seconded.

FYI, my current inclination is to arrange for libtool to not add to a
library's dependencies any switches passed implicitly by the compiler
driver to the linker.  I'm not convinced this is right at all times
(perhaps only for convenience libraries?), but it would have avoided
this problem.

To clue other libtoolers into the problem: libjava is thread-aware, so
it must be linked with the thread library.  However, the thread
library must be linked in before the regular (thread-unaware) C
library.  The problem seems to be that libtool was picking the
dependency list from a C++ convenience library, that included the
shared libgcc and libc, as above, which resulted in libc being linked
in before the thread library.

One simple solution would have been to move -lpthread first in the
list of dependencies of libjava.  But I'd hope libtool might be more
helpful in cases in which library ordering matters so much.  I'm not
sure we should introduce thread-awareness in libtool (actually, extend
the almost-do-nothing already-existing thread flag) or somehow adjust
libtool such that the postdeps of the compiler are handled as a unit,
or something like that.

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: Libtool for C++, Windows and Unix

2001-05-16 Thread Alexandre Oliva

On May 16, 2001, Lars von Wedel [EMAIL PROTECTED] wrote:

 Do I have to take a look into the multi-language branch

To properly support C++, yes.

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: I think binary-branch is almost ready for play time

2001-05-13 Thread Alexandre Oliva

On May 13, 2001, Bruce Korb [EMAIL PROTECTED] wrote:

 Alexandre Oliva wrote:
  In other words, your new macro should not need to do this:
 
 [= test-and-exit  test = (get test)  ...  =]
 
  because it would be redundant.
 
 Good.  But I had meant to write ``I'd like *you* to implement ...''
 :-)

 Then I would need to understand better what you wanted to have
 happen.

I just need one macro implemented in terms of another.  The idea was
that test-OR-exit would call test with the same condition, and append
to the else clause the commands to output the error message and the
exit command.  Or something like that.

[= test-OR-exit  msg = start-[= gather-the-message =]-end =]

 is now accepted.  What happens is that the string sta...end
 is gathered up at load time.  When this invocation fires,
 an anonymous template is created with that text and then processed.
 The output is redirected to an unlinked file (no Windows here),
 and read back in.

This won't help much in this case (but it was indeed one of the major
requirements for AutoGen to be usable here).  What I need is the
definition of test-OR-exit to refer to other macros.

 I would not nest macros, I would add an argument, and
 maybe some sanity checks thus:

The issue is not about how to implement test, it's about how to
implement macros in terms of others.

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: [MLB] BUG in install when piecewise linking

2001-05-11 Thread Alexandre Oliva

On May  9, 2001, Robert Boehne [EMAIL PROTECTED] wrote:

 So the problem seems to be that when relink_command is formed,
 it's passed through bug-ridden vendor sed.  If there is another way
 to build $relink_command without running into this problem, I'd
 like to hear suggestions.  :)

One alternative would be to try to figure out the maximum line length
supported by sed, and use that as an upper bound for the command-line
length limit.  Then, we could use new-lines instead of semicolons as
command separators in relink_command.

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: Libtool drops -static from LDFLAGS?

2001-05-09 Thread Alexandre Oliva

On May  8, 2001, Ossama Othman [EMAIL PROTECTED] wrote:

 Right, but the problem is that is it prevents users who know what
 they're doing from using gcc's -static option.

Nope.  -all-static does that.  It's in the libtool manual.  If they
``know what they're doing'', they should know that :-D

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: Libtool drops -static from LDFLAGS?

2001-05-08 Thread Alexandre Oliva

On May  7, 2001, Ossama Othman [EMAIL PROTECTED] wrote:

 Libtool drops the user supplied -static flag (e.g. in $LDFLAGS) from
 the link command.  Is this what we want?

Yep.  To really force static linking, use -all-static.  -static tells
libtool to *prefer* static libraries, not to *require* them.

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: crosscompiled .exe (Re: crosscompiling dll linux-mingw32)

2001-05-02 Thread Alexandre Oliva

On Apr 28, 2001, Gary V. Vaughan [EMAIL PROTECTED] wrote:

 libtool would need to build a wrapper program on Windows which would
 call the wrapper script to set the environment up to load the
 correct DLLs and then call the actual program in the .libs
 subdirectory.

I like this idea.  It's been in my to-do list for a while.

Along the same lines, we should probably not even bother to create the
wrapper script/program when cross compiling.  I'm not sure we already
do this.

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: Installing convenience libraries

2001-05-02 Thread Alexandre Oliva

On Apr 30, 2001, Nick Hudson [EMAIL PROTECTED] wrote:

 Are there really platforms that do not allow the equivalent of ar
 PIC objects?

I believe the oddities of MS-Windows DLLs could break this in certain
cases.

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: Installing convenience libraries

2001-05-02 Thread Alexandre Oliva

On Apr 26, 2001, Nick Hudson [EMAIL PROTECTED] wrote:

 What I'd like is a archive of -fPIC compiled code.

Compile the code with -prefer-pic and create a -static library.

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: crosscompiling dll linux-mingw32

2001-04-26 Thread Alexandre Oliva

On Apr 26, 2001, Guido Draheim [EMAIL PROTECTED] wrote:

 I did just need to change a single line in ltmain.sh which 
 enabled me afterwards to actually *build* a dll.

Looks like you were not using -no-undefined when creating the
library.  This is required to build a DLL on MS-Windows.

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: libtool-1.4

2001-04-25 Thread Alexandre Oliva

On Apr 24, 2001, Gary V.Vaughan [EMAIL PROTECTED] wrote:

 Since I don't want to hold up the release any longer, I am going to
 break the commit rules and remove all use of the inline keyword (and
 the AC_C_INLINE) from libltdl before I roll up the release -- unless
 someone asks me not to in the next few hours.

I've finally understood the problem, and it seems that removing all
uses of inline is probably excessive.  We just can't declare functions
with static variables as inline.  `static inline' (but not `inline
static') is ok for functions without static variables, as long as
`inline' is defined away for compilers that don't support it (which
AC_C_INLINE should take care of).

Of course, re-enabling inline is not a requirement for the release,
since we can always re-enable it later.

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: 1.3e (1.913) test results for i386-unknown-netbsd1.4.1

2001-04-25 Thread Alexandre Oliva

On Apr 25, 2001, Nick Hudson [EMAIL PROTECTED] wrote:

 These fails due to a problem in ld.aout_so (see lib/10940) that has
 recently been fixed and is available in the netbsd-1-4 tagged sources.

Nick, would you mind submitting a patch to libtool that will disable
shared libraries in case the fix isn't present?

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: Making hardcode.test more robust [patch against HEAD]

2001-04-23 Thread Alexandre Oliva

On Apr 22, 2001, [EMAIL PROTECTED] wrote:

 It does retain the original behaviour on other platforms. The case
 statement is only for particular hosts. All other hosts keep the
 result from the fgrep test.

Indeed.

 BTW, another possible solution is to compile with CFLAGS=-s. Compiling
 without CFLAGS=-g solves the problem on Solaris and with CFLAGS=-s
 solves the problem on IRIX 6.x.

I'm not sure how portable -s is.  Hmm...  Any takers?

 Good point about host != build. How would I even begin to solve that?

Only do the improved test when host = build.  Which amounts to falling
back to the original version when cross compiling.  And then, I wonder
whether we really want potentially different results for the same host
platform...

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: Libtool and Pkg-Config

2001-04-23 Thread Alexandre Oliva

On Apr 22, 2001, Martijn van Beers [EMAIL PROTECTED] wrote:

 Maybe you should actually take a look at pkg-config instead of listening
 to people talking about it inaccurately.

Err...  Perhaps if I had been pointed at it, instead of having had the
impression it was some tool in an early design phase, I would have
looked at it :-)

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: Libtool and Pkg-Config

2001-04-22 Thread Alexandre Oliva

On Apr 22, 2001, Havoc Pennington [EMAIL PROTECTED] wrote:

 pkg-config has some intelligence, i.e. if you request two libs at once
 it will nuke duplicate flags and order the -l flags properly.

Err...  It won't always remove duplicate -l flags, will it?  This
isn't always correct.

 Also, it can gripe about missing dependencies or conflicting
 libraries.

Good.

 I think for libtool it's as simple as having a concept of a package
 in addition to a concept of a library, so we can pass gtk+-2.0 to
 libtool instead of -L/home/hp/unst/lib -L/usr/X11R6/lib -lgtk-x11-1.3
 -lgdk-x11-1.3 -lXext -lgdk_pixbuf-1.3 -lm -lpangox -lX11 -lpango
 -lgobject-1.3 -lgmodule-1.3 -ldl -lglib-1.3

Well, you can already create a dummy libtool library that will be
replaced with all of this when it's linked in.  In fact,
gtk-x11-1.3.la may be that (no longer dummy) library.

 Then the remaining thing to add is the RPM-style version comparisons,
 which is beyond my ability to implement in shell, but I'm sure someone
 can figure it out. ;-)

In shell?  I was hoping pkg-config could be implemented in something
more reasonable...

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: Making hardcode.test more robust [patch against HEAD]

2001-04-22 Thread Alexandre Oliva

On Apr 22, 2001, [EMAIL PROTECTED] wrote:

 Patch below to override the fgrep test for IRIX 6.x, Solaris 2.x,
 and Tru64 UNIX 4.x, 5.x.

It should at least retain the original behavior on other platforms.
And you shouldn't assume host == build, which you seem to do by
invoking host-specific programs on the build machine.

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: Libtool and Pkg-Config

2001-04-21 Thread Alexandre Oliva

On Apr 21, 2001, Eric Lemings [EMAIL PROTECTED] wrote:

 2.0 spawned a separate tool called pkg-config that allows all packages
 to use one tool rather than several different scripts to query compile
 flags, link flags, and other configuration data.

What I don't understand is how pkg-config is going to find the
configuration info of the various packages.  I hope it's not going to
require having them all installed in the same prefix.  One of the
beauties of the *-config scripts is that all one had to tweak to get
them to work and get the respective libraries found is the PATH (or a
directory containing links).

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: Fix: Interlibrary dependencies SCO Uw7

2001-04-19 Thread Alexandre Oliva

On Apr 19, 2001, Matthew Schalit [EMAIL PROTECTED] wrote:

 Does the fact that the libtool passes all 83 tests, 
 including the

 deplib.test

 file mean that we're good?

That's the kind of problem deplib tests are supposed to catch, but it
may not cover all possible ways a platform may lose when linking
non-PIC into a shared library.

Anyway, if it passes all these tests, the patch is probably fine for
*this* version of UnixWare.  This doesn't make it good for older
versions.

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: Duplicates in library auto-dependencies

2001-04-19 Thread Alexandre Oliva

On Apr 18, 2001, Robert Boehne [EMAIL PROTECTED] wrote:

 I'm in a bad situation with the loss of complete and draconian
 duplicate removal in dependency tracking.

Err...  Was it really removed?  I thought we had decided to keep it
in, along with the fix I posted and installed a few days ago.

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: Duplicates in library auto-dependencies

2001-04-19 Thread Alexandre Oliva

On Apr 18, 2001, "Gary V. Vaughan" [EMAIL PROTECTED] wrote:

 However, I still think we might want to revert to the 2 year old
 relatively complaint free (but marginally error-prone) duplicate
 removal for the release of 1.4.

Yeah, I'm all for it.  When I thought it was a bad thing, I hadn't
realized it used a carefully-chosen heuristics to decide when certain
duplicates couldn't be removed.  Now that I know that, I agree it's
right to leave the duplicate-removal code enabled.

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: Downtime... musings... libtool-1.4

2001-04-19 Thread Alexandre Oliva

On Apr 18, 2001, "Gary V. Vaughan" [EMAIL PROTECTED] wrote:

 However, I just deleted my savannah#2 certificate, and I can can now
 get in.

Me too.  Sorry about the noise.

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: Mainline bootstrap failure (Re: libstdc++ execute tests)

2001-04-17 Thread Alexandre Oliva

On Apr 16, 2001, "Gary V. Vaughan" [EMAIL PROTECTED] wrote:

 I like this idea.  Would you add it to the libtool TODO file please, 

Ok to install?



Index: ChangeLog
from  Alexandre Oliva  [EMAIL PROTECTED]

	* TODO: Add -L- flag.

Index: TODO
===
RCS file: /cvsroot/libtool/libtool/TODO,v
retrieving revision 1.42
diff -u -p -r1.42 TODO
--- TODO 2001/01/31 16:26:48 1.42
+++ TODO 2001/04/18 04:43:45
@@ -18,6 +18,13 @@ be desirable.
 * Lists of exported symbols should be stored in the pseudo library
 so that the size of lt_preloaded_symbols can be reduced.
 
+* Have some option to tell libtool not to include -L flags that point
+into a certain tree in the dependence list of an installed library.
+For example: -L-$top_builddir would let one link with libtool
+libraries in sibling subdirectories within a project, using the -L
+notation, without getting builddir pathnames ever mentioned in .la
+files that get installed.
+
 In the future:
 **
 



-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me



Re: Configuring libtool HEAD branch.

2001-04-16 Thread Alexandre Oliva

On Apr 16, 2001, Russ Allbery [EMAIL PROTECTED] wrote:

 Some vague memory also tells me that this is how shared library versioning
 is done (with differently named shared objects).

Yep, this matches my understanding of the way shared libraries work on
AIX.

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: ld.so.1: dlopen: fatal: foo: can't find symbol

2001-04-16 Thread Alexandre Oliva

On Apr 16, 2001, Christopher Lintz [EMAIL PROTECTED] wrote:

handle = dlopen("/home/cjl/.libs/foo.so.0", RTLD_LAZY );
[...]
if ((fptr = (int (*) () )dlsym(RTLD_DEFAULT, "foo")) != NULL)
 make it `handle'

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: shared library linking on Darwin

2001-04-16 Thread Alexandre Oliva

On Apr 17, 2001, Chris Leishman [EMAIL PROTECTED] wrote:

 *** Warning: This library needs some functionality provided by
 extra/libextra.a.

 Unfortunately I can't get the application to load the libshared.a file
 as a dynamic module (not unsurprising).  Even if I specify -dlopen on
 the command line it still barfs

How exactly are you specifying this flag, and what exactly happens?

 I'm just wondering why it can't just suck the object files out of the
 archive when linking the shared library?

Because they're likely to be non-PIC, and several platforms don't
support non-PIC in shared libraries.  If Darwin does, all you have to
do is to post a patch that sets deplibs_check_method=pass_all.

 That seems to be how it works on other platforms.

You haven't tested on enough other platforms :-)

 Alternatively I can compile the subdir as a shared library, but that
 means I need to use inter library dependencies when module loading -

Compile it as a libtool convenience archive.  That's exactly the
purpose of this feature.

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: Mainline bootstrap failure (Re: libstdc++ execute tests)

2001-04-12 Thread Alexandre Oliva

On Apr 12, 2001, Franz Sirl [EMAIL PROTECTED] wrote:

 Additionally libstdc++ installs a $prefix/lib/libstdc++.la which
 includes the libstdc++ *build* directories in dependency_libs, with
 the result that libtool aware applications like KDE2 use them for
 their -L flags during linking...

Uh oh.  This is bad.

The problem is that libtool has no way to tell which directories
specified with -L are part of ``the current build'', so it assumes any
dependencies of the library being built might be in one of those
directories after the library is installed, so the directories must be
added to the search path of libtool.

I see two ways to avoid this:

- not use any -L flags when creating libtool libraries; instead,
specify library names explicitly.  This does The Right Thing (or at
least is supposed to) if the dependence libraries are libtool
libraries (which, unfortunately, is not the case) or static
libraries.  The shared libgcc would be a problem in this case, and
more so before the -L flag is taken implicitly from the flags the
compiler driver passes down to the linker.

- create some way to tell libtool ``look, this -L flag is to be used
only when building this particular library, it's not needed for any of
its dependencies after the library is installed.''  This might be
accomplished by specifying the root of the current build tree.  So,
libstdc++-v3 would be configured such that it would pass to libtool
something like, say -L-$(top_builddir)/$(MULTILIBTOP)/.., and libtool
would compare the prefix of the canonicalized full pathname
corresponding to $(MULTILIBTOP)/.. with that of each directory passed
in -L, and remove it from dependency_libs in the installable .la file.

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: problems compiling latest cvs of gcc_3.0 branch..

2001-04-11 Thread Alexandre Oliva

On Apr  6, 2001, Michael Matz [EMAIL PROTECTED] wrote:

 2001-04-05  Michael Matz  [EMAIL PROTECTED]

   * ltmain.in: recognize "C" as default --tag argument to resolve
   also ambiguities with that language.

Thanks.  I've checked this in, except that I renamed the tag to CC,
for symmetry with CXX and GCJ.  We can always add alternatives later,
if needed.

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: problems compiling latest cvs of gcc_3.0 branch..

2001-04-06 Thread Alexandre Oliva

On Apr  6, 2001, Nick Hudson [EMAIL PROTECTED] wrote:

 Michael Matz wrote:

 2001-04-05  Michael Matz  [EMAIL PROTECTED]
 
 * ltmain.in: recognize "C" as default --tag argument to resolve
 also ambiguities with that language.

 FWIW I've done something similar in NetBSD pkgsrc libtool - I've done it
 a different way and called it CC.

Yeah, I recall your posting about it.  But I don't recall having seen
a patch; did you get to post it?

I think CC is the right tag name.  Anyway, given that it's just a case
matching, we might recognize all of `C', `CC' and `default'.  But we
should probably arrange for ltconfig to reject creating such tags, to
avoid confusion.

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



Re: FYI: duplicate removal patch [Was Re: ok, new libtool forcygwinupdates]

2001-04-05 Thread Alexandre Oliva

On Apr  5, 2001, Stephan Kulow [EMAIL PROTECTED] wrote:

 I would like to add that all KDE libraries are labeled with
 -no-undefined, so there should be no guessing involved. So if you
 see a -lb you can be sure all references to it are resolved if you
 put the given LIBADDs of liba behind it.  Perhaps this -no-undefined
 should be part of the .la file?

This would be a good idea, if it were not for the fact that
-no-undefined means the library *plus its dependencies* have no
references to external symbols, not the library by itself.  So we
still don't have much freedom to drop or move -lname flags around :-(

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me

___
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool



  1   2   3   >